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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package personalize
     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 opCreateBatchInferenceJob = "CreateBatchInferenceJob"
    17  
    18  // CreateBatchInferenceJobRequest generates a "aws/request.Request" representing the
    19  // client's request for the CreateBatchInferenceJob 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 CreateBatchInferenceJob for more information on using the CreateBatchInferenceJob
    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 CreateBatchInferenceJobRequest method.
    34  //    req, resp := client.CreateBatchInferenceJobRequest(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/personalize-2018-05-22/CreateBatchInferenceJob
    42  func (c *Personalize) CreateBatchInferenceJobRequest(input *CreateBatchInferenceJobInput) (req *request.Request, output *CreateBatchInferenceJobOutput) {
    43  	op := &request.Operation{
    44  		Name:       opCreateBatchInferenceJob,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &CreateBatchInferenceJobInput{}
    51  	}
    52  
    53  	output = &CreateBatchInferenceJobOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	return
    56  }
    57  
    58  // CreateBatchInferenceJob API operation for Amazon Personalize.
    59  //
    60  // Creates a batch inference job. The operation can handle up to 50 million
    61  // records and the input file must be in JSON format. For more information,
    62  // see recommendations-batch.
    63  //
    64  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    65  // with awserr.Error's Code and Message methods to get detailed information about
    66  // the error.
    67  //
    68  // See the AWS API reference guide for Amazon Personalize's
    69  // API operation CreateBatchInferenceJob for usage and error information.
    70  //
    71  // Returned Error Types:
    72  //   * InvalidInputException
    73  //   Provide a valid value for the field or parameter.
    74  //
    75  //   * ResourceAlreadyExistsException
    76  //   The specified resource already exists.
    77  //
    78  //   * LimitExceededException
    79  //   The limit on the number of requests per second has been exceeded.
    80  //
    81  //   * ResourceNotFoundException
    82  //   Could not find the specified resource.
    83  //
    84  //   * ResourceInUseException
    85  //   The specified resource is in use.
    86  //
    87  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateBatchInferenceJob
    88  func (c *Personalize) CreateBatchInferenceJob(input *CreateBatchInferenceJobInput) (*CreateBatchInferenceJobOutput, error) {
    89  	req, out := c.CreateBatchInferenceJobRequest(input)
    90  	return out, req.Send()
    91  }
    92  
    93  // CreateBatchInferenceJobWithContext is the same as CreateBatchInferenceJob with the addition of
    94  // the ability to pass a context and additional request options.
    95  //
    96  // See CreateBatchInferenceJob for details on how to use this API operation.
    97  //
    98  // The context must be non-nil and will be used for request cancellation. If
    99  // the context is nil a panic will occur. In the future the SDK may create
   100  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   101  // for more information on using Contexts.
   102  func (c *Personalize) CreateBatchInferenceJobWithContext(ctx aws.Context, input *CreateBatchInferenceJobInput, opts ...request.Option) (*CreateBatchInferenceJobOutput, error) {
   103  	req, out := c.CreateBatchInferenceJobRequest(input)
   104  	req.SetContext(ctx)
   105  	req.ApplyOptions(opts...)
   106  	return out, req.Send()
   107  }
   108  
   109  const opCreateCampaign = "CreateCampaign"
   110  
   111  // CreateCampaignRequest generates a "aws/request.Request" representing the
   112  // client's request for the CreateCampaign operation. The "output" return
   113  // value will be populated with the request's response once the request completes
   114  // successfully.
   115  //
   116  // Use "Send" method on the returned Request to send the API call to the service.
   117  // the "output" return value is not valid until after Send returns without error.
   118  //
   119  // See CreateCampaign for more information on using the CreateCampaign
   120  // API call, and error handling.
   121  //
   122  // This method is useful when you want to inject custom logic or configuration
   123  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   124  //
   125  //
   126  //    // Example sending a request using the CreateCampaignRequest method.
   127  //    req, resp := client.CreateCampaignRequest(params)
   128  //
   129  //    err := req.Send()
   130  //    if err == nil { // resp is now filled
   131  //        fmt.Println(resp)
   132  //    }
   133  //
   134  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateCampaign
   135  func (c *Personalize) CreateCampaignRequest(input *CreateCampaignInput) (req *request.Request, output *CreateCampaignOutput) {
   136  	op := &request.Operation{
   137  		Name:       opCreateCampaign,
   138  		HTTPMethod: "POST",
   139  		HTTPPath:   "/",
   140  	}
   141  
   142  	if input == nil {
   143  		input = &CreateCampaignInput{}
   144  	}
   145  
   146  	output = &CreateCampaignOutput{}
   147  	req = c.newRequest(op, input, output)
   148  	return
   149  }
   150  
   151  // CreateCampaign API operation for Amazon Personalize.
   152  //
   153  // Creates a campaign by deploying a solution version. When a client calls the
   154  // GetRecommendations (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetRecommendations.html)
   155  // and GetPersonalizedRanking (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetPersonalizedRanking.html)
   156  // APIs, a campaign is specified in the request.
   157  //
   158  // Minimum Provisioned TPS and Auto-Scaling
   159  //
   160  // A transaction is a single GetRecommendations or GetPersonalizedRanking call.
   161  // Transactions per second (TPS) is the throughput and unit of billing for Amazon
   162  // Personalize. The minimum provisioned TPS (minProvisionedTPS) specifies the
   163  // baseline throughput provisioned by Amazon Personalize, and thus, the minimum
   164  // billing charge.
   165  //
   166  // If your TPS increases beyond minProvisionedTPS, Amazon Personalize auto-scales
   167  // the provisioned capacity up and down, but never below minProvisionedTPS.
   168  // There's a short time delay while the capacity is increased that might cause
   169  // loss of transactions.
   170  //
   171  // The actual TPS used is calculated as the average requests/second within a
   172  // 5-minute window. You pay for maximum of either the minimum provisioned TPS
   173  // or the actual TPS. We recommend starting with a low minProvisionedTPS, track
   174  // your usage using Amazon CloudWatch metrics, and then increase the minProvisionedTPS
   175  // as necessary.
   176  //
   177  // Status
   178  //
   179  // A campaign can be in one of the following states:
   180  //
   181  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
   182  //
   183  //    * DELETE PENDING > DELETE IN_PROGRESS
   184  //
   185  // To get the campaign status, call DescribeCampaign.
   186  //
   187  // Wait until the status of the campaign is ACTIVE before asking the campaign
   188  // for recommendations.
   189  //
   190  // Related APIs
   191  //
   192  //    * ListCampaigns
   193  //
   194  //    * DescribeCampaign
   195  //
   196  //    * UpdateCampaign
   197  //
   198  //    * DeleteCampaign
   199  //
   200  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   201  // with awserr.Error's Code and Message methods to get detailed information about
   202  // the error.
   203  //
   204  // See the AWS API reference guide for Amazon Personalize's
   205  // API operation CreateCampaign for usage and error information.
   206  //
   207  // Returned Error Types:
   208  //   * InvalidInputException
   209  //   Provide a valid value for the field or parameter.
   210  //
   211  //   * ResourceNotFoundException
   212  //   Could not find the specified resource.
   213  //
   214  //   * ResourceAlreadyExistsException
   215  //   The specified resource already exists.
   216  //
   217  //   * LimitExceededException
   218  //   The limit on the number of requests per second has been exceeded.
   219  //
   220  //   * ResourceInUseException
   221  //   The specified resource is in use.
   222  //
   223  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateCampaign
   224  func (c *Personalize) CreateCampaign(input *CreateCampaignInput) (*CreateCampaignOutput, error) {
   225  	req, out := c.CreateCampaignRequest(input)
   226  	return out, req.Send()
   227  }
   228  
   229  // CreateCampaignWithContext is the same as CreateCampaign with the addition of
   230  // the ability to pass a context and additional request options.
   231  //
   232  // See CreateCampaign for details on how to use this API operation.
   233  //
   234  // The context must be non-nil and will be used for request cancellation. If
   235  // the context is nil a panic will occur. In the future the SDK may create
   236  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   237  // for more information on using Contexts.
   238  func (c *Personalize) CreateCampaignWithContext(ctx aws.Context, input *CreateCampaignInput, opts ...request.Option) (*CreateCampaignOutput, error) {
   239  	req, out := c.CreateCampaignRequest(input)
   240  	req.SetContext(ctx)
   241  	req.ApplyOptions(opts...)
   242  	return out, req.Send()
   243  }
   244  
   245  const opCreateDataset = "CreateDataset"
   246  
   247  // CreateDatasetRequest generates a "aws/request.Request" representing the
   248  // client's request for the CreateDataset operation. The "output" return
   249  // value will be populated with the request's response once the request completes
   250  // successfully.
   251  //
   252  // Use "Send" method on the returned Request to send the API call to the service.
   253  // the "output" return value is not valid until after Send returns without error.
   254  //
   255  // See CreateDataset for more information on using the CreateDataset
   256  // API call, and error handling.
   257  //
   258  // This method is useful when you want to inject custom logic or configuration
   259  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   260  //
   261  //
   262  //    // Example sending a request using the CreateDatasetRequest method.
   263  //    req, resp := client.CreateDatasetRequest(params)
   264  //
   265  //    err := req.Send()
   266  //    if err == nil { // resp is now filled
   267  //        fmt.Println(resp)
   268  //    }
   269  //
   270  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDataset
   271  func (c *Personalize) CreateDatasetRequest(input *CreateDatasetInput) (req *request.Request, output *CreateDatasetOutput) {
   272  	op := &request.Operation{
   273  		Name:       opCreateDataset,
   274  		HTTPMethod: "POST",
   275  		HTTPPath:   "/",
   276  	}
   277  
   278  	if input == nil {
   279  		input = &CreateDatasetInput{}
   280  	}
   281  
   282  	output = &CreateDatasetOutput{}
   283  	req = c.newRequest(op, input, output)
   284  	return
   285  }
   286  
   287  // CreateDataset API operation for Amazon Personalize.
   288  //
   289  // Creates an empty dataset and adds it to the specified dataset group. Use
   290  // CreateDatasetImportJob to import your training data to a dataset.
   291  //
   292  // There are three types of datasets:
   293  //
   294  //    * Interactions
   295  //
   296  //    * Items
   297  //
   298  //    * Users
   299  //
   300  // Each dataset type has an associated schema with required field types. Only
   301  // the Interactions dataset is required in order to train a model (also referred
   302  // to as creating a solution).
   303  //
   304  // A dataset can be in one of the following states:
   305  //
   306  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
   307  //
   308  //    * DELETE PENDING > DELETE IN_PROGRESS
   309  //
   310  // To get the status of the dataset, call DescribeDataset.
   311  //
   312  // Related APIs
   313  //
   314  //    * CreateDatasetGroup
   315  //
   316  //    * ListDatasets
   317  //
   318  //    * DescribeDataset
   319  //
   320  //    * DeleteDataset
   321  //
   322  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   323  // with awserr.Error's Code and Message methods to get detailed information about
   324  // the error.
   325  //
   326  // See the AWS API reference guide for Amazon Personalize's
   327  // API operation CreateDataset for usage and error information.
   328  //
   329  // Returned Error Types:
   330  //   * InvalidInputException
   331  //   Provide a valid value for the field or parameter.
   332  //
   333  //   * ResourceNotFoundException
   334  //   Could not find the specified resource.
   335  //
   336  //   * ResourceAlreadyExistsException
   337  //   The specified resource already exists.
   338  //
   339  //   * LimitExceededException
   340  //   The limit on the number of requests per second has been exceeded.
   341  //
   342  //   * ResourceInUseException
   343  //   The specified resource is in use.
   344  //
   345  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDataset
   346  func (c *Personalize) CreateDataset(input *CreateDatasetInput) (*CreateDatasetOutput, error) {
   347  	req, out := c.CreateDatasetRequest(input)
   348  	return out, req.Send()
   349  }
   350  
   351  // CreateDatasetWithContext is the same as CreateDataset with the addition of
   352  // the ability to pass a context and additional request options.
   353  //
   354  // See CreateDataset for details on how to use this API operation.
   355  //
   356  // The context must be non-nil and will be used for request cancellation. If
   357  // the context is nil a panic will occur. In the future the SDK may create
   358  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   359  // for more information on using Contexts.
   360  func (c *Personalize) CreateDatasetWithContext(ctx aws.Context, input *CreateDatasetInput, opts ...request.Option) (*CreateDatasetOutput, error) {
   361  	req, out := c.CreateDatasetRequest(input)
   362  	req.SetContext(ctx)
   363  	req.ApplyOptions(opts...)
   364  	return out, req.Send()
   365  }
   366  
   367  const opCreateDatasetExportJob = "CreateDatasetExportJob"
   368  
   369  // CreateDatasetExportJobRequest generates a "aws/request.Request" representing the
   370  // client's request for the CreateDatasetExportJob operation. The "output" return
   371  // value will be populated with the request's response once the request completes
   372  // successfully.
   373  //
   374  // Use "Send" method on the returned Request to send the API call to the service.
   375  // the "output" return value is not valid until after Send returns without error.
   376  //
   377  // See CreateDatasetExportJob for more information on using the CreateDatasetExportJob
   378  // API call, and error handling.
   379  //
   380  // This method is useful when you want to inject custom logic or configuration
   381  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   382  //
   383  //
   384  //    // Example sending a request using the CreateDatasetExportJobRequest method.
   385  //    req, resp := client.CreateDatasetExportJobRequest(params)
   386  //
   387  //    err := req.Send()
   388  //    if err == nil { // resp is now filled
   389  //        fmt.Println(resp)
   390  //    }
   391  //
   392  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDatasetExportJob
   393  func (c *Personalize) CreateDatasetExportJobRequest(input *CreateDatasetExportJobInput) (req *request.Request, output *CreateDatasetExportJobOutput) {
   394  	op := &request.Operation{
   395  		Name:       opCreateDatasetExportJob,
   396  		HTTPMethod: "POST",
   397  		HTTPPath:   "/",
   398  	}
   399  
   400  	if input == nil {
   401  		input = &CreateDatasetExportJobInput{}
   402  	}
   403  
   404  	output = &CreateDatasetExportJobOutput{}
   405  	req = c.newRequest(op, input, output)
   406  	return
   407  }
   408  
   409  // CreateDatasetExportJob API operation for Amazon Personalize.
   410  //
   411  // Creates a job that exports data from your dataset to an Amazon S3 bucket.
   412  // To allow Amazon Personalize to export the training data, you must specify
   413  // an service-linked IAM role that gives Amazon Personalize PutObject permissions
   414  // for your Amazon S3 bucket. For information, see Exporting a dataset (https://docs.aws.amazon.com/personalize/latest/dg/export-data.html)
   415  // in the Amazon Personalize developer guide.
   416  //
   417  // Status
   418  //
   419  // A dataset export job can be in one of the following states:
   420  //
   421  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
   422  //
   423  // To get the status of the export job, call DescribeDatasetExportJob, and specify
   424  // the Amazon Resource Name (ARN) of the dataset export job. The dataset export
   425  // is complete when the status shows as ACTIVE. If the status shows as CREATE
   426  // FAILED, the response includes a failureReason key, which describes why the
   427  // job failed.
   428  //
   429  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   430  // with awserr.Error's Code and Message methods to get detailed information about
   431  // the error.
   432  //
   433  // See the AWS API reference guide for Amazon Personalize's
   434  // API operation CreateDatasetExportJob for usage and error information.
   435  //
   436  // Returned Error Types:
   437  //   * InvalidInputException
   438  //   Provide a valid value for the field or parameter.
   439  //
   440  //   * ResourceNotFoundException
   441  //   Could not find the specified resource.
   442  //
   443  //   * ResourceAlreadyExistsException
   444  //   The specified resource already exists.
   445  //
   446  //   * LimitExceededException
   447  //   The limit on the number of requests per second has been exceeded.
   448  //
   449  //   * ResourceInUseException
   450  //   The specified resource is in use.
   451  //
   452  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDatasetExportJob
   453  func (c *Personalize) CreateDatasetExportJob(input *CreateDatasetExportJobInput) (*CreateDatasetExportJobOutput, error) {
   454  	req, out := c.CreateDatasetExportJobRequest(input)
   455  	return out, req.Send()
   456  }
   457  
   458  // CreateDatasetExportJobWithContext is the same as CreateDatasetExportJob with the addition of
   459  // the ability to pass a context and additional request options.
   460  //
   461  // See CreateDatasetExportJob for details on how to use this API operation.
   462  //
   463  // The context must be non-nil and will be used for request cancellation. If
   464  // the context is nil a panic will occur. In the future the SDK may create
   465  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   466  // for more information on using Contexts.
   467  func (c *Personalize) CreateDatasetExportJobWithContext(ctx aws.Context, input *CreateDatasetExportJobInput, opts ...request.Option) (*CreateDatasetExportJobOutput, error) {
   468  	req, out := c.CreateDatasetExportJobRequest(input)
   469  	req.SetContext(ctx)
   470  	req.ApplyOptions(opts...)
   471  	return out, req.Send()
   472  }
   473  
   474  const opCreateDatasetGroup = "CreateDatasetGroup"
   475  
   476  // CreateDatasetGroupRequest generates a "aws/request.Request" representing the
   477  // client's request for the CreateDatasetGroup operation. The "output" return
   478  // value will be populated with the request's response once the request completes
   479  // successfully.
   480  //
   481  // Use "Send" method on the returned Request to send the API call to the service.
   482  // the "output" return value is not valid until after Send returns without error.
   483  //
   484  // See CreateDatasetGroup for more information on using the CreateDatasetGroup
   485  // API call, and error handling.
   486  //
   487  // This method is useful when you want to inject custom logic or configuration
   488  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   489  //
   490  //
   491  //    // Example sending a request using the CreateDatasetGroupRequest method.
   492  //    req, resp := client.CreateDatasetGroupRequest(params)
   493  //
   494  //    err := req.Send()
   495  //    if err == nil { // resp is now filled
   496  //        fmt.Println(resp)
   497  //    }
   498  //
   499  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDatasetGroup
   500  func (c *Personalize) CreateDatasetGroupRequest(input *CreateDatasetGroupInput) (req *request.Request, output *CreateDatasetGroupOutput) {
   501  	op := &request.Operation{
   502  		Name:       opCreateDatasetGroup,
   503  		HTTPMethod: "POST",
   504  		HTTPPath:   "/",
   505  	}
   506  
   507  	if input == nil {
   508  		input = &CreateDatasetGroupInput{}
   509  	}
   510  
   511  	output = &CreateDatasetGroupOutput{}
   512  	req = c.newRequest(op, input, output)
   513  	return
   514  }
   515  
   516  // CreateDatasetGroup API operation for Amazon Personalize.
   517  //
   518  // Creates an empty dataset group. A dataset group contains related datasets
   519  // that supply data for training a model. A dataset group can contain at most
   520  // three datasets, one for each type of dataset:
   521  //
   522  //    * Interactions
   523  //
   524  //    * Items
   525  //
   526  //    * Users
   527  //
   528  // To train a model (create a solution), a dataset group that contains an Interactions
   529  // dataset is required. Call CreateDataset to add a dataset to the group.
   530  //
   531  // A dataset group can be in one of the following states:
   532  //
   533  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
   534  //
   535  //    * DELETE PENDING
   536  //
   537  // To get the status of the dataset group, call DescribeDatasetGroup. If the
   538  // status shows as CREATE FAILED, the response includes a failureReason key,
   539  // which describes why the creation failed.
   540  //
   541  // You must wait until the status of the dataset group is ACTIVE before adding
   542  // a dataset to the group.
   543  //
   544  // You can specify an Key Management Service (KMS) key to encrypt the datasets
   545  // in the group. If you specify a KMS key, you must also include an Identity
   546  // and Access Management (IAM) role that has permission to access the key.
   547  //
   548  // APIs that require a dataset group ARN in the request
   549  //
   550  //    * CreateDataset
   551  //
   552  //    * CreateEventTracker
   553  //
   554  //    * CreateSolution
   555  //
   556  // Related APIs
   557  //
   558  //    * ListDatasetGroups
   559  //
   560  //    * DescribeDatasetGroup
   561  //
   562  //    * DeleteDatasetGroup
   563  //
   564  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   565  // with awserr.Error's Code and Message methods to get detailed information about
   566  // the error.
   567  //
   568  // See the AWS API reference guide for Amazon Personalize's
   569  // API operation CreateDatasetGroup for usage and error information.
   570  //
   571  // Returned Error Types:
   572  //   * InvalidInputException
   573  //   Provide a valid value for the field or parameter.
   574  //
   575  //   * ResourceAlreadyExistsException
   576  //   The specified resource already exists.
   577  //
   578  //   * LimitExceededException
   579  //   The limit on the number of requests per second has been exceeded.
   580  //
   581  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDatasetGroup
   582  func (c *Personalize) CreateDatasetGroup(input *CreateDatasetGroupInput) (*CreateDatasetGroupOutput, error) {
   583  	req, out := c.CreateDatasetGroupRequest(input)
   584  	return out, req.Send()
   585  }
   586  
   587  // CreateDatasetGroupWithContext is the same as CreateDatasetGroup with the addition of
   588  // the ability to pass a context and additional request options.
   589  //
   590  // See CreateDatasetGroup for details on how to use this API operation.
   591  //
   592  // The context must be non-nil and will be used for request cancellation. If
   593  // the context is nil a panic will occur. In the future the SDK may create
   594  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   595  // for more information on using Contexts.
   596  func (c *Personalize) CreateDatasetGroupWithContext(ctx aws.Context, input *CreateDatasetGroupInput, opts ...request.Option) (*CreateDatasetGroupOutput, error) {
   597  	req, out := c.CreateDatasetGroupRequest(input)
   598  	req.SetContext(ctx)
   599  	req.ApplyOptions(opts...)
   600  	return out, req.Send()
   601  }
   602  
   603  const opCreateDatasetImportJob = "CreateDatasetImportJob"
   604  
   605  // CreateDatasetImportJobRequest generates a "aws/request.Request" representing the
   606  // client's request for the CreateDatasetImportJob operation. The "output" return
   607  // value will be populated with the request's response once the request completes
   608  // successfully.
   609  //
   610  // Use "Send" method on the returned Request to send the API call to the service.
   611  // the "output" return value is not valid until after Send returns without error.
   612  //
   613  // See CreateDatasetImportJob for more information on using the CreateDatasetImportJob
   614  // API call, and error handling.
   615  //
   616  // This method is useful when you want to inject custom logic or configuration
   617  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   618  //
   619  //
   620  //    // Example sending a request using the CreateDatasetImportJobRequest method.
   621  //    req, resp := client.CreateDatasetImportJobRequest(params)
   622  //
   623  //    err := req.Send()
   624  //    if err == nil { // resp is now filled
   625  //        fmt.Println(resp)
   626  //    }
   627  //
   628  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDatasetImportJob
   629  func (c *Personalize) CreateDatasetImportJobRequest(input *CreateDatasetImportJobInput) (req *request.Request, output *CreateDatasetImportJobOutput) {
   630  	op := &request.Operation{
   631  		Name:       opCreateDatasetImportJob,
   632  		HTTPMethod: "POST",
   633  		HTTPPath:   "/",
   634  	}
   635  
   636  	if input == nil {
   637  		input = &CreateDatasetImportJobInput{}
   638  	}
   639  
   640  	output = &CreateDatasetImportJobOutput{}
   641  	req = c.newRequest(op, input, output)
   642  	return
   643  }
   644  
   645  // CreateDatasetImportJob API operation for Amazon Personalize.
   646  //
   647  // Creates a job that imports training data from your data source (an Amazon
   648  // S3 bucket) to an Amazon Personalize dataset. To allow Amazon Personalize
   649  // to import the training data, you must specify an IAM service role that has
   650  // permission to read from the data source, as Amazon Personalize makes a copy
   651  // of your data and processes it internally. For information on granting access
   652  // to your Amazon S3 bucket, see Giving Amazon Personalize Access to Amazon
   653  // S3 Resources (https://docs.aws.amazon.com/personalize/latest/dg/granting-personalize-s3-access.html).
   654  //
   655  // The dataset import job replaces any existing data in the dataset that you
   656  // imported in bulk.
   657  //
   658  // Status
   659  //
   660  // A dataset import job can be in one of the following states:
   661  //
   662  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
   663  //
   664  // To get the status of the import job, call DescribeDatasetImportJob, providing
   665  // the Amazon Resource Name (ARN) of the dataset import job. The dataset import
   666  // is complete when the status shows as ACTIVE. If the status shows as CREATE
   667  // FAILED, the response includes a failureReason key, which describes why the
   668  // job failed.
   669  //
   670  // Importing takes time. You must wait until the status shows as ACTIVE before
   671  // training a model using the dataset.
   672  //
   673  // Related APIs
   674  //
   675  //    * ListDatasetImportJobs
   676  //
   677  //    * DescribeDatasetImportJob
   678  //
   679  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   680  // with awserr.Error's Code and Message methods to get detailed information about
   681  // the error.
   682  //
   683  // See the AWS API reference guide for Amazon Personalize's
   684  // API operation CreateDatasetImportJob for usage and error information.
   685  //
   686  // Returned Error Types:
   687  //   * InvalidInputException
   688  //   Provide a valid value for the field or parameter.
   689  //
   690  //   * ResourceNotFoundException
   691  //   Could not find the specified resource.
   692  //
   693  //   * ResourceAlreadyExistsException
   694  //   The specified resource already exists.
   695  //
   696  //   * LimitExceededException
   697  //   The limit on the number of requests per second has been exceeded.
   698  //
   699  //   * ResourceInUseException
   700  //   The specified resource is in use.
   701  //
   702  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateDatasetImportJob
   703  func (c *Personalize) CreateDatasetImportJob(input *CreateDatasetImportJobInput) (*CreateDatasetImportJobOutput, error) {
   704  	req, out := c.CreateDatasetImportJobRequest(input)
   705  	return out, req.Send()
   706  }
   707  
   708  // CreateDatasetImportJobWithContext is the same as CreateDatasetImportJob with the addition of
   709  // the ability to pass a context and additional request options.
   710  //
   711  // See CreateDatasetImportJob for details on how to use this API operation.
   712  //
   713  // The context must be non-nil and will be used for request cancellation. If
   714  // the context is nil a panic will occur. In the future the SDK may create
   715  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   716  // for more information on using Contexts.
   717  func (c *Personalize) CreateDatasetImportJobWithContext(ctx aws.Context, input *CreateDatasetImportJobInput, opts ...request.Option) (*CreateDatasetImportJobOutput, error) {
   718  	req, out := c.CreateDatasetImportJobRequest(input)
   719  	req.SetContext(ctx)
   720  	req.ApplyOptions(opts...)
   721  	return out, req.Send()
   722  }
   723  
   724  const opCreateEventTracker = "CreateEventTracker"
   725  
   726  // CreateEventTrackerRequest generates a "aws/request.Request" representing the
   727  // client's request for the CreateEventTracker operation. The "output" return
   728  // value will be populated with the request's response once the request completes
   729  // successfully.
   730  //
   731  // Use "Send" method on the returned Request to send the API call to the service.
   732  // the "output" return value is not valid until after Send returns without error.
   733  //
   734  // See CreateEventTracker for more information on using the CreateEventTracker
   735  // API call, and error handling.
   736  //
   737  // This method is useful when you want to inject custom logic or configuration
   738  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   739  //
   740  //
   741  //    // Example sending a request using the CreateEventTrackerRequest method.
   742  //    req, resp := client.CreateEventTrackerRequest(params)
   743  //
   744  //    err := req.Send()
   745  //    if err == nil { // resp is now filled
   746  //        fmt.Println(resp)
   747  //    }
   748  //
   749  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateEventTracker
   750  func (c *Personalize) CreateEventTrackerRequest(input *CreateEventTrackerInput) (req *request.Request, output *CreateEventTrackerOutput) {
   751  	op := &request.Operation{
   752  		Name:       opCreateEventTracker,
   753  		HTTPMethod: "POST",
   754  		HTTPPath:   "/",
   755  	}
   756  
   757  	if input == nil {
   758  		input = &CreateEventTrackerInput{}
   759  	}
   760  
   761  	output = &CreateEventTrackerOutput{}
   762  	req = c.newRequest(op, input, output)
   763  	return
   764  }
   765  
   766  // CreateEventTracker API operation for Amazon Personalize.
   767  //
   768  // Creates an event tracker that you use when adding event data to a specified
   769  // dataset group using the PutEvents (https://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html)
   770  // API.
   771  //
   772  // Only one event tracker can be associated with a dataset group. You will get
   773  // an error if you call CreateEventTracker using the same dataset group as an
   774  // existing event tracker.
   775  //
   776  // When you create an event tracker, the response includes a tracking ID, which
   777  // you pass as a parameter when you use the PutEvents (https://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html)
   778  // operation. Amazon Personalize then appends the event data to the Interactions
   779  // dataset of the dataset group you specify in your event tracker.
   780  //
   781  // The event tracker can be in one of the following states:
   782  //
   783  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
   784  //
   785  //    * DELETE PENDING > DELETE IN_PROGRESS
   786  //
   787  // To get the status of the event tracker, call DescribeEventTracker.
   788  //
   789  // The event tracker must be in the ACTIVE state before using the tracking ID.
   790  //
   791  // Related APIs
   792  //
   793  //    * ListEventTrackers
   794  //
   795  //    * DescribeEventTracker
   796  //
   797  //    * DeleteEventTracker
   798  //
   799  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   800  // with awserr.Error's Code and Message methods to get detailed information about
   801  // the error.
   802  //
   803  // See the AWS API reference guide for Amazon Personalize's
   804  // API operation CreateEventTracker for usage and error information.
   805  //
   806  // Returned Error Types:
   807  //   * InvalidInputException
   808  //   Provide a valid value for the field or parameter.
   809  //
   810  //   * ResourceAlreadyExistsException
   811  //   The specified resource already exists.
   812  //
   813  //   * ResourceNotFoundException
   814  //   Could not find the specified resource.
   815  //
   816  //   * LimitExceededException
   817  //   The limit on the number of requests per second has been exceeded.
   818  //
   819  //   * ResourceInUseException
   820  //   The specified resource is in use.
   821  //
   822  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateEventTracker
   823  func (c *Personalize) CreateEventTracker(input *CreateEventTrackerInput) (*CreateEventTrackerOutput, error) {
   824  	req, out := c.CreateEventTrackerRequest(input)
   825  	return out, req.Send()
   826  }
   827  
   828  // CreateEventTrackerWithContext is the same as CreateEventTracker with the addition of
   829  // the ability to pass a context and additional request options.
   830  //
   831  // See CreateEventTracker for details on how to use this API operation.
   832  //
   833  // The context must be non-nil and will be used for request cancellation. If
   834  // the context is nil a panic will occur. In the future the SDK may create
   835  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   836  // for more information on using Contexts.
   837  func (c *Personalize) CreateEventTrackerWithContext(ctx aws.Context, input *CreateEventTrackerInput, opts ...request.Option) (*CreateEventTrackerOutput, error) {
   838  	req, out := c.CreateEventTrackerRequest(input)
   839  	req.SetContext(ctx)
   840  	req.ApplyOptions(opts...)
   841  	return out, req.Send()
   842  }
   843  
   844  const opCreateFilter = "CreateFilter"
   845  
   846  // CreateFilterRequest generates a "aws/request.Request" representing the
   847  // client's request for the CreateFilter operation. The "output" return
   848  // value will be populated with the request's response once the request completes
   849  // successfully.
   850  //
   851  // Use "Send" method on the returned Request to send the API call to the service.
   852  // the "output" return value is not valid until after Send returns without error.
   853  //
   854  // See CreateFilter for more information on using the CreateFilter
   855  // API call, and error handling.
   856  //
   857  // This method is useful when you want to inject custom logic or configuration
   858  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   859  //
   860  //
   861  //    // Example sending a request using the CreateFilterRequest method.
   862  //    req, resp := client.CreateFilterRequest(params)
   863  //
   864  //    err := req.Send()
   865  //    if err == nil { // resp is now filled
   866  //        fmt.Println(resp)
   867  //    }
   868  //
   869  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateFilter
   870  func (c *Personalize) CreateFilterRequest(input *CreateFilterInput) (req *request.Request, output *CreateFilterOutput) {
   871  	op := &request.Operation{
   872  		Name:       opCreateFilter,
   873  		HTTPMethod: "POST",
   874  		HTTPPath:   "/",
   875  	}
   876  
   877  	if input == nil {
   878  		input = &CreateFilterInput{}
   879  	}
   880  
   881  	output = &CreateFilterOutput{}
   882  	req = c.newRequest(op, input, output)
   883  	return
   884  }
   885  
   886  // CreateFilter API operation for Amazon Personalize.
   887  //
   888  // Creates a recommendation filter. For more information, see filter.
   889  //
   890  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   891  // with awserr.Error's Code and Message methods to get detailed information about
   892  // the error.
   893  //
   894  // See the AWS API reference guide for Amazon Personalize's
   895  // API operation CreateFilter for usage and error information.
   896  //
   897  // Returned Error Types:
   898  //   * InvalidInputException
   899  //   Provide a valid value for the field or parameter.
   900  //
   901  //   * ResourceAlreadyExistsException
   902  //   The specified resource already exists.
   903  //
   904  //   * ResourceNotFoundException
   905  //   Could not find the specified resource.
   906  //
   907  //   * LimitExceededException
   908  //   The limit on the number of requests per second has been exceeded.
   909  //
   910  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateFilter
   911  func (c *Personalize) CreateFilter(input *CreateFilterInput) (*CreateFilterOutput, error) {
   912  	req, out := c.CreateFilterRequest(input)
   913  	return out, req.Send()
   914  }
   915  
   916  // CreateFilterWithContext is the same as CreateFilter with the addition of
   917  // the ability to pass a context and additional request options.
   918  //
   919  // See CreateFilter for details on how to use this API operation.
   920  //
   921  // The context must be non-nil and will be used for request cancellation. If
   922  // the context is nil a panic will occur. In the future the SDK may create
   923  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   924  // for more information on using Contexts.
   925  func (c *Personalize) CreateFilterWithContext(ctx aws.Context, input *CreateFilterInput, opts ...request.Option) (*CreateFilterOutput, error) {
   926  	req, out := c.CreateFilterRequest(input)
   927  	req.SetContext(ctx)
   928  	req.ApplyOptions(opts...)
   929  	return out, req.Send()
   930  }
   931  
   932  const opCreateSchema = "CreateSchema"
   933  
   934  // CreateSchemaRequest generates a "aws/request.Request" representing the
   935  // client's request for the CreateSchema operation. The "output" return
   936  // value will be populated with the request's response once the request completes
   937  // successfully.
   938  //
   939  // Use "Send" method on the returned Request to send the API call to the service.
   940  // the "output" return value is not valid until after Send returns without error.
   941  //
   942  // See CreateSchema for more information on using the CreateSchema
   943  // API call, and error handling.
   944  //
   945  // This method is useful when you want to inject custom logic or configuration
   946  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   947  //
   948  //
   949  //    // Example sending a request using the CreateSchemaRequest method.
   950  //    req, resp := client.CreateSchemaRequest(params)
   951  //
   952  //    err := req.Send()
   953  //    if err == nil { // resp is now filled
   954  //        fmt.Println(resp)
   955  //    }
   956  //
   957  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateSchema
   958  func (c *Personalize) CreateSchemaRequest(input *CreateSchemaInput) (req *request.Request, output *CreateSchemaOutput) {
   959  	op := &request.Operation{
   960  		Name:       opCreateSchema,
   961  		HTTPMethod: "POST",
   962  		HTTPPath:   "/",
   963  	}
   964  
   965  	if input == nil {
   966  		input = &CreateSchemaInput{}
   967  	}
   968  
   969  	output = &CreateSchemaOutput{}
   970  	req = c.newRequest(op, input, output)
   971  	return
   972  }
   973  
   974  // CreateSchema API operation for Amazon Personalize.
   975  //
   976  // Creates an Amazon Personalize schema from the specified schema string. The
   977  // schema you create must be in Avro JSON format.
   978  //
   979  // Amazon Personalize recognizes three schema variants. Each schema is associated
   980  // with a dataset type and has a set of required field and keywords. You specify
   981  // a schema when you call CreateDataset.
   982  //
   983  // Related APIs
   984  //
   985  //    * ListSchemas
   986  //
   987  //    * DescribeSchema
   988  //
   989  //    * DeleteSchema
   990  //
   991  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   992  // with awserr.Error's Code and Message methods to get detailed information about
   993  // the error.
   994  //
   995  // See the AWS API reference guide for Amazon Personalize's
   996  // API operation CreateSchema for usage and error information.
   997  //
   998  // Returned Error Types:
   999  //   * InvalidInputException
  1000  //   Provide a valid value for the field or parameter.
  1001  //
  1002  //   * ResourceAlreadyExistsException
  1003  //   The specified resource already exists.
  1004  //
  1005  //   * LimitExceededException
  1006  //   The limit on the number of requests per second has been exceeded.
  1007  //
  1008  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateSchema
  1009  func (c *Personalize) CreateSchema(input *CreateSchemaInput) (*CreateSchemaOutput, error) {
  1010  	req, out := c.CreateSchemaRequest(input)
  1011  	return out, req.Send()
  1012  }
  1013  
  1014  // CreateSchemaWithContext is the same as CreateSchema with the addition of
  1015  // the ability to pass a context and additional request options.
  1016  //
  1017  // See CreateSchema for details on how to use this API operation.
  1018  //
  1019  // The context must be non-nil and will be used for request cancellation. If
  1020  // the context is nil a panic will occur. In the future the SDK may create
  1021  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1022  // for more information on using Contexts.
  1023  func (c *Personalize) CreateSchemaWithContext(ctx aws.Context, input *CreateSchemaInput, opts ...request.Option) (*CreateSchemaOutput, error) {
  1024  	req, out := c.CreateSchemaRequest(input)
  1025  	req.SetContext(ctx)
  1026  	req.ApplyOptions(opts...)
  1027  	return out, req.Send()
  1028  }
  1029  
  1030  const opCreateSolution = "CreateSolution"
  1031  
  1032  // CreateSolutionRequest generates a "aws/request.Request" representing the
  1033  // client's request for the CreateSolution operation. The "output" return
  1034  // value will be populated with the request's response once the request completes
  1035  // successfully.
  1036  //
  1037  // Use "Send" method on the returned Request to send the API call to the service.
  1038  // the "output" return value is not valid until after Send returns without error.
  1039  //
  1040  // See CreateSolution for more information on using the CreateSolution
  1041  // API call, and error handling.
  1042  //
  1043  // This method is useful when you want to inject custom logic or configuration
  1044  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1045  //
  1046  //
  1047  //    // Example sending a request using the CreateSolutionRequest method.
  1048  //    req, resp := client.CreateSolutionRequest(params)
  1049  //
  1050  //    err := req.Send()
  1051  //    if err == nil { // resp is now filled
  1052  //        fmt.Println(resp)
  1053  //    }
  1054  //
  1055  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateSolution
  1056  func (c *Personalize) CreateSolutionRequest(input *CreateSolutionInput) (req *request.Request, output *CreateSolutionOutput) {
  1057  	op := &request.Operation{
  1058  		Name:       opCreateSolution,
  1059  		HTTPMethod: "POST",
  1060  		HTTPPath:   "/",
  1061  	}
  1062  
  1063  	if input == nil {
  1064  		input = &CreateSolutionInput{}
  1065  	}
  1066  
  1067  	output = &CreateSolutionOutput{}
  1068  	req = c.newRequest(op, input, output)
  1069  	return
  1070  }
  1071  
  1072  // CreateSolution API operation for Amazon Personalize.
  1073  //
  1074  // Creates the configuration for training a model. A trained model is known
  1075  // as a solution. After the configuration is created, you train the model (create
  1076  // a solution) by calling the CreateSolutionVersion operation. Every time you
  1077  // call CreateSolutionVersion, a new version of the solution is created.
  1078  //
  1079  // After creating a solution version, you check its accuracy by calling GetSolutionMetrics.
  1080  // When you are satisfied with the version, you deploy it using CreateCampaign.
  1081  // The campaign provides recommendations to a client through the GetRecommendations
  1082  // (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetRecommendations.html)
  1083  // API.
  1084  //
  1085  // To train a model, Amazon Personalize requires training data and a recipe.
  1086  // The training data comes from the dataset group that you provide in the request.
  1087  // A recipe specifies the training algorithm and a feature transformation. You
  1088  // can specify one of the predefined recipes provided by Amazon Personalize.
  1089  // Alternatively, you can specify performAutoML and Amazon Personalize will
  1090  // analyze your data and select the optimum USER_PERSONALIZATION recipe for
  1091  // you.
  1092  //
  1093  // Amazon Personalize doesn't support configuring the hpoObjective for solution
  1094  // hyperparameter optimization at this time.
  1095  //
  1096  // Status
  1097  //
  1098  // A solution can be in one of the following states:
  1099  //
  1100  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  1101  //
  1102  //    * DELETE PENDING > DELETE IN_PROGRESS
  1103  //
  1104  // To get the status of the solution, call DescribeSolution. Wait until the
  1105  // status shows as ACTIVE before calling CreateSolutionVersion.
  1106  //
  1107  // Related APIs
  1108  //
  1109  //    * ListSolutions
  1110  //
  1111  //    * CreateSolutionVersion
  1112  //
  1113  //    * DescribeSolution
  1114  //
  1115  //    * DeleteSolution
  1116  //
  1117  //    * ListSolutionVersions
  1118  //
  1119  //    * DescribeSolutionVersion
  1120  //
  1121  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1122  // with awserr.Error's Code and Message methods to get detailed information about
  1123  // the error.
  1124  //
  1125  // See the AWS API reference guide for Amazon Personalize's
  1126  // API operation CreateSolution for usage and error information.
  1127  //
  1128  // Returned Error Types:
  1129  //   * InvalidInputException
  1130  //   Provide a valid value for the field or parameter.
  1131  //
  1132  //   * ResourceAlreadyExistsException
  1133  //   The specified resource already exists.
  1134  //
  1135  //   * ResourceNotFoundException
  1136  //   Could not find the specified resource.
  1137  //
  1138  //   * LimitExceededException
  1139  //   The limit on the number of requests per second has been exceeded.
  1140  //
  1141  //   * ResourceInUseException
  1142  //   The specified resource is in use.
  1143  //
  1144  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateSolution
  1145  func (c *Personalize) CreateSolution(input *CreateSolutionInput) (*CreateSolutionOutput, error) {
  1146  	req, out := c.CreateSolutionRequest(input)
  1147  	return out, req.Send()
  1148  }
  1149  
  1150  // CreateSolutionWithContext is the same as CreateSolution with the addition of
  1151  // the ability to pass a context and additional request options.
  1152  //
  1153  // See CreateSolution for details on how to use this API operation.
  1154  //
  1155  // The context must be non-nil and will be used for request cancellation. If
  1156  // the context is nil a panic will occur. In the future the SDK may create
  1157  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1158  // for more information on using Contexts.
  1159  func (c *Personalize) CreateSolutionWithContext(ctx aws.Context, input *CreateSolutionInput, opts ...request.Option) (*CreateSolutionOutput, error) {
  1160  	req, out := c.CreateSolutionRequest(input)
  1161  	req.SetContext(ctx)
  1162  	req.ApplyOptions(opts...)
  1163  	return out, req.Send()
  1164  }
  1165  
  1166  const opCreateSolutionVersion = "CreateSolutionVersion"
  1167  
  1168  // CreateSolutionVersionRequest generates a "aws/request.Request" representing the
  1169  // client's request for the CreateSolutionVersion operation. The "output" return
  1170  // value will be populated with the request's response once the request completes
  1171  // successfully.
  1172  //
  1173  // Use "Send" method on the returned Request to send the API call to the service.
  1174  // the "output" return value is not valid until after Send returns without error.
  1175  //
  1176  // See CreateSolutionVersion for more information on using the CreateSolutionVersion
  1177  // API call, and error handling.
  1178  //
  1179  // This method is useful when you want to inject custom logic or configuration
  1180  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1181  //
  1182  //
  1183  //    // Example sending a request using the CreateSolutionVersionRequest method.
  1184  //    req, resp := client.CreateSolutionVersionRequest(params)
  1185  //
  1186  //    err := req.Send()
  1187  //    if err == nil { // resp is now filled
  1188  //        fmt.Println(resp)
  1189  //    }
  1190  //
  1191  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateSolutionVersion
  1192  func (c *Personalize) CreateSolutionVersionRequest(input *CreateSolutionVersionInput) (req *request.Request, output *CreateSolutionVersionOutput) {
  1193  	op := &request.Operation{
  1194  		Name:       opCreateSolutionVersion,
  1195  		HTTPMethod: "POST",
  1196  		HTTPPath:   "/",
  1197  	}
  1198  
  1199  	if input == nil {
  1200  		input = &CreateSolutionVersionInput{}
  1201  	}
  1202  
  1203  	output = &CreateSolutionVersionOutput{}
  1204  	req = c.newRequest(op, input, output)
  1205  	return
  1206  }
  1207  
  1208  // CreateSolutionVersion API operation for Amazon Personalize.
  1209  //
  1210  // Trains or retrains an active solution. A solution is created using the CreateSolution
  1211  // operation and must be in the ACTIVE state before calling CreateSolutionVersion.
  1212  // A new version of the solution is created every time you call this operation.
  1213  //
  1214  // Status
  1215  //
  1216  // A solution version can be in one of the following states:
  1217  //
  1218  //    * CREATE PENDING
  1219  //
  1220  //    * CREATE IN_PROGRESS
  1221  //
  1222  //    * ACTIVE
  1223  //
  1224  //    * CREATE FAILED
  1225  //
  1226  //    * CREATE STOPPING
  1227  //
  1228  //    * CREATE STOPPED
  1229  //
  1230  // To get the status of the version, call DescribeSolutionVersion. Wait until
  1231  // the status shows as ACTIVE before calling CreateCampaign.
  1232  //
  1233  // If the status shows as CREATE FAILED, the response includes a failureReason
  1234  // key, which describes why the job failed.
  1235  //
  1236  // Related APIs
  1237  //
  1238  //    * ListSolutionVersions
  1239  //
  1240  //    * DescribeSolutionVersion
  1241  //
  1242  //    * ListSolutions
  1243  //
  1244  //    * CreateSolution
  1245  //
  1246  //    * DescribeSolution
  1247  //
  1248  //    * DeleteSolution
  1249  //
  1250  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1251  // with awserr.Error's Code and Message methods to get detailed information about
  1252  // the error.
  1253  //
  1254  // See the AWS API reference guide for Amazon Personalize's
  1255  // API operation CreateSolutionVersion for usage and error information.
  1256  //
  1257  // Returned Error Types:
  1258  //   * InvalidInputException
  1259  //   Provide a valid value for the field or parameter.
  1260  //
  1261  //   * ResourceNotFoundException
  1262  //   Could not find the specified resource.
  1263  //
  1264  //   * LimitExceededException
  1265  //   The limit on the number of requests per second has been exceeded.
  1266  //
  1267  //   * ResourceInUseException
  1268  //   The specified resource is in use.
  1269  //
  1270  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/CreateSolutionVersion
  1271  func (c *Personalize) CreateSolutionVersion(input *CreateSolutionVersionInput) (*CreateSolutionVersionOutput, error) {
  1272  	req, out := c.CreateSolutionVersionRequest(input)
  1273  	return out, req.Send()
  1274  }
  1275  
  1276  // CreateSolutionVersionWithContext is the same as CreateSolutionVersion with the addition of
  1277  // the ability to pass a context and additional request options.
  1278  //
  1279  // See CreateSolutionVersion for details on how to use this API operation.
  1280  //
  1281  // The context must be non-nil and will be used for request cancellation. If
  1282  // the context is nil a panic will occur. In the future the SDK may create
  1283  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1284  // for more information on using Contexts.
  1285  func (c *Personalize) CreateSolutionVersionWithContext(ctx aws.Context, input *CreateSolutionVersionInput, opts ...request.Option) (*CreateSolutionVersionOutput, error) {
  1286  	req, out := c.CreateSolutionVersionRequest(input)
  1287  	req.SetContext(ctx)
  1288  	req.ApplyOptions(opts...)
  1289  	return out, req.Send()
  1290  }
  1291  
  1292  const opDeleteCampaign = "DeleteCampaign"
  1293  
  1294  // DeleteCampaignRequest generates a "aws/request.Request" representing the
  1295  // client's request for the DeleteCampaign operation. The "output" return
  1296  // value will be populated with the request's response once the request completes
  1297  // successfully.
  1298  //
  1299  // Use "Send" method on the returned Request to send the API call to the service.
  1300  // the "output" return value is not valid until after Send returns without error.
  1301  //
  1302  // See DeleteCampaign for more information on using the DeleteCampaign
  1303  // API call, and error handling.
  1304  //
  1305  // This method is useful when you want to inject custom logic or configuration
  1306  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1307  //
  1308  //
  1309  //    // Example sending a request using the DeleteCampaignRequest method.
  1310  //    req, resp := client.DeleteCampaignRequest(params)
  1311  //
  1312  //    err := req.Send()
  1313  //    if err == nil { // resp is now filled
  1314  //        fmt.Println(resp)
  1315  //    }
  1316  //
  1317  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteCampaign
  1318  func (c *Personalize) DeleteCampaignRequest(input *DeleteCampaignInput) (req *request.Request, output *DeleteCampaignOutput) {
  1319  	op := &request.Operation{
  1320  		Name:       opDeleteCampaign,
  1321  		HTTPMethod: "POST",
  1322  		HTTPPath:   "/",
  1323  	}
  1324  
  1325  	if input == nil {
  1326  		input = &DeleteCampaignInput{}
  1327  	}
  1328  
  1329  	output = &DeleteCampaignOutput{}
  1330  	req = c.newRequest(op, input, output)
  1331  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1332  	return
  1333  }
  1334  
  1335  // DeleteCampaign API operation for Amazon Personalize.
  1336  //
  1337  // Removes a campaign by deleting the solution deployment. The solution that
  1338  // the campaign is based on is not deleted and can be redeployed when needed.
  1339  // A deleted campaign can no longer be specified in a GetRecommendations (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetRecommendations.html)
  1340  // request. For more information on campaigns, see CreateCampaign.
  1341  //
  1342  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1343  // with awserr.Error's Code and Message methods to get detailed information about
  1344  // the error.
  1345  //
  1346  // See the AWS API reference guide for Amazon Personalize's
  1347  // API operation DeleteCampaign for usage and error information.
  1348  //
  1349  // Returned Error Types:
  1350  //   * InvalidInputException
  1351  //   Provide a valid value for the field or parameter.
  1352  //
  1353  //   * ResourceNotFoundException
  1354  //   Could not find the specified resource.
  1355  //
  1356  //   * ResourceInUseException
  1357  //   The specified resource is in use.
  1358  //
  1359  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteCampaign
  1360  func (c *Personalize) DeleteCampaign(input *DeleteCampaignInput) (*DeleteCampaignOutput, error) {
  1361  	req, out := c.DeleteCampaignRequest(input)
  1362  	return out, req.Send()
  1363  }
  1364  
  1365  // DeleteCampaignWithContext is the same as DeleteCampaign with the addition of
  1366  // the ability to pass a context and additional request options.
  1367  //
  1368  // See DeleteCampaign for details on how to use this API operation.
  1369  //
  1370  // The context must be non-nil and will be used for request cancellation. If
  1371  // the context is nil a panic will occur. In the future the SDK may create
  1372  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1373  // for more information on using Contexts.
  1374  func (c *Personalize) DeleteCampaignWithContext(ctx aws.Context, input *DeleteCampaignInput, opts ...request.Option) (*DeleteCampaignOutput, error) {
  1375  	req, out := c.DeleteCampaignRequest(input)
  1376  	req.SetContext(ctx)
  1377  	req.ApplyOptions(opts...)
  1378  	return out, req.Send()
  1379  }
  1380  
  1381  const opDeleteDataset = "DeleteDataset"
  1382  
  1383  // DeleteDatasetRequest generates a "aws/request.Request" representing the
  1384  // client's request for the DeleteDataset operation. The "output" return
  1385  // value will be populated with the request's response once the request completes
  1386  // successfully.
  1387  //
  1388  // Use "Send" method on the returned Request to send the API call to the service.
  1389  // the "output" return value is not valid until after Send returns without error.
  1390  //
  1391  // See DeleteDataset for more information on using the DeleteDataset
  1392  // API call, and error handling.
  1393  //
  1394  // This method is useful when you want to inject custom logic or configuration
  1395  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1396  //
  1397  //
  1398  //    // Example sending a request using the DeleteDatasetRequest method.
  1399  //    req, resp := client.DeleteDatasetRequest(params)
  1400  //
  1401  //    err := req.Send()
  1402  //    if err == nil { // resp is now filled
  1403  //        fmt.Println(resp)
  1404  //    }
  1405  //
  1406  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteDataset
  1407  func (c *Personalize) DeleteDatasetRequest(input *DeleteDatasetInput) (req *request.Request, output *DeleteDatasetOutput) {
  1408  	op := &request.Operation{
  1409  		Name:       opDeleteDataset,
  1410  		HTTPMethod: "POST",
  1411  		HTTPPath:   "/",
  1412  	}
  1413  
  1414  	if input == nil {
  1415  		input = &DeleteDatasetInput{}
  1416  	}
  1417  
  1418  	output = &DeleteDatasetOutput{}
  1419  	req = c.newRequest(op, input, output)
  1420  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1421  	return
  1422  }
  1423  
  1424  // DeleteDataset API operation for Amazon Personalize.
  1425  //
  1426  // Deletes a dataset. You can't delete a dataset if an associated DatasetImportJob
  1427  // or SolutionVersion is in the CREATE PENDING or IN PROGRESS state. For more
  1428  // information on datasets, see CreateDataset.
  1429  //
  1430  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1431  // with awserr.Error's Code and Message methods to get detailed information about
  1432  // the error.
  1433  //
  1434  // See the AWS API reference guide for Amazon Personalize's
  1435  // API operation DeleteDataset for usage and error information.
  1436  //
  1437  // Returned Error Types:
  1438  //   * InvalidInputException
  1439  //   Provide a valid value for the field or parameter.
  1440  //
  1441  //   * ResourceNotFoundException
  1442  //   Could not find the specified resource.
  1443  //
  1444  //   * ResourceInUseException
  1445  //   The specified resource is in use.
  1446  //
  1447  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteDataset
  1448  func (c *Personalize) DeleteDataset(input *DeleteDatasetInput) (*DeleteDatasetOutput, error) {
  1449  	req, out := c.DeleteDatasetRequest(input)
  1450  	return out, req.Send()
  1451  }
  1452  
  1453  // DeleteDatasetWithContext is the same as DeleteDataset with the addition of
  1454  // the ability to pass a context and additional request options.
  1455  //
  1456  // See DeleteDataset for details on how to use this API operation.
  1457  //
  1458  // The context must be non-nil and will be used for request cancellation. If
  1459  // the context is nil a panic will occur. In the future the SDK may create
  1460  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1461  // for more information on using Contexts.
  1462  func (c *Personalize) DeleteDatasetWithContext(ctx aws.Context, input *DeleteDatasetInput, opts ...request.Option) (*DeleteDatasetOutput, error) {
  1463  	req, out := c.DeleteDatasetRequest(input)
  1464  	req.SetContext(ctx)
  1465  	req.ApplyOptions(opts...)
  1466  	return out, req.Send()
  1467  }
  1468  
  1469  const opDeleteDatasetGroup = "DeleteDatasetGroup"
  1470  
  1471  // DeleteDatasetGroupRequest generates a "aws/request.Request" representing the
  1472  // client's request for the DeleteDatasetGroup operation. The "output" return
  1473  // value will be populated with the request's response once the request completes
  1474  // successfully.
  1475  //
  1476  // Use "Send" method on the returned Request to send the API call to the service.
  1477  // the "output" return value is not valid until after Send returns without error.
  1478  //
  1479  // See DeleteDatasetGroup for more information on using the DeleteDatasetGroup
  1480  // API call, and error handling.
  1481  //
  1482  // This method is useful when you want to inject custom logic or configuration
  1483  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1484  //
  1485  //
  1486  //    // Example sending a request using the DeleteDatasetGroupRequest method.
  1487  //    req, resp := client.DeleteDatasetGroupRequest(params)
  1488  //
  1489  //    err := req.Send()
  1490  //    if err == nil { // resp is now filled
  1491  //        fmt.Println(resp)
  1492  //    }
  1493  //
  1494  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteDatasetGroup
  1495  func (c *Personalize) DeleteDatasetGroupRequest(input *DeleteDatasetGroupInput) (req *request.Request, output *DeleteDatasetGroupOutput) {
  1496  	op := &request.Operation{
  1497  		Name:       opDeleteDatasetGroup,
  1498  		HTTPMethod: "POST",
  1499  		HTTPPath:   "/",
  1500  	}
  1501  
  1502  	if input == nil {
  1503  		input = &DeleteDatasetGroupInput{}
  1504  	}
  1505  
  1506  	output = &DeleteDatasetGroupOutput{}
  1507  	req = c.newRequest(op, input, output)
  1508  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1509  	return
  1510  }
  1511  
  1512  // DeleteDatasetGroup API operation for Amazon Personalize.
  1513  //
  1514  // Deletes a dataset group. Before you delete a dataset group, you must delete
  1515  // the following:
  1516  //
  1517  //    * All associated event trackers.
  1518  //
  1519  //    * All associated solutions.
  1520  //
  1521  //    * All datasets in the dataset group.
  1522  //
  1523  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1524  // with awserr.Error's Code and Message methods to get detailed information about
  1525  // the error.
  1526  //
  1527  // See the AWS API reference guide for Amazon Personalize's
  1528  // API operation DeleteDatasetGroup for usage and error information.
  1529  //
  1530  // Returned Error Types:
  1531  //   * InvalidInputException
  1532  //   Provide a valid value for the field or parameter.
  1533  //
  1534  //   * ResourceNotFoundException
  1535  //   Could not find the specified resource.
  1536  //
  1537  //   * ResourceInUseException
  1538  //   The specified resource is in use.
  1539  //
  1540  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteDatasetGroup
  1541  func (c *Personalize) DeleteDatasetGroup(input *DeleteDatasetGroupInput) (*DeleteDatasetGroupOutput, error) {
  1542  	req, out := c.DeleteDatasetGroupRequest(input)
  1543  	return out, req.Send()
  1544  }
  1545  
  1546  // DeleteDatasetGroupWithContext is the same as DeleteDatasetGroup with the addition of
  1547  // the ability to pass a context and additional request options.
  1548  //
  1549  // See DeleteDatasetGroup for details on how to use this API operation.
  1550  //
  1551  // The context must be non-nil and will be used for request cancellation. If
  1552  // the context is nil a panic will occur. In the future the SDK may create
  1553  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1554  // for more information on using Contexts.
  1555  func (c *Personalize) DeleteDatasetGroupWithContext(ctx aws.Context, input *DeleteDatasetGroupInput, opts ...request.Option) (*DeleteDatasetGroupOutput, error) {
  1556  	req, out := c.DeleteDatasetGroupRequest(input)
  1557  	req.SetContext(ctx)
  1558  	req.ApplyOptions(opts...)
  1559  	return out, req.Send()
  1560  }
  1561  
  1562  const opDeleteEventTracker = "DeleteEventTracker"
  1563  
  1564  // DeleteEventTrackerRequest generates a "aws/request.Request" representing the
  1565  // client's request for the DeleteEventTracker operation. The "output" return
  1566  // value will be populated with the request's response once the request completes
  1567  // successfully.
  1568  //
  1569  // Use "Send" method on the returned Request to send the API call to the service.
  1570  // the "output" return value is not valid until after Send returns without error.
  1571  //
  1572  // See DeleteEventTracker for more information on using the DeleteEventTracker
  1573  // API call, and error handling.
  1574  //
  1575  // This method is useful when you want to inject custom logic or configuration
  1576  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1577  //
  1578  //
  1579  //    // Example sending a request using the DeleteEventTrackerRequest method.
  1580  //    req, resp := client.DeleteEventTrackerRequest(params)
  1581  //
  1582  //    err := req.Send()
  1583  //    if err == nil { // resp is now filled
  1584  //        fmt.Println(resp)
  1585  //    }
  1586  //
  1587  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteEventTracker
  1588  func (c *Personalize) DeleteEventTrackerRequest(input *DeleteEventTrackerInput) (req *request.Request, output *DeleteEventTrackerOutput) {
  1589  	op := &request.Operation{
  1590  		Name:       opDeleteEventTracker,
  1591  		HTTPMethod: "POST",
  1592  		HTTPPath:   "/",
  1593  	}
  1594  
  1595  	if input == nil {
  1596  		input = &DeleteEventTrackerInput{}
  1597  	}
  1598  
  1599  	output = &DeleteEventTrackerOutput{}
  1600  	req = c.newRequest(op, input, output)
  1601  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1602  	return
  1603  }
  1604  
  1605  // DeleteEventTracker API operation for Amazon Personalize.
  1606  //
  1607  // Deletes the event tracker. Does not delete the event-interactions dataset
  1608  // from the associated dataset group. For more information on event trackers,
  1609  // see CreateEventTracker.
  1610  //
  1611  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1612  // with awserr.Error's Code and Message methods to get detailed information about
  1613  // the error.
  1614  //
  1615  // See the AWS API reference guide for Amazon Personalize's
  1616  // API operation DeleteEventTracker for usage and error information.
  1617  //
  1618  // Returned Error Types:
  1619  //   * InvalidInputException
  1620  //   Provide a valid value for the field or parameter.
  1621  //
  1622  //   * ResourceNotFoundException
  1623  //   Could not find the specified resource.
  1624  //
  1625  //   * ResourceInUseException
  1626  //   The specified resource is in use.
  1627  //
  1628  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteEventTracker
  1629  func (c *Personalize) DeleteEventTracker(input *DeleteEventTrackerInput) (*DeleteEventTrackerOutput, error) {
  1630  	req, out := c.DeleteEventTrackerRequest(input)
  1631  	return out, req.Send()
  1632  }
  1633  
  1634  // DeleteEventTrackerWithContext is the same as DeleteEventTracker with the addition of
  1635  // the ability to pass a context and additional request options.
  1636  //
  1637  // See DeleteEventTracker for details on how to use this API operation.
  1638  //
  1639  // The context must be non-nil and will be used for request cancellation. If
  1640  // the context is nil a panic will occur. In the future the SDK may create
  1641  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1642  // for more information on using Contexts.
  1643  func (c *Personalize) DeleteEventTrackerWithContext(ctx aws.Context, input *DeleteEventTrackerInput, opts ...request.Option) (*DeleteEventTrackerOutput, error) {
  1644  	req, out := c.DeleteEventTrackerRequest(input)
  1645  	req.SetContext(ctx)
  1646  	req.ApplyOptions(opts...)
  1647  	return out, req.Send()
  1648  }
  1649  
  1650  const opDeleteFilter = "DeleteFilter"
  1651  
  1652  // DeleteFilterRequest generates a "aws/request.Request" representing the
  1653  // client's request for the DeleteFilter operation. The "output" return
  1654  // value will be populated with the request's response once the request completes
  1655  // successfully.
  1656  //
  1657  // Use "Send" method on the returned Request to send the API call to the service.
  1658  // the "output" return value is not valid until after Send returns without error.
  1659  //
  1660  // See DeleteFilter for more information on using the DeleteFilter
  1661  // API call, and error handling.
  1662  //
  1663  // This method is useful when you want to inject custom logic or configuration
  1664  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1665  //
  1666  //
  1667  //    // Example sending a request using the DeleteFilterRequest method.
  1668  //    req, resp := client.DeleteFilterRequest(params)
  1669  //
  1670  //    err := req.Send()
  1671  //    if err == nil { // resp is now filled
  1672  //        fmt.Println(resp)
  1673  //    }
  1674  //
  1675  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteFilter
  1676  func (c *Personalize) DeleteFilterRequest(input *DeleteFilterInput) (req *request.Request, output *DeleteFilterOutput) {
  1677  	op := &request.Operation{
  1678  		Name:       opDeleteFilter,
  1679  		HTTPMethod: "POST",
  1680  		HTTPPath:   "/",
  1681  	}
  1682  
  1683  	if input == nil {
  1684  		input = &DeleteFilterInput{}
  1685  	}
  1686  
  1687  	output = &DeleteFilterOutput{}
  1688  	req = c.newRequest(op, input, output)
  1689  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1690  	return
  1691  }
  1692  
  1693  // DeleteFilter API operation for Amazon Personalize.
  1694  //
  1695  // Deletes a filter.
  1696  //
  1697  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1698  // with awserr.Error's Code and Message methods to get detailed information about
  1699  // the error.
  1700  //
  1701  // See the AWS API reference guide for Amazon Personalize's
  1702  // API operation DeleteFilter for usage and error information.
  1703  //
  1704  // Returned Error Types:
  1705  //   * InvalidInputException
  1706  //   Provide a valid value for the field or parameter.
  1707  //
  1708  //   * ResourceNotFoundException
  1709  //   Could not find the specified resource.
  1710  //
  1711  //   * ResourceInUseException
  1712  //   The specified resource is in use.
  1713  //
  1714  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteFilter
  1715  func (c *Personalize) DeleteFilter(input *DeleteFilterInput) (*DeleteFilterOutput, error) {
  1716  	req, out := c.DeleteFilterRequest(input)
  1717  	return out, req.Send()
  1718  }
  1719  
  1720  // DeleteFilterWithContext is the same as DeleteFilter with the addition of
  1721  // the ability to pass a context and additional request options.
  1722  //
  1723  // See DeleteFilter for details on how to use this API operation.
  1724  //
  1725  // The context must be non-nil and will be used for request cancellation. If
  1726  // the context is nil a panic will occur. In the future the SDK may create
  1727  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1728  // for more information on using Contexts.
  1729  func (c *Personalize) DeleteFilterWithContext(ctx aws.Context, input *DeleteFilterInput, opts ...request.Option) (*DeleteFilterOutput, error) {
  1730  	req, out := c.DeleteFilterRequest(input)
  1731  	req.SetContext(ctx)
  1732  	req.ApplyOptions(opts...)
  1733  	return out, req.Send()
  1734  }
  1735  
  1736  const opDeleteSchema = "DeleteSchema"
  1737  
  1738  // DeleteSchemaRequest generates a "aws/request.Request" representing the
  1739  // client's request for the DeleteSchema operation. The "output" return
  1740  // value will be populated with the request's response once the request completes
  1741  // successfully.
  1742  //
  1743  // Use "Send" method on the returned Request to send the API call to the service.
  1744  // the "output" return value is not valid until after Send returns without error.
  1745  //
  1746  // See DeleteSchema for more information on using the DeleteSchema
  1747  // API call, and error handling.
  1748  //
  1749  // This method is useful when you want to inject custom logic or configuration
  1750  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1751  //
  1752  //
  1753  //    // Example sending a request using the DeleteSchemaRequest method.
  1754  //    req, resp := client.DeleteSchemaRequest(params)
  1755  //
  1756  //    err := req.Send()
  1757  //    if err == nil { // resp is now filled
  1758  //        fmt.Println(resp)
  1759  //    }
  1760  //
  1761  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteSchema
  1762  func (c *Personalize) DeleteSchemaRequest(input *DeleteSchemaInput) (req *request.Request, output *DeleteSchemaOutput) {
  1763  	op := &request.Operation{
  1764  		Name:       opDeleteSchema,
  1765  		HTTPMethod: "POST",
  1766  		HTTPPath:   "/",
  1767  	}
  1768  
  1769  	if input == nil {
  1770  		input = &DeleteSchemaInput{}
  1771  	}
  1772  
  1773  	output = &DeleteSchemaOutput{}
  1774  	req = c.newRequest(op, input, output)
  1775  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1776  	return
  1777  }
  1778  
  1779  // DeleteSchema API operation for Amazon Personalize.
  1780  //
  1781  // Deletes a schema. Before deleting a schema, you must delete all datasets
  1782  // referencing the schema. For more information on schemas, see CreateSchema.
  1783  //
  1784  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1785  // with awserr.Error's Code and Message methods to get detailed information about
  1786  // the error.
  1787  //
  1788  // See the AWS API reference guide for Amazon Personalize's
  1789  // API operation DeleteSchema for usage and error information.
  1790  //
  1791  // Returned Error Types:
  1792  //   * InvalidInputException
  1793  //   Provide a valid value for the field or parameter.
  1794  //
  1795  //   * ResourceNotFoundException
  1796  //   Could not find the specified resource.
  1797  //
  1798  //   * ResourceInUseException
  1799  //   The specified resource is in use.
  1800  //
  1801  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteSchema
  1802  func (c *Personalize) DeleteSchema(input *DeleteSchemaInput) (*DeleteSchemaOutput, error) {
  1803  	req, out := c.DeleteSchemaRequest(input)
  1804  	return out, req.Send()
  1805  }
  1806  
  1807  // DeleteSchemaWithContext is the same as DeleteSchema with the addition of
  1808  // the ability to pass a context and additional request options.
  1809  //
  1810  // See DeleteSchema 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 *Personalize) DeleteSchemaWithContext(ctx aws.Context, input *DeleteSchemaInput, opts ...request.Option) (*DeleteSchemaOutput, error) {
  1817  	req, out := c.DeleteSchemaRequest(input)
  1818  	req.SetContext(ctx)
  1819  	req.ApplyOptions(opts...)
  1820  	return out, req.Send()
  1821  }
  1822  
  1823  const opDeleteSolution = "DeleteSolution"
  1824  
  1825  // DeleteSolutionRequest generates a "aws/request.Request" representing the
  1826  // client's request for the DeleteSolution 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 DeleteSolution for more information on using the DeleteSolution
  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 DeleteSolutionRequest method.
  1841  //    req, resp := client.DeleteSolutionRequest(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/personalize-2018-05-22/DeleteSolution
  1849  func (c *Personalize) DeleteSolutionRequest(input *DeleteSolutionInput) (req *request.Request, output *DeleteSolutionOutput) {
  1850  	op := &request.Operation{
  1851  		Name:       opDeleteSolution,
  1852  		HTTPMethod: "POST",
  1853  		HTTPPath:   "/",
  1854  	}
  1855  
  1856  	if input == nil {
  1857  		input = &DeleteSolutionInput{}
  1858  	}
  1859  
  1860  	output = &DeleteSolutionOutput{}
  1861  	req = c.newRequest(op, input, output)
  1862  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1863  	return
  1864  }
  1865  
  1866  // DeleteSolution API operation for Amazon Personalize.
  1867  //
  1868  // Deletes all versions of a solution and the Solution object itself. Before
  1869  // deleting a solution, you must delete all campaigns based on the solution.
  1870  // To determine what campaigns are using the solution, call ListCampaigns and
  1871  // supply the Amazon Resource Name (ARN) of the solution. You can't delete a
  1872  // solution if an associated SolutionVersion is in the CREATE PENDING or IN
  1873  // PROGRESS state. For more information on solutions, see CreateSolution.
  1874  //
  1875  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1876  // with awserr.Error's Code and Message methods to get detailed information about
  1877  // the error.
  1878  //
  1879  // See the AWS API reference guide for Amazon Personalize's
  1880  // API operation DeleteSolution for usage and error information.
  1881  //
  1882  // Returned Error Types:
  1883  //   * InvalidInputException
  1884  //   Provide a valid value for the field or parameter.
  1885  //
  1886  //   * ResourceNotFoundException
  1887  //   Could not find the specified resource.
  1888  //
  1889  //   * ResourceInUseException
  1890  //   The specified resource is in use.
  1891  //
  1892  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DeleteSolution
  1893  func (c *Personalize) DeleteSolution(input *DeleteSolutionInput) (*DeleteSolutionOutput, error) {
  1894  	req, out := c.DeleteSolutionRequest(input)
  1895  	return out, req.Send()
  1896  }
  1897  
  1898  // DeleteSolutionWithContext is the same as DeleteSolution with the addition of
  1899  // the ability to pass a context and additional request options.
  1900  //
  1901  // See DeleteSolution for details on how to use this API operation.
  1902  //
  1903  // The context must be non-nil and will be used for request cancellation. If
  1904  // the context is nil a panic will occur. In the future the SDK may create
  1905  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1906  // for more information on using Contexts.
  1907  func (c *Personalize) DeleteSolutionWithContext(ctx aws.Context, input *DeleteSolutionInput, opts ...request.Option) (*DeleteSolutionOutput, error) {
  1908  	req, out := c.DeleteSolutionRequest(input)
  1909  	req.SetContext(ctx)
  1910  	req.ApplyOptions(opts...)
  1911  	return out, req.Send()
  1912  }
  1913  
  1914  const opDescribeAlgorithm = "DescribeAlgorithm"
  1915  
  1916  // DescribeAlgorithmRequest generates a "aws/request.Request" representing the
  1917  // client's request for the DescribeAlgorithm operation. The "output" return
  1918  // value will be populated with the request's response once the request completes
  1919  // successfully.
  1920  //
  1921  // Use "Send" method on the returned Request to send the API call to the service.
  1922  // the "output" return value is not valid until after Send returns without error.
  1923  //
  1924  // See DescribeAlgorithm for more information on using the DescribeAlgorithm
  1925  // API call, and error handling.
  1926  //
  1927  // This method is useful when you want to inject custom logic or configuration
  1928  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1929  //
  1930  //
  1931  //    // Example sending a request using the DescribeAlgorithmRequest method.
  1932  //    req, resp := client.DescribeAlgorithmRequest(params)
  1933  //
  1934  //    err := req.Send()
  1935  //    if err == nil { // resp is now filled
  1936  //        fmt.Println(resp)
  1937  //    }
  1938  //
  1939  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeAlgorithm
  1940  func (c *Personalize) DescribeAlgorithmRequest(input *DescribeAlgorithmInput) (req *request.Request, output *DescribeAlgorithmOutput) {
  1941  	op := &request.Operation{
  1942  		Name:       opDescribeAlgorithm,
  1943  		HTTPMethod: "POST",
  1944  		HTTPPath:   "/",
  1945  	}
  1946  
  1947  	if input == nil {
  1948  		input = &DescribeAlgorithmInput{}
  1949  	}
  1950  
  1951  	output = &DescribeAlgorithmOutput{}
  1952  	req = c.newRequest(op, input, output)
  1953  	return
  1954  }
  1955  
  1956  // DescribeAlgorithm API operation for Amazon Personalize.
  1957  //
  1958  // Describes the given algorithm.
  1959  //
  1960  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1961  // with awserr.Error's Code and Message methods to get detailed information about
  1962  // the error.
  1963  //
  1964  // See the AWS API reference guide for Amazon Personalize's
  1965  // API operation DescribeAlgorithm for usage and error information.
  1966  //
  1967  // Returned Error Types:
  1968  //   * InvalidInputException
  1969  //   Provide a valid value for the field or parameter.
  1970  //
  1971  //   * ResourceNotFoundException
  1972  //   Could not find the specified resource.
  1973  //
  1974  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeAlgorithm
  1975  func (c *Personalize) DescribeAlgorithm(input *DescribeAlgorithmInput) (*DescribeAlgorithmOutput, error) {
  1976  	req, out := c.DescribeAlgorithmRequest(input)
  1977  	return out, req.Send()
  1978  }
  1979  
  1980  // DescribeAlgorithmWithContext is the same as DescribeAlgorithm with the addition of
  1981  // the ability to pass a context and additional request options.
  1982  //
  1983  // See DescribeAlgorithm for details on how to use this API operation.
  1984  //
  1985  // The context must be non-nil and will be used for request cancellation. If
  1986  // the context is nil a panic will occur. In the future the SDK may create
  1987  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1988  // for more information on using Contexts.
  1989  func (c *Personalize) DescribeAlgorithmWithContext(ctx aws.Context, input *DescribeAlgorithmInput, opts ...request.Option) (*DescribeAlgorithmOutput, error) {
  1990  	req, out := c.DescribeAlgorithmRequest(input)
  1991  	req.SetContext(ctx)
  1992  	req.ApplyOptions(opts...)
  1993  	return out, req.Send()
  1994  }
  1995  
  1996  const opDescribeBatchInferenceJob = "DescribeBatchInferenceJob"
  1997  
  1998  // DescribeBatchInferenceJobRequest generates a "aws/request.Request" representing the
  1999  // client's request for the DescribeBatchInferenceJob operation. The "output" return
  2000  // value will be populated with the request's response once the request completes
  2001  // successfully.
  2002  //
  2003  // Use "Send" method on the returned Request to send the API call to the service.
  2004  // the "output" return value is not valid until after Send returns without error.
  2005  //
  2006  // See DescribeBatchInferenceJob for more information on using the DescribeBatchInferenceJob
  2007  // API call, and error handling.
  2008  //
  2009  // This method is useful when you want to inject custom logic or configuration
  2010  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2011  //
  2012  //
  2013  //    // Example sending a request using the DescribeBatchInferenceJobRequest method.
  2014  //    req, resp := client.DescribeBatchInferenceJobRequest(params)
  2015  //
  2016  //    err := req.Send()
  2017  //    if err == nil { // resp is now filled
  2018  //        fmt.Println(resp)
  2019  //    }
  2020  //
  2021  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeBatchInferenceJob
  2022  func (c *Personalize) DescribeBatchInferenceJobRequest(input *DescribeBatchInferenceJobInput) (req *request.Request, output *DescribeBatchInferenceJobOutput) {
  2023  	op := &request.Operation{
  2024  		Name:       opDescribeBatchInferenceJob,
  2025  		HTTPMethod: "POST",
  2026  		HTTPPath:   "/",
  2027  	}
  2028  
  2029  	if input == nil {
  2030  		input = &DescribeBatchInferenceJobInput{}
  2031  	}
  2032  
  2033  	output = &DescribeBatchInferenceJobOutput{}
  2034  	req = c.newRequest(op, input, output)
  2035  	return
  2036  }
  2037  
  2038  // DescribeBatchInferenceJob API operation for Amazon Personalize.
  2039  //
  2040  // Gets the properties of a batch inference job including name, Amazon Resource
  2041  // Name (ARN), status, input and output configurations, and the ARN of the solution
  2042  // version used to generate the recommendations.
  2043  //
  2044  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2045  // with awserr.Error's Code and Message methods to get detailed information about
  2046  // the error.
  2047  //
  2048  // See the AWS API reference guide for Amazon Personalize's
  2049  // API operation DescribeBatchInferenceJob for usage and error information.
  2050  //
  2051  // Returned Error Types:
  2052  //   * InvalidInputException
  2053  //   Provide a valid value for the field or parameter.
  2054  //
  2055  //   * ResourceNotFoundException
  2056  //   Could not find the specified resource.
  2057  //
  2058  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeBatchInferenceJob
  2059  func (c *Personalize) DescribeBatchInferenceJob(input *DescribeBatchInferenceJobInput) (*DescribeBatchInferenceJobOutput, error) {
  2060  	req, out := c.DescribeBatchInferenceJobRequest(input)
  2061  	return out, req.Send()
  2062  }
  2063  
  2064  // DescribeBatchInferenceJobWithContext is the same as DescribeBatchInferenceJob with the addition of
  2065  // the ability to pass a context and additional request options.
  2066  //
  2067  // See DescribeBatchInferenceJob for details on how to use this API operation.
  2068  //
  2069  // The context must be non-nil and will be used for request cancellation. If
  2070  // the context is nil a panic will occur. In the future the SDK may create
  2071  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2072  // for more information on using Contexts.
  2073  func (c *Personalize) DescribeBatchInferenceJobWithContext(ctx aws.Context, input *DescribeBatchInferenceJobInput, opts ...request.Option) (*DescribeBatchInferenceJobOutput, error) {
  2074  	req, out := c.DescribeBatchInferenceJobRequest(input)
  2075  	req.SetContext(ctx)
  2076  	req.ApplyOptions(opts...)
  2077  	return out, req.Send()
  2078  }
  2079  
  2080  const opDescribeCampaign = "DescribeCampaign"
  2081  
  2082  // DescribeCampaignRequest generates a "aws/request.Request" representing the
  2083  // client's request for the DescribeCampaign operation. The "output" return
  2084  // value will be populated with the request's response once the request completes
  2085  // successfully.
  2086  //
  2087  // Use "Send" method on the returned Request to send the API call to the service.
  2088  // the "output" return value is not valid until after Send returns without error.
  2089  //
  2090  // See DescribeCampaign for more information on using the DescribeCampaign
  2091  // API call, and error handling.
  2092  //
  2093  // This method is useful when you want to inject custom logic or configuration
  2094  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2095  //
  2096  //
  2097  //    // Example sending a request using the DescribeCampaignRequest method.
  2098  //    req, resp := client.DescribeCampaignRequest(params)
  2099  //
  2100  //    err := req.Send()
  2101  //    if err == nil { // resp is now filled
  2102  //        fmt.Println(resp)
  2103  //    }
  2104  //
  2105  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeCampaign
  2106  func (c *Personalize) DescribeCampaignRequest(input *DescribeCampaignInput) (req *request.Request, output *DescribeCampaignOutput) {
  2107  	op := &request.Operation{
  2108  		Name:       opDescribeCampaign,
  2109  		HTTPMethod: "POST",
  2110  		HTTPPath:   "/",
  2111  	}
  2112  
  2113  	if input == nil {
  2114  		input = &DescribeCampaignInput{}
  2115  	}
  2116  
  2117  	output = &DescribeCampaignOutput{}
  2118  	req = c.newRequest(op, input, output)
  2119  	return
  2120  }
  2121  
  2122  // DescribeCampaign API operation for Amazon Personalize.
  2123  //
  2124  // Describes the given campaign, including its status.
  2125  //
  2126  // A campaign can be in one of the following states:
  2127  //
  2128  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  2129  //
  2130  //    * DELETE PENDING > DELETE IN_PROGRESS
  2131  //
  2132  // When the status is CREATE FAILED, the response includes the failureReason
  2133  // key, which describes why.
  2134  //
  2135  // For more information on campaigns, see CreateCampaign.
  2136  //
  2137  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2138  // with awserr.Error's Code and Message methods to get detailed information about
  2139  // the error.
  2140  //
  2141  // See the AWS API reference guide for Amazon Personalize's
  2142  // API operation DescribeCampaign for usage and error information.
  2143  //
  2144  // Returned Error Types:
  2145  //   * InvalidInputException
  2146  //   Provide a valid value for the field or parameter.
  2147  //
  2148  //   * ResourceNotFoundException
  2149  //   Could not find the specified resource.
  2150  //
  2151  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeCampaign
  2152  func (c *Personalize) DescribeCampaign(input *DescribeCampaignInput) (*DescribeCampaignOutput, error) {
  2153  	req, out := c.DescribeCampaignRequest(input)
  2154  	return out, req.Send()
  2155  }
  2156  
  2157  // DescribeCampaignWithContext is the same as DescribeCampaign with the addition of
  2158  // the ability to pass a context and additional request options.
  2159  //
  2160  // See DescribeCampaign for details on how to use this API operation.
  2161  //
  2162  // The context must be non-nil and will be used for request cancellation. If
  2163  // the context is nil a panic will occur. In the future the SDK may create
  2164  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2165  // for more information on using Contexts.
  2166  func (c *Personalize) DescribeCampaignWithContext(ctx aws.Context, input *DescribeCampaignInput, opts ...request.Option) (*DescribeCampaignOutput, error) {
  2167  	req, out := c.DescribeCampaignRequest(input)
  2168  	req.SetContext(ctx)
  2169  	req.ApplyOptions(opts...)
  2170  	return out, req.Send()
  2171  }
  2172  
  2173  const opDescribeDataset = "DescribeDataset"
  2174  
  2175  // DescribeDatasetRequest generates a "aws/request.Request" representing the
  2176  // client's request for the DescribeDataset operation. The "output" return
  2177  // value will be populated with the request's response once the request completes
  2178  // successfully.
  2179  //
  2180  // Use "Send" method on the returned Request to send the API call to the service.
  2181  // the "output" return value is not valid until after Send returns without error.
  2182  //
  2183  // See DescribeDataset for more information on using the DescribeDataset
  2184  // API call, and error handling.
  2185  //
  2186  // This method is useful when you want to inject custom logic or configuration
  2187  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2188  //
  2189  //
  2190  //    // Example sending a request using the DescribeDatasetRequest method.
  2191  //    req, resp := client.DescribeDatasetRequest(params)
  2192  //
  2193  //    err := req.Send()
  2194  //    if err == nil { // resp is now filled
  2195  //        fmt.Println(resp)
  2196  //    }
  2197  //
  2198  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDataset
  2199  func (c *Personalize) DescribeDatasetRequest(input *DescribeDatasetInput) (req *request.Request, output *DescribeDatasetOutput) {
  2200  	op := &request.Operation{
  2201  		Name:       opDescribeDataset,
  2202  		HTTPMethod: "POST",
  2203  		HTTPPath:   "/",
  2204  	}
  2205  
  2206  	if input == nil {
  2207  		input = &DescribeDatasetInput{}
  2208  	}
  2209  
  2210  	output = &DescribeDatasetOutput{}
  2211  	req = c.newRequest(op, input, output)
  2212  	return
  2213  }
  2214  
  2215  // DescribeDataset API operation for Amazon Personalize.
  2216  //
  2217  // Describes the given dataset. For more information on datasets, see CreateDataset.
  2218  //
  2219  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2220  // with awserr.Error's Code and Message methods to get detailed information about
  2221  // the error.
  2222  //
  2223  // See the AWS API reference guide for Amazon Personalize's
  2224  // API operation DescribeDataset for usage and error information.
  2225  //
  2226  // Returned Error Types:
  2227  //   * InvalidInputException
  2228  //   Provide a valid value for the field or parameter.
  2229  //
  2230  //   * ResourceNotFoundException
  2231  //   Could not find the specified resource.
  2232  //
  2233  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDataset
  2234  func (c *Personalize) DescribeDataset(input *DescribeDatasetInput) (*DescribeDatasetOutput, error) {
  2235  	req, out := c.DescribeDatasetRequest(input)
  2236  	return out, req.Send()
  2237  }
  2238  
  2239  // DescribeDatasetWithContext is the same as DescribeDataset with the addition of
  2240  // the ability to pass a context and additional request options.
  2241  //
  2242  // See DescribeDataset for details on how to use this API operation.
  2243  //
  2244  // The context must be non-nil and will be used for request cancellation. If
  2245  // the context is nil a panic will occur. In the future the SDK may create
  2246  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2247  // for more information on using Contexts.
  2248  func (c *Personalize) DescribeDatasetWithContext(ctx aws.Context, input *DescribeDatasetInput, opts ...request.Option) (*DescribeDatasetOutput, error) {
  2249  	req, out := c.DescribeDatasetRequest(input)
  2250  	req.SetContext(ctx)
  2251  	req.ApplyOptions(opts...)
  2252  	return out, req.Send()
  2253  }
  2254  
  2255  const opDescribeDatasetExportJob = "DescribeDatasetExportJob"
  2256  
  2257  // DescribeDatasetExportJobRequest generates a "aws/request.Request" representing the
  2258  // client's request for the DescribeDatasetExportJob operation. The "output" return
  2259  // value will be populated with the request's response once the request completes
  2260  // successfully.
  2261  //
  2262  // Use "Send" method on the returned Request to send the API call to the service.
  2263  // the "output" return value is not valid until after Send returns without error.
  2264  //
  2265  // See DescribeDatasetExportJob for more information on using the DescribeDatasetExportJob
  2266  // API call, and error handling.
  2267  //
  2268  // This method is useful when you want to inject custom logic or configuration
  2269  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2270  //
  2271  //
  2272  //    // Example sending a request using the DescribeDatasetExportJobRequest method.
  2273  //    req, resp := client.DescribeDatasetExportJobRequest(params)
  2274  //
  2275  //    err := req.Send()
  2276  //    if err == nil { // resp is now filled
  2277  //        fmt.Println(resp)
  2278  //    }
  2279  //
  2280  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDatasetExportJob
  2281  func (c *Personalize) DescribeDatasetExportJobRequest(input *DescribeDatasetExportJobInput) (req *request.Request, output *DescribeDatasetExportJobOutput) {
  2282  	op := &request.Operation{
  2283  		Name:       opDescribeDatasetExportJob,
  2284  		HTTPMethod: "POST",
  2285  		HTTPPath:   "/",
  2286  	}
  2287  
  2288  	if input == nil {
  2289  		input = &DescribeDatasetExportJobInput{}
  2290  	}
  2291  
  2292  	output = &DescribeDatasetExportJobOutput{}
  2293  	req = c.newRequest(op, input, output)
  2294  	return
  2295  }
  2296  
  2297  // DescribeDatasetExportJob API operation for Amazon Personalize.
  2298  //
  2299  // Describes the dataset export job created by CreateDatasetExportJob, including
  2300  // the export job status.
  2301  //
  2302  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2303  // with awserr.Error's Code and Message methods to get detailed information about
  2304  // the error.
  2305  //
  2306  // See the AWS API reference guide for Amazon Personalize's
  2307  // API operation DescribeDatasetExportJob for usage and error information.
  2308  //
  2309  // Returned Error Types:
  2310  //   * InvalidInputException
  2311  //   Provide a valid value for the field or parameter.
  2312  //
  2313  //   * ResourceNotFoundException
  2314  //   Could not find the specified resource.
  2315  //
  2316  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDatasetExportJob
  2317  func (c *Personalize) DescribeDatasetExportJob(input *DescribeDatasetExportJobInput) (*DescribeDatasetExportJobOutput, error) {
  2318  	req, out := c.DescribeDatasetExportJobRequest(input)
  2319  	return out, req.Send()
  2320  }
  2321  
  2322  // DescribeDatasetExportJobWithContext is the same as DescribeDatasetExportJob with the addition of
  2323  // the ability to pass a context and additional request options.
  2324  //
  2325  // See DescribeDatasetExportJob for details on how to use this API operation.
  2326  //
  2327  // The context must be non-nil and will be used for request cancellation. If
  2328  // the context is nil a panic will occur. In the future the SDK may create
  2329  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2330  // for more information on using Contexts.
  2331  func (c *Personalize) DescribeDatasetExportJobWithContext(ctx aws.Context, input *DescribeDatasetExportJobInput, opts ...request.Option) (*DescribeDatasetExportJobOutput, error) {
  2332  	req, out := c.DescribeDatasetExportJobRequest(input)
  2333  	req.SetContext(ctx)
  2334  	req.ApplyOptions(opts...)
  2335  	return out, req.Send()
  2336  }
  2337  
  2338  const opDescribeDatasetGroup = "DescribeDatasetGroup"
  2339  
  2340  // DescribeDatasetGroupRequest generates a "aws/request.Request" representing the
  2341  // client's request for the DescribeDatasetGroup operation. The "output" return
  2342  // value will be populated with the request's response once the request completes
  2343  // successfully.
  2344  //
  2345  // Use "Send" method on the returned Request to send the API call to the service.
  2346  // the "output" return value is not valid until after Send returns without error.
  2347  //
  2348  // See DescribeDatasetGroup for more information on using the DescribeDatasetGroup
  2349  // API call, and error handling.
  2350  //
  2351  // This method is useful when you want to inject custom logic or configuration
  2352  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2353  //
  2354  //
  2355  //    // Example sending a request using the DescribeDatasetGroupRequest method.
  2356  //    req, resp := client.DescribeDatasetGroupRequest(params)
  2357  //
  2358  //    err := req.Send()
  2359  //    if err == nil { // resp is now filled
  2360  //        fmt.Println(resp)
  2361  //    }
  2362  //
  2363  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDatasetGroup
  2364  func (c *Personalize) DescribeDatasetGroupRequest(input *DescribeDatasetGroupInput) (req *request.Request, output *DescribeDatasetGroupOutput) {
  2365  	op := &request.Operation{
  2366  		Name:       opDescribeDatasetGroup,
  2367  		HTTPMethod: "POST",
  2368  		HTTPPath:   "/",
  2369  	}
  2370  
  2371  	if input == nil {
  2372  		input = &DescribeDatasetGroupInput{}
  2373  	}
  2374  
  2375  	output = &DescribeDatasetGroupOutput{}
  2376  	req = c.newRequest(op, input, output)
  2377  	return
  2378  }
  2379  
  2380  // DescribeDatasetGroup API operation for Amazon Personalize.
  2381  //
  2382  // Describes the given dataset group. For more information on dataset groups,
  2383  // see CreateDatasetGroup.
  2384  //
  2385  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2386  // with awserr.Error's Code and Message methods to get detailed information about
  2387  // the error.
  2388  //
  2389  // See the AWS API reference guide for Amazon Personalize's
  2390  // API operation DescribeDatasetGroup for usage and error information.
  2391  //
  2392  // Returned Error Types:
  2393  //   * InvalidInputException
  2394  //   Provide a valid value for the field or parameter.
  2395  //
  2396  //   * ResourceNotFoundException
  2397  //   Could not find the specified resource.
  2398  //
  2399  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDatasetGroup
  2400  func (c *Personalize) DescribeDatasetGroup(input *DescribeDatasetGroupInput) (*DescribeDatasetGroupOutput, error) {
  2401  	req, out := c.DescribeDatasetGroupRequest(input)
  2402  	return out, req.Send()
  2403  }
  2404  
  2405  // DescribeDatasetGroupWithContext is the same as DescribeDatasetGroup with the addition of
  2406  // the ability to pass a context and additional request options.
  2407  //
  2408  // See DescribeDatasetGroup for details on how to use this API operation.
  2409  //
  2410  // The context must be non-nil and will be used for request cancellation. If
  2411  // the context is nil a panic will occur. In the future the SDK may create
  2412  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2413  // for more information on using Contexts.
  2414  func (c *Personalize) DescribeDatasetGroupWithContext(ctx aws.Context, input *DescribeDatasetGroupInput, opts ...request.Option) (*DescribeDatasetGroupOutput, error) {
  2415  	req, out := c.DescribeDatasetGroupRequest(input)
  2416  	req.SetContext(ctx)
  2417  	req.ApplyOptions(opts...)
  2418  	return out, req.Send()
  2419  }
  2420  
  2421  const opDescribeDatasetImportJob = "DescribeDatasetImportJob"
  2422  
  2423  // DescribeDatasetImportJobRequest generates a "aws/request.Request" representing the
  2424  // client's request for the DescribeDatasetImportJob operation. The "output" return
  2425  // value will be populated with the request's response once the request completes
  2426  // successfully.
  2427  //
  2428  // Use "Send" method on the returned Request to send the API call to the service.
  2429  // the "output" return value is not valid until after Send returns without error.
  2430  //
  2431  // See DescribeDatasetImportJob for more information on using the DescribeDatasetImportJob
  2432  // API call, and error handling.
  2433  //
  2434  // This method is useful when you want to inject custom logic or configuration
  2435  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2436  //
  2437  //
  2438  //    // Example sending a request using the DescribeDatasetImportJobRequest method.
  2439  //    req, resp := client.DescribeDatasetImportJobRequest(params)
  2440  //
  2441  //    err := req.Send()
  2442  //    if err == nil { // resp is now filled
  2443  //        fmt.Println(resp)
  2444  //    }
  2445  //
  2446  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDatasetImportJob
  2447  func (c *Personalize) DescribeDatasetImportJobRequest(input *DescribeDatasetImportJobInput) (req *request.Request, output *DescribeDatasetImportJobOutput) {
  2448  	op := &request.Operation{
  2449  		Name:       opDescribeDatasetImportJob,
  2450  		HTTPMethod: "POST",
  2451  		HTTPPath:   "/",
  2452  	}
  2453  
  2454  	if input == nil {
  2455  		input = &DescribeDatasetImportJobInput{}
  2456  	}
  2457  
  2458  	output = &DescribeDatasetImportJobOutput{}
  2459  	req = c.newRequest(op, input, output)
  2460  	return
  2461  }
  2462  
  2463  // DescribeDatasetImportJob API operation for Amazon Personalize.
  2464  //
  2465  // Describes the dataset import job created by CreateDatasetImportJob, including
  2466  // the import job status.
  2467  //
  2468  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2469  // with awserr.Error's Code and Message methods to get detailed information about
  2470  // the error.
  2471  //
  2472  // See the AWS API reference guide for Amazon Personalize's
  2473  // API operation DescribeDatasetImportJob for usage and error information.
  2474  //
  2475  // Returned Error Types:
  2476  //   * InvalidInputException
  2477  //   Provide a valid value for the field or parameter.
  2478  //
  2479  //   * ResourceNotFoundException
  2480  //   Could not find the specified resource.
  2481  //
  2482  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeDatasetImportJob
  2483  func (c *Personalize) DescribeDatasetImportJob(input *DescribeDatasetImportJobInput) (*DescribeDatasetImportJobOutput, error) {
  2484  	req, out := c.DescribeDatasetImportJobRequest(input)
  2485  	return out, req.Send()
  2486  }
  2487  
  2488  // DescribeDatasetImportJobWithContext is the same as DescribeDatasetImportJob with the addition of
  2489  // the ability to pass a context and additional request options.
  2490  //
  2491  // See DescribeDatasetImportJob for details on how to use this API operation.
  2492  //
  2493  // The context must be non-nil and will be used for request cancellation. If
  2494  // the context is nil a panic will occur. In the future the SDK may create
  2495  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2496  // for more information on using Contexts.
  2497  func (c *Personalize) DescribeDatasetImportJobWithContext(ctx aws.Context, input *DescribeDatasetImportJobInput, opts ...request.Option) (*DescribeDatasetImportJobOutput, error) {
  2498  	req, out := c.DescribeDatasetImportJobRequest(input)
  2499  	req.SetContext(ctx)
  2500  	req.ApplyOptions(opts...)
  2501  	return out, req.Send()
  2502  }
  2503  
  2504  const opDescribeEventTracker = "DescribeEventTracker"
  2505  
  2506  // DescribeEventTrackerRequest generates a "aws/request.Request" representing the
  2507  // client's request for the DescribeEventTracker operation. The "output" return
  2508  // value will be populated with the request's response once the request completes
  2509  // successfully.
  2510  //
  2511  // Use "Send" method on the returned Request to send the API call to the service.
  2512  // the "output" return value is not valid until after Send returns without error.
  2513  //
  2514  // See DescribeEventTracker for more information on using the DescribeEventTracker
  2515  // API call, and error handling.
  2516  //
  2517  // This method is useful when you want to inject custom logic or configuration
  2518  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2519  //
  2520  //
  2521  //    // Example sending a request using the DescribeEventTrackerRequest method.
  2522  //    req, resp := client.DescribeEventTrackerRequest(params)
  2523  //
  2524  //    err := req.Send()
  2525  //    if err == nil { // resp is now filled
  2526  //        fmt.Println(resp)
  2527  //    }
  2528  //
  2529  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeEventTracker
  2530  func (c *Personalize) DescribeEventTrackerRequest(input *DescribeEventTrackerInput) (req *request.Request, output *DescribeEventTrackerOutput) {
  2531  	op := &request.Operation{
  2532  		Name:       opDescribeEventTracker,
  2533  		HTTPMethod: "POST",
  2534  		HTTPPath:   "/",
  2535  	}
  2536  
  2537  	if input == nil {
  2538  		input = &DescribeEventTrackerInput{}
  2539  	}
  2540  
  2541  	output = &DescribeEventTrackerOutput{}
  2542  	req = c.newRequest(op, input, output)
  2543  	return
  2544  }
  2545  
  2546  // DescribeEventTracker API operation for Amazon Personalize.
  2547  //
  2548  // Describes an event tracker. The response includes the trackingId and status
  2549  // of the event tracker. For more information on event trackers, see CreateEventTracker.
  2550  //
  2551  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2552  // with awserr.Error's Code and Message methods to get detailed information about
  2553  // the error.
  2554  //
  2555  // See the AWS API reference guide for Amazon Personalize's
  2556  // API operation DescribeEventTracker for usage and error information.
  2557  //
  2558  // Returned Error Types:
  2559  //   * InvalidInputException
  2560  //   Provide a valid value for the field or parameter.
  2561  //
  2562  //   * ResourceNotFoundException
  2563  //   Could not find the specified resource.
  2564  //
  2565  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeEventTracker
  2566  func (c *Personalize) DescribeEventTracker(input *DescribeEventTrackerInput) (*DescribeEventTrackerOutput, error) {
  2567  	req, out := c.DescribeEventTrackerRequest(input)
  2568  	return out, req.Send()
  2569  }
  2570  
  2571  // DescribeEventTrackerWithContext is the same as DescribeEventTracker with the addition of
  2572  // the ability to pass a context and additional request options.
  2573  //
  2574  // See DescribeEventTracker for details on how to use this API operation.
  2575  //
  2576  // The context must be non-nil and will be used for request cancellation. If
  2577  // the context is nil a panic will occur. In the future the SDK may create
  2578  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2579  // for more information on using Contexts.
  2580  func (c *Personalize) DescribeEventTrackerWithContext(ctx aws.Context, input *DescribeEventTrackerInput, opts ...request.Option) (*DescribeEventTrackerOutput, error) {
  2581  	req, out := c.DescribeEventTrackerRequest(input)
  2582  	req.SetContext(ctx)
  2583  	req.ApplyOptions(opts...)
  2584  	return out, req.Send()
  2585  }
  2586  
  2587  const opDescribeFeatureTransformation = "DescribeFeatureTransformation"
  2588  
  2589  // DescribeFeatureTransformationRequest generates a "aws/request.Request" representing the
  2590  // client's request for the DescribeFeatureTransformation operation. The "output" return
  2591  // value will be populated with the request's response once the request completes
  2592  // successfully.
  2593  //
  2594  // Use "Send" method on the returned Request to send the API call to the service.
  2595  // the "output" return value is not valid until after Send returns without error.
  2596  //
  2597  // See DescribeFeatureTransformation for more information on using the DescribeFeatureTransformation
  2598  // API call, and error handling.
  2599  //
  2600  // This method is useful when you want to inject custom logic or configuration
  2601  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2602  //
  2603  //
  2604  //    // Example sending a request using the DescribeFeatureTransformationRequest method.
  2605  //    req, resp := client.DescribeFeatureTransformationRequest(params)
  2606  //
  2607  //    err := req.Send()
  2608  //    if err == nil { // resp is now filled
  2609  //        fmt.Println(resp)
  2610  //    }
  2611  //
  2612  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeFeatureTransformation
  2613  func (c *Personalize) DescribeFeatureTransformationRequest(input *DescribeFeatureTransformationInput) (req *request.Request, output *DescribeFeatureTransformationOutput) {
  2614  	op := &request.Operation{
  2615  		Name:       opDescribeFeatureTransformation,
  2616  		HTTPMethod: "POST",
  2617  		HTTPPath:   "/",
  2618  	}
  2619  
  2620  	if input == nil {
  2621  		input = &DescribeFeatureTransformationInput{}
  2622  	}
  2623  
  2624  	output = &DescribeFeatureTransformationOutput{}
  2625  	req = c.newRequest(op, input, output)
  2626  	return
  2627  }
  2628  
  2629  // DescribeFeatureTransformation API operation for Amazon Personalize.
  2630  //
  2631  // Describes the given feature transformation.
  2632  //
  2633  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2634  // with awserr.Error's Code and Message methods to get detailed information about
  2635  // the error.
  2636  //
  2637  // See the AWS API reference guide for Amazon Personalize's
  2638  // API operation DescribeFeatureTransformation for usage and error information.
  2639  //
  2640  // Returned Error Types:
  2641  //   * InvalidInputException
  2642  //   Provide a valid value for the field or parameter.
  2643  //
  2644  //   * ResourceNotFoundException
  2645  //   Could not find the specified resource.
  2646  //
  2647  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeFeatureTransformation
  2648  func (c *Personalize) DescribeFeatureTransformation(input *DescribeFeatureTransformationInput) (*DescribeFeatureTransformationOutput, error) {
  2649  	req, out := c.DescribeFeatureTransformationRequest(input)
  2650  	return out, req.Send()
  2651  }
  2652  
  2653  // DescribeFeatureTransformationWithContext is the same as DescribeFeatureTransformation with the addition of
  2654  // the ability to pass a context and additional request options.
  2655  //
  2656  // See DescribeFeatureTransformation for details on how to use this API operation.
  2657  //
  2658  // The context must be non-nil and will be used for request cancellation. If
  2659  // the context is nil a panic will occur. In the future the SDK may create
  2660  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2661  // for more information on using Contexts.
  2662  func (c *Personalize) DescribeFeatureTransformationWithContext(ctx aws.Context, input *DescribeFeatureTransformationInput, opts ...request.Option) (*DescribeFeatureTransformationOutput, error) {
  2663  	req, out := c.DescribeFeatureTransformationRequest(input)
  2664  	req.SetContext(ctx)
  2665  	req.ApplyOptions(opts...)
  2666  	return out, req.Send()
  2667  }
  2668  
  2669  const opDescribeFilter = "DescribeFilter"
  2670  
  2671  // DescribeFilterRequest generates a "aws/request.Request" representing the
  2672  // client's request for the DescribeFilter operation. The "output" return
  2673  // value will be populated with the request's response once the request completes
  2674  // successfully.
  2675  //
  2676  // Use "Send" method on the returned Request to send the API call to the service.
  2677  // the "output" return value is not valid until after Send returns without error.
  2678  //
  2679  // See DescribeFilter for more information on using the DescribeFilter
  2680  // API call, and error handling.
  2681  //
  2682  // This method is useful when you want to inject custom logic or configuration
  2683  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2684  //
  2685  //
  2686  //    // Example sending a request using the DescribeFilterRequest method.
  2687  //    req, resp := client.DescribeFilterRequest(params)
  2688  //
  2689  //    err := req.Send()
  2690  //    if err == nil { // resp is now filled
  2691  //        fmt.Println(resp)
  2692  //    }
  2693  //
  2694  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeFilter
  2695  func (c *Personalize) DescribeFilterRequest(input *DescribeFilterInput) (req *request.Request, output *DescribeFilterOutput) {
  2696  	op := &request.Operation{
  2697  		Name:       opDescribeFilter,
  2698  		HTTPMethod: "POST",
  2699  		HTTPPath:   "/",
  2700  	}
  2701  
  2702  	if input == nil {
  2703  		input = &DescribeFilterInput{}
  2704  	}
  2705  
  2706  	output = &DescribeFilterOutput{}
  2707  	req = c.newRequest(op, input, output)
  2708  	return
  2709  }
  2710  
  2711  // DescribeFilter API operation for Amazon Personalize.
  2712  //
  2713  // Describes a filter's properties.
  2714  //
  2715  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2716  // with awserr.Error's Code and Message methods to get detailed information about
  2717  // the error.
  2718  //
  2719  // See the AWS API reference guide for Amazon Personalize's
  2720  // API operation DescribeFilter for usage and error information.
  2721  //
  2722  // Returned Error Types:
  2723  //   * InvalidInputException
  2724  //   Provide a valid value for the field or parameter.
  2725  //
  2726  //   * ResourceNotFoundException
  2727  //   Could not find the specified resource.
  2728  //
  2729  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeFilter
  2730  func (c *Personalize) DescribeFilter(input *DescribeFilterInput) (*DescribeFilterOutput, error) {
  2731  	req, out := c.DescribeFilterRequest(input)
  2732  	return out, req.Send()
  2733  }
  2734  
  2735  // DescribeFilterWithContext is the same as DescribeFilter with the addition of
  2736  // the ability to pass a context and additional request options.
  2737  //
  2738  // See DescribeFilter for details on how to use this API operation.
  2739  //
  2740  // The context must be non-nil and will be used for request cancellation. If
  2741  // the context is nil a panic will occur. In the future the SDK may create
  2742  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2743  // for more information on using Contexts.
  2744  func (c *Personalize) DescribeFilterWithContext(ctx aws.Context, input *DescribeFilterInput, opts ...request.Option) (*DescribeFilterOutput, error) {
  2745  	req, out := c.DescribeFilterRequest(input)
  2746  	req.SetContext(ctx)
  2747  	req.ApplyOptions(opts...)
  2748  	return out, req.Send()
  2749  }
  2750  
  2751  const opDescribeRecipe = "DescribeRecipe"
  2752  
  2753  // DescribeRecipeRequest generates a "aws/request.Request" representing the
  2754  // client's request for the DescribeRecipe operation. The "output" return
  2755  // value will be populated with the request's response once the request completes
  2756  // successfully.
  2757  //
  2758  // Use "Send" method on the returned Request to send the API call to the service.
  2759  // the "output" return value is not valid until after Send returns without error.
  2760  //
  2761  // See DescribeRecipe for more information on using the DescribeRecipe
  2762  // API call, and error handling.
  2763  //
  2764  // This method is useful when you want to inject custom logic or configuration
  2765  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2766  //
  2767  //
  2768  //    // Example sending a request using the DescribeRecipeRequest method.
  2769  //    req, resp := client.DescribeRecipeRequest(params)
  2770  //
  2771  //    err := req.Send()
  2772  //    if err == nil { // resp is now filled
  2773  //        fmt.Println(resp)
  2774  //    }
  2775  //
  2776  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeRecipe
  2777  func (c *Personalize) DescribeRecipeRequest(input *DescribeRecipeInput) (req *request.Request, output *DescribeRecipeOutput) {
  2778  	op := &request.Operation{
  2779  		Name:       opDescribeRecipe,
  2780  		HTTPMethod: "POST",
  2781  		HTTPPath:   "/",
  2782  	}
  2783  
  2784  	if input == nil {
  2785  		input = &DescribeRecipeInput{}
  2786  	}
  2787  
  2788  	output = &DescribeRecipeOutput{}
  2789  	req = c.newRequest(op, input, output)
  2790  	return
  2791  }
  2792  
  2793  // DescribeRecipe API operation for Amazon Personalize.
  2794  //
  2795  // Describes a recipe.
  2796  //
  2797  // A recipe contains three items:
  2798  //
  2799  //    * An algorithm that trains a model.
  2800  //
  2801  //    * Hyperparameters that govern the training.
  2802  //
  2803  //    * Feature transformation information for modifying the input data before
  2804  //    training.
  2805  //
  2806  // Amazon Personalize provides a set of predefined recipes. You specify a recipe
  2807  // when you create a solution with the CreateSolution API. CreateSolution trains
  2808  // a model by using the algorithm in the specified recipe and a training dataset.
  2809  // The solution, when deployed as a campaign, can provide recommendations using
  2810  // the GetRecommendations (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetRecommendations.html)
  2811  // API.
  2812  //
  2813  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2814  // with awserr.Error's Code and Message methods to get detailed information about
  2815  // the error.
  2816  //
  2817  // See the AWS API reference guide for Amazon Personalize's
  2818  // API operation DescribeRecipe for usage and error information.
  2819  //
  2820  // Returned Error Types:
  2821  //   * InvalidInputException
  2822  //   Provide a valid value for the field or parameter.
  2823  //
  2824  //   * ResourceNotFoundException
  2825  //   Could not find the specified resource.
  2826  //
  2827  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeRecipe
  2828  func (c *Personalize) DescribeRecipe(input *DescribeRecipeInput) (*DescribeRecipeOutput, error) {
  2829  	req, out := c.DescribeRecipeRequest(input)
  2830  	return out, req.Send()
  2831  }
  2832  
  2833  // DescribeRecipeWithContext is the same as DescribeRecipe with the addition of
  2834  // the ability to pass a context and additional request options.
  2835  //
  2836  // See DescribeRecipe for details on how to use this API operation.
  2837  //
  2838  // The context must be non-nil and will be used for request cancellation. If
  2839  // the context is nil a panic will occur. In the future the SDK may create
  2840  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2841  // for more information on using Contexts.
  2842  func (c *Personalize) DescribeRecipeWithContext(ctx aws.Context, input *DescribeRecipeInput, opts ...request.Option) (*DescribeRecipeOutput, error) {
  2843  	req, out := c.DescribeRecipeRequest(input)
  2844  	req.SetContext(ctx)
  2845  	req.ApplyOptions(opts...)
  2846  	return out, req.Send()
  2847  }
  2848  
  2849  const opDescribeSchema = "DescribeSchema"
  2850  
  2851  // DescribeSchemaRequest generates a "aws/request.Request" representing the
  2852  // client's request for the DescribeSchema operation. The "output" return
  2853  // value will be populated with the request's response once the request completes
  2854  // successfully.
  2855  //
  2856  // Use "Send" method on the returned Request to send the API call to the service.
  2857  // the "output" return value is not valid until after Send returns without error.
  2858  //
  2859  // See DescribeSchema for more information on using the DescribeSchema
  2860  // API call, and error handling.
  2861  //
  2862  // This method is useful when you want to inject custom logic or configuration
  2863  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2864  //
  2865  //
  2866  //    // Example sending a request using the DescribeSchemaRequest method.
  2867  //    req, resp := client.DescribeSchemaRequest(params)
  2868  //
  2869  //    err := req.Send()
  2870  //    if err == nil { // resp is now filled
  2871  //        fmt.Println(resp)
  2872  //    }
  2873  //
  2874  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeSchema
  2875  func (c *Personalize) DescribeSchemaRequest(input *DescribeSchemaInput) (req *request.Request, output *DescribeSchemaOutput) {
  2876  	op := &request.Operation{
  2877  		Name:       opDescribeSchema,
  2878  		HTTPMethod: "POST",
  2879  		HTTPPath:   "/",
  2880  	}
  2881  
  2882  	if input == nil {
  2883  		input = &DescribeSchemaInput{}
  2884  	}
  2885  
  2886  	output = &DescribeSchemaOutput{}
  2887  	req = c.newRequest(op, input, output)
  2888  	return
  2889  }
  2890  
  2891  // DescribeSchema API operation for Amazon Personalize.
  2892  //
  2893  // Describes a schema. For more information on schemas, see CreateSchema.
  2894  //
  2895  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2896  // with awserr.Error's Code and Message methods to get detailed information about
  2897  // the error.
  2898  //
  2899  // See the AWS API reference guide for Amazon Personalize's
  2900  // API operation DescribeSchema for usage and error information.
  2901  //
  2902  // Returned Error Types:
  2903  //   * InvalidInputException
  2904  //   Provide a valid value for the field or parameter.
  2905  //
  2906  //   * ResourceNotFoundException
  2907  //   Could not find the specified resource.
  2908  //
  2909  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeSchema
  2910  func (c *Personalize) DescribeSchema(input *DescribeSchemaInput) (*DescribeSchemaOutput, error) {
  2911  	req, out := c.DescribeSchemaRequest(input)
  2912  	return out, req.Send()
  2913  }
  2914  
  2915  // DescribeSchemaWithContext is the same as DescribeSchema with the addition of
  2916  // the ability to pass a context and additional request options.
  2917  //
  2918  // See DescribeSchema for details on how to use this API operation.
  2919  //
  2920  // The context must be non-nil and will be used for request cancellation. If
  2921  // the context is nil a panic will occur. In the future the SDK may create
  2922  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2923  // for more information on using Contexts.
  2924  func (c *Personalize) DescribeSchemaWithContext(ctx aws.Context, input *DescribeSchemaInput, opts ...request.Option) (*DescribeSchemaOutput, error) {
  2925  	req, out := c.DescribeSchemaRequest(input)
  2926  	req.SetContext(ctx)
  2927  	req.ApplyOptions(opts...)
  2928  	return out, req.Send()
  2929  }
  2930  
  2931  const opDescribeSolution = "DescribeSolution"
  2932  
  2933  // DescribeSolutionRequest generates a "aws/request.Request" representing the
  2934  // client's request for the DescribeSolution operation. The "output" return
  2935  // value will be populated with the request's response once the request completes
  2936  // successfully.
  2937  //
  2938  // Use "Send" method on the returned Request to send the API call to the service.
  2939  // the "output" return value is not valid until after Send returns without error.
  2940  //
  2941  // See DescribeSolution for more information on using the DescribeSolution
  2942  // API call, and error handling.
  2943  //
  2944  // This method is useful when you want to inject custom logic or configuration
  2945  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2946  //
  2947  //
  2948  //    // Example sending a request using the DescribeSolutionRequest method.
  2949  //    req, resp := client.DescribeSolutionRequest(params)
  2950  //
  2951  //    err := req.Send()
  2952  //    if err == nil { // resp is now filled
  2953  //        fmt.Println(resp)
  2954  //    }
  2955  //
  2956  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeSolution
  2957  func (c *Personalize) DescribeSolutionRequest(input *DescribeSolutionInput) (req *request.Request, output *DescribeSolutionOutput) {
  2958  	op := &request.Operation{
  2959  		Name:       opDescribeSolution,
  2960  		HTTPMethod: "POST",
  2961  		HTTPPath:   "/",
  2962  	}
  2963  
  2964  	if input == nil {
  2965  		input = &DescribeSolutionInput{}
  2966  	}
  2967  
  2968  	output = &DescribeSolutionOutput{}
  2969  	req = c.newRequest(op, input, output)
  2970  	return
  2971  }
  2972  
  2973  // DescribeSolution API operation for Amazon Personalize.
  2974  //
  2975  // Describes a solution. For more information on solutions, see CreateSolution.
  2976  //
  2977  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2978  // with awserr.Error's Code and Message methods to get detailed information about
  2979  // the error.
  2980  //
  2981  // See the AWS API reference guide for Amazon Personalize's
  2982  // API operation DescribeSolution for usage and error information.
  2983  //
  2984  // Returned Error Types:
  2985  //   * InvalidInputException
  2986  //   Provide a valid value for the field or parameter.
  2987  //
  2988  //   * ResourceNotFoundException
  2989  //   Could not find the specified resource.
  2990  //
  2991  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeSolution
  2992  func (c *Personalize) DescribeSolution(input *DescribeSolutionInput) (*DescribeSolutionOutput, error) {
  2993  	req, out := c.DescribeSolutionRequest(input)
  2994  	return out, req.Send()
  2995  }
  2996  
  2997  // DescribeSolutionWithContext is the same as DescribeSolution with the addition of
  2998  // the ability to pass a context and additional request options.
  2999  //
  3000  // See DescribeSolution for details on how to use this API operation.
  3001  //
  3002  // The context must be non-nil and will be used for request cancellation. If
  3003  // the context is nil a panic will occur. In the future the SDK may create
  3004  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3005  // for more information on using Contexts.
  3006  func (c *Personalize) DescribeSolutionWithContext(ctx aws.Context, input *DescribeSolutionInput, opts ...request.Option) (*DescribeSolutionOutput, error) {
  3007  	req, out := c.DescribeSolutionRequest(input)
  3008  	req.SetContext(ctx)
  3009  	req.ApplyOptions(opts...)
  3010  	return out, req.Send()
  3011  }
  3012  
  3013  const opDescribeSolutionVersion = "DescribeSolutionVersion"
  3014  
  3015  // DescribeSolutionVersionRequest generates a "aws/request.Request" representing the
  3016  // client's request for the DescribeSolutionVersion operation. The "output" return
  3017  // value will be populated with the request's response once the request completes
  3018  // successfully.
  3019  //
  3020  // Use "Send" method on the returned Request to send the API call to the service.
  3021  // the "output" return value is not valid until after Send returns without error.
  3022  //
  3023  // See DescribeSolutionVersion for more information on using the DescribeSolutionVersion
  3024  // API call, and error handling.
  3025  //
  3026  // This method is useful when you want to inject custom logic or configuration
  3027  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3028  //
  3029  //
  3030  //    // Example sending a request using the DescribeSolutionVersionRequest method.
  3031  //    req, resp := client.DescribeSolutionVersionRequest(params)
  3032  //
  3033  //    err := req.Send()
  3034  //    if err == nil { // resp is now filled
  3035  //        fmt.Println(resp)
  3036  //    }
  3037  //
  3038  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeSolutionVersion
  3039  func (c *Personalize) DescribeSolutionVersionRequest(input *DescribeSolutionVersionInput) (req *request.Request, output *DescribeSolutionVersionOutput) {
  3040  	op := &request.Operation{
  3041  		Name:       opDescribeSolutionVersion,
  3042  		HTTPMethod: "POST",
  3043  		HTTPPath:   "/",
  3044  	}
  3045  
  3046  	if input == nil {
  3047  		input = &DescribeSolutionVersionInput{}
  3048  	}
  3049  
  3050  	output = &DescribeSolutionVersionOutput{}
  3051  	req = c.newRequest(op, input, output)
  3052  	return
  3053  }
  3054  
  3055  // DescribeSolutionVersion API operation for Amazon Personalize.
  3056  //
  3057  // Describes a specific version of a solution. For more information on solutions,
  3058  // see CreateSolution.
  3059  //
  3060  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3061  // with awserr.Error's Code and Message methods to get detailed information about
  3062  // the error.
  3063  //
  3064  // See the AWS API reference guide for Amazon Personalize's
  3065  // API operation DescribeSolutionVersion for usage and error information.
  3066  //
  3067  // Returned Error Types:
  3068  //   * InvalidInputException
  3069  //   Provide a valid value for the field or parameter.
  3070  //
  3071  //   * ResourceNotFoundException
  3072  //   Could not find the specified resource.
  3073  //
  3074  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DescribeSolutionVersion
  3075  func (c *Personalize) DescribeSolutionVersion(input *DescribeSolutionVersionInput) (*DescribeSolutionVersionOutput, error) {
  3076  	req, out := c.DescribeSolutionVersionRequest(input)
  3077  	return out, req.Send()
  3078  }
  3079  
  3080  // DescribeSolutionVersionWithContext is the same as DescribeSolutionVersion with the addition of
  3081  // the ability to pass a context and additional request options.
  3082  //
  3083  // See DescribeSolutionVersion for details on how to use this API operation.
  3084  //
  3085  // The context must be non-nil and will be used for request cancellation. If
  3086  // the context is nil a panic will occur. In the future the SDK may create
  3087  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3088  // for more information on using Contexts.
  3089  func (c *Personalize) DescribeSolutionVersionWithContext(ctx aws.Context, input *DescribeSolutionVersionInput, opts ...request.Option) (*DescribeSolutionVersionOutput, error) {
  3090  	req, out := c.DescribeSolutionVersionRequest(input)
  3091  	req.SetContext(ctx)
  3092  	req.ApplyOptions(opts...)
  3093  	return out, req.Send()
  3094  }
  3095  
  3096  const opGetSolutionMetrics = "GetSolutionMetrics"
  3097  
  3098  // GetSolutionMetricsRequest generates a "aws/request.Request" representing the
  3099  // client's request for the GetSolutionMetrics operation. The "output" return
  3100  // value will be populated with the request's response once the request completes
  3101  // successfully.
  3102  //
  3103  // Use "Send" method on the returned Request to send the API call to the service.
  3104  // the "output" return value is not valid until after Send returns without error.
  3105  //
  3106  // See GetSolutionMetrics for more information on using the GetSolutionMetrics
  3107  // API call, and error handling.
  3108  //
  3109  // This method is useful when you want to inject custom logic or configuration
  3110  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3111  //
  3112  //
  3113  //    // Example sending a request using the GetSolutionMetricsRequest method.
  3114  //    req, resp := client.GetSolutionMetricsRequest(params)
  3115  //
  3116  //    err := req.Send()
  3117  //    if err == nil { // resp is now filled
  3118  //        fmt.Println(resp)
  3119  //    }
  3120  //
  3121  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/GetSolutionMetrics
  3122  func (c *Personalize) GetSolutionMetricsRequest(input *GetSolutionMetricsInput) (req *request.Request, output *GetSolutionMetricsOutput) {
  3123  	op := &request.Operation{
  3124  		Name:       opGetSolutionMetrics,
  3125  		HTTPMethod: "POST",
  3126  		HTTPPath:   "/",
  3127  	}
  3128  
  3129  	if input == nil {
  3130  		input = &GetSolutionMetricsInput{}
  3131  	}
  3132  
  3133  	output = &GetSolutionMetricsOutput{}
  3134  	req = c.newRequest(op, input, output)
  3135  	return
  3136  }
  3137  
  3138  // GetSolutionMetrics API operation for Amazon Personalize.
  3139  //
  3140  // Gets the metrics for the specified solution version.
  3141  //
  3142  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3143  // with awserr.Error's Code and Message methods to get detailed information about
  3144  // the error.
  3145  //
  3146  // See the AWS API reference guide for Amazon Personalize's
  3147  // API operation GetSolutionMetrics for usage and error information.
  3148  //
  3149  // Returned Error Types:
  3150  //   * InvalidInputException
  3151  //   Provide a valid value for the field or parameter.
  3152  //
  3153  //   * ResourceNotFoundException
  3154  //   Could not find the specified resource.
  3155  //
  3156  //   * ResourceInUseException
  3157  //   The specified resource is in use.
  3158  //
  3159  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/GetSolutionMetrics
  3160  func (c *Personalize) GetSolutionMetrics(input *GetSolutionMetricsInput) (*GetSolutionMetricsOutput, error) {
  3161  	req, out := c.GetSolutionMetricsRequest(input)
  3162  	return out, req.Send()
  3163  }
  3164  
  3165  // GetSolutionMetricsWithContext is the same as GetSolutionMetrics with the addition of
  3166  // the ability to pass a context and additional request options.
  3167  //
  3168  // See GetSolutionMetrics for details on how to use this API operation.
  3169  //
  3170  // The context must be non-nil and will be used for request cancellation. If
  3171  // the context is nil a panic will occur. In the future the SDK may create
  3172  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3173  // for more information on using Contexts.
  3174  func (c *Personalize) GetSolutionMetricsWithContext(ctx aws.Context, input *GetSolutionMetricsInput, opts ...request.Option) (*GetSolutionMetricsOutput, error) {
  3175  	req, out := c.GetSolutionMetricsRequest(input)
  3176  	req.SetContext(ctx)
  3177  	req.ApplyOptions(opts...)
  3178  	return out, req.Send()
  3179  }
  3180  
  3181  const opListBatchInferenceJobs = "ListBatchInferenceJobs"
  3182  
  3183  // ListBatchInferenceJobsRequest generates a "aws/request.Request" representing the
  3184  // client's request for the ListBatchInferenceJobs operation. The "output" return
  3185  // value will be populated with the request's response once the request completes
  3186  // successfully.
  3187  //
  3188  // Use "Send" method on the returned Request to send the API call to the service.
  3189  // the "output" return value is not valid until after Send returns without error.
  3190  //
  3191  // See ListBatchInferenceJobs for more information on using the ListBatchInferenceJobs
  3192  // API call, and error handling.
  3193  //
  3194  // This method is useful when you want to inject custom logic or configuration
  3195  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3196  //
  3197  //
  3198  //    // Example sending a request using the ListBatchInferenceJobsRequest method.
  3199  //    req, resp := client.ListBatchInferenceJobsRequest(params)
  3200  //
  3201  //    err := req.Send()
  3202  //    if err == nil { // resp is now filled
  3203  //        fmt.Println(resp)
  3204  //    }
  3205  //
  3206  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListBatchInferenceJobs
  3207  func (c *Personalize) ListBatchInferenceJobsRequest(input *ListBatchInferenceJobsInput) (req *request.Request, output *ListBatchInferenceJobsOutput) {
  3208  	op := &request.Operation{
  3209  		Name:       opListBatchInferenceJobs,
  3210  		HTTPMethod: "POST",
  3211  		HTTPPath:   "/",
  3212  		Paginator: &request.Paginator{
  3213  			InputTokens:     []string{"nextToken"},
  3214  			OutputTokens:    []string{"nextToken"},
  3215  			LimitToken:      "maxResults",
  3216  			TruncationToken: "",
  3217  		},
  3218  	}
  3219  
  3220  	if input == nil {
  3221  		input = &ListBatchInferenceJobsInput{}
  3222  	}
  3223  
  3224  	output = &ListBatchInferenceJobsOutput{}
  3225  	req = c.newRequest(op, input, output)
  3226  	return
  3227  }
  3228  
  3229  // ListBatchInferenceJobs API operation for Amazon Personalize.
  3230  //
  3231  // Gets a list of the batch inference jobs that have been performed off of a
  3232  // solution version.
  3233  //
  3234  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3235  // with awserr.Error's Code and Message methods to get detailed information about
  3236  // the error.
  3237  //
  3238  // See the AWS API reference guide for Amazon Personalize's
  3239  // API operation ListBatchInferenceJobs for usage and error information.
  3240  //
  3241  // Returned Error Types:
  3242  //   * InvalidInputException
  3243  //   Provide a valid value for the field or parameter.
  3244  //
  3245  //   * InvalidNextTokenException
  3246  //   The token is not valid.
  3247  //
  3248  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListBatchInferenceJobs
  3249  func (c *Personalize) ListBatchInferenceJobs(input *ListBatchInferenceJobsInput) (*ListBatchInferenceJobsOutput, error) {
  3250  	req, out := c.ListBatchInferenceJobsRequest(input)
  3251  	return out, req.Send()
  3252  }
  3253  
  3254  // ListBatchInferenceJobsWithContext is the same as ListBatchInferenceJobs with the addition of
  3255  // the ability to pass a context and additional request options.
  3256  //
  3257  // See ListBatchInferenceJobs for details on how to use this API operation.
  3258  //
  3259  // The context must be non-nil and will be used for request cancellation. If
  3260  // the context is nil a panic will occur. In the future the SDK may create
  3261  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3262  // for more information on using Contexts.
  3263  func (c *Personalize) ListBatchInferenceJobsWithContext(ctx aws.Context, input *ListBatchInferenceJobsInput, opts ...request.Option) (*ListBatchInferenceJobsOutput, error) {
  3264  	req, out := c.ListBatchInferenceJobsRequest(input)
  3265  	req.SetContext(ctx)
  3266  	req.ApplyOptions(opts...)
  3267  	return out, req.Send()
  3268  }
  3269  
  3270  // ListBatchInferenceJobsPages iterates over the pages of a ListBatchInferenceJobs operation,
  3271  // calling the "fn" function with the response data for each page. To stop
  3272  // iterating, return false from the fn function.
  3273  //
  3274  // See ListBatchInferenceJobs method for more information on how to use this operation.
  3275  //
  3276  // Note: This operation can generate multiple requests to a service.
  3277  //
  3278  //    // Example iterating over at most 3 pages of a ListBatchInferenceJobs operation.
  3279  //    pageNum := 0
  3280  //    err := client.ListBatchInferenceJobsPages(params,
  3281  //        func(page *personalize.ListBatchInferenceJobsOutput, lastPage bool) bool {
  3282  //            pageNum++
  3283  //            fmt.Println(page)
  3284  //            return pageNum <= 3
  3285  //        })
  3286  //
  3287  func (c *Personalize) ListBatchInferenceJobsPages(input *ListBatchInferenceJobsInput, fn func(*ListBatchInferenceJobsOutput, bool) bool) error {
  3288  	return c.ListBatchInferenceJobsPagesWithContext(aws.BackgroundContext(), input, fn)
  3289  }
  3290  
  3291  // ListBatchInferenceJobsPagesWithContext same as ListBatchInferenceJobsPages except
  3292  // it takes a Context and allows setting request options on the pages.
  3293  //
  3294  // The context must be non-nil and will be used for request cancellation. If
  3295  // the context is nil a panic will occur. In the future the SDK may create
  3296  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3297  // for more information on using Contexts.
  3298  func (c *Personalize) ListBatchInferenceJobsPagesWithContext(ctx aws.Context, input *ListBatchInferenceJobsInput, fn func(*ListBatchInferenceJobsOutput, bool) bool, opts ...request.Option) error {
  3299  	p := request.Pagination{
  3300  		NewRequest: func() (*request.Request, error) {
  3301  			var inCpy *ListBatchInferenceJobsInput
  3302  			if input != nil {
  3303  				tmp := *input
  3304  				inCpy = &tmp
  3305  			}
  3306  			req, _ := c.ListBatchInferenceJobsRequest(inCpy)
  3307  			req.SetContext(ctx)
  3308  			req.ApplyOptions(opts...)
  3309  			return req, nil
  3310  		},
  3311  	}
  3312  
  3313  	for p.Next() {
  3314  		if !fn(p.Page().(*ListBatchInferenceJobsOutput), !p.HasNextPage()) {
  3315  			break
  3316  		}
  3317  	}
  3318  
  3319  	return p.Err()
  3320  }
  3321  
  3322  const opListCampaigns = "ListCampaigns"
  3323  
  3324  // ListCampaignsRequest generates a "aws/request.Request" representing the
  3325  // client's request for the ListCampaigns operation. The "output" return
  3326  // value will be populated with the request's response once the request completes
  3327  // successfully.
  3328  //
  3329  // Use "Send" method on the returned Request to send the API call to the service.
  3330  // the "output" return value is not valid until after Send returns without error.
  3331  //
  3332  // See ListCampaigns for more information on using the ListCampaigns
  3333  // API call, and error handling.
  3334  //
  3335  // This method is useful when you want to inject custom logic or configuration
  3336  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3337  //
  3338  //
  3339  //    // Example sending a request using the ListCampaignsRequest method.
  3340  //    req, resp := client.ListCampaignsRequest(params)
  3341  //
  3342  //    err := req.Send()
  3343  //    if err == nil { // resp is now filled
  3344  //        fmt.Println(resp)
  3345  //    }
  3346  //
  3347  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListCampaigns
  3348  func (c *Personalize) ListCampaignsRequest(input *ListCampaignsInput) (req *request.Request, output *ListCampaignsOutput) {
  3349  	op := &request.Operation{
  3350  		Name:       opListCampaigns,
  3351  		HTTPMethod: "POST",
  3352  		HTTPPath:   "/",
  3353  		Paginator: &request.Paginator{
  3354  			InputTokens:     []string{"nextToken"},
  3355  			OutputTokens:    []string{"nextToken"},
  3356  			LimitToken:      "maxResults",
  3357  			TruncationToken: "",
  3358  		},
  3359  	}
  3360  
  3361  	if input == nil {
  3362  		input = &ListCampaignsInput{}
  3363  	}
  3364  
  3365  	output = &ListCampaignsOutput{}
  3366  	req = c.newRequest(op, input, output)
  3367  	return
  3368  }
  3369  
  3370  // ListCampaigns API operation for Amazon Personalize.
  3371  //
  3372  // Returns a list of campaigns that use the given solution. When a solution
  3373  // is not specified, all the campaigns associated with the account are listed.
  3374  // The response provides the properties for each campaign, including the Amazon
  3375  // Resource Name (ARN). For more information on campaigns, see CreateCampaign.
  3376  //
  3377  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3378  // with awserr.Error's Code and Message methods to get detailed information about
  3379  // the error.
  3380  //
  3381  // See the AWS API reference guide for Amazon Personalize's
  3382  // API operation ListCampaigns for usage and error information.
  3383  //
  3384  // Returned Error Types:
  3385  //   * InvalidInputException
  3386  //   Provide a valid value for the field or parameter.
  3387  //
  3388  //   * InvalidNextTokenException
  3389  //   The token is not valid.
  3390  //
  3391  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListCampaigns
  3392  func (c *Personalize) ListCampaigns(input *ListCampaignsInput) (*ListCampaignsOutput, error) {
  3393  	req, out := c.ListCampaignsRequest(input)
  3394  	return out, req.Send()
  3395  }
  3396  
  3397  // ListCampaignsWithContext is the same as ListCampaigns with the addition of
  3398  // the ability to pass a context and additional request options.
  3399  //
  3400  // See ListCampaigns for details on how to use this API operation.
  3401  //
  3402  // The context must be non-nil and will be used for request cancellation. If
  3403  // the context is nil a panic will occur. In the future the SDK may create
  3404  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3405  // for more information on using Contexts.
  3406  func (c *Personalize) ListCampaignsWithContext(ctx aws.Context, input *ListCampaignsInput, opts ...request.Option) (*ListCampaignsOutput, error) {
  3407  	req, out := c.ListCampaignsRequest(input)
  3408  	req.SetContext(ctx)
  3409  	req.ApplyOptions(opts...)
  3410  	return out, req.Send()
  3411  }
  3412  
  3413  // ListCampaignsPages iterates over the pages of a ListCampaigns operation,
  3414  // calling the "fn" function with the response data for each page. To stop
  3415  // iterating, return false from the fn function.
  3416  //
  3417  // See ListCampaigns method for more information on how to use this operation.
  3418  //
  3419  // Note: This operation can generate multiple requests to a service.
  3420  //
  3421  //    // Example iterating over at most 3 pages of a ListCampaigns operation.
  3422  //    pageNum := 0
  3423  //    err := client.ListCampaignsPages(params,
  3424  //        func(page *personalize.ListCampaignsOutput, lastPage bool) bool {
  3425  //            pageNum++
  3426  //            fmt.Println(page)
  3427  //            return pageNum <= 3
  3428  //        })
  3429  //
  3430  func (c *Personalize) ListCampaignsPages(input *ListCampaignsInput, fn func(*ListCampaignsOutput, bool) bool) error {
  3431  	return c.ListCampaignsPagesWithContext(aws.BackgroundContext(), input, fn)
  3432  }
  3433  
  3434  // ListCampaignsPagesWithContext same as ListCampaignsPages except
  3435  // it takes a Context and allows setting request options on the pages.
  3436  //
  3437  // The context must be non-nil and will be used for request cancellation. If
  3438  // the context is nil a panic will occur. In the future the SDK may create
  3439  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3440  // for more information on using Contexts.
  3441  func (c *Personalize) ListCampaignsPagesWithContext(ctx aws.Context, input *ListCampaignsInput, fn func(*ListCampaignsOutput, bool) bool, opts ...request.Option) error {
  3442  	p := request.Pagination{
  3443  		NewRequest: func() (*request.Request, error) {
  3444  			var inCpy *ListCampaignsInput
  3445  			if input != nil {
  3446  				tmp := *input
  3447  				inCpy = &tmp
  3448  			}
  3449  			req, _ := c.ListCampaignsRequest(inCpy)
  3450  			req.SetContext(ctx)
  3451  			req.ApplyOptions(opts...)
  3452  			return req, nil
  3453  		},
  3454  	}
  3455  
  3456  	for p.Next() {
  3457  		if !fn(p.Page().(*ListCampaignsOutput), !p.HasNextPage()) {
  3458  			break
  3459  		}
  3460  	}
  3461  
  3462  	return p.Err()
  3463  }
  3464  
  3465  const opListDatasetExportJobs = "ListDatasetExportJobs"
  3466  
  3467  // ListDatasetExportJobsRequest generates a "aws/request.Request" representing the
  3468  // client's request for the ListDatasetExportJobs operation. The "output" return
  3469  // value will be populated with the request's response once the request completes
  3470  // successfully.
  3471  //
  3472  // Use "Send" method on the returned Request to send the API call to the service.
  3473  // the "output" return value is not valid until after Send returns without error.
  3474  //
  3475  // See ListDatasetExportJobs for more information on using the ListDatasetExportJobs
  3476  // API call, and error handling.
  3477  //
  3478  // This method is useful when you want to inject custom logic or configuration
  3479  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3480  //
  3481  //
  3482  //    // Example sending a request using the ListDatasetExportJobsRequest method.
  3483  //    req, resp := client.ListDatasetExportJobsRequest(params)
  3484  //
  3485  //    err := req.Send()
  3486  //    if err == nil { // resp is now filled
  3487  //        fmt.Println(resp)
  3488  //    }
  3489  //
  3490  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasetExportJobs
  3491  func (c *Personalize) ListDatasetExportJobsRequest(input *ListDatasetExportJobsInput) (req *request.Request, output *ListDatasetExportJobsOutput) {
  3492  	op := &request.Operation{
  3493  		Name:       opListDatasetExportJobs,
  3494  		HTTPMethod: "POST",
  3495  		HTTPPath:   "/",
  3496  		Paginator: &request.Paginator{
  3497  			InputTokens:     []string{"nextToken"},
  3498  			OutputTokens:    []string{"nextToken"},
  3499  			LimitToken:      "maxResults",
  3500  			TruncationToken: "",
  3501  		},
  3502  	}
  3503  
  3504  	if input == nil {
  3505  		input = &ListDatasetExportJobsInput{}
  3506  	}
  3507  
  3508  	output = &ListDatasetExportJobsOutput{}
  3509  	req = c.newRequest(op, input, output)
  3510  	return
  3511  }
  3512  
  3513  // ListDatasetExportJobs API operation for Amazon Personalize.
  3514  //
  3515  // Returns a list of dataset export jobs that use the given dataset. When a
  3516  // dataset is not specified, all the dataset export jobs associated with the
  3517  // account are listed. The response provides the properties for each dataset
  3518  // export job, including the Amazon Resource Name (ARN). For more information
  3519  // on dataset export jobs, see CreateDatasetExportJob. For more information
  3520  // on datasets, see CreateDataset.
  3521  //
  3522  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3523  // with awserr.Error's Code and Message methods to get detailed information about
  3524  // the error.
  3525  //
  3526  // See the AWS API reference guide for Amazon Personalize's
  3527  // API operation ListDatasetExportJobs for usage and error information.
  3528  //
  3529  // Returned Error Types:
  3530  //   * InvalidInputException
  3531  //   Provide a valid value for the field or parameter.
  3532  //
  3533  //   * InvalidNextTokenException
  3534  //   The token is not valid.
  3535  //
  3536  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasetExportJobs
  3537  func (c *Personalize) ListDatasetExportJobs(input *ListDatasetExportJobsInput) (*ListDatasetExportJobsOutput, error) {
  3538  	req, out := c.ListDatasetExportJobsRequest(input)
  3539  	return out, req.Send()
  3540  }
  3541  
  3542  // ListDatasetExportJobsWithContext is the same as ListDatasetExportJobs with the addition of
  3543  // the ability to pass a context and additional request options.
  3544  //
  3545  // See ListDatasetExportJobs for details on how to use this API operation.
  3546  //
  3547  // The context must be non-nil and will be used for request cancellation. If
  3548  // the context is nil a panic will occur. In the future the SDK may create
  3549  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3550  // for more information on using Contexts.
  3551  func (c *Personalize) ListDatasetExportJobsWithContext(ctx aws.Context, input *ListDatasetExportJobsInput, opts ...request.Option) (*ListDatasetExportJobsOutput, error) {
  3552  	req, out := c.ListDatasetExportJobsRequest(input)
  3553  	req.SetContext(ctx)
  3554  	req.ApplyOptions(opts...)
  3555  	return out, req.Send()
  3556  }
  3557  
  3558  // ListDatasetExportJobsPages iterates over the pages of a ListDatasetExportJobs operation,
  3559  // calling the "fn" function with the response data for each page. To stop
  3560  // iterating, return false from the fn function.
  3561  //
  3562  // See ListDatasetExportJobs method for more information on how to use this operation.
  3563  //
  3564  // Note: This operation can generate multiple requests to a service.
  3565  //
  3566  //    // Example iterating over at most 3 pages of a ListDatasetExportJobs operation.
  3567  //    pageNum := 0
  3568  //    err := client.ListDatasetExportJobsPages(params,
  3569  //        func(page *personalize.ListDatasetExportJobsOutput, lastPage bool) bool {
  3570  //            pageNum++
  3571  //            fmt.Println(page)
  3572  //            return pageNum <= 3
  3573  //        })
  3574  //
  3575  func (c *Personalize) ListDatasetExportJobsPages(input *ListDatasetExportJobsInput, fn func(*ListDatasetExportJobsOutput, bool) bool) error {
  3576  	return c.ListDatasetExportJobsPagesWithContext(aws.BackgroundContext(), input, fn)
  3577  }
  3578  
  3579  // ListDatasetExportJobsPagesWithContext same as ListDatasetExportJobsPages except
  3580  // it takes a Context and allows setting request options on the pages.
  3581  //
  3582  // The context must be non-nil and will be used for request cancellation. If
  3583  // the context is nil a panic will occur. In the future the SDK may create
  3584  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3585  // for more information on using Contexts.
  3586  func (c *Personalize) ListDatasetExportJobsPagesWithContext(ctx aws.Context, input *ListDatasetExportJobsInput, fn func(*ListDatasetExportJobsOutput, bool) bool, opts ...request.Option) error {
  3587  	p := request.Pagination{
  3588  		NewRequest: func() (*request.Request, error) {
  3589  			var inCpy *ListDatasetExportJobsInput
  3590  			if input != nil {
  3591  				tmp := *input
  3592  				inCpy = &tmp
  3593  			}
  3594  			req, _ := c.ListDatasetExportJobsRequest(inCpy)
  3595  			req.SetContext(ctx)
  3596  			req.ApplyOptions(opts...)
  3597  			return req, nil
  3598  		},
  3599  	}
  3600  
  3601  	for p.Next() {
  3602  		if !fn(p.Page().(*ListDatasetExportJobsOutput), !p.HasNextPage()) {
  3603  			break
  3604  		}
  3605  	}
  3606  
  3607  	return p.Err()
  3608  }
  3609  
  3610  const opListDatasetGroups = "ListDatasetGroups"
  3611  
  3612  // ListDatasetGroupsRequest generates a "aws/request.Request" representing the
  3613  // client's request for the ListDatasetGroups operation. The "output" return
  3614  // value will be populated with the request's response once the request completes
  3615  // successfully.
  3616  //
  3617  // Use "Send" method on the returned Request to send the API call to the service.
  3618  // the "output" return value is not valid until after Send returns without error.
  3619  //
  3620  // See ListDatasetGroups for more information on using the ListDatasetGroups
  3621  // API call, and error handling.
  3622  //
  3623  // This method is useful when you want to inject custom logic or configuration
  3624  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3625  //
  3626  //
  3627  //    // Example sending a request using the ListDatasetGroupsRequest method.
  3628  //    req, resp := client.ListDatasetGroupsRequest(params)
  3629  //
  3630  //    err := req.Send()
  3631  //    if err == nil { // resp is now filled
  3632  //        fmt.Println(resp)
  3633  //    }
  3634  //
  3635  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasetGroups
  3636  func (c *Personalize) ListDatasetGroupsRequest(input *ListDatasetGroupsInput) (req *request.Request, output *ListDatasetGroupsOutput) {
  3637  	op := &request.Operation{
  3638  		Name:       opListDatasetGroups,
  3639  		HTTPMethod: "POST",
  3640  		HTTPPath:   "/",
  3641  		Paginator: &request.Paginator{
  3642  			InputTokens:     []string{"nextToken"},
  3643  			OutputTokens:    []string{"nextToken"},
  3644  			LimitToken:      "maxResults",
  3645  			TruncationToken: "",
  3646  		},
  3647  	}
  3648  
  3649  	if input == nil {
  3650  		input = &ListDatasetGroupsInput{}
  3651  	}
  3652  
  3653  	output = &ListDatasetGroupsOutput{}
  3654  	req = c.newRequest(op, input, output)
  3655  	return
  3656  }
  3657  
  3658  // ListDatasetGroups API operation for Amazon Personalize.
  3659  //
  3660  // Returns a list of dataset groups. The response provides the properties for
  3661  // each dataset group, including the Amazon Resource Name (ARN). For more information
  3662  // on dataset groups, see CreateDatasetGroup.
  3663  //
  3664  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3665  // with awserr.Error's Code and Message methods to get detailed information about
  3666  // the error.
  3667  //
  3668  // See the AWS API reference guide for Amazon Personalize's
  3669  // API operation ListDatasetGroups for usage and error information.
  3670  //
  3671  // Returned Error Types:
  3672  //   * InvalidNextTokenException
  3673  //   The token is not valid.
  3674  //
  3675  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasetGroups
  3676  func (c *Personalize) ListDatasetGroups(input *ListDatasetGroupsInput) (*ListDatasetGroupsOutput, error) {
  3677  	req, out := c.ListDatasetGroupsRequest(input)
  3678  	return out, req.Send()
  3679  }
  3680  
  3681  // ListDatasetGroupsWithContext is the same as ListDatasetGroups with the addition of
  3682  // the ability to pass a context and additional request options.
  3683  //
  3684  // See ListDatasetGroups for details on how to use this API operation.
  3685  //
  3686  // The context must be non-nil and will be used for request cancellation. If
  3687  // the context is nil a panic will occur. In the future the SDK may create
  3688  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3689  // for more information on using Contexts.
  3690  func (c *Personalize) ListDatasetGroupsWithContext(ctx aws.Context, input *ListDatasetGroupsInput, opts ...request.Option) (*ListDatasetGroupsOutput, error) {
  3691  	req, out := c.ListDatasetGroupsRequest(input)
  3692  	req.SetContext(ctx)
  3693  	req.ApplyOptions(opts...)
  3694  	return out, req.Send()
  3695  }
  3696  
  3697  // ListDatasetGroupsPages iterates over the pages of a ListDatasetGroups operation,
  3698  // calling the "fn" function with the response data for each page. To stop
  3699  // iterating, return false from the fn function.
  3700  //
  3701  // See ListDatasetGroups method for more information on how to use this operation.
  3702  //
  3703  // Note: This operation can generate multiple requests to a service.
  3704  //
  3705  //    // Example iterating over at most 3 pages of a ListDatasetGroups operation.
  3706  //    pageNum := 0
  3707  //    err := client.ListDatasetGroupsPages(params,
  3708  //        func(page *personalize.ListDatasetGroupsOutput, lastPage bool) bool {
  3709  //            pageNum++
  3710  //            fmt.Println(page)
  3711  //            return pageNum <= 3
  3712  //        })
  3713  //
  3714  func (c *Personalize) ListDatasetGroupsPages(input *ListDatasetGroupsInput, fn func(*ListDatasetGroupsOutput, bool) bool) error {
  3715  	return c.ListDatasetGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
  3716  }
  3717  
  3718  // ListDatasetGroupsPagesWithContext same as ListDatasetGroupsPages except
  3719  // it takes a Context and allows setting request options on the pages.
  3720  //
  3721  // The context must be non-nil and will be used for request cancellation. If
  3722  // the context is nil a panic will occur. In the future the SDK may create
  3723  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3724  // for more information on using Contexts.
  3725  func (c *Personalize) ListDatasetGroupsPagesWithContext(ctx aws.Context, input *ListDatasetGroupsInput, fn func(*ListDatasetGroupsOutput, bool) bool, opts ...request.Option) error {
  3726  	p := request.Pagination{
  3727  		NewRequest: func() (*request.Request, error) {
  3728  			var inCpy *ListDatasetGroupsInput
  3729  			if input != nil {
  3730  				tmp := *input
  3731  				inCpy = &tmp
  3732  			}
  3733  			req, _ := c.ListDatasetGroupsRequest(inCpy)
  3734  			req.SetContext(ctx)
  3735  			req.ApplyOptions(opts...)
  3736  			return req, nil
  3737  		},
  3738  	}
  3739  
  3740  	for p.Next() {
  3741  		if !fn(p.Page().(*ListDatasetGroupsOutput), !p.HasNextPage()) {
  3742  			break
  3743  		}
  3744  	}
  3745  
  3746  	return p.Err()
  3747  }
  3748  
  3749  const opListDatasetImportJobs = "ListDatasetImportJobs"
  3750  
  3751  // ListDatasetImportJobsRequest generates a "aws/request.Request" representing the
  3752  // client's request for the ListDatasetImportJobs operation. The "output" return
  3753  // value will be populated with the request's response once the request completes
  3754  // successfully.
  3755  //
  3756  // Use "Send" method on the returned Request to send the API call to the service.
  3757  // the "output" return value is not valid until after Send returns without error.
  3758  //
  3759  // See ListDatasetImportJobs for more information on using the ListDatasetImportJobs
  3760  // API call, and error handling.
  3761  //
  3762  // This method is useful when you want to inject custom logic or configuration
  3763  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3764  //
  3765  //
  3766  //    // Example sending a request using the ListDatasetImportJobsRequest method.
  3767  //    req, resp := client.ListDatasetImportJobsRequest(params)
  3768  //
  3769  //    err := req.Send()
  3770  //    if err == nil { // resp is now filled
  3771  //        fmt.Println(resp)
  3772  //    }
  3773  //
  3774  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasetImportJobs
  3775  func (c *Personalize) ListDatasetImportJobsRequest(input *ListDatasetImportJobsInput) (req *request.Request, output *ListDatasetImportJobsOutput) {
  3776  	op := &request.Operation{
  3777  		Name:       opListDatasetImportJobs,
  3778  		HTTPMethod: "POST",
  3779  		HTTPPath:   "/",
  3780  		Paginator: &request.Paginator{
  3781  			InputTokens:     []string{"nextToken"},
  3782  			OutputTokens:    []string{"nextToken"},
  3783  			LimitToken:      "maxResults",
  3784  			TruncationToken: "",
  3785  		},
  3786  	}
  3787  
  3788  	if input == nil {
  3789  		input = &ListDatasetImportJobsInput{}
  3790  	}
  3791  
  3792  	output = &ListDatasetImportJobsOutput{}
  3793  	req = c.newRequest(op, input, output)
  3794  	return
  3795  }
  3796  
  3797  // ListDatasetImportJobs API operation for Amazon Personalize.
  3798  //
  3799  // Returns a list of dataset import jobs that use the given dataset. When a
  3800  // dataset is not specified, all the dataset import jobs associated with the
  3801  // account are listed. The response provides the properties for each dataset
  3802  // import job, including the Amazon Resource Name (ARN). For more information
  3803  // on dataset import jobs, see CreateDatasetImportJob. For more information
  3804  // on datasets, see CreateDataset.
  3805  //
  3806  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3807  // with awserr.Error's Code and Message methods to get detailed information about
  3808  // the error.
  3809  //
  3810  // See the AWS API reference guide for Amazon Personalize's
  3811  // API operation ListDatasetImportJobs for usage and error information.
  3812  //
  3813  // Returned Error Types:
  3814  //   * InvalidInputException
  3815  //   Provide a valid value for the field or parameter.
  3816  //
  3817  //   * InvalidNextTokenException
  3818  //   The token is not valid.
  3819  //
  3820  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasetImportJobs
  3821  func (c *Personalize) ListDatasetImportJobs(input *ListDatasetImportJobsInput) (*ListDatasetImportJobsOutput, error) {
  3822  	req, out := c.ListDatasetImportJobsRequest(input)
  3823  	return out, req.Send()
  3824  }
  3825  
  3826  // ListDatasetImportJobsWithContext is the same as ListDatasetImportJobs with the addition of
  3827  // the ability to pass a context and additional request options.
  3828  //
  3829  // See ListDatasetImportJobs for details on how to use this API operation.
  3830  //
  3831  // The context must be non-nil and will be used for request cancellation. If
  3832  // the context is nil a panic will occur. In the future the SDK may create
  3833  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3834  // for more information on using Contexts.
  3835  func (c *Personalize) ListDatasetImportJobsWithContext(ctx aws.Context, input *ListDatasetImportJobsInput, opts ...request.Option) (*ListDatasetImportJobsOutput, error) {
  3836  	req, out := c.ListDatasetImportJobsRequest(input)
  3837  	req.SetContext(ctx)
  3838  	req.ApplyOptions(opts...)
  3839  	return out, req.Send()
  3840  }
  3841  
  3842  // ListDatasetImportJobsPages iterates over the pages of a ListDatasetImportJobs operation,
  3843  // calling the "fn" function with the response data for each page. To stop
  3844  // iterating, return false from the fn function.
  3845  //
  3846  // See ListDatasetImportJobs method for more information on how to use this operation.
  3847  //
  3848  // Note: This operation can generate multiple requests to a service.
  3849  //
  3850  //    // Example iterating over at most 3 pages of a ListDatasetImportJobs operation.
  3851  //    pageNum := 0
  3852  //    err := client.ListDatasetImportJobsPages(params,
  3853  //        func(page *personalize.ListDatasetImportJobsOutput, lastPage bool) bool {
  3854  //            pageNum++
  3855  //            fmt.Println(page)
  3856  //            return pageNum <= 3
  3857  //        })
  3858  //
  3859  func (c *Personalize) ListDatasetImportJobsPages(input *ListDatasetImportJobsInput, fn func(*ListDatasetImportJobsOutput, bool) bool) error {
  3860  	return c.ListDatasetImportJobsPagesWithContext(aws.BackgroundContext(), input, fn)
  3861  }
  3862  
  3863  // ListDatasetImportJobsPagesWithContext same as ListDatasetImportJobsPages except
  3864  // it takes a Context and allows setting request options on the pages.
  3865  //
  3866  // The context must be non-nil and will be used for request cancellation. If
  3867  // the context is nil a panic will occur. In the future the SDK may create
  3868  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3869  // for more information on using Contexts.
  3870  func (c *Personalize) ListDatasetImportJobsPagesWithContext(ctx aws.Context, input *ListDatasetImportJobsInput, fn func(*ListDatasetImportJobsOutput, bool) bool, opts ...request.Option) error {
  3871  	p := request.Pagination{
  3872  		NewRequest: func() (*request.Request, error) {
  3873  			var inCpy *ListDatasetImportJobsInput
  3874  			if input != nil {
  3875  				tmp := *input
  3876  				inCpy = &tmp
  3877  			}
  3878  			req, _ := c.ListDatasetImportJobsRequest(inCpy)
  3879  			req.SetContext(ctx)
  3880  			req.ApplyOptions(opts...)
  3881  			return req, nil
  3882  		},
  3883  	}
  3884  
  3885  	for p.Next() {
  3886  		if !fn(p.Page().(*ListDatasetImportJobsOutput), !p.HasNextPage()) {
  3887  			break
  3888  		}
  3889  	}
  3890  
  3891  	return p.Err()
  3892  }
  3893  
  3894  const opListDatasets = "ListDatasets"
  3895  
  3896  // ListDatasetsRequest generates a "aws/request.Request" representing the
  3897  // client's request for the ListDatasets operation. The "output" return
  3898  // value will be populated with the request's response once the request completes
  3899  // successfully.
  3900  //
  3901  // Use "Send" method on the returned Request to send the API call to the service.
  3902  // the "output" return value is not valid until after Send returns without error.
  3903  //
  3904  // See ListDatasets for more information on using the ListDatasets
  3905  // API call, and error handling.
  3906  //
  3907  // This method is useful when you want to inject custom logic or configuration
  3908  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3909  //
  3910  //
  3911  //    // Example sending a request using the ListDatasetsRequest method.
  3912  //    req, resp := client.ListDatasetsRequest(params)
  3913  //
  3914  //    err := req.Send()
  3915  //    if err == nil { // resp is now filled
  3916  //        fmt.Println(resp)
  3917  //    }
  3918  //
  3919  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasets
  3920  func (c *Personalize) ListDatasetsRequest(input *ListDatasetsInput) (req *request.Request, output *ListDatasetsOutput) {
  3921  	op := &request.Operation{
  3922  		Name:       opListDatasets,
  3923  		HTTPMethod: "POST",
  3924  		HTTPPath:   "/",
  3925  		Paginator: &request.Paginator{
  3926  			InputTokens:     []string{"nextToken"},
  3927  			OutputTokens:    []string{"nextToken"},
  3928  			LimitToken:      "maxResults",
  3929  			TruncationToken: "",
  3930  		},
  3931  	}
  3932  
  3933  	if input == nil {
  3934  		input = &ListDatasetsInput{}
  3935  	}
  3936  
  3937  	output = &ListDatasetsOutput{}
  3938  	req = c.newRequest(op, input, output)
  3939  	return
  3940  }
  3941  
  3942  // ListDatasets API operation for Amazon Personalize.
  3943  //
  3944  // Returns the list of datasets contained in the given dataset group. The response
  3945  // provides the properties for each dataset, including the Amazon Resource Name
  3946  // (ARN). For more information on datasets, see CreateDataset.
  3947  //
  3948  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3949  // with awserr.Error's Code and Message methods to get detailed information about
  3950  // the error.
  3951  //
  3952  // See the AWS API reference guide for Amazon Personalize's
  3953  // API operation ListDatasets for usage and error information.
  3954  //
  3955  // Returned Error Types:
  3956  //   * InvalidInputException
  3957  //   Provide a valid value for the field or parameter.
  3958  //
  3959  //   * InvalidNextTokenException
  3960  //   The token is not valid.
  3961  //
  3962  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListDatasets
  3963  func (c *Personalize) ListDatasets(input *ListDatasetsInput) (*ListDatasetsOutput, error) {
  3964  	req, out := c.ListDatasetsRequest(input)
  3965  	return out, req.Send()
  3966  }
  3967  
  3968  // ListDatasetsWithContext is the same as ListDatasets with the addition of
  3969  // the ability to pass a context and additional request options.
  3970  //
  3971  // See ListDatasets for details on how to use this API operation.
  3972  //
  3973  // The context must be non-nil and will be used for request cancellation. If
  3974  // the context is nil a panic will occur. In the future the SDK may create
  3975  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3976  // for more information on using Contexts.
  3977  func (c *Personalize) ListDatasetsWithContext(ctx aws.Context, input *ListDatasetsInput, opts ...request.Option) (*ListDatasetsOutput, error) {
  3978  	req, out := c.ListDatasetsRequest(input)
  3979  	req.SetContext(ctx)
  3980  	req.ApplyOptions(opts...)
  3981  	return out, req.Send()
  3982  }
  3983  
  3984  // ListDatasetsPages iterates over the pages of a ListDatasets operation,
  3985  // calling the "fn" function with the response data for each page. To stop
  3986  // iterating, return false from the fn function.
  3987  //
  3988  // See ListDatasets method for more information on how to use this operation.
  3989  //
  3990  // Note: This operation can generate multiple requests to a service.
  3991  //
  3992  //    // Example iterating over at most 3 pages of a ListDatasets operation.
  3993  //    pageNum := 0
  3994  //    err := client.ListDatasetsPages(params,
  3995  //        func(page *personalize.ListDatasetsOutput, lastPage bool) bool {
  3996  //            pageNum++
  3997  //            fmt.Println(page)
  3998  //            return pageNum <= 3
  3999  //        })
  4000  //
  4001  func (c *Personalize) ListDatasetsPages(input *ListDatasetsInput, fn func(*ListDatasetsOutput, bool) bool) error {
  4002  	return c.ListDatasetsPagesWithContext(aws.BackgroundContext(), input, fn)
  4003  }
  4004  
  4005  // ListDatasetsPagesWithContext same as ListDatasetsPages except
  4006  // it takes a Context and allows setting request options on the pages.
  4007  //
  4008  // The context must be non-nil and will be used for request cancellation. If
  4009  // the context is nil a panic will occur. In the future the SDK may create
  4010  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4011  // for more information on using Contexts.
  4012  func (c *Personalize) ListDatasetsPagesWithContext(ctx aws.Context, input *ListDatasetsInput, fn func(*ListDatasetsOutput, bool) bool, opts ...request.Option) error {
  4013  	p := request.Pagination{
  4014  		NewRequest: func() (*request.Request, error) {
  4015  			var inCpy *ListDatasetsInput
  4016  			if input != nil {
  4017  				tmp := *input
  4018  				inCpy = &tmp
  4019  			}
  4020  			req, _ := c.ListDatasetsRequest(inCpy)
  4021  			req.SetContext(ctx)
  4022  			req.ApplyOptions(opts...)
  4023  			return req, nil
  4024  		},
  4025  	}
  4026  
  4027  	for p.Next() {
  4028  		if !fn(p.Page().(*ListDatasetsOutput), !p.HasNextPage()) {
  4029  			break
  4030  		}
  4031  	}
  4032  
  4033  	return p.Err()
  4034  }
  4035  
  4036  const opListEventTrackers = "ListEventTrackers"
  4037  
  4038  // ListEventTrackersRequest generates a "aws/request.Request" representing the
  4039  // client's request for the ListEventTrackers operation. The "output" return
  4040  // value will be populated with the request's response once the request completes
  4041  // successfully.
  4042  //
  4043  // Use "Send" method on the returned Request to send the API call to the service.
  4044  // the "output" return value is not valid until after Send returns without error.
  4045  //
  4046  // See ListEventTrackers for more information on using the ListEventTrackers
  4047  // API call, and error handling.
  4048  //
  4049  // This method is useful when you want to inject custom logic or configuration
  4050  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4051  //
  4052  //
  4053  //    // Example sending a request using the ListEventTrackersRequest method.
  4054  //    req, resp := client.ListEventTrackersRequest(params)
  4055  //
  4056  //    err := req.Send()
  4057  //    if err == nil { // resp is now filled
  4058  //        fmt.Println(resp)
  4059  //    }
  4060  //
  4061  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListEventTrackers
  4062  func (c *Personalize) ListEventTrackersRequest(input *ListEventTrackersInput) (req *request.Request, output *ListEventTrackersOutput) {
  4063  	op := &request.Operation{
  4064  		Name:       opListEventTrackers,
  4065  		HTTPMethod: "POST",
  4066  		HTTPPath:   "/",
  4067  		Paginator: &request.Paginator{
  4068  			InputTokens:     []string{"nextToken"},
  4069  			OutputTokens:    []string{"nextToken"},
  4070  			LimitToken:      "maxResults",
  4071  			TruncationToken: "",
  4072  		},
  4073  	}
  4074  
  4075  	if input == nil {
  4076  		input = &ListEventTrackersInput{}
  4077  	}
  4078  
  4079  	output = &ListEventTrackersOutput{}
  4080  	req = c.newRequest(op, input, output)
  4081  	return
  4082  }
  4083  
  4084  // ListEventTrackers API operation for Amazon Personalize.
  4085  //
  4086  // Returns the list of event trackers associated with the account. The response
  4087  // provides the properties for each event tracker, including the Amazon Resource
  4088  // Name (ARN) and tracking ID. For more information on event trackers, see CreateEventTracker.
  4089  //
  4090  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4091  // with awserr.Error's Code and Message methods to get detailed information about
  4092  // the error.
  4093  //
  4094  // See the AWS API reference guide for Amazon Personalize's
  4095  // API operation ListEventTrackers for usage and error information.
  4096  //
  4097  // Returned Error Types:
  4098  //   * InvalidInputException
  4099  //   Provide a valid value for the field or parameter.
  4100  //
  4101  //   * InvalidNextTokenException
  4102  //   The token is not valid.
  4103  //
  4104  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListEventTrackers
  4105  func (c *Personalize) ListEventTrackers(input *ListEventTrackersInput) (*ListEventTrackersOutput, error) {
  4106  	req, out := c.ListEventTrackersRequest(input)
  4107  	return out, req.Send()
  4108  }
  4109  
  4110  // ListEventTrackersWithContext is the same as ListEventTrackers with the addition of
  4111  // the ability to pass a context and additional request options.
  4112  //
  4113  // See ListEventTrackers for details on how to use this API operation.
  4114  //
  4115  // The context must be non-nil and will be used for request cancellation. If
  4116  // the context is nil a panic will occur. In the future the SDK may create
  4117  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4118  // for more information on using Contexts.
  4119  func (c *Personalize) ListEventTrackersWithContext(ctx aws.Context, input *ListEventTrackersInput, opts ...request.Option) (*ListEventTrackersOutput, error) {
  4120  	req, out := c.ListEventTrackersRequest(input)
  4121  	req.SetContext(ctx)
  4122  	req.ApplyOptions(opts...)
  4123  	return out, req.Send()
  4124  }
  4125  
  4126  // ListEventTrackersPages iterates over the pages of a ListEventTrackers operation,
  4127  // calling the "fn" function with the response data for each page. To stop
  4128  // iterating, return false from the fn function.
  4129  //
  4130  // See ListEventTrackers method for more information on how to use this operation.
  4131  //
  4132  // Note: This operation can generate multiple requests to a service.
  4133  //
  4134  //    // Example iterating over at most 3 pages of a ListEventTrackers operation.
  4135  //    pageNum := 0
  4136  //    err := client.ListEventTrackersPages(params,
  4137  //        func(page *personalize.ListEventTrackersOutput, lastPage bool) bool {
  4138  //            pageNum++
  4139  //            fmt.Println(page)
  4140  //            return pageNum <= 3
  4141  //        })
  4142  //
  4143  func (c *Personalize) ListEventTrackersPages(input *ListEventTrackersInput, fn func(*ListEventTrackersOutput, bool) bool) error {
  4144  	return c.ListEventTrackersPagesWithContext(aws.BackgroundContext(), input, fn)
  4145  }
  4146  
  4147  // ListEventTrackersPagesWithContext same as ListEventTrackersPages except
  4148  // it takes a Context and allows setting request options on the pages.
  4149  //
  4150  // The context must be non-nil and will be used for request cancellation. If
  4151  // the context is nil a panic will occur. In the future the SDK may create
  4152  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4153  // for more information on using Contexts.
  4154  func (c *Personalize) ListEventTrackersPagesWithContext(ctx aws.Context, input *ListEventTrackersInput, fn func(*ListEventTrackersOutput, bool) bool, opts ...request.Option) error {
  4155  	p := request.Pagination{
  4156  		NewRequest: func() (*request.Request, error) {
  4157  			var inCpy *ListEventTrackersInput
  4158  			if input != nil {
  4159  				tmp := *input
  4160  				inCpy = &tmp
  4161  			}
  4162  			req, _ := c.ListEventTrackersRequest(inCpy)
  4163  			req.SetContext(ctx)
  4164  			req.ApplyOptions(opts...)
  4165  			return req, nil
  4166  		},
  4167  	}
  4168  
  4169  	for p.Next() {
  4170  		if !fn(p.Page().(*ListEventTrackersOutput), !p.HasNextPage()) {
  4171  			break
  4172  		}
  4173  	}
  4174  
  4175  	return p.Err()
  4176  }
  4177  
  4178  const opListFilters = "ListFilters"
  4179  
  4180  // ListFiltersRequest generates a "aws/request.Request" representing the
  4181  // client's request for the ListFilters operation. The "output" return
  4182  // value will be populated with the request's response once the request completes
  4183  // successfully.
  4184  //
  4185  // Use "Send" method on the returned Request to send the API call to the service.
  4186  // the "output" return value is not valid until after Send returns without error.
  4187  //
  4188  // See ListFilters for more information on using the ListFilters
  4189  // API call, and error handling.
  4190  //
  4191  // This method is useful when you want to inject custom logic or configuration
  4192  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4193  //
  4194  //
  4195  //    // Example sending a request using the ListFiltersRequest method.
  4196  //    req, resp := client.ListFiltersRequest(params)
  4197  //
  4198  //    err := req.Send()
  4199  //    if err == nil { // resp is now filled
  4200  //        fmt.Println(resp)
  4201  //    }
  4202  //
  4203  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListFilters
  4204  func (c *Personalize) ListFiltersRequest(input *ListFiltersInput) (req *request.Request, output *ListFiltersOutput) {
  4205  	op := &request.Operation{
  4206  		Name:       opListFilters,
  4207  		HTTPMethod: "POST",
  4208  		HTTPPath:   "/",
  4209  		Paginator: &request.Paginator{
  4210  			InputTokens:     []string{"nextToken"},
  4211  			OutputTokens:    []string{"nextToken"},
  4212  			LimitToken:      "maxResults",
  4213  			TruncationToken: "",
  4214  		},
  4215  	}
  4216  
  4217  	if input == nil {
  4218  		input = &ListFiltersInput{}
  4219  	}
  4220  
  4221  	output = &ListFiltersOutput{}
  4222  	req = c.newRequest(op, input, output)
  4223  	return
  4224  }
  4225  
  4226  // ListFilters API operation for Amazon Personalize.
  4227  //
  4228  // Lists all filters that belong to a given dataset group.
  4229  //
  4230  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4231  // with awserr.Error's Code and Message methods to get detailed information about
  4232  // the error.
  4233  //
  4234  // See the AWS API reference guide for Amazon Personalize's
  4235  // API operation ListFilters for usage and error information.
  4236  //
  4237  // Returned Error Types:
  4238  //   * InvalidInputException
  4239  //   Provide a valid value for the field or parameter.
  4240  //
  4241  //   * InvalidNextTokenException
  4242  //   The token is not valid.
  4243  //
  4244  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListFilters
  4245  func (c *Personalize) ListFilters(input *ListFiltersInput) (*ListFiltersOutput, error) {
  4246  	req, out := c.ListFiltersRequest(input)
  4247  	return out, req.Send()
  4248  }
  4249  
  4250  // ListFiltersWithContext is the same as ListFilters with the addition of
  4251  // the ability to pass a context and additional request options.
  4252  //
  4253  // See ListFilters for details on how to use this API operation.
  4254  //
  4255  // The context must be non-nil and will be used for request cancellation. If
  4256  // the context is nil a panic will occur. In the future the SDK may create
  4257  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4258  // for more information on using Contexts.
  4259  func (c *Personalize) ListFiltersWithContext(ctx aws.Context, input *ListFiltersInput, opts ...request.Option) (*ListFiltersOutput, error) {
  4260  	req, out := c.ListFiltersRequest(input)
  4261  	req.SetContext(ctx)
  4262  	req.ApplyOptions(opts...)
  4263  	return out, req.Send()
  4264  }
  4265  
  4266  // ListFiltersPages iterates over the pages of a ListFilters operation,
  4267  // calling the "fn" function with the response data for each page. To stop
  4268  // iterating, return false from the fn function.
  4269  //
  4270  // See ListFilters method for more information on how to use this operation.
  4271  //
  4272  // Note: This operation can generate multiple requests to a service.
  4273  //
  4274  //    // Example iterating over at most 3 pages of a ListFilters operation.
  4275  //    pageNum := 0
  4276  //    err := client.ListFiltersPages(params,
  4277  //        func(page *personalize.ListFiltersOutput, lastPage bool) bool {
  4278  //            pageNum++
  4279  //            fmt.Println(page)
  4280  //            return pageNum <= 3
  4281  //        })
  4282  //
  4283  func (c *Personalize) ListFiltersPages(input *ListFiltersInput, fn func(*ListFiltersOutput, bool) bool) error {
  4284  	return c.ListFiltersPagesWithContext(aws.BackgroundContext(), input, fn)
  4285  }
  4286  
  4287  // ListFiltersPagesWithContext same as ListFiltersPages except
  4288  // it takes a Context and allows setting request options on the pages.
  4289  //
  4290  // The context must be non-nil and will be used for request cancellation. If
  4291  // the context is nil a panic will occur. In the future the SDK may create
  4292  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4293  // for more information on using Contexts.
  4294  func (c *Personalize) ListFiltersPagesWithContext(ctx aws.Context, input *ListFiltersInput, fn func(*ListFiltersOutput, bool) bool, opts ...request.Option) error {
  4295  	p := request.Pagination{
  4296  		NewRequest: func() (*request.Request, error) {
  4297  			var inCpy *ListFiltersInput
  4298  			if input != nil {
  4299  				tmp := *input
  4300  				inCpy = &tmp
  4301  			}
  4302  			req, _ := c.ListFiltersRequest(inCpy)
  4303  			req.SetContext(ctx)
  4304  			req.ApplyOptions(opts...)
  4305  			return req, nil
  4306  		},
  4307  	}
  4308  
  4309  	for p.Next() {
  4310  		if !fn(p.Page().(*ListFiltersOutput), !p.HasNextPage()) {
  4311  			break
  4312  		}
  4313  	}
  4314  
  4315  	return p.Err()
  4316  }
  4317  
  4318  const opListRecipes = "ListRecipes"
  4319  
  4320  // ListRecipesRequest generates a "aws/request.Request" representing the
  4321  // client's request for the ListRecipes operation. The "output" return
  4322  // value will be populated with the request's response once the request completes
  4323  // successfully.
  4324  //
  4325  // Use "Send" method on the returned Request to send the API call to the service.
  4326  // the "output" return value is not valid until after Send returns without error.
  4327  //
  4328  // See ListRecipes for more information on using the ListRecipes
  4329  // API call, and error handling.
  4330  //
  4331  // This method is useful when you want to inject custom logic or configuration
  4332  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4333  //
  4334  //
  4335  //    // Example sending a request using the ListRecipesRequest method.
  4336  //    req, resp := client.ListRecipesRequest(params)
  4337  //
  4338  //    err := req.Send()
  4339  //    if err == nil { // resp is now filled
  4340  //        fmt.Println(resp)
  4341  //    }
  4342  //
  4343  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListRecipes
  4344  func (c *Personalize) ListRecipesRequest(input *ListRecipesInput) (req *request.Request, output *ListRecipesOutput) {
  4345  	op := &request.Operation{
  4346  		Name:       opListRecipes,
  4347  		HTTPMethod: "POST",
  4348  		HTTPPath:   "/",
  4349  		Paginator: &request.Paginator{
  4350  			InputTokens:     []string{"nextToken"},
  4351  			OutputTokens:    []string{"nextToken"},
  4352  			LimitToken:      "maxResults",
  4353  			TruncationToken: "",
  4354  		},
  4355  	}
  4356  
  4357  	if input == nil {
  4358  		input = &ListRecipesInput{}
  4359  	}
  4360  
  4361  	output = &ListRecipesOutput{}
  4362  	req = c.newRequest(op, input, output)
  4363  	return
  4364  }
  4365  
  4366  // ListRecipes API operation for Amazon Personalize.
  4367  //
  4368  // Returns a list of available recipes. The response provides the properties
  4369  // for each recipe, including the recipe's Amazon Resource Name (ARN).
  4370  //
  4371  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4372  // with awserr.Error's Code and Message methods to get detailed information about
  4373  // the error.
  4374  //
  4375  // See the AWS API reference guide for Amazon Personalize's
  4376  // API operation ListRecipes for usage and error information.
  4377  //
  4378  // Returned Error Types:
  4379  //   * InvalidNextTokenException
  4380  //   The token is not valid.
  4381  //
  4382  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListRecipes
  4383  func (c *Personalize) ListRecipes(input *ListRecipesInput) (*ListRecipesOutput, error) {
  4384  	req, out := c.ListRecipesRequest(input)
  4385  	return out, req.Send()
  4386  }
  4387  
  4388  // ListRecipesWithContext is the same as ListRecipes with the addition of
  4389  // the ability to pass a context and additional request options.
  4390  //
  4391  // See ListRecipes for details on how to use this API operation.
  4392  //
  4393  // The context must be non-nil and will be used for request cancellation. If
  4394  // the context is nil a panic will occur. In the future the SDK may create
  4395  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4396  // for more information on using Contexts.
  4397  func (c *Personalize) ListRecipesWithContext(ctx aws.Context, input *ListRecipesInput, opts ...request.Option) (*ListRecipesOutput, error) {
  4398  	req, out := c.ListRecipesRequest(input)
  4399  	req.SetContext(ctx)
  4400  	req.ApplyOptions(opts...)
  4401  	return out, req.Send()
  4402  }
  4403  
  4404  // ListRecipesPages iterates over the pages of a ListRecipes operation,
  4405  // calling the "fn" function with the response data for each page. To stop
  4406  // iterating, return false from the fn function.
  4407  //
  4408  // See ListRecipes method for more information on how to use this operation.
  4409  //
  4410  // Note: This operation can generate multiple requests to a service.
  4411  //
  4412  //    // Example iterating over at most 3 pages of a ListRecipes operation.
  4413  //    pageNum := 0
  4414  //    err := client.ListRecipesPages(params,
  4415  //        func(page *personalize.ListRecipesOutput, lastPage bool) bool {
  4416  //            pageNum++
  4417  //            fmt.Println(page)
  4418  //            return pageNum <= 3
  4419  //        })
  4420  //
  4421  func (c *Personalize) ListRecipesPages(input *ListRecipesInput, fn func(*ListRecipesOutput, bool) bool) error {
  4422  	return c.ListRecipesPagesWithContext(aws.BackgroundContext(), input, fn)
  4423  }
  4424  
  4425  // ListRecipesPagesWithContext same as ListRecipesPages except
  4426  // it takes a Context and allows setting request options on the pages.
  4427  //
  4428  // The context must be non-nil and will be used for request cancellation. If
  4429  // the context is nil a panic will occur. In the future the SDK may create
  4430  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4431  // for more information on using Contexts.
  4432  func (c *Personalize) ListRecipesPagesWithContext(ctx aws.Context, input *ListRecipesInput, fn func(*ListRecipesOutput, bool) bool, opts ...request.Option) error {
  4433  	p := request.Pagination{
  4434  		NewRequest: func() (*request.Request, error) {
  4435  			var inCpy *ListRecipesInput
  4436  			if input != nil {
  4437  				tmp := *input
  4438  				inCpy = &tmp
  4439  			}
  4440  			req, _ := c.ListRecipesRequest(inCpy)
  4441  			req.SetContext(ctx)
  4442  			req.ApplyOptions(opts...)
  4443  			return req, nil
  4444  		},
  4445  	}
  4446  
  4447  	for p.Next() {
  4448  		if !fn(p.Page().(*ListRecipesOutput), !p.HasNextPage()) {
  4449  			break
  4450  		}
  4451  	}
  4452  
  4453  	return p.Err()
  4454  }
  4455  
  4456  const opListSchemas = "ListSchemas"
  4457  
  4458  // ListSchemasRequest generates a "aws/request.Request" representing the
  4459  // client's request for the ListSchemas operation. The "output" return
  4460  // value will be populated with the request's response once the request completes
  4461  // successfully.
  4462  //
  4463  // Use "Send" method on the returned Request to send the API call to the service.
  4464  // the "output" return value is not valid until after Send returns without error.
  4465  //
  4466  // See ListSchemas for more information on using the ListSchemas
  4467  // API call, and error handling.
  4468  //
  4469  // This method is useful when you want to inject custom logic or configuration
  4470  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4471  //
  4472  //
  4473  //    // Example sending a request using the ListSchemasRequest method.
  4474  //    req, resp := client.ListSchemasRequest(params)
  4475  //
  4476  //    err := req.Send()
  4477  //    if err == nil { // resp is now filled
  4478  //        fmt.Println(resp)
  4479  //    }
  4480  //
  4481  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListSchemas
  4482  func (c *Personalize) ListSchemasRequest(input *ListSchemasInput) (req *request.Request, output *ListSchemasOutput) {
  4483  	op := &request.Operation{
  4484  		Name:       opListSchemas,
  4485  		HTTPMethod: "POST",
  4486  		HTTPPath:   "/",
  4487  		Paginator: &request.Paginator{
  4488  			InputTokens:     []string{"nextToken"},
  4489  			OutputTokens:    []string{"nextToken"},
  4490  			LimitToken:      "maxResults",
  4491  			TruncationToken: "",
  4492  		},
  4493  	}
  4494  
  4495  	if input == nil {
  4496  		input = &ListSchemasInput{}
  4497  	}
  4498  
  4499  	output = &ListSchemasOutput{}
  4500  	req = c.newRequest(op, input, output)
  4501  	return
  4502  }
  4503  
  4504  // ListSchemas API operation for Amazon Personalize.
  4505  //
  4506  // Returns the list of schemas associated with the account. The response provides
  4507  // the properties for each schema, including the Amazon Resource Name (ARN).
  4508  // For more information on schemas, see CreateSchema.
  4509  //
  4510  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4511  // with awserr.Error's Code and Message methods to get detailed information about
  4512  // the error.
  4513  //
  4514  // See the AWS API reference guide for Amazon Personalize's
  4515  // API operation ListSchemas for usage and error information.
  4516  //
  4517  // Returned Error Types:
  4518  //   * InvalidNextTokenException
  4519  //   The token is not valid.
  4520  //
  4521  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListSchemas
  4522  func (c *Personalize) ListSchemas(input *ListSchemasInput) (*ListSchemasOutput, error) {
  4523  	req, out := c.ListSchemasRequest(input)
  4524  	return out, req.Send()
  4525  }
  4526  
  4527  // ListSchemasWithContext is the same as ListSchemas with the addition of
  4528  // the ability to pass a context and additional request options.
  4529  //
  4530  // See ListSchemas for details on how to use this API operation.
  4531  //
  4532  // The context must be non-nil and will be used for request cancellation. If
  4533  // the context is nil a panic will occur. In the future the SDK may create
  4534  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4535  // for more information on using Contexts.
  4536  func (c *Personalize) ListSchemasWithContext(ctx aws.Context, input *ListSchemasInput, opts ...request.Option) (*ListSchemasOutput, error) {
  4537  	req, out := c.ListSchemasRequest(input)
  4538  	req.SetContext(ctx)
  4539  	req.ApplyOptions(opts...)
  4540  	return out, req.Send()
  4541  }
  4542  
  4543  // ListSchemasPages iterates over the pages of a ListSchemas operation,
  4544  // calling the "fn" function with the response data for each page. To stop
  4545  // iterating, return false from the fn function.
  4546  //
  4547  // See ListSchemas method for more information on how to use this operation.
  4548  //
  4549  // Note: This operation can generate multiple requests to a service.
  4550  //
  4551  //    // Example iterating over at most 3 pages of a ListSchemas operation.
  4552  //    pageNum := 0
  4553  //    err := client.ListSchemasPages(params,
  4554  //        func(page *personalize.ListSchemasOutput, lastPage bool) bool {
  4555  //            pageNum++
  4556  //            fmt.Println(page)
  4557  //            return pageNum <= 3
  4558  //        })
  4559  //
  4560  func (c *Personalize) ListSchemasPages(input *ListSchemasInput, fn func(*ListSchemasOutput, bool) bool) error {
  4561  	return c.ListSchemasPagesWithContext(aws.BackgroundContext(), input, fn)
  4562  }
  4563  
  4564  // ListSchemasPagesWithContext same as ListSchemasPages except
  4565  // it takes a Context and allows setting request options on the pages.
  4566  //
  4567  // The context must be non-nil and will be used for request cancellation. If
  4568  // the context is nil a panic will occur. In the future the SDK may create
  4569  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4570  // for more information on using Contexts.
  4571  func (c *Personalize) ListSchemasPagesWithContext(ctx aws.Context, input *ListSchemasInput, fn func(*ListSchemasOutput, bool) bool, opts ...request.Option) error {
  4572  	p := request.Pagination{
  4573  		NewRequest: func() (*request.Request, error) {
  4574  			var inCpy *ListSchemasInput
  4575  			if input != nil {
  4576  				tmp := *input
  4577  				inCpy = &tmp
  4578  			}
  4579  			req, _ := c.ListSchemasRequest(inCpy)
  4580  			req.SetContext(ctx)
  4581  			req.ApplyOptions(opts...)
  4582  			return req, nil
  4583  		},
  4584  	}
  4585  
  4586  	for p.Next() {
  4587  		if !fn(p.Page().(*ListSchemasOutput), !p.HasNextPage()) {
  4588  			break
  4589  		}
  4590  	}
  4591  
  4592  	return p.Err()
  4593  }
  4594  
  4595  const opListSolutionVersions = "ListSolutionVersions"
  4596  
  4597  // ListSolutionVersionsRequest generates a "aws/request.Request" representing the
  4598  // client's request for the ListSolutionVersions operation. The "output" return
  4599  // value will be populated with the request's response once the request completes
  4600  // successfully.
  4601  //
  4602  // Use "Send" method on the returned Request to send the API call to the service.
  4603  // the "output" return value is not valid until after Send returns without error.
  4604  //
  4605  // See ListSolutionVersions for more information on using the ListSolutionVersions
  4606  // API call, and error handling.
  4607  //
  4608  // This method is useful when you want to inject custom logic or configuration
  4609  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4610  //
  4611  //
  4612  //    // Example sending a request using the ListSolutionVersionsRequest method.
  4613  //    req, resp := client.ListSolutionVersionsRequest(params)
  4614  //
  4615  //    err := req.Send()
  4616  //    if err == nil { // resp is now filled
  4617  //        fmt.Println(resp)
  4618  //    }
  4619  //
  4620  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListSolutionVersions
  4621  func (c *Personalize) ListSolutionVersionsRequest(input *ListSolutionVersionsInput) (req *request.Request, output *ListSolutionVersionsOutput) {
  4622  	op := &request.Operation{
  4623  		Name:       opListSolutionVersions,
  4624  		HTTPMethod: "POST",
  4625  		HTTPPath:   "/",
  4626  		Paginator: &request.Paginator{
  4627  			InputTokens:     []string{"nextToken"},
  4628  			OutputTokens:    []string{"nextToken"},
  4629  			LimitToken:      "maxResults",
  4630  			TruncationToken: "",
  4631  		},
  4632  	}
  4633  
  4634  	if input == nil {
  4635  		input = &ListSolutionVersionsInput{}
  4636  	}
  4637  
  4638  	output = &ListSolutionVersionsOutput{}
  4639  	req = c.newRequest(op, input, output)
  4640  	return
  4641  }
  4642  
  4643  // ListSolutionVersions API operation for Amazon Personalize.
  4644  //
  4645  // Returns a list of solution versions for the given solution. When a solution
  4646  // is not specified, all the solution versions associated with the account are
  4647  // listed. The response provides the properties for each solution version, including
  4648  // the Amazon Resource Name (ARN). For more information on solutions, see CreateSolution.
  4649  //
  4650  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4651  // with awserr.Error's Code and Message methods to get detailed information about
  4652  // the error.
  4653  //
  4654  // See the AWS API reference guide for Amazon Personalize's
  4655  // API operation ListSolutionVersions for usage and error information.
  4656  //
  4657  // Returned Error Types:
  4658  //   * InvalidInputException
  4659  //   Provide a valid value for the field or parameter.
  4660  //
  4661  //   * ResourceNotFoundException
  4662  //   Could not find the specified resource.
  4663  //
  4664  //   * InvalidNextTokenException
  4665  //   The token is not valid.
  4666  //
  4667  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListSolutionVersions
  4668  func (c *Personalize) ListSolutionVersions(input *ListSolutionVersionsInput) (*ListSolutionVersionsOutput, error) {
  4669  	req, out := c.ListSolutionVersionsRequest(input)
  4670  	return out, req.Send()
  4671  }
  4672  
  4673  // ListSolutionVersionsWithContext is the same as ListSolutionVersions with the addition of
  4674  // the ability to pass a context and additional request options.
  4675  //
  4676  // See ListSolutionVersions for details on how to use this API operation.
  4677  //
  4678  // The context must be non-nil and will be used for request cancellation. If
  4679  // the context is nil a panic will occur. In the future the SDK may create
  4680  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4681  // for more information on using Contexts.
  4682  func (c *Personalize) ListSolutionVersionsWithContext(ctx aws.Context, input *ListSolutionVersionsInput, opts ...request.Option) (*ListSolutionVersionsOutput, error) {
  4683  	req, out := c.ListSolutionVersionsRequest(input)
  4684  	req.SetContext(ctx)
  4685  	req.ApplyOptions(opts...)
  4686  	return out, req.Send()
  4687  }
  4688  
  4689  // ListSolutionVersionsPages iterates over the pages of a ListSolutionVersions operation,
  4690  // calling the "fn" function with the response data for each page. To stop
  4691  // iterating, return false from the fn function.
  4692  //
  4693  // See ListSolutionVersions method for more information on how to use this operation.
  4694  //
  4695  // Note: This operation can generate multiple requests to a service.
  4696  //
  4697  //    // Example iterating over at most 3 pages of a ListSolutionVersions operation.
  4698  //    pageNum := 0
  4699  //    err := client.ListSolutionVersionsPages(params,
  4700  //        func(page *personalize.ListSolutionVersionsOutput, lastPage bool) bool {
  4701  //            pageNum++
  4702  //            fmt.Println(page)
  4703  //            return pageNum <= 3
  4704  //        })
  4705  //
  4706  func (c *Personalize) ListSolutionVersionsPages(input *ListSolutionVersionsInput, fn func(*ListSolutionVersionsOutput, bool) bool) error {
  4707  	return c.ListSolutionVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
  4708  }
  4709  
  4710  // ListSolutionVersionsPagesWithContext same as ListSolutionVersionsPages except
  4711  // it takes a Context and allows setting request options on the pages.
  4712  //
  4713  // The context must be non-nil and will be used for request cancellation. If
  4714  // the context is nil a panic will occur. In the future the SDK may create
  4715  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4716  // for more information on using Contexts.
  4717  func (c *Personalize) ListSolutionVersionsPagesWithContext(ctx aws.Context, input *ListSolutionVersionsInput, fn func(*ListSolutionVersionsOutput, bool) bool, opts ...request.Option) error {
  4718  	p := request.Pagination{
  4719  		NewRequest: func() (*request.Request, error) {
  4720  			var inCpy *ListSolutionVersionsInput
  4721  			if input != nil {
  4722  				tmp := *input
  4723  				inCpy = &tmp
  4724  			}
  4725  			req, _ := c.ListSolutionVersionsRequest(inCpy)
  4726  			req.SetContext(ctx)
  4727  			req.ApplyOptions(opts...)
  4728  			return req, nil
  4729  		},
  4730  	}
  4731  
  4732  	for p.Next() {
  4733  		if !fn(p.Page().(*ListSolutionVersionsOutput), !p.HasNextPage()) {
  4734  			break
  4735  		}
  4736  	}
  4737  
  4738  	return p.Err()
  4739  }
  4740  
  4741  const opListSolutions = "ListSolutions"
  4742  
  4743  // ListSolutionsRequest generates a "aws/request.Request" representing the
  4744  // client's request for the ListSolutions operation. The "output" return
  4745  // value will be populated with the request's response once the request completes
  4746  // successfully.
  4747  //
  4748  // Use "Send" method on the returned Request to send the API call to the service.
  4749  // the "output" return value is not valid until after Send returns without error.
  4750  //
  4751  // See ListSolutions for more information on using the ListSolutions
  4752  // API call, and error handling.
  4753  //
  4754  // This method is useful when you want to inject custom logic or configuration
  4755  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4756  //
  4757  //
  4758  //    // Example sending a request using the ListSolutionsRequest method.
  4759  //    req, resp := client.ListSolutionsRequest(params)
  4760  //
  4761  //    err := req.Send()
  4762  //    if err == nil { // resp is now filled
  4763  //        fmt.Println(resp)
  4764  //    }
  4765  //
  4766  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListSolutions
  4767  func (c *Personalize) ListSolutionsRequest(input *ListSolutionsInput) (req *request.Request, output *ListSolutionsOutput) {
  4768  	op := &request.Operation{
  4769  		Name:       opListSolutions,
  4770  		HTTPMethod: "POST",
  4771  		HTTPPath:   "/",
  4772  		Paginator: &request.Paginator{
  4773  			InputTokens:     []string{"nextToken"},
  4774  			OutputTokens:    []string{"nextToken"},
  4775  			LimitToken:      "maxResults",
  4776  			TruncationToken: "",
  4777  		},
  4778  	}
  4779  
  4780  	if input == nil {
  4781  		input = &ListSolutionsInput{}
  4782  	}
  4783  
  4784  	output = &ListSolutionsOutput{}
  4785  	req = c.newRequest(op, input, output)
  4786  	return
  4787  }
  4788  
  4789  // ListSolutions API operation for Amazon Personalize.
  4790  //
  4791  // Returns a list of solutions that use the given dataset group. When a dataset
  4792  // group is not specified, all the solutions associated with the account are
  4793  // listed. The response provides the properties for each solution, including
  4794  // the Amazon Resource Name (ARN). For more information on solutions, see CreateSolution.
  4795  //
  4796  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4797  // with awserr.Error's Code and Message methods to get detailed information about
  4798  // the error.
  4799  //
  4800  // See the AWS API reference guide for Amazon Personalize's
  4801  // API operation ListSolutions for usage and error information.
  4802  //
  4803  // Returned Error Types:
  4804  //   * InvalidInputException
  4805  //   Provide a valid value for the field or parameter.
  4806  //
  4807  //   * InvalidNextTokenException
  4808  //   The token is not valid.
  4809  //
  4810  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/ListSolutions
  4811  func (c *Personalize) ListSolutions(input *ListSolutionsInput) (*ListSolutionsOutput, error) {
  4812  	req, out := c.ListSolutionsRequest(input)
  4813  	return out, req.Send()
  4814  }
  4815  
  4816  // ListSolutionsWithContext is the same as ListSolutions with the addition of
  4817  // the ability to pass a context and additional request options.
  4818  //
  4819  // See ListSolutions for details on how to use this API operation.
  4820  //
  4821  // The context must be non-nil and will be used for request cancellation. If
  4822  // the context is nil a panic will occur. In the future the SDK may create
  4823  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4824  // for more information on using Contexts.
  4825  func (c *Personalize) ListSolutionsWithContext(ctx aws.Context, input *ListSolutionsInput, opts ...request.Option) (*ListSolutionsOutput, error) {
  4826  	req, out := c.ListSolutionsRequest(input)
  4827  	req.SetContext(ctx)
  4828  	req.ApplyOptions(opts...)
  4829  	return out, req.Send()
  4830  }
  4831  
  4832  // ListSolutionsPages iterates over the pages of a ListSolutions operation,
  4833  // calling the "fn" function with the response data for each page. To stop
  4834  // iterating, return false from the fn function.
  4835  //
  4836  // See ListSolutions method for more information on how to use this operation.
  4837  //
  4838  // Note: This operation can generate multiple requests to a service.
  4839  //
  4840  //    // Example iterating over at most 3 pages of a ListSolutions operation.
  4841  //    pageNum := 0
  4842  //    err := client.ListSolutionsPages(params,
  4843  //        func(page *personalize.ListSolutionsOutput, lastPage bool) bool {
  4844  //            pageNum++
  4845  //            fmt.Println(page)
  4846  //            return pageNum <= 3
  4847  //        })
  4848  //
  4849  func (c *Personalize) ListSolutionsPages(input *ListSolutionsInput, fn func(*ListSolutionsOutput, bool) bool) error {
  4850  	return c.ListSolutionsPagesWithContext(aws.BackgroundContext(), input, fn)
  4851  }
  4852  
  4853  // ListSolutionsPagesWithContext same as ListSolutionsPages except
  4854  // it takes a Context and allows setting request options on the pages.
  4855  //
  4856  // The context must be non-nil and will be used for request cancellation. If
  4857  // the context is nil a panic will occur. In the future the SDK may create
  4858  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4859  // for more information on using Contexts.
  4860  func (c *Personalize) ListSolutionsPagesWithContext(ctx aws.Context, input *ListSolutionsInput, fn func(*ListSolutionsOutput, bool) bool, opts ...request.Option) error {
  4861  	p := request.Pagination{
  4862  		NewRequest: func() (*request.Request, error) {
  4863  			var inCpy *ListSolutionsInput
  4864  			if input != nil {
  4865  				tmp := *input
  4866  				inCpy = &tmp
  4867  			}
  4868  			req, _ := c.ListSolutionsRequest(inCpy)
  4869  			req.SetContext(ctx)
  4870  			req.ApplyOptions(opts...)
  4871  			return req, nil
  4872  		},
  4873  	}
  4874  
  4875  	for p.Next() {
  4876  		if !fn(p.Page().(*ListSolutionsOutput), !p.HasNextPage()) {
  4877  			break
  4878  		}
  4879  	}
  4880  
  4881  	return p.Err()
  4882  }
  4883  
  4884  const opStopSolutionVersionCreation = "StopSolutionVersionCreation"
  4885  
  4886  // StopSolutionVersionCreationRequest generates a "aws/request.Request" representing the
  4887  // client's request for the StopSolutionVersionCreation operation. The "output" return
  4888  // value will be populated with the request's response once the request completes
  4889  // successfully.
  4890  //
  4891  // Use "Send" method on the returned Request to send the API call to the service.
  4892  // the "output" return value is not valid until after Send returns without error.
  4893  //
  4894  // See StopSolutionVersionCreation for more information on using the StopSolutionVersionCreation
  4895  // API call, and error handling.
  4896  //
  4897  // This method is useful when you want to inject custom logic or configuration
  4898  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4899  //
  4900  //
  4901  //    // Example sending a request using the StopSolutionVersionCreationRequest method.
  4902  //    req, resp := client.StopSolutionVersionCreationRequest(params)
  4903  //
  4904  //    err := req.Send()
  4905  //    if err == nil { // resp is now filled
  4906  //        fmt.Println(resp)
  4907  //    }
  4908  //
  4909  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/StopSolutionVersionCreation
  4910  func (c *Personalize) StopSolutionVersionCreationRequest(input *StopSolutionVersionCreationInput) (req *request.Request, output *StopSolutionVersionCreationOutput) {
  4911  	op := &request.Operation{
  4912  		Name:       opStopSolutionVersionCreation,
  4913  		HTTPMethod: "POST",
  4914  		HTTPPath:   "/",
  4915  	}
  4916  
  4917  	if input == nil {
  4918  		input = &StopSolutionVersionCreationInput{}
  4919  	}
  4920  
  4921  	output = &StopSolutionVersionCreationOutput{}
  4922  	req = c.newRequest(op, input, output)
  4923  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4924  	return
  4925  }
  4926  
  4927  // StopSolutionVersionCreation API operation for Amazon Personalize.
  4928  //
  4929  // Stops creating a solution version that is in a state of CREATE_PENDING or
  4930  // CREATE IN_PROGRESS.
  4931  //
  4932  // Depending on the current state of the solution version, the solution version
  4933  // state changes as follows:
  4934  //
  4935  //    * CREATE_PENDING > CREATE_STOPPED or
  4936  //
  4937  //    * CREATE_IN_PROGRESS > CREATE_STOPPING > CREATE_STOPPED
  4938  //
  4939  // You are billed for all of the training completed up until you stop the solution
  4940  // version creation. You cannot resume creating a solution version once it has
  4941  // been stopped.
  4942  //
  4943  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4944  // with awserr.Error's Code and Message methods to get detailed information about
  4945  // the error.
  4946  //
  4947  // See the AWS API reference guide for Amazon Personalize's
  4948  // API operation StopSolutionVersionCreation for usage and error information.
  4949  //
  4950  // Returned Error Types:
  4951  //   * InvalidInputException
  4952  //   Provide a valid value for the field or parameter.
  4953  //
  4954  //   * ResourceNotFoundException
  4955  //   Could not find the specified resource.
  4956  //
  4957  //   * ResourceInUseException
  4958  //   The specified resource is in use.
  4959  //
  4960  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/StopSolutionVersionCreation
  4961  func (c *Personalize) StopSolutionVersionCreation(input *StopSolutionVersionCreationInput) (*StopSolutionVersionCreationOutput, error) {
  4962  	req, out := c.StopSolutionVersionCreationRequest(input)
  4963  	return out, req.Send()
  4964  }
  4965  
  4966  // StopSolutionVersionCreationWithContext is the same as StopSolutionVersionCreation with the addition of
  4967  // the ability to pass a context and additional request options.
  4968  //
  4969  // See StopSolutionVersionCreation for details on how to use this API operation.
  4970  //
  4971  // The context must be non-nil and will be used for request cancellation. If
  4972  // the context is nil a panic will occur. In the future the SDK may create
  4973  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4974  // for more information on using Contexts.
  4975  func (c *Personalize) StopSolutionVersionCreationWithContext(ctx aws.Context, input *StopSolutionVersionCreationInput, opts ...request.Option) (*StopSolutionVersionCreationOutput, error) {
  4976  	req, out := c.StopSolutionVersionCreationRequest(input)
  4977  	req.SetContext(ctx)
  4978  	req.ApplyOptions(opts...)
  4979  	return out, req.Send()
  4980  }
  4981  
  4982  const opUpdateCampaign = "UpdateCampaign"
  4983  
  4984  // UpdateCampaignRequest generates a "aws/request.Request" representing the
  4985  // client's request for the UpdateCampaign operation. The "output" return
  4986  // value will be populated with the request's response once the request completes
  4987  // successfully.
  4988  //
  4989  // Use "Send" method on the returned Request to send the API call to the service.
  4990  // the "output" return value is not valid until after Send returns without error.
  4991  //
  4992  // See UpdateCampaign for more information on using the UpdateCampaign
  4993  // API call, and error handling.
  4994  //
  4995  // This method is useful when you want to inject custom logic or configuration
  4996  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4997  //
  4998  //
  4999  //    // Example sending a request using the UpdateCampaignRequest method.
  5000  //    req, resp := client.UpdateCampaignRequest(params)
  5001  //
  5002  //    err := req.Send()
  5003  //    if err == nil { // resp is now filled
  5004  //        fmt.Println(resp)
  5005  //    }
  5006  //
  5007  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/UpdateCampaign
  5008  func (c *Personalize) UpdateCampaignRequest(input *UpdateCampaignInput) (req *request.Request, output *UpdateCampaignOutput) {
  5009  	op := &request.Operation{
  5010  		Name:       opUpdateCampaign,
  5011  		HTTPMethod: "POST",
  5012  		HTTPPath:   "/",
  5013  	}
  5014  
  5015  	if input == nil {
  5016  		input = &UpdateCampaignInput{}
  5017  	}
  5018  
  5019  	output = &UpdateCampaignOutput{}
  5020  	req = c.newRequest(op, input, output)
  5021  	return
  5022  }
  5023  
  5024  // UpdateCampaign API operation for Amazon Personalize.
  5025  //
  5026  // Updates a campaign by either deploying a new solution or changing the value
  5027  // of the campaign's minProvisionedTPS parameter.
  5028  //
  5029  // To update a campaign, the campaign status must be ACTIVE or CREATE FAILED.
  5030  // Check the campaign status using the DescribeCampaign API.
  5031  //
  5032  // You must wait until the status of the updated campaign is ACTIVE before asking
  5033  // the campaign for recommendations.
  5034  //
  5035  // For more information on campaigns, see CreateCampaign.
  5036  //
  5037  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5038  // with awserr.Error's Code and Message methods to get detailed information about
  5039  // the error.
  5040  //
  5041  // See the AWS API reference guide for Amazon Personalize's
  5042  // API operation UpdateCampaign for usage and error information.
  5043  //
  5044  // Returned Error Types:
  5045  //   * InvalidInputException
  5046  //   Provide a valid value for the field or parameter.
  5047  //
  5048  //   * ResourceNotFoundException
  5049  //   Could not find the specified resource.
  5050  //
  5051  //   * ResourceInUseException
  5052  //   The specified resource is in use.
  5053  //
  5054  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/UpdateCampaign
  5055  func (c *Personalize) UpdateCampaign(input *UpdateCampaignInput) (*UpdateCampaignOutput, error) {
  5056  	req, out := c.UpdateCampaignRequest(input)
  5057  	return out, req.Send()
  5058  }
  5059  
  5060  // UpdateCampaignWithContext is the same as UpdateCampaign with the addition of
  5061  // the ability to pass a context and additional request options.
  5062  //
  5063  // See UpdateCampaign for details on how to use this API operation.
  5064  //
  5065  // The context must be non-nil and will be used for request cancellation. If
  5066  // the context is nil a panic will occur. In the future the SDK may create
  5067  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5068  // for more information on using Contexts.
  5069  func (c *Personalize) UpdateCampaignWithContext(ctx aws.Context, input *UpdateCampaignInput, opts ...request.Option) (*UpdateCampaignOutput, error) {
  5070  	req, out := c.UpdateCampaignRequest(input)
  5071  	req.SetContext(ctx)
  5072  	req.ApplyOptions(opts...)
  5073  	return out, req.Send()
  5074  }
  5075  
  5076  // Describes a custom algorithm.
  5077  type Algorithm struct {
  5078  	_ struct{} `type:"structure"`
  5079  
  5080  	// The Amazon Resource Name (ARN) of the algorithm.
  5081  	AlgorithmArn *string `locationName:"algorithmArn" type:"string"`
  5082  
  5083  	// The URI of the Docker container for the algorithm image.
  5084  	AlgorithmImage *AlgorithmImage `locationName:"algorithmImage" type:"structure"`
  5085  
  5086  	// The date and time (in Unix time) that the algorithm was created.
  5087  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  5088  
  5089  	// Specifies the default hyperparameters, their ranges, and whether they are
  5090  	// tunable. A tunable hyperparameter can have its value determined during hyperparameter
  5091  	// optimization (HPO).
  5092  	DefaultHyperParameterRanges *DefaultHyperParameterRanges `locationName:"defaultHyperParameterRanges" type:"structure"`
  5093  
  5094  	// Specifies the default hyperparameters.
  5095  	DefaultHyperParameters map[string]*string `locationName:"defaultHyperParameters" type:"map"`
  5096  
  5097  	// Specifies the default maximum number of training jobs and parallel training
  5098  	// jobs.
  5099  	DefaultResourceConfig map[string]*string `locationName:"defaultResourceConfig" type:"map"`
  5100  
  5101  	// The date and time (in Unix time) that the algorithm was last updated.
  5102  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  5103  
  5104  	// The name of the algorithm.
  5105  	Name *string `locationName:"name" min:"1" type:"string"`
  5106  
  5107  	// The Amazon Resource Name (ARN) of the role.
  5108  	RoleArn *string `locationName:"roleArn" type:"string"`
  5109  
  5110  	// The training input mode.
  5111  	TrainingInputMode *string `locationName:"trainingInputMode" type:"string"`
  5112  }
  5113  
  5114  // String returns the string representation.
  5115  //
  5116  // API parameter values that are decorated as "sensitive" in the API will not
  5117  // be included in the string output. The member name will be present, but the
  5118  // value will be replaced with "sensitive".
  5119  func (s Algorithm) String() string {
  5120  	return awsutil.Prettify(s)
  5121  }
  5122  
  5123  // GoString returns the string representation.
  5124  //
  5125  // API parameter values that are decorated as "sensitive" in the API will not
  5126  // be included in the string output. The member name will be present, but the
  5127  // value will be replaced with "sensitive".
  5128  func (s Algorithm) GoString() string {
  5129  	return s.String()
  5130  }
  5131  
  5132  // SetAlgorithmArn sets the AlgorithmArn field's value.
  5133  func (s *Algorithm) SetAlgorithmArn(v string) *Algorithm {
  5134  	s.AlgorithmArn = &v
  5135  	return s
  5136  }
  5137  
  5138  // SetAlgorithmImage sets the AlgorithmImage field's value.
  5139  func (s *Algorithm) SetAlgorithmImage(v *AlgorithmImage) *Algorithm {
  5140  	s.AlgorithmImage = v
  5141  	return s
  5142  }
  5143  
  5144  // SetCreationDateTime sets the CreationDateTime field's value.
  5145  func (s *Algorithm) SetCreationDateTime(v time.Time) *Algorithm {
  5146  	s.CreationDateTime = &v
  5147  	return s
  5148  }
  5149  
  5150  // SetDefaultHyperParameterRanges sets the DefaultHyperParameterRanges field's value.
  5151  func (s *Algorithm) SetDefaultHyperParameterRanges(v *DefaultHyperParameterRanges) *Algorithm {
  5152  	s.DefaultHyperParameterRanges = v
  5153  	return s
  5154  }
  5155  
  5156  // SetDefaultHyperParameters sets the DefaultHyperParameters field's value.
  5157  func (s *Algorithm) SetDefaultHyperParameters(v map[string]*string) *Algorithm {
  5158  	s.DefaultHyperParameters = v
  5159  	return s
  5160  }
  5161  
  5162  // SetDefaultResourceConfig sets the DefaultResourceConfig field's value.
  5163  func (s *Algorithm) SetDefaultResourceConfig(v map[string]*string) *Algorithm {
  5164  	s.DefaultResourceConfig = v
  5165  	return s
  5166  }
  5167  
  5168  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  5169  func (s *Algorithm) SetLastUpdatedDateTime(v time.Time) *Algorithm {
  5170  	s.LastUpdatedDateTime = &v
  5171  	return s
  5172  }
  5173  
  5174  // SetName sets the Name field's value.
  5175  func (s *Algorithm) SetName(v string) *Algorithm {
  5176  	s.Name = &v
  5177  	return s
  5178  }
  5179  
  5180  // SetRoleArn sets the RoleArn field's value.
  5181  func (s *Algorithm) SetRoleArn(v string) *Algorithm {
  5182  	s.RoleArn = &v
  5183  	return s
  5184  }
  5185  
  5186  // SetTrainingInputMode sets the TrainingInputMode field's value.
  5187  func (s *Algorithm) SetTrainingInputMode(v string) *Algorithm {
  5188  	s.TrainingInputMode = &v
  5189  	return s
  5190  }
  5191  
  5192  // Describes an algorithm image.
  5193  type AlgorithmImage struct {
  5194  	_ struct{} `type:"structure"`
  5195  
  5196  	// The URI of the Docker container for the algorithm image.
  5197  	//
  5198  	// DockerURI is a required field
  5199  	DockerURI *string `locationName:"dockerURI" type:"string" required:"true"`
  5200  
  5201  	// The name of the algorithm image.
  5202  	Name *string `locationName:"name" 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 AlgorithmImage) 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 AlgorithmImage) GoString() string {
  5220  	return s.String()
  5221  }
  5222  
  5223  // SetDockerURI sets the DockerURI field's value.
  5224  func (s *AlgorithmImage) SetDockerURI(v string) *AlgorithmImage {
  5225  	s.DockerURI = &v
  5226  	return s
  5227  }
  5228  
  5229  // SetName sets the Name field's value.
  5230  func (s *AlgorithmImage) SetName(v string) *AlgorithmImage {
  5231  	s.Name = &v
  5232  	return s
  5233  }
  5234  
  5235  // When the solution performs AutoML (performAutoML is true in CreateSolution),
  5236  // Amazon Personalize determines which recipe, from the specified list, optimizes
  5237  // the given metric. Amazon Personalize then uses that recipe for the solution.
  5238  type AutoMLConfig struct {
  5239  	_ struct{} `type:"structure"`
  5240  
  5241  	// The metric to optimize.
  5242  	MetricName *string `locationName:"metricName" type:"string"`
  5243  
  5244  	// The list of candidate recipes.
  5245  	RecipeList []*string `locationName:"recipeList" type:"list"`
  5246  }
  5247  
  5248  // String returns the string representation.
  5249  //
  5250  // API parameter values that are decorated as "sensitive" in the API will not
  5251  // be included in the string output. The member name will be present, but the
  5252  // value will be replaced with "sensitive".
  5253  func (s AutoMLConfig) String() string {
  5254  	return awsutil.Prettify(s)
  5255  }
  5256  
  5257  // GoString returns the string representation.
  5258  //
  5259  // API parameter values that are decorated as "sensitive" in the API will not
  5260  // be included in the string output. The member name will be present, but the
  5261  // value will be replaced with "sensitive".
  5262  func (s AutoMLConfig) GoString() string {
  5263  	return s.String()
  5264  }
  5265  
  5266  // SetMetricName sets the MetricName field's value.
  5267  func (s *AutoMLConfig) SetMetricName(v string) *AutoMLConfig {
  5268  	s.MetricName = &v
  5269  	return s
  5270  }
  5271  
  5272  // SetRecipeList sets the RecipeList field's value.
  5273  func (s *AutoMLConfig) SetRecipeList(v []*string) *AutoMLConfig {
  5274  	s.RecipeList = v
  5275  	return s
  5276  }
  5277  
  5278  // When the solution performs AutoML (performAutoML is true in CreateSolution),
  5279  // specifies the recipe that best optimized the specified metric.
  5280  type AutoMLResult struct {
  5281  	_ struct{} `type:"structure"`
  5282  
  5283  	// The Amazon Resource Name (ARN) of the best recipe.
  5284  	BestRecipeArn *string `locationName:"bestRecipeArn" type:"string"`
  5285  }
  5286  
  5287  // String returns the string representation.
  5288  //
  5289  // API parameter values that are decorated as "sensitive" in the API will not
  5290  // be included in the string output. The member name will be present, but the
  5291  // value will be replaced with "sensitive".
  5292  func (s AutoMLResult) String() string {
  5293  	return awsutil.Prettify(s)
  5294  }
  5295  
  5296  // GoString returns the string representation.
  5297  //
  5298  // API parameter values that are decorated as "sensitive" in the API will not
  5299  // be included in the string output. The member name will be present, but the
  5300  // value will be replaced with "sensitive".
  5301  func (s AutoMLResult) GoString() string {
  5302  	return s.String()
  5303  }
  5304  
  5305  // SetBestRecipeArn sets the BestRecipeArn field's value.
  5306  func (s *AutoMLResult) SetBestRecipeArn(v string) *AutoMLResult {
  5307  	s.BestRecipeArn = &v
  5308  	return s
  5309  }
  5310  
  5311  // Contains information on a batch inference job.
  5312  type BatchInferenceJob struct {
  5313  	_ struct{} `type:"structure"`
  5314  
  5315  	// The Amazon Resource Name (ARN) of the batch inference job.
  5316  	BatchInferenceJobArn *string `locationName:"batchInferenceJobArn" type:"string"`
  5317  
  5318  	// A string to string map of the configuration details of a batch inference
  5319  	// job.
  5320  	BatchInferenceJobConfig *BatchInferenceJobConfig `locationName:"batchInferenceJobConfig" type:"structure"`
  5321  
  5322  	// The time at which the batch inference job was created.
  5323  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  5324  
  5325  	// If the batch inference job failed, the reason for the failure.
  5326  	FailureReason *string `locationName:"failureReason" type:"string"`
  5327  
  5328  	// The ARN of the filter used on the batch inference job.
  5329  	FilterArn *string `locationName:"filterArn" type:"string"`
  5330  
  5331  	// The Amazon S3 path that leads to the input data used to generate the batch
  5332  	// inference job.
  5333  	JobInput *BatchInferenceJobInput `locationName:"jobInput" type:"structure"`
  5334  
  5335  	// The name of the batch inference job.
  5336  	JobName *string `locationName:"jobName" min:"1" type:"string"`
  5337  
  5338  	// The Amazon S3 bucket that contains the output data generated by the batch
  5339  	// inference job.
  5340  	JobOutput *BatchInferenceJobOutput `locationName:"jobOutput" type:"structure"`
  5341  
  5342  	// The time at which the batch inference job was last updated.
  5343  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  5344  
  5345  	// The number of recommendations generated by the batch inference job. This
  5346  	// number includes the error messages generated for failed input records.
  5347  	NumResults *int64 `locationName:"numResults" type:"integer"`
  5348  
  5349  	// The ARN of the Amazon Identity and Access Management (IAM) role that requested
  5350  	// the batch inference job.
  5351  	RoleArn *string `locationName:"roleArn" type:"string"`
  5352  
  5353  	// The Amazon Resource Name (ARN) of the solution version from which the batch
  5354  	// inference job was created.
  5355  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
  5356  
  5357  	// The status of the batch inference job. The status is one of the following
  5358  	// values:
  5359  	//
  5360  	//    * PENDING
  5361  	//
  5362  	//    * IN PROGRESS
  5363  	//
  5364  	//    * ACTIVE
  5365  	//
  5366  	//    * CREATE FAILED
  5367  	Status *string `locationName:"status" type:"string"`
  5368  }
  5369  
  5370  // String returns the string representation.
  5371  //
  5372  // API parameter values that are decorated as "sensitive" in the API will not
  5373  // be included in the string output. The member name will be present, but the
  5374  // value will be replaced with "sensitive".
  5375  func (s BatchInferenceJob) String() string {
  5376  	return awsutil.Prettify(s)
  5377  }
  5378  
  5379  // GoString returns the string representation.
  5380  //
  5381  // API parameter values that are decorated as "sensitive" in the API will not
  5382  // be included in the string output. The member name will be present, but the
  5383  // value will be replaced with "sensitive".
  5384  func (s BatchInferenceJob) GoString() string {
  5385  	return s.String()
  5386  }
  5387  
  5388  // SetBatchInferenceJobArn sets the BatchInferenceJobArn field's value.
  5389  func (s *BatchInferenceJob) SetBatchInferenceJobArn(v string) *BatchInferenceJob {
  5390  	s.BatchInferenceJobArn = &v
  5391  	return s
  5392  }
  5393  
  5394  // SetBatchInferenceJobConfig sets the BatchInferenceJobConfig field's value.
  5395  func (s *BatchInferenceJob) SetBatchInferenceJobConfig(v *BatchInferenceJobConfig) *BatchInferenceJob {
  5396  	s.BatchInferenceJobConfig = v
  5397  	return s
  5398  }
  5399  
  5400  // SetCreationDateTime sets the CreationDateTime field's value.
  5401  func (s *BatchInferenceJob) SetCreationDateTime(v time.Time) *BatchInferenceJob {
  5402  	s.CreationDateTime = &v
  5403  	return s
  5404  }
  5405  
  5406  // SetFailureReason sets the FailureReason field's value.
  5407  func (s *BatchInferenceJob) SetFailureReason(v string) *BatchInferenceJob {
  5408  	s.FailureReason = &v
  5409  	return s
  5410  }
  5411  
  5412  // SetFilterArn sets the FilterArn field's value.
  5413  func (s *BatchInferenceJob) SetFilterArn(v string) *BatchInferenceJob {
  5414  	s.FilterArn = &v
  5415  	return s
  5416  }
  5417  
  5418  // SetJobInput sets the JobInput field's value.
  5419  func (s *BatchInferenceJob) SetJobInput(v *BatchInferenceJobInput) *BatchInferenceJob {
  5420  	s.JobInput = v
  5421  	return s
  5422  }
  5423  
  5424  // SetJobName sets the JobName field's value.
  5425  func (s *BatchInferenceJob) SetJobName(v string) *BatchInferenceJob {
  5426  	s.JobName = &v
  5427  	return s
  5428  }
  5429  
  5430  // SetJobOutput sets the JobOutput field's value.
  5431  func (s *BatchInferenceJob) SetJobOutput(v *BatchInferenceJobOutput) *BatchInferenceJob {
  5432  	s.JobOutput = v
  5433  	return s
  5434  }
  5435  
  5436  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  5437  func (s *BatchInferenceJob) SetLastUpdatedDateTime(v time.Time) *BatchInferenceJob {
  5438  	s.LastUpdatedDateTime = &v
  5439  	return s
  5440  }
  5441  
  5442  // SetNumResults sets the NumResults field's value.
  5443  func (s *BatchInferenceJob) SetNumResults(v int64) *BatchInferenceJob {
  5444  	s.NumResults = &v
  5445  	return s
  5446  }
  5447  
  5448  // SetRoleArn sets the RoleArn field's value.
  5449  func (s *BatchInferenceJob) SetRoleArn(v string) *BatchInferenceJob {
  5450  	s.RoleArn = &v
  5451  	return s
  5452  }
  5453  
  5454  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
  5455  func (s *BatchInferenceJob) SetSolutionVersionArn(v string) *BatchInferenceJob {
  5456  	s.SolutionVersionArn = &v
  5457  	return s
  5458  }
  5459  
  5460  // SetStatus sets the Status field's value.
  5461  func (s *BatchInferenceJob) SetStatus(v string) *BatchInferenceJob {
  5462  	s.Status = &v
  5463  	return s
  5464  }
  5465  
  5466  // The configuration details of a batch inference job.
  5467  type BatchInferenceJobConfig struct {
  5468  	_ struct{} `type:"structure"`
  5469  
  5470  	// A string to string map specifying the exploration configuration hyperparameters,
  5471  	// including explorationWeight and explorationItemAgeCutOff, you want to use
  5472  	// to configure the amount of item exploration Amazon Personalize uses when
  5473  	// recommending items. See User-Personalization (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html).
  5474  	ItemExplorationConfig map[string]*string `locationName:"itemExplorationConfig" type:"map"`
  5475  }
  5476  
  5477  // String returns the string representation.
  5478  //
  5479  // API parameter values that are decorated as "sensitive" in the API will not
  5480  // be included in the string output. The member name will be present, but the
  5481  // value will be replaced with "sensitive".
  5482  func (s BatchInferenceJobConfig) String() string {
  5483  	return awsutil.Prettify(s)
  5484  }
  5485  
  5486  // GoString returns the string representation.
  5487  //
  5488  // API parameter values that are decorated as "sensitive" in the API will not
  5489  // be included in the string output. The member name will be present, but the
  5490  // value will be replaced with "sensitive".
  5491  func (s BatchInferenceJobConfig) GoString() string {
  5492  	return s.String()
  5493  }
  5494  
  5495  // SetItemExplorationConfig sets the ItemExplorationConfig field's value.
  5496  func (s *BatchInferenceJobConfig) SetItemExplorationConfig(v map[string]*string) *BatchInferenceJobConfig {
  5497  	s.ItemExplorationConfig = v
  5498  	return s
  5499  }
  5500  
  5501  // The input configuration of a batch inference job.
  5502  type BatchInferenceJobInput struct {
  5503  	_ struct{} `type:"structure"`
  5504  
  5505  	// The URI of the Amazon S3 location that contains your input data. The Amazon
  5506  	// S3 bucket must be in the same region as the API endpoint you are calling.
  5507  	//
  5508  	// S3DataSource is a required field
  5509  	S3DataSource *S3DataConfig `locationName:"s3DataSource" type:"structure" required:"true"`
  5510  }
  5511  
  5512  // String returns the string representation.
  5513  //
  5514  // API parameter values that are decorated as "sensitive" in the API will not
  5515  // be included in the string output. The member name will be present, but the
  5516  // value will be replaced with "sensitive".
  5517  func (s BatchInferenceJobInput) String() string {
  5518  	return awsutil.Prettify(s)
  5519  }
  5520  
  5521  // GoString returns the string representation.
  5522  //
  5523  // API parameter values that are decorated as "sensitive" in the API will not
  5524  // be included in the string output. The member name will be present, but the
  5525  // value will be replaced with "sensitive".
  5526  func (s BatchInferenceJobInput) GoString() string {
  5527  	return s.String()
  5528  }
  5529  
  5530  // Validate inspects the fields of the type to determine if they are valid.
  5531  func (s *BatchInferenceJobInput) Validate() error {
  5532  	invalidParams := request.ErrInvalidParams{Context: "BatchInferenceJobInput"}
  5533  	if s.S3DataSource == nil {
  5534  		invalidParams.Add(request.NewErrParamRequired("S3DataSource"))
  5535  	}
  5536  	if s.S3DataSource != nil {
  5537  		if err := s.S3DataSource.Validate(); err != nil {
  5538  			invalidParams.AddNested("S3DataSource", err.(request.ErrInvalidParams))
  5539  		}
  5540  	}
  5541  
  5542  	if invalidParams.Len() > 0 {
  5543  		return invalidParams
  5544  	}
  5545  	return nil
  5546  }
  5547  
  5548  // SetS3DataSource sets the S3DataSource field's value.
  5549  func (s *BatchInferenceJobInput) SetS3DataSource(v *S3DataConfig) *BatchInferenceJobInput {
  5550  	s.S3DataSource = v
  5551  	return s
  5552  }
  5553  
  5554  // The output configuration parameters of a batch inference job.
  5555  type BatchInferenceJobOutput struct {
  5556  	_ struct{} `type:"structure"`
  5557  
  5558  	// Information on the Amazon S3 bucket in which the batch inference job's output
  5559  	// is stored.
  5560  	//
  5561  	// S3DataDestination is a required field
  5562  	S3DataDestination *S3DataConfig `locationName:"s3DataDestination" type:"structure" required:"true"`
  5563  }
  5564  
  5565  // String returns the string representation.
  5566  //
  5567  // API parameter values that are decorated as "sensitive" in the API will not
  5568  // be included in the string output. The member name will be present, but the
  5569  // value will be replaced with "sensitive".
  5570  func (s BatchInferenceJobOutput) String() string {
  5571  	return awsutil.Prettify(s)
  5572  }
  5573  
  5574  // GoString returns the string representation.
  5575  //
  5576  // API parameter values that are decorated as "sensitive" in the API will not
  5577  // be included in the string output. The member name will be present, but the
  5578  // value will be replaced with "sensitive".
  5579  func (s BatchInferenceJobOutput) GoString() string {
  5580  	return s.String()
  5581  }
  5582  
  5583  // Validate inspects the fields of the type to determine if they are valid.
  5584  func (s *BatchInferenceJobOutput) Validate() error {
  5585  	invalidParams := request.ErrInvalidParams{Context: "BatchInferenceJobOutput"}
  5586  	if s.S3DataDestination == nil {
  5587  		invalidParams.Add(request.NewErrParamRequired("S3DataDestination"))
  5588  	}
  5589  	if s.S3DataDestination != nil {
  5590  		if err := s.S3DataDestination.Validate(); err != nil {
  5591  			invalidParams.AddNested("S3DataDestination", err.(request.ErrInvalidParams))
  5592  		}
  5593  	}
  5594  
  5595  	if invalidParams.Len() > 0 {
  5596  		return invalidParams
  5597  	}
  5598  	return nil
  5599  }
  5600  
  5601  // SetS3DataDestination sets the S3DataDestination field's value.
  5602  func (s *BatchInferenceJobOutput) SetS3DataDestination(v *S3DataConfig) *BatchInferenceJobOutput {
  5603  	s.S3DataDestination = v
  5604  	return s
  5605  }
  5606  
  5607  // A truncated version of the BatchInferenceJob datatype. The ListBatchInferenceJobs
  5608  // operation returns a list of batch inference job summaries.
  5609  type BatchInferenceJobSummary struct {
  5610  	_ struct{} `type:"structure"`
  5611  
  5612  	// The Amazon Resource Name (ARN) of the batch inference job.
  5613  	BatchInferenceJobArn *string `locationName:"batchInferenceJobArn" type:"string"`
  5614  
  5615  	// The time at which the batch inference job was created.
  5616  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  5617  
  5618  	// If the batch inference job failed, the reason for the failure.
  5619  	FailureReason *string `locationName:"failureReason" type:"string"`
  5620  
  5621  	// The name of the batch inference job.
  5622  	JobName *string `locationName:"jobName" min:"1" type:"string"`
  5623  
  5624  	// The time at which the batch inference job was last updated.
  5625  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  5626  
  5627  	// The ARN of the solution version used by the batch inference job.
  5628  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
  5629  
  5630  	// The status of the batch inference job. The status is one of the following
  5631  	// values:
  5632  	//
  5633  	//    * PENDING
  5634  	//
  5635  	//    * IN PROGRESS
  5636  	//
  5637  	//    * ACTIVE
  5638  	//
  5639  	//    * CREATE FAILED
  5640  	Status *string `locationName:"status" type:"string"`
  5641  }
  5642  
  5643  // String returns the string representation.
  5644  //
  5645  // API parameter values that are decorated as "sensitive" in the API will not
  5646  // be included in the string output. The member name will be present, but the
  5647  // value will be replaced with "sensitive".
  5648  func (s BatchInferenceJobSummary) String() string {
  5649  	return awsutil.Prettify(s)
  5650  }
  5651  
  5652  // GoString returns the string representation.
  5653  //
  5654  // API parameter values that are decorated as "sensitive" in the API will not
  5655  // be included in the string output. The member name will be present, but the
  5656  // value will be replaced with "sensitive".
  5657  func (s BatchInferenceJobSummary) GoString() string {
  5658  	return s.String()
  5659  }
  5660  
  5661  // SetBatchInferenceJobArn sets the BatchInferenceJobArn field's value.
  5662  func (s *BatchInferenceJobSummary) SetBatchInferenceJobArn(v string) *BatchInferenceJobSummary {
  5663  	s.BatchInferenceJobArn = &v
  5664  	return s
  5665  }
  5666  
  5667  // SetCreationDateTime sets the CreationDateTime field's value.
  5668  func (s *BatchInferenceJobSummary) SetCreationDateTime(v time.Time) *BatchInferenceJobSummary {
  5669  	s.CreationDateTime = &v
  5670  	return s
  5671  }
  5672  
  5673  // SetFailureReason sets the FailureReason field's value.
  5674  func (s *BatchInferenceJobSummary) SetFailureReason(v string) *BatchInferenceJobSummary {
  5675  	s.FailureReason = &v
  5676  	return s
  5677  }
  5678  
  5679  // SetJobName sets the JobName field's value.
  5680  func (s *BatchInferenceJobSummary) SetJobName(v string) *BatchInferenceJobSummary {
  5681  	s.JobName = &v
  5682  	return s
  5683  }
  5684  
  5685  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  5686  func (s *BatchInferenceJobSummary) SetLastUpdatedDateTime(v time.Time) *BatchInferenceJobSummary {
  5687  	s.LastUpdatedDateTime = &v
  5688  	return s
  5689  }
  5690  
  5691  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
  5692  func (s *BatchInferenceJobSummary) SetSolutionVersionArn(v string) *BatchInferenceJobSummary {
  5693  	s.SolutionVersionArn = &v
  5694  	return s
  5695  }
  5696  
  5697  // SetStatus sets the Status field's value.
  5698  func (s *BatchInferenceJobSummary) SetStatus(v string) *BatchInferenceJobSummary {
  5699  	s.Status = &v
  5700  	return s
  5701  }
  5702  
  5703  // Describes a deployed solution version, otherwise known as a campaign. For
  5704  // more information on campaigns, see CreateCampaign.
  5705  type Campaign struct {
  5706  	_ struct{} `type:"structure"`
  5707  
  5708  	// The Amazon Resource Name (ARN) of the campaign.
  5709  	CampaignArn *string `locationName:"campaignArn" type:"string"`
  5710  
  5711  	// The configuration details of a campaign.
  5712  	CampaignConfig *CampaignConfig `locationName:"campaignConfig" type:"structure"`
  5713  
  5714  	// The date and time (in Unix format) that the campaign was created.
  5715  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  5716  
  5717  	// If a campaign fails, the reason behind the failure.
  5718  	FailureReason *string `locationName:"failureReason" type:"string"`
  5719  
  5720  	// The date and time (in Unix format) that the campaign was last updated.
  5721  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  5722  
  5723  	// Provides a summary of the properties of a campaign update. For a complete
  5724  	// listing, call the DescribeCampaign API.
  5725  	LatestCampaignUpdate *CampaignUpdateSummary `locationName:"latestCampaignUpdate" type:"structure"`
  5726  
  5727  	// Specifies the requested minimum provisioned transactions (recommendations)
  5728  	// per second.
  5729  	MinProvisionedTPS *int64 `locationName:"minProvisionedTPS" min:"1" type:"integer"`
  5730  
  5731  	// The name of the campaign.
  5732  	Name *string `locationName:"name" min:"1" type:"string"`
  5733  
  5734  	// The Amazon Resource Name (ARN) of a specific version of the solution.
  5735  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
  5736  
  5737  	// The status of the campaign.
  5738  	//
  5739  	// A campaign can be in one of the following states:
  5740  	//
  5741  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  5742  	//
  5743  	//    * DELETE PENDING > DELETE IN_PROGRESS
  5744  	Status *string `locationName:"status" type:"string"`
  5745  }
  5746  
  5747  // String returns the string representation.
  5748  //
  5749  // API parameter values that are decorated as "sensitive" in the API will not
  5750  // be included in the string output. The member name will be present, but the
  5751  // value will be replaced with "sensitive".
  5752  func (s Campaign) String() string {
  5753  	return awsutil.Prettify(s)
  5754  }
  5755  
  5756  // GoString returns the string representation.
  5757  //
  5758  // API parameter values that are decorated as "sensitive" in the API will not
  5759  // be included in the string output. The member name will be present, but the
  5760  // value will be replaced with "sensitive".
  5761  func (s Campaign) GoString() string {
  5762  	return s.String()
  5763  }
  5764  
  5765  // SetCampaignArn sets the CampaignArn field's value.
  5766  func (s *Campaign) SetCampaignArn(v string) *Campaign {
  5767  	s.CampaignArn = &v
  5768  	return s
  5769  }
  5770  
  5771  // SetCampaignConfig sets the CampaignConfig field's value.
  5772  func (s *Campaign) SetCampaignConfig(v *CampaignConfig) *Campaign {
  5773  	s.CampaignConfig = v
  5774  	return s
  5775  }
  5776  
  5777  // SetCreationDateTime sets the CreationDateTime field's value.
  5778  func (s *Campaign) SetCreationDateTime(v time.Time) *Campaign {
  5779  	s.CreationDateTime = &v
  5780  	return s
  5781  }
  5782  
  5783  // SetFailureReason sets the FailureReason field's value.
  5784  func (s *Campaign) SetFailureReason(v string) *Campaign {
  5785  	s.FailureReason = &v
  5786  	return s
  5787  }
  5788  
  5789  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  5790  func (s *Campaign) SetLastUpdatedDateTime(v time.Time) *Campaign {
  5791  	s.LastUpdatedDateTime = &v
  5792  	return s
  5793  }
  5794  
  5795  // SetLatestCampaignUpdate sets the LatestCampaignUpdate field's value.
  5796  func (s *Campaign) SetLatestCampaignUpdate(v *CampaignUpdateSummary) *Campaign {
  5797  	s.LatestCampaignUpdate = v
  5798  	return s
  5799  }
  5800  
  5801  // SetMinProvisionedTPS sets the MinProvisionedTPS field's value.
  5802  func (s *Campaign) SetMinProvisionedTPS(v int64) *Campaign {
  5803  	s.MinProvisionedTPS = &v
  5804  	return s
  5805  }
  5806  
  5807  // SetName sets the Name field's value.
  5808  func (s *Campaign) SetName(v string) *Campaign {
  5809  	s.Name = &v
  5810  	return s
  5811  }
  5812  
  5813  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
  5814  func (s *Campaign) SetSolutionVersionArn(v string) *Campaign {
  5815  	s.SolutionVersionArn = &v
  5816  	return s
  5817  }
  5818  
  5819  // SetStatus sets the Status field's value.
  5820  func (s *Campaign) SetStatus(v string) *Campaign {
  5821  	s.Status = &v
  5822  	return s
  5823  }
  5824  
  5825  // The configuration details of a campaign.
  5826  type CampaignConfig struct {
  5827  	_ struct{} `type:"structure"`
  5828  
  5829  	// A string to string map specifying the exploration configuration hyperparameters,
  5830  	// including explorationWeight and explorationItemAgeCutOff, you want to use
  5831  	// to configure the amount of item exploration Amazon Personalize uses when
  5832  	// recommending items. Provide itemExplorationConfig data only if your solution
  5833  	// uses the User-Personalization (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html)
  5834  	// recipe.
  5835  	ItemExplorationConfig map[string]*string `locationName:"itemExplorationConfig" type:"map"`
  5836  }
  5837  
  5838  // String returns the string representation.
  5839  //
  5840  // API parameter values that are decorated as "sensitive" in the API will not
  5841  // be included in the string output. The member name will be present, but the
  5842  // value will be replaced with "sensitive".
  5843  func (s CampaignConfig) String() string {
  5844  	return awsutil.Prettify(s)
  5845  }
  5846  
  5847  // GoString returns the string representation.
  5848  //
  5849  // API parameter values that are decorated as "sensitive" in the API will not
  5850  // be included in the string output. The member name will be present, but the
  5851  // value will be replaced with "sensitive".
  5852  func (s CampaignConfig) GoString() string {
  5853  	return s.String()
  5854  }
  5855  
  5856  // SetItemExplorationConfig sets the ItemExplorationConfig field's value.
  5857  func (s *CampaignConfig) SetItemExplorationConfig(v map[string]*string) *CampaignConfig {
  5858  	s.ItemExplorationConfig = v
  5859  	return s
  5860  }
  5861  
  5862  // Provides a summary of the properties of a campaign. For a complete listing,
  5863  // call the DescribeCampaign API.
  5864  type CampaignSummary struct {
  5865  	_ struct{} `type:"structure"`
  5866  
  5867  	// The Amazon Resource Name (ARN) of the campaign.
  5868  	CampaignArn *string `locationName:"campaignArn" type:"string"`
  5869  
  5870  	// The date and time (in Unix time) that the campaign was created.
  5871  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  5872  
  5873  	// If a campaign fails, the reason behind the failure.
  5874  	FailureReason *string `locationName:"failureReason" type:"string"`
  5875  
  5876  	// The date and time (in Unix time) that the campaign was last updated.
  5877  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  5878  
  5879  	// The name of the campaign.
  5880  	Name *string `locationName:"name" min:"1" type:"string"`
  5881  
  5882  	// The status of the campaign.
  5883  	//
  5884  	// A campaign can be in one of the following states:
  5885  	//
  5886  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  5887  	//
  5888  	//    * DELETE PENDING > DELETE IN_PROGRESS
  5889  	Status *string `locationName:"status" type:"string"`
  5890  }
  5891  
  5892  // String returns the string representation.
  5893  //
  5894  // API parameter values that are decorated as "sensitive" in the API will not
  5895  // be included in the string output. The member name will be present, but the
  5896  // value will be replaced with "sensitive".
  5897  func (s CampaignSummary) String() string {
  5898  	return awsutil.Prettify(s)
  5899  }
  5900  
  5901  // GoString returns the string representation.
  5902  //
  5903  // API parameter values that are decorated as "sensitive" in the API will not
  5904  // be included in the string output. The member name will be present, but the
  5905  // value will be replaced with "sensitive".
  5906  func (s CampaignSummary) GoString() string {
  5907  	return s.String()
  5908  }
  5909  
  5910  // SetCampaignArn sets the CampaignArn field's value.
  5911  func (s *CampaignSummary) SetCampaignArn(v string) *CampaignSummary {
  5912  	s.CampaignArn = &v
  5913  	return s
  5914  }
  5915  
  5916  // SetCreationDateTime sets the CreationDateTime field's value.
  5917  func (s *CampaignSummary) SetCreationDateTime(v time.Time) *CampaignSummary {
  5918  	s.CreationDateTime = &v
  5919  	return s
  5920  }
  5921  
  5922  // SetFailureReason sets the FailureReason field's value.
  5923  func (s *CampaignSummary) SetFailureReason(v string) *CampaignSummary {
  5924  	s.FailureReason = &v
  5925  	return s
  5926  }
  5927  
  5928  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  5929  func (s *CampaignSummary) SetLastUpdatedDateTime(v time.Time) *CampaignSummary {
  5930  	s.LastUpdatedDateTime = &v
  5931  	return s
  5932  }
  5933  
  5934  // SetName sets the Name field's value.
  5935  func (s *CampaignSummary) SetName(v string) *CampaignSummary {
  5936  	s.Name = &v
  5937  	return s
  5938  }
  5939  
  5940  // SetStatus sets the Status field's value.
  5941  func (s *CampaignSummary) SetStatus(v string) *CampaignSummary {
  5942  	s.Status = &v
  5943  	return s
  5944  }
  5945  
  5946  // Provides a summary of the properties of a campaign update. For a complete
  5947  // listing, call the DescribeCampaign API.
  5948  type CampaignUpdateSummary struct {
  5949  	_ struct{} `type:"structure"`
  5950  
  5951  	// The configuration details of a campaign.
  5952  	CampaignConfig *CampaignConfig `locationName:"campaignConfig" type:"structure"`
  5953  
  5954  	// The date and time (in Unix time) that the campaign update was created.
  5955  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  5956  
  5957  	// If a campaign update fails, the reason behind the failure.
  5958  	FailureReason *string `locationName:"failureReason" type:"string"`
  5959  
  5960  	// The date and time (in Unix time) that the campaign update was last updated.
  5961  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  5962  
  5963  	// Specifies the requested minimum provisioned transactions (recommendations)
  5964  	// per second that Amazon Personalize will support.
  5965  	MinProvisionedTPS *int64 `locationName:"minProvisionedTPS" min:"1" type:"integer"`
  5966  
  5967  	// The Amazon Resource Name (ARN) of the deployed solution version.
  5968  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
  5969  
  5970  	// The status of the campaign update.
  5971  	//
  5972  	// A campaign update can be in one of the following states:
  5973  	//
  5974  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  5975  	//
  5976  	//    * DELETE PENDING > DELETE IN_PROGRESS
  5977  	Status *string `locationName:"status" type:"string"`
  5978  }
  5979  
  5980  // String returns the string representation.
  5981  //
  5982  // API parameter values that are decorated as "sensitive" in the API will not
  5983  // be included in the string output. The member name will be present, but the
  5984  // value will be replaced with "sensitive".
  5985  func (s CampaignUpdateSummary) String() string {
  5986  	return awsutil.Prettify(s)
  5987  }
  5988  
  5989  // GoString returns the string representation.
  5990  //
  5991  // API parameter values that are decorated as "sensitive" in the API will not
  5992  // be included in the string output. The member name will be present, but the
  5993  // value will be replaced with "sensitive".
  5994  func (s CampaignUpdateSummary) GoString() string {
  5995  	return s.String()
  5996  }
  5997  
  5998  // SetCampaignConfig sets the CampaignConfig field's value.
  5999  func (s *CampaignUpdateSummary) SetCampaignConfig(v *CampaignConfig) *CampaignUpdateSummary {
  6000  	s.CampaignConfig = v
  6001  	return s
  6002  }
  6003  
  6004  // SetCreationDateTime sets the CreationDateTime field's value.
  6005  func (s *CampaignUpdateSummary) SetCreationDateTime(v time.Time) *CampaignUpdateSummary {
  6006  	s.CreationDateTime = &v
  6007  	return s
  6008  }
  6009  
  6010  // SetFailureReason sets the FailureReason field's value.
  6011  func (s *CampaignUpdateSummary) SetFailureReason(v string) *CampaignUpdateSummary {
  6012  	s.FailureReason = &v
  6013  	return s
  6014  }
  6015  
  6016  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  6017  func (s *CampaignUpdateSummary) SetLastUpdatedDateTime(v time.Time) *CampaignUpdateSummary {
  6018  	s.LastUpdatedDateTime = &v
  6019  	return s
  6020  }
  6021  
  6022  // SetMinProvisionedTPS sets the MinProvisionedTPS field's value.
  6023  func (s *CampaignUpdateSummary) SetMinProvisionedTPS(v int64) *CampaignUpdateSummary {
  6024  	s.MinProvisionedTPS = &v
  6025  	return s
  6026  }
  6027  
  6028  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
  6029  func (s *CampaignUpdateSummary) SetSolutionVersionArn(v string) *CampaignUpdateSummary {
  6030  	s.SolutionVersionArn = &v
  6031  	return s
  6032  }
  6033  
  6034  // SetStatus sets the Status field's value.
  6035  func (s *CampaignUpdateSummary) SetStatus(v string) *CampaignUpdateSummary {
  6036  	s.Status = &v
  6037  	return s
  6038  }
  6039  
  6040  // Provides the name and range of a categorical hyperparameter.
  6041  type CategoricalHyperParameterRange struct {
  6042  	_ struct{} `type:"structure"`
  6043  
  6044  	// The name of the hyperparameter.
  6045  	Name *string `locationName:"name" type:"string"`
  6046  
  6047  	// A list of the categories for the hyperparameter.
  6048  	Values []*string `locationName:"values" type:"list"`
  6049  }
  6050  
  6051  // String returns the string representation.
  6052  //
  6053  // API parameter values that are decorated as "sensitive" in the API will not
  6054  // be included in the string output. The member name will be present, but the
  6055  // value will be replaced with "sensitive".
  6056  func (s CategoricalHyperParameterRange) String() string {
  6057  	return awsutil.Prettify(s)
  6058  }
  6059  
  6060  // GoString returns the string representation.
  6061  //
  6062  // API parameter values that are decorated as "sensitive" in the API will not
  6063  // be included in the string output. The member name will be present, but the
  6064  // value will be replaced with "sensitive".
  6065  func (s CategoricalHyperParameterRange) GoString() string {
  6066  	return s.String()
  6067  }
  6068  
  6069  // SetName sets the Name field's value.
  6070  func (s *CategoricalHyperParameterRange) SetName(v string) *CategoricalHyperParameterRange {
  6071  	s.Name = &v
  6072  	return s
  6073  }
  6074  
  6075  // SetValues sets the Values field's value.
  6076  func (s *CategoricalHyperParameterRange) SetValues(v []*string) *CategoricalHyperParameterRange {
  6077  	s.Values = v
  6078  	return s
  6079  }
  6080  
  6081  // Provides the name and range of a continuous hyperparameter.
  6082  type ContinuousHyperParameterRange struct {
  6083  	_ struct{} `type:"structure"`
  6084  
  6085  	// The maximum allowable value for the hyperparameter.
  6086  	MaxValue *float64 `locationName:"maxValue" type:"double"`
  6087  
  6088  	// The minimum allowable value for the hyperparameter.
  6089  	MinValue *float64 `locationName:"minValue" type:"double"`
  6090  
  6091  	// The name of the hyperparameter.
  6092  	Name *string `locationName:"name" type:"string"`
  6093  }
  6094  
  6095  // String returns the string representation.
  6096  //
  6097  // API parameter values that are decorated as "sensitive" in the API will not
  6098  // be included in the string output. The member name will be present, but the
  6099  // value will be replaced with "sensitive".
  6100  func (s ContinuousHyperParameterRange) String() string {
  6101  	return awsutil.Prettify(s)
  6102  }
  6103  
  6104  // GoString returns the string representation.
  6105  //
  6106  // API parameter values that are decorated as "sensitive" in the API will not
  6107  // be included in the string output. The member name will be present, but the
  6108  // value will be replaced with "sensitive".
  6109  func (s ContinuousHyperParameterRange) GoString() string {
  6110  	return s.String()
  6111  }
  6112  
  6113  // Validate inspects the fields of the type to determine if they are valid.
  6114  func (s *ContinuousHyperParameterRange) Validate() error {
  6115  	invalidParams := request.ErrInvalidParams{Context: "ContinuousHyperParameterRange"}
  6116  	if s.MaxValue != nil && *s.MaxValue < -1e+06 {
  6117  		invalidParams.Add(request.NewErrParamMinValue("MaxValue", -1e+06))
  6118  	}
  6119  	if s.MinValue != nil && *s.MinValue < -1e+06 {
  6120  		invalidParams.Add(request.NewErrParamMinValue("MinValue", -1e+06))
  6121  	}
  6122  
  6123  	if invalidParams.Len() > 0 {
  6124  		return invalidParams
  6125  	}
  6126  	return nil
  6127  }
  6128  
  6129  // SetMaxValue sets the MaxValue field's value.
  6130  func (s *ContinuousHyperParameterRange) SetMaxValue(v float64) *ContinuousHyperParameterRange {
  6131  	s.MaxValue = &v
  6132  	return s
  6133  }
  6134  
  6135  // SetMinValue sets the MinValue field's value.
  6136  func (s *ContinuousHyperParameterRange) SetMinValue(v float64) *ContinuousHyperParameterRange {
  6137  	s.MinValue = &v
  6138  	return s
  6139  }
  6140  
  6141  // SetName sets the Name field's value.
  6142  func (s *ContinuousHyperParameterRange) SetName(v string) *ContinuousHyperParameterRange {
  6143  	s.Name = &v
  6144  	return s
  6145  }
  6146  
  6147  type CreateBatchInferenceJobInput struct {
  6148  	_ struct{} `type:"structure"`
  6149  
  6150  	// The configuration details of a batch inference job.
  6151  	BatchInferenceJobConfig *BatchInferenceJobConfig `locationName:"batchInferenceJobConfig" type:"structure"`
  6152  
  6153  	// The ARN of the filter to apply to the batch inference job. For more information
  6154  	// on using filters, see Filtering Batch Recommendations (https://docs.aws.amazon.com/personalize/latest/dg/filter-batch.html)..
  6155  	FilterArn *string `locationName:"filterArn" type:"string"`
  6156  
  6157  	// The Amazon S3 path that leads to the input file to base your recommendations
  6158  	// on. The input material must be in JSON format.
  6159  	//
  6160  	// JobInput is a required field
  6161  	JobInput *BatchInferenceJobInput `locationName:"jobInput" type:"structure" required:"true"`
  6162  
  6163  	// The name of the batch inference job to create.
  6164  	//
  6165  	// JobName is a required field
  6166  	JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"`
  6167  
  6168  	// The path to the Amazon S3 bucket where the job's output will be stored.
  6169  	//
  6170  	// JobOutput is a required field
  6171  	JobOutput *BatchInferenceJobOutput `locationName:"jobOutput" type:"structure" required:"true"`
  6172  
  6173  	// The number of recommendations to retreive.
  6174  	NumResults *int64 `locationName:"numResults" type:"integer"`
  6175  
  6176  	// The ARN of the Amazon Identity and Access Management role that has permissions
  6177  	// to read and write to your input and output Amazon S3 buckets respectively.
  6178  	//
  6179  	// RoleArn is a required field
  6180  	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  6181  
  6182  	// The Amazon Resource Name (ARN) of the solution version that will be used
  6183  	// to generate the batch inference recommendations.
  6184  	//
  6185  	// SolutionVersionArn is a required field
  6186  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string" required:"true"`
  6187  }
  6188  
  6189  // String returns the string representation.
  6190  //
  6191  // API parameter values that are decorated as "sensitive" in the API will not
  6192  // be included in the string output. The member name will be present, but the
  6193  // value will be replaced with "sensitive".
  6194  func (s CreateBatchInferenceJobInput) String() string {
  6195  	return awsutil.Prettify(s)
  6196  }
  6197  
  6198  // GoString returns the string representation.
  6199  //
  6200  // API parameter values that are decorated as "sensitive" in the API will not
  6201  // be included in the string output. The member name will be present, but the
  6202  // value will be replaced with "sensitive".
  6203  func (s CreateBatchInferenceJobInput) GoString() string {
  6204  	return s.String()
  6205  }
  6206  
  6207  // Validate inspects the fields of the type to determine if they are valid.
  6208  func (s *CreateBatchInferenceJobInput) Validate() error {
  6209  	invalidParams := request.ErrInvalidParams{Context: "CreateBatchInferenceJobInput"}
  6210  	if s.JobInput == nil {
  6211  		invalidParams.Add(request.NewErrParamRequired("JobInput"))
  6212  	}
  6213  	if s.JobName == nil {
  6214  		invalidParams.Add(request.NewErrParamRequired("JobName"))
  6215  	}
  6216  	if s.JobName != nil && len(*s.JobName) < 1 {
  6217  		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
  6218  	}
  6219  	if s.JobOutput == nil {
  6220  		invalidParams.Add(request.NewErrParamRequired("JobOutput"))
  6221  	}
  6222  	if s.RoleArn == nil {
  6223  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  6224  	}
  6225  	if s.SolutionVersionArn == nil {
  6226  		invalidParams.Add(request.NewErrParamRequired("SolutionVersionArn"))
  6227  	}
  6228  	if s.JobInput != nil {
  6229  		if err := s.JobInput.Validate(); err != nil {
  6230  			invalidParams.AddNested("JobInput", err.(request.ErrInvalidParams))
  6231  		}
  6232  	}
  6233  	if s.JobOutput != nil {
  6234  		if err := s.JobOutput.Validate(); err != nil {
  6235  			invalidParams.AddNested("JobOutput", err.(request.ErrInvalidParams))
  6236  		}
  6237  	}
  6238  
  6239  	if invalidParams.Len() > 0 {
  6240  		return invalidParams
  6241  	}
  6242  	return nil
  6243  }
  6244  
  6245  // SetBatchInferenceJobConfig sets the BatchInferenceJobConfig field's value.
  6246  func (s *CreateBatchInferenceJobInput) SetBatchInferenceJobConfig(v *BatchInferenceJobConfig) *CreateBatchInferenceJobInput {
  6247  	s.BatchInferenceJobConfig = v
  6248  	return s
  6249  }
  6250  
  6251  // SetFilterArn sets the FilterArn field's value.
  6252  func (s *CreateBatchInferenceJobInput) SetFilterArn(v string) *CreateBatchInferenceJobInput {
  6253  	s.FilterArn = &v
  6254  	return s
  6255  }
  6256  
  6257  // SetJobInput sets the JobInput field's value.
  6258  func (s *CreateBatchInferenceJobInput) SetJobInput(v *BatchInferenceJobInput) *CreateBatchInferenceJobInput {
  6259  	s.JobInput = v
  6260  	return s
  6261  }
  6262  
  6263  // SetJobName sets the JobName field's value.
  6264  func (s *CreateBatchInferenceJobInput) SetJobName(v string) *CreateBatchInferenceJobInput {
  6265  	s.JobName = &v
  6266  	return s
  6267  }
  6268  
  6269  // SetJobOutput sets the JobOutput field's value.
  6270  func (s *CreateBatchInferenceJobInput) SetJobOutput(v *BatchInferenceJobOutput) *CreateBatchInferenceJobInput {
  6271  	s.JobOutput = v
  6272  	return s
  6273  }
  6274  
  6275  // SetNumResults sets the NumResults field's value.
  6276  func (s *CreateBatchInferenceJobInput) SetNumResults(v int64) *CreateBatchInferenceJobInput {
  6277  	s.NumResults = &v
  6278  	return s
  6279  }
  6280  
  6281  // SetRoleArn sets the RoleArn field's value.
  6282  func (s *CreateBatchInferenceJobInput) SetRoleArn(v string) *CreateBatchInferenceJobInput {
  6283  	s.RoleArn = &v
  6284  	return s
  6285  }
  6286  
  6287  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
  6288  func (s *CreateBatchInferenceJobInput) SetSolutionVersionArn(v string) *CreateBatchInferenceJobInput {
  6289  	s.SolutionVersionArn = &v
  6290  	return s
  6291  }
  6292  
  6293  type CreateBatchInferenceJobOutput struct {
  6294  	_ struct{} `type:"structure"`
  6295  
  6296  	// The ARN of the batch inference job.
  6297  	BatchInferenceJobArn *string `locationName:"batchInferenceJobArn" type:"string"`
  6298  }
  6299  
  6300  // String returns the string representation.
  6301  //
  6302  // API parameter values that are decorated as "sensitive" in the API will not
  6303  // be included in the string output. The member name will be present, but the
  6304  // value will be replaced with "sensitive".
  6305  func (s CreateBatchInferenceJobOutput) String() string {
  6306  	return awsutil.Prettify(s)
  6307  }
  6308  
  6309  // GoString returns the string representation.
  6310  //
  6311  // API parameter values that are decorated as "sensitive" in the API will not
  6312  // be included in the string output. The member name will be present, but the
  6313  // value will be replaced with "sensitive".
  6314  func (s CreateBatchInferenceJobOutput) GoString() string {
  6315  	return s.String()
  6316  }
  6317  
  6318  // SetBatchInferenceJobArn sets the BatchInferenceJobArn field's value.
  6319  func (s *CreateBatchInferenceJobOutput) SetBatchInferenceJobArn(v string) *CreateBatchInferenceJobOutput {
  6320  	s.BatchInferenceJobArn = &v
  6321  	return s
  6322  }
  6323  
  6324  type CreateCampaignInput struct {
  6325  	_ struct{} `type:"structure"`
  6326  
  6327  	// The configuration details of a campaign.
  6328  	CampaignConfig *CampaignConfig `locationName:"campaignConfig" type:"structure"`
  6329  
  6330  	// Specifies the requested minimum provisioned transactions (recommendations)
  6331  	// per second that Amazon Personalize will support.
  6332  	MinProvisionedTPS *int64 `locationName:"minProvisionedTPS" min:"1" type:"integer"`
  6333  
  6334  	// A name for the new campaign. The campaign name must be unique within your
  6335  	// account.
  6336  	//
  6337  	// Name is a required field
  6338  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  6339  
  6340  	// The Amazon Resource Name (ARN) of the solution version to deploy.
  6341  	//
  6342  	// SolutionVersionArn is a required field
  6343  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string" required:"true"`
  6344  }
  6345  
  6346  // String returns the string representation.
  6347  //
  6348  // API parameter values that are decorated as "sensitive" in the API will not
  6349  // be included in the string output. The member name will be present, but the
  6350  // value will be replaced with "sensitive".
  6351  func (s CreateCampaignInput) String() string {
  6352  	return awsutil.Prettify(s)
  6353  }
  6354  
  6355  // GoString returns the string representation.
  6356  //
  6357  // API parameter values that are decorated as "sensitive" in the API will not
  6358  // be included in the string output. The member name will be present, but the
  6359  // value will be replaced with "sensitive".
  6360  func (s CreateCampaignInput) GoString() string {
  6361  	return s.String()
  6362  }
  6363  
  6364  // Validate inspects the fields of the type to determine if they are valid.
  6365  func (s *CreateCampaignInput) Validate() error {
  6366  	invalidParams := request.ErrInvalidParams{Context: "CreateCampaignInput"}
  6367  	if s.MinProvisionedTPS != nil && *s.MinProvisionedTPS < 1 {
  6368  		invalidParams.Add(request.NewErrParamMinValue("MinProvisionedTPS", 1))
  6369  	}
  6370  	if s.Name == nil {
  6371  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6372  	}
  6373  	if s.Name != nil && len(*s.Name) < 1 {
  6374  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  6375  	}
  6376  	if s.SolutionVersionArn == nil {
  6377  		invalidParams.Add(request.NewErrParamRequired("SolutionVersionArn"))
  6378  	}
  6379  
  6380  	if invalidParams.Len() > 0 {
  6381  		return invalidParams
  6382  	}
  6383  	return nil
  6384  }
  6385  
  6386  // SetCampaignConfig sets the CampaignConfig field's value.
  6387  func (s *CreateCampaignInput) SetCampaignConfig(v *CampaignConfig) *CreateCampaignInput {
  6388  	s.CampaignConfig = v
  6389  	return s
  6390  }
  6391  
  6392  // SetMinProvisionedTPS sets the MinProvisionedTPS field's value.
  6393  func (s *CreateCampaignInput) SetMinProvisionedTPS(v int64) *CreateCampaignInput {
  6394  	s.MinProvisionedTPS = &v
  6395  	return s
  6396  }
  6397  
  6398  // SetName sets the Name field's value.
  6399  func (s *CreateCampaignInput) SetName(v string) *CreateCampaignInput {
  6400  	s.Name = &v
  6401  	return s
  6402  }
  6403  
  6404  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
  6405  func (s *CreateCampaignInput) SetSolutionVersionArn(v string) *CreateCampaignInput {
  6406  	s.SolutionVersionArn = &v
  6407  	return s
  6408  }
  6409  
  6410  type CreateCampaignOutput struct {
  6411  	_ struct{} `type:"structure"`
  6412  
  6413  	// The Amazon Resource Name (ARN) of the campaign.
  6414  	CampaignArn *string `locationName:"campaignArn" type:"string"`
  6415  }
  6416  
  6417  // String returns the string representation.
  6418  //
  6419  // API parameter values that are decorated as "sensitive" in the API will not
  6420  // be included in the string output. The member name will be present, but the
  6421  // value will be replaced with "sensitive".
  6422  func (s CreateCampaignOutput) String() string {
  6423  	return awsutil.Prettify(s)
  6424  }
  6425  
  6426  // GoString returns the string representation.
  6427  //
  6428  // API parameter values that are decorated as "sensitive" in the API will not
  6429  // be included in the string output. The member name will be present, but the
  6430  // value will be replaced with "sensitive".
  6431  func (s CreateCampaignOutput) GoString() string {
  6432  	return s.String()
  6433  }
  6434  
  6435  // SetCampaignArn sets the CampaignArn field's value.
  6436  func (s *CreateCampaignOutput) SetCampaignArn(v string) *CreateCampaignOutput {
  6437  	s.CampaignArn = &v
  6438  	return s
  6439  }
  6440  
  6441  type CreateDatasetExportJobInput struct {
  6442  	_ struct{} `type:"structure"`
  6443  
  6444  	// The Amazon Resource Name (ARN) of the dataset that contains the data to export.
  6445  	//
  6446  	// DatasetArn is a required field
  6447  	DatasetArn *string `locationName:"datasetArn" type:"string" required:"true"`
  6448  
  6449  	// The data to export, based on how you imported the data. You can choose to
  6450  	// export only BULK data that you imported using a dataset import job, only
  6451  	// PUT data that you imported incrementally (using the console, PutEvents, PutUsers
  6452  	// and PutItems operations), or ALL for both types. The default value is PUT.
  6453  	IngestionMode *string `locationName:"ingestionMode" type:"string" enum:"IngestionMode"`
  6454  
  6455  	// The name for the dataset export job.
  6456  	//
  6457  	// JobName is a required field
  6458  	JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"`
  6459  
  6460  	// The path to the Amazon S3 bucket where the job's output is stored.
  6461  	//
  6462  	// JobOutput is a required field
  6463  	JobOutput *DatasetExportJobOutput `locationName:"jobOutput" type:"structure" required:"true"`
  6464  
  6465  	// The Amazon Resource Name (ARN) of the IAM service role that has permissions
  6466  	// to add data to your output Amazon S3 bucket.
  6467  	//
  6468  	// RoleArn is a required field
  6469  	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  6470  }
  6471  
  6472  // String returns the string representation.
  6473  //
  6474  // API parameter values that are decorated as "sensitive" in the API will not
  6475  // be included in the string output. The member name will be present, but the
  6476  // value will be replaced with "sensitive".
  6477  func (s CreateDatasetExportJobInput) String() string {
  6478  	return awsutil.Prettify(s)
  6479  }
  6480  
  6481  // GoString returns the string representation.
  6482  //
  6483  // API parameter values that are decorated as "sensitive" in the API will not
  6484  // be included in the string output. The member name will be present, but the
  6485  // value will be replaced with "sensitive".
  6486  func (s CreateDatasetExportJobInput) GoString() string {
  6487  	return s.String()
  6488  }
  6489  
  6490  // Validate inspects the fields of the type to determine if they are valid.
  6491  func (s *CreateDatasetExportJobInput) Validate() error {
  6492  	invalidParams := request.ErrInvalidParams{Context: "CreateDatasetExportJobInput"}
  6493  	if s.DatasetArn == nil {
  6494  		invalidParams.Add(request.NewErrParamRequired("DatasetArn"))
  6495  	}
  6496  	if s.JobName == nil {
  6497  		invalidParams.Add(request.NewErrParamRequired("JobName"))
  6498  	}
  6499  	if s.JobName != nil && len(*s.JobName) < 1 {
  6500  		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
  6501  	}
  6502  	if s.JobOutput == nil {
  6503  		invalidParams.Add(request.NewErrParamRequired("JobOutput"))
  6504  	}
  6505  	if s.RoleArn == nil {
  6506  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  6507  	}
  6508  	if s.JobOutput != nil {
  6509  		if err := s.JobOutput.Validate(); err != nil {
  6510  			invalidParams.AddNested("JobOutput", err.(request.ErrInvalidParams))
  6511  		}
  6512  	}
  6513  
  6514  	if invalidParams.Len() > 0 {
  6515  		return invalidParams
  6516  	}
  6517  	return nil
  6518  }
  6519  
  6520  // SetDatasetArn sets the DatasetArn field's value.
  6521  func (s *CreateDatasetExportJobInput) SetDatasetArn(v string) *CreateDatasetExportJobInput {
  6522  	s.DatasetArn = &v
  6523  	return s
  6524  }
  6525  
  6526  // SetIngestionMode sets the IngestionMode field's value.
  6527  func (s *CreateDatasetExportJobInput) SetIngestionMode(v string) *CreateDatasetExportJobInput {
  6528  	s.IngestionMode = &v
  6529  	return s
  6530  }
  6531  
  6532  // SetJobName sets the JobName field's value.
  6533  func (s *CreateDatasetExportJobInput) SetJobName(v string) *CreateDatasetExportJobInput {
  6534  	s.JobName = &v
  6535  	return s
  6536  }
  6537  
  6538  // SetJobOutput sets the JobOutput field's value.
  6539  func (s *CreateDatasetExportJobInput) SetJobOutput(v *DatasetExportJobOutput) *CreateDatasetExportJobInput {
  6540  	s.JobOutput = v
  6541  	return s
  6542  }
  6543  
  6544  // SetRoleArn sets the RoleArn field's value.
  6545  func (s *CreateDatasetExportJobInput) SetRoleArn(v string) *CreateDatasetExportJobInput {
  6546  	s.RoleArn = &v
  6547  	return s
  6548  }
  6549  
  6550  type CreateDatasetExportJobOutput struct {
  6551  	_ struct{} `type:"structure"`
  6552  
  6553  	// The Amazon Resource Name (ARN) of the dataset export job.
  6554  	DatasetExportJobArn *string `locationName:"datasetExportJobArn" type:"string"`
  6555  }
  6556  
  6557  // String returns the string representation.
  6558  //
  6559  // API parameter values that are decorated as "sensitive" in the API will not
  6560  // be included in the string output. The member name will be present, but the
  6561  // value will be replaced with "sensitive".
  6562  func (s CreateDatasetExportJobOutput) String() string {
  6563  	return awsutil.Prettify(s)
  6564  }
  6565  
  6566  // GoString returns the string representation.
  6567  //
  6568  // API parameter values that are decorated as "sensitive" in the API will not
  6569  // be included in the string output. The member name will be present, but the
  6570  // value will be replaced with "sensitive".
  6571  func (s CreateDatasetExportJobOutput) GoString() string {
  6572  	return s.String()
  6573  }
  6574  
  6575  // SetDatasetExportJobArn sets the DatasetExportJobArn field's value.
  6576  func (s *CreateDatasetExportJobOutput) SetDatasetExportJobArn(v string) *CreateDatasetExportJobOutput {
  6577  	s.DatasetExportJobArn = &v
  6578  	return s
  6579  }
  6580  
  6581  type CreateDatasetGroupInput struct {
  6582  	_ struct{} `type:"structure"`
  6583  
  6584  	// The Amazon Resource Name (ARN) of a Key Management Service (KMS) key used
  6585  	// to encrypt the datasets.
  6586  	KmsKeyArn *string `locationName:"kmsKeyArn" type:"string"`
  6587  
  6588  	// The name for the new dataset group.
  6589  	//
  6590  	// Name is a required field
  6591  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  6592  
  6593  	// The ARN of the Identity and Access Management (IAM) role that has permissions
  6594  	// to access the Key Management Service (KMS) key. Supplying an IAM role is
  6595  	// only valid when also specifying a KMS key.
  6596  	RoleArn *string `locationName:"roleArn" type:"string"`
  6597  }
  6598  
  6599  // String returns the string representation.
  6600  //
  6601  // API parameter values that are decorated as "sensitive" in the API will not
  6602  // be included in the string output. The member name will be present, but the
  6603  // value will be replaced with "sensitive".
  6604  func (s CreateDatasetGroupInput) String() string {
  6605  	return awsutil.Prettify(s)
  6606  }
  6607  
  6608  // GoString returns the string representation.
  6609  //
  6610  // API parameter values that are decorated as "sensitive" in the API will not
  6611  // be included in the string output. The member name will be present, but the
  6612  // value will be replaced with "sensitive".
  6613  func (s CreateDatasetGroupInput) GoString() string {
  6614  	return s.String()
  6615  }
  6616  
  6617  // Validate inspects the fields of the type to determine if they are valid.
  6618  func (s *CreateDatasetGroupInput) Validate() error {
  6619  	invalidParams := request.ErrInvalidParams{Context: "CreateDatasetGroupInput"}
  6620  	if s.Name == nil {
  6621  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6622  	}
  6623  	if s.Name != nil && len(*s.Name) < 1 {
  6624  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  6625  	}
  6626  
  6627  	if invalidParams.Len() > 0 {
  6628  		return invalidParams
  6629  	}
  6630  	return nil
  6631  }
  6632  
  6633  // SetKmsKeyArn sets the KmsKeyArn field's value.
  6634  func (s *CreateDatasetGroupInput) SetKmsKeyArn(v string) *CreateDatasetGroupInput {
  6635  	s.KmsKeyArn = &v
  6636  	return s
  6637  }
  6638  
  6639  // SetName sets the Name field's value.
  6640  func (s *CreateDatasetGroupInput) SetName(v string) *CreateDatasetGroupInput {
  6641  	s.Name = &v
  6642  	return s
  6643  }
  6644  
  6645  // SetRoleArn sets the RoleArn field's value.
  6646  func (s *CreateDatasetGroupInput) SetRoleArn(v string) *CreateDatasetGroupInput {
  6647  	s.RoleArn = &v
  6648  	return s
  6649  }
  6650  
  6651  type CreateDatasetGroupOutput struct {
  6652  	_ struct{} `type:"structure"`
  6653  
  6654  	// The Amazon Resource Name (ARN) of the new dataset group.
  6655  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
  6656  }
  6657  
  6658  // String returns the string representation.
  6659  //
  6660  // API parameter values that are decorated as "sensitive" in the API will not
  6661  // be included in the string output. The member name will be present, but the
  6662  // value will be replaced with "sensitive".
  6663  func (s CreateDatasetGroupOutput) String() string {
  6664  	return awsutil.Prettify(s)
  6665  }
  6666  
  6667  // GoString returns the string representation.
  6668  //
  6669  // API parameter values that are decorated as "sensitive" in the API will not
  6670  // be included in the string output. The member name will be present, but the
  6671  // value will be replaced with "sensitive".
  6672  func (s CreateDatasetGroupOutput) GoString() string {
  6673  	return s.String()
  6674  }
  6675  
  6676  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  6677  func (s *CreateDatasetGroupOutput) SetDatasetGroupArn(v string) *CreateDatasetGroupOutput {
  6678  	s.DatasetGroupArn = &v
  6679  	return s
  6680  }
  6681  
  6682  type CreateDatasetImportJobInput struct {
  6683  	_ struct{} `type:"structure"`
  6684  
  6685  	// The Amazon S3 bucket that contains the training data to import.
  6686  	//
  6687  	// DataSource is a required field
  6688  	DataSource *DataSource `locationName:"dataSource" type:"structure" required:"true"`
  6689  
  6690  	// The ARN of the dataset that receives the imported data.
  6691  	//
  6692  	// DatasetArn is a required field
  6693  	DatasetArn *string `locationName:"datasetArn" type:"string" required:"true"`
  6694  
  6695  	// The name for the dataset import job.
  6696  	//
  6697  	// JobName is a required field
  6698  	JobName *string `locationName:"jobName" min:"1" type:"string" required:"true"`
  6699  
  6700  	// The ARN of the IAM role that has permissions to read from the Amazon S3 data
  6701  	// source.
  6702  	//
  6703  	// RoleArn is a required field
  6704  	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  6705  }
  6706  
  6707  // String returns the string representation.
  6708  //
  6709  // API parameter values that are decorated as "sensitive" in the API will not
  6710  // be included in the string output. The member name will be present, but the
  6711  // value will be replaced with "sensitive".
  6712  func (s CreateDatasetImportJobInput) String() string {
  6713  	return awsutil.Prettify(s)
  6714  }
  6715  
  6716  // GoString returns the string representation.
  6717  //
  6718  // API parameter values that are decorated as "sensitive" in the API will not
  6719  // be included in the string output. The member name will be present, but the
  6720  // value will be replaced with "sensitive".
  6721  func (s CreateDatasetImportJobInput) GoString() string {
  6722  	return s.String()
  6723  }
  6724  
  6725  // Validate inspects the fields of the type to determine if they are valid.
  6726  func (s *CreateDatasetImportJobInput) Validate() error {
  6727  	invalidParams := request.ErrInvalidParams{Context: "CreateDatasetImportJobInput"}
  6728  	if s.DataSource == nil {
  6729  		invalidParams.Add(request.NewErrParamRequired("DataSource"))
  6730  	}
  6731  	if s.DatasetArn == nil {
  6732  		invalidParams.Add(request.NewErrParamRequired("DatasetArn"))
  6733  	}
  6734  	if s.JobName == nil {
  6735  		invalidParams.Add(request.NewErrParamRequired("JobName"))
  6736  	}
  6737  	if s.JobName != nil && len(*s.JobName) < 1 {
  6738  		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
  6739  	}
  6740  	if s.RoleArn == nil {
  6741  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  6742  	}
  6743  
  6744  	if invalidParams.Len() > 0 {
  6745  		return invalidParams
  6746  	}
  6747  	return nil
  6748  }
  6749  
  6750  // SetDataSource sets the DataSource field's value.
  6751  func (s *CreateDatasetImportJobInput) SetDataSource(v *DataSource) *CreateDatasetImportJobInput {
  6752  	s.DataSource = v
  6753  	return s
  6754  }
  6755  
  6756  // SetDatasetArn sets the DatasetArn field's value.
  6757  func (s *CreateDatasetImportJobInput) SetDatasetArn(v string) *CreateDatasetImportJobInput {
  6758  	s.DatasetArn = &v
  6759  	return s
  6760  }
  6761  
  6762  // SetJobName sets the JobName field's value.
  6763  func (s *CreateDatasetImportJobInput) SetJobName(v string) *CreateDatasetImportJobInput {
  6764  	s.JobName = &v
  6765  	return s
  6766  }
  6767  
  6768  // SetRoleArn sets the RoleArn field's value.
  6769  func (s *CreateDatasetImportJobInput) SetRoleArn(v string) *CreateDatasetImportJobInput {
  6770  	s.RoleArn = &v
  6771  	return s
  6772  }
  6773  
  6774  type CreateDatasetImportJobOutput struct {
  6775  	_ struct{} `type:"structure"`
  6776  
  6777  	// The ARN of the dataset import job.
  6778  	DatasetImportJobArn *string `locationName:"datasetImportJobArn" type:"string"`
  6779  }
  6780  
  6781  // String returns the string representation.
  6782  //
  6783  // API parameter values that are decorated as "sensitive" in the API will not
  6784  // be included in the string output. The member name will be present, but the
  6785  // value will be replaced with "sensitive".
  6786  func (s CreateDatasetImportJobOutput) String() string {
  6787  	return awsutil.Prettify(s)
  6788  }
  6789  
  6790  // GoString 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 CreateDatasetImportJobOutput) GoString() string {
  6796  	return s.String()
  6797  }
  6798  
  6799  // SetDatasetImportJobArn sets the DatasetImportJobArn field's value.
  6800  func (s *CreateDatasetImportJobOutput) SetDatasetImportJobArn(v string) *CreateDatasetImportJobOutput {
  6801  	s.DatasetImportJobArn = &v
  6802  	return s
  6803  }
  6804  
  6805  type CreateDatasetInput struct {
  6806  	_ struct{} `type:"structure"`
  6807  
  6808  	// The Amazon Resource Name (ARN) of the dataset group to add the dataset to.
  6809  	//
  6810  	// DatasetGroupArn is a required field
  6811  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string" required:"true"`
  6812  
  6813  	// The type of dataset.
  6814  	//
  6815  	// One of the following (case insensitive) values:
  6816  	//
  6817  	//    * Interactions
  6818  	//
  6819  	//    * Items
  6820  	//
  6821  	//    * Users
  6822  	//
  6823  	// DatasetType is a required field
  6824  	DatasetType *string `locationName:"datasetType" type:"string" required:"true"`
  6825  
  6826  	// The name for the dataset.
  6827  	//
  6828  	// Name is a required field
  6829  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  6830  
  6831  	// The ARN of the schema to associate with the dataset. The schema defines the
  6832  	// dataset fields.
  6833  	//
  6834  	// SchemaArn is a required field
  6835  	SchemaArn *string `locationName:"schemaArn" type:"string" required:"true"`
  6836  }
  6837  
  6838  // String 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 CreateDatasetInput) String() string {
  6844  	return awsutil.Prettify(s)
  6845  }
  6846  
  6847  // GoString returns the string representation.
  6848  //
  6849  // API parameter values that are decorated as "sensitive" in the API will not
  6850  // be included in the string output. The member name will be present, but the
  6851  // value will be replaced with "sensitive".
  6852  func (s CreateDatasetInput) GoString() string {
  6853  	return s.String()
  6854  }
  6855  
  6856  // Validate inspects the fields of the type to determine if they are valid.
  6857  func (s *CreateDatasetInput) Validate() error {
  6858  	invalidParams := request.ErrInvalidParams{Context: "CreateDatasetInput"}
  6859  	if s.DatasetGroupArn == nil {
  6860  		invalidParams.Add(request.NewErrParamRequired("DatasetGroupArn"))
  6861  	}
  6862  	if s.DatasetType == nil {
  6863  		invalidParams.Add(request.NewErrParamRequired("DatasetType"))
  6864  	}
  6865  	if s.Name == nil {
  6866  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6867  	}
  6868  	if s.Name != nil && len(*s.Name) < 1 {
  6869  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  6870  	}
  6871  	if s.SchemaArn == nil {
  6872  		invalidParams.Add(request.NewErrParamRequired("SchemaArn"))
  6873  	}
  6874  
  6875  	if invalidParams.Len() > 0 {
  6876  		return invalidParams
  6877  	}
  6878  	return nil
  6879  }
  6880  
  6881  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  6882  func (s *CreateDatasetInput) SetDatasetGroupArn(v string) *CreateDatasetInput {
  6883  	s.DatasetGroupArn = &v
  6884  	return s
  6885  }
  6886  
  6887  // SetDatasetType sets the DatasetType field's value.
  6888  func (s *CreateDatasetInput) SetDatasetType(v string) *CreateDatasetInput {
  6889  	s.DatasetType = &v
  6890  	return s
  6891  }
  6892  
  6893  // SetName sets the Name field's value.
  6894  func (s *CreateDatasetInput) SetName(v string) *CreateDatasetInput {
  6895  	s.Name = &v
  6896  	return s
  6897  }
  6898  
  6899  // SetSchemaArn sets the SchemaArn field's value.
  6900  func (s *CreateDatasetInput) SetSchemaArn(v string) *CreateDatasetInput {
  6901  	s.SchemaArn = &v
  6902  	return s
  6903  }
  6904  
  6905  type CreateDatasetOutput struct {
  6906  	_ struct{} `type:"structure"`
  6907  
  6908  	// The ARN of the dataset.
  6909  	DatasetArn *string `locationName:"datasetArn" type:"string"`
  6910  }
  6911  
  6912  // String returns the string representation.
  6913  //
  6914  // API parameter values that are decorated as "sensitive" in the API will not
  6915  // be included in the string output. The member name will be present, but the
  6916  // value will be replaced with "sensitive".
  6917  func (s CreateDatasetOutput) String() string {
  6918  	return awsutil.Prettify(s)
  6919  }
  6920  
  6921  // GoString returns the string representation.
  6922  //
  6923  // API parameter values that are decorated as "sensitive" in the API will not
  6924  // be included in the string output. The member name will be present, but the
  6925  // value will be replaced with "sensitive".
  6926  func (s CreateDatasetOutput) GoString() string {
  6927  	return s.String()
  6928  }
  6929  
  6930  // SetDatasetArn sets the DatasetArn field's value.
  6931  func (s *CreateDatasetOutput) SetDatasetArn(v string) *CreateDatasetOutput {
  6932  	s.DatasetArn = &v
  6933  	return s
  6934  }
  6935  
  6936  type CreateEventTrackerInput struct {
  6937  	_ struct{} `type:"structure"`
  6938  
  6939  	// The Amazon Resource Name (ARN) of the dataset group that receives the event
  6940  	// data.
  6941  	//
  6942  	// DatasetGroupArn is a required field
  6943  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string" required:"true"`
  6944  
  6945  	// The name for the event tracker.
  6946  	//
  6947  	// Name is a required field
  6948  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  6949  }
  6950  
  6951  // String returns the string representation.
  6952  //
  6953  // API parameter values that are decorated as "sensitive" in the API will not
  6954  // be included in the string output. The member name will be present, but the
  6955  // value will be replaced with "sensitive".
  6956  func (s CreateEventTrackerInput) String() string {
  6957  	return awsutil.Prettify(s)
  6958  }
  6959  
  6960  // GoString returns the string representation.
  6961  //
  6962  // API parameter values that are decorated as "sensitive" in the API will not
  6963  // be included in the string output. The member name will be present, but the
  6964  // value will be replaced with "sensitive".
  6965  func (s CreateEventTrackerInput) GoString() string {
  6966  	return s.String()
  6967  }
  6968  
  6969  // Validate inspects the fields of the type to determine if they are valid.
  6970  func (s *CreateEventTrackerInput) Validate() error {
  6971  	invalidParams := request.ErrInvalidParams{Context: "CreateEventTrackerInput"}
  6972  	if s.DatasetGroupArn == nil {
  6973  		invalidParams.Add(request.NewErrParamRequired("DatasetGroupArn"))
  6974  	}
  6975  	if s.Name == nil {
  6976  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6977  	}
  6978  	if s.Name != nil && len(*s.Name) < 1 {
  6979  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  6980  	}
  6981  
  6982  	if invalidParams.Len() > 0 {
  6983  		return invalidParams
  6984  	}
  6985  	return nil
  6986  }
  6987  
  6988  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  6989  func (s *CreateEventTrackerInput) SetDatasetGroupArn(v string) *CreateEventTrackerInput {
  6990  	s.DatasetGroupArn = &v
  6991  	return s
  6992  }
  6993  
  6994  // SetName sets the Name field's value.
  6995  func (s *CreateEventTrackerInput) SetName(v string) *CreateEventTrackerInput {
  6996  	s.Name = &v
  6997  	return s
  6998  }
  6999  
  7000  type CreateEventTrackerOutput struct {
  7001  	_ struct{} `type:"structure"`
  7002  
  7003  	// The ARN of the event tracker.
  7004  	EventTrackerArn *string `locationName:"eventTrackerArn" type:"string"`
  7005  
  7006  	// The ID of the event tracker. Include this ID in requests to the PutEvents
  7007  	// (https://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html)
  7008  	// API.
  7009  	TrackingId *string `locationName:"trackingId" type:"string"`
  7010  }
  7011  
  7012  // String returns the string representation.
  7013  //
  7014  // API parameter values that are decorated as "sensitive" in the API will not
  7015  // be included in the string output. The member name will be present, but the
  7016  // value will be replaced with "sensitive".
  7017  func (s CreateEventTrackerOutput) String() string {
  7018  	return awsutil.Prettify(s)
  7019  }
  7020  
  7021  // GoString returns the string representation.
  7022  //
  7023  // API parameter values that are decorated as "sensitive" in the API will not
  7024  // be included in the string output. The member name will be present, but the
  7025  // value will be replaced with "sensitive".
  7026  func (s CreateEventTrackerOutput) GoString() string {
  7027  	return s.String()
  7028  }
  7029  
  7030  // SetEventTrackerArn sets the EventTrackerArn field's value.
  7031  func (s *CreateEventTrackerOutput) SetEventTrackerArn(v string) *CreateEventTrackerOutput {
  7032  	s.EventTrackerArn = &v
  7033  	return s
  7034  }
  7035  
  7036  // SetTrackingId sets the TrackingId field's value.
  7037  func (s *CreateEventTrackerOutput) SetTrackingId(v string) *CreateEventTrackerOutput {
  7038  	s.TrackingId = &v
  7039  	return s
  7040  }
  7041  
  7042  type CreateFilterInput struct {
  7043  	_ struct{} `type:"structure"`
  7044  
  7045  	// The ARN of the dataset group that the filter will belong to.
  7046  	//
  7047  	// DatasetGroupArn is a required field
  7048  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string" required:"true"`
  7049  
  7050  	// The filter expression defines which items are included or excluded from recommendations.
  7051  	// Filter expression must follow specific format rules. For information about
  7052  	// filter expression structure and syntax, see filter-expressions.
  7053  	//
  7054  	// FilterExpression is a sensitive parameter and its value will be
  7055  	// replaced with "sensitive" in string returned by CreateFilterInput's
  7056  	// String and GoString methods.
  7057  	//
  7058  	// FilterExpression is a required field
  7059  	FilterExpression *string `locationName:"filterExpression" min:"1" type:"string" required:"true" sensitive:"true"`
  7060  
  7061  	// The name of the filter to create.
  7062  	//
  7063  	// Name is a required field
  7064  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  7065  }
  7066  
  7067  // String returns the string representation.
  7068  //
  7069  // API parameter values that are decorated as "sensitive" in the API will not
  7070  // be included in the string output. The member name will be present, but the
  7071  // value will be replaced with "sensitive".
  7072  func (s CreateFilterInput) String() string {
  7073  	return awsutil.Prettify(s)
  7074  }
  7075  
  7076  // GoString returns the string representation.
  7077  //
  7078  // API parameter values that are decorated as "sensitive" in the API will not
  7079  // be included in the string output. The member name will be present, but the
  7080  // value will be replaced with "sensitive".
  7081  func (s CreateFilterInput) GoString() string {
  7082  	return s.String()
  7083  }
  7084  
  7085  // Validate inspects the fields of the type to determine if they are valid.
  7086  func (s *CreateFilterInput) Validate() error {
  7087  	invalidParams := request.ErrInvalidParams{Context: "CreateFilterInput"}
  7088  	if s.DatasetGroupArn == nil {
  7089  		invalidParams.Add(request.NewErrParamRequired("DatasetGroupArn"))
  7090  	}
  7091  	if s.FilterExpression == nil {
  7092  		invalidParams.Add(request.NewErrParamRequired("FilterExpression"))
  7093  	}
  7094  	if s.FilterExpression != nil && len(*s.FilterExpression) < 1 {
  7095  		invalidParams.Add(request.NewErrParamMinLen("FilterExpression", 1))
  7096  	}
  7097  	if s.Name == nil {
  7098  		invalidParams.Add(request.NewErrParamRequired("Name"))
  7099  	}
  7100  	if s.Name != nil && len(*s.Name) < 1 {
  7101  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7102  	}
  7103  
  7104  	if invalidParams.Len() > 0 {
  7105  		return invalidParams
  7106  	}
  7107  	return nil
  7108  }
  7109  
  7110  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  7111  func (s *CreateFilterInput) SetDatasetGroupArn(v string) *CreateFilterInput {
  7112  	s.DatasetGroupArn = &v
  7113  	return s
  7114  }
  7115  
  7116  // SetFilterExpression sets the FilterExpression field's value.
  7117  func (s *CreateFilterInput) SetFilterExpression(v string) *CreateFilterInput {
  7118  	s.FilterExpression = &v
  7119  	return s
  7120  }
  7121  
  7122  // SetName sets the Name field's value.
  7123  func (s *CreateFilterInput) SetName(v string) *CreateFilterInput {
  7124  	s.Name = &v
  7125  	return s
  7126  }
  7127  
  7128  type CreateFilterOutput struct {
  7129  	_ struct{} `type:"structure"`
  7130  
  7131  	// The ARN of the new filter.
  7132  	FilterArn *string `locationName:"filterArn" type:"string"`
  7133  }
  7134  
  7135  // String returns the string representation.
  7136  //
  7137  // API parameter values that are decorated as "sensitive" in the API will not
  7138  // be included in the string output. The member name will be present, but the
  7139  // value will be replaced with "sensitive".
  7140  func (s CreateFilterOutput) String() string {
  7141  	return awsutil.Prettify(s)
  7142  }
  7143  
  7144  // GoString returns the string representation.
  7145  //
  7146  // API parameter values that are decorated as "sensitive" in the API will not
  7147  // be included in the string output. The member name will be present, but the
  7148  // value will be replaced with "sensitive".
  7149  func (s CreateFilterOutput) GoString() string {
  7150  	return s.String()
  7151  }
  7152  
  7153  // SetFilterArn sets the FilterArn field's value.
  7154  func (s *CreateFilterOutput) SetFilterArn(v string) *CreateFilterOutput {
  7155  	s.FilterArn = &v
  7156  	return s
  7157  }
  7158  
  7159  type CreateSchemaInput struct {
  7160  	_ struct{} `type:"structure"`
  7161  
  7162  	// The name for the schema.
  7163  	//
  7164  	// Name is a required field
  7165  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  7166  
  7167  	// A schema in Avro JSON format.
  7168  	//
  7169  	// Schema is a required field
  7170  	Schema *string `locationName:"schema" type:"string" required:"true"`
  7171  }
  7172  
  7173  // String returns the string representation.
  7174  //
  7175  // API parameter values that are decorated as "sensitive" in the API will not
  7176  // be included in the string output. The member name will be present, but the
  7177  // value will be replaced with "sensitive".
  7178  func (s CreateSchemaInput) String() string {
  7179  	return awsutil.Prettify(s)
  7180  }
  7181  
  7182  // GoString returns the string representation.
  7183  //
  7184  // API parameter values that are decorated as "sensitive" in the API will not
  7185  // be included in the string output. The member name will be present, but the
  7186  // value will be replaced with "sensitive".
  7187  func (s CreateSchemaInput) GoString() string {
  7188  	return s.String()
  7189  }
  7190  
  7191  // Validate inspects the fields of the type to determine if they are valid.
  7192  func (s *CreateSchemaInput) Validate() error {
  7193  	invalidParams := request.ErrInvalidParams{Context: "CreateSchemaInput"}
  7194  	if s.Name == nil {
  7195  		invalidParams.Add(request.NewErrParamRequired("Name"))
  7196  	}
  7197  	if s.Name != nil && len(*s.Name) < 1 {
  7198  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7199  	}
  7200  	if s.Schema == nil {
  7201  		invalidParams.Add(request.NewErrParamRequired("Schema"))
  7202  	}
  7203  
  7204  	if invalidParams.Len() > 0 {
  7205  		return invalidParams
  7206  	}
  7207  	return nil
  7208  }
  7209  
  7210  // SetName sets the Name field's value.
  7211  func (s *CreateSchemaInput) SetName(v string) *CreateSchemaInput {
  7212  	s.Name = &v
  7213  	return s
  7214  }
  7215  
  7216  // SetSchema sets the Schema field's value.
  7217  func (s *CreateSchemaInput) SetSchema(v string) *CreateSchemaInput {
  7218  	s.Schema = &v
  7219  	return s
  7220  }
  7221  
  7222  type CreateSchemaOutput struct {
  7223  	_ struct{} `type:"structure"`
  7224  
  7225  	// The Amazon Resource Name (ARN) of the created schema.
  7226  	SchemaArn *string `locationName:"schemaArn" type:"string"`
  7227  }
  7228  
  7229  // String returns the string representation.
  7230  //
  7231  // API parameter values that are decorated as "sensitive" in the API will not
  7232  // be included in the string output. The member name will be present, but the
  7233  // value will be replaced with "sensitive".
  7234  func (s CreateSchemaOutput) String() string {
  7235  	return awsutil.Prettify(s)
  7236  }
  7237  
  7238  // GoString returns the string representation.
  7239  //
  7240  // API parameter values that are decorated as "sensitive" in the API will not
  7241  // be included in the string output. The member name will be present, but the
  7242  // value will be replaced with "sensitive".
  7243  func (s CreateSchemaOutput) GoString() string {
  7244  	return s.String()
  7245  }
  7246  
  7247  // SetSchemaArn sets the SchemaArn field's value.
  7248  func (s *CreateSchemaOutput) SetSchemaArn(v string) *CreateSchemaOutput {
  7249  	s.SchemaArn = &v
  7250  	return s
  7251  }
  7252  
  7253  type CreateSolutionInput struct {
  7254  	_ struct{} `type:"structure"`
  7255  
  7256  	// The Amazon Resource Name (ARN) of the dataset group that provides the training
  7257  	// data.
  7258  	//
  7259  	// DatasetGroupArn is a required field
  7260  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string" required:"true"`
  7261  
  7262  	// When your have multiple event types (using an EVENT_TYPE schema field), this
  7263  	// parameter specifies which event type (for example, 'click' or 'like') is
  7264  	// used for training the model.
  7265  	//
  7266  	// If you do not provide an eventType, Amazon Personalize will use all interactions
  7267  	// for training with equal weight regardless of type.
  7268  	EventType *string `locationName:"eventType" type:"string"`
  7269  
  7270  	// The name for the solution.
  7271  	//
  7272  	// Name is a required field
  7273  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  7274  
  7275  	// Whether to perform automated machine learning (AutoML). The default is false.
  7276  	// For this case, you must specify recipeArn.
  7277  	//
  7278  	// When set to true, Amazon Personalize analyzes your training data and selects
  7279  	// the optimal USER_PERSONALIZATION recipe and hyperparameters. In this case,
  7280  	// you must omit recipeArn. Amazon Personalize determines the optimal recipe
  7281  	// by running tests with different values for the hyperparameters. AutoML lengthens
  7282  	// the training process as compared to selecting a specific recipe.
  7283  	PerformAutoML *bool `locationName:"performAutoML" type:"boolean"`
  7284  
  7285  	// Whether to perform hyperparameter optimization (HPO) on the specified or
  7286  	// selected recipe. The default is false.
  7287  	//
  7288  	// When performing AutoML, this parameter is always true and you should not
  7289  	// set it to false.
  7290  	PerformHPO *bool `locationName:"performHPO" type:"boolean"`
  7291  
  7292  	// The ARN of the recipe to use for model training. Only specified when performAutoML
  7293  	// is false.
  7294  	RecipeArn *string `locationName:"recipeArn" type:"string"`
  7295  
  7296  	// The configuration to use with the solution. When performAutoML is set to
  7297  	// true, Amazon Personalize only evaluates the autoMLConfig section of the solution
  7298  	// configuration.
  7299  	//
  7300  	// Amazon Personalize doesn't support configuring the hpoObjective at this time.
  7301  	SolutionConfig *SolutionConfig `locationName:"solutionConfig" type:"structure"`
  7302  }
  7303  
  7304  // String returns the string representation.
  7305  //
  7306  // API parameter values that are decorated as "sensitive" in the API will not
  7307  // be included in the string output. The member name will be present, but the
  7308  // value will be replaced with "sensitive".
  7309  func (s CreateSolutionInput) String() string {
  7310  	return awsutil.Prettify(s)
  7311  }
  7312  
  7313  // GoString returns the string representation.
  7314  //
  7315  // API parameter values that are decorated as "sensitive" in the API will not
  7316  // be included in the string output. The member name will be present, but the
  7317  // value will be replaced with "sensitive".
  7318  func (s CreateSolutionInput) GoString() string {
  7319  	return s.String()
  7320  }
  7321  
  7322  // Validate inspects the fields of the type to determine if they are valid.
  7323  func (s *CreateSolutionInput) Validate() error {
  7324  	invalidParams := request.ErrInvalidParams{Context: "CreateSolutionInput"}
  7325  	if s.DatasetGroupArn == nil {
  7326  		invalidParams.Add(request.NewErrParamRequired("DatasetGroupArn"))
  7327  	}
  7328  	if s.Name == nil {
  7329  		invalidParams.Add(request.NewErrParamRequired("Name"))
  7330  	}
  7331  	if s.Name != nil && len(*s.Name) < 1 {
  7332  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7333  	}
  7334  	if s.SolutionConfig != nil {
  7335  		if err := s.SolutionConfig.Validate(); err != nil {
  7336  			invalidParams.AddNested("SolutionConfig", err.(request.ErrInvalidParams))
  7337  		}
  7338  	}
  7339  
  7340  	if invalidParams.Len() > 0 {
  7341  		return invalidParams
  7342  	}
  7343  	return nil
  7344  }
  7345  
  7346  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  7347  func (s *CreateSolutionInput) SetDatasetGroupArn(v string) *CreateSolutionInput {
  7348  	s.DatasetGroupArn = &v
  7349  	return s
  7350  }
  7351  
  7352  // SetEventType sets the EventType field's value.
  7353  func (s *CreateSolutionInput) SetEventType(v string) *CreateSolutionInput {
  7354  	s.EventType = &v
  7355  	return s
  7356  }
  7357  
  7358  // SetName sets the Name field's value.
  7359  func (s *CreateSolutionInput) SetName(v string) *CreateSolutionInput {
  7360  	s.Name = &v
  7361  	return s
  7362  }
  7363  
  7364  // SetPerformAutoML sets the PerformAutoML field's value.
  7365  func (s *CreateSolutionInput) SetPerformAutoML(v bool) *CreateSolutionInput {
  7366  	s.PerformAutoML = &v
  7367  	return s
  7368  }
  7369  
  7370  // SetPerformHPO sets the PerformHPO field's value.
  7371  func (s *CreateSolutionInput) SetPerformHPO(v bool) *CreateSolutionInput {
  7372  	s.PerformHPO = &v
  7373  	return s
  7374  }
  7375  
  7376  // SetRecipeArn sets the RecipeArn field's value.
  7377  func (s *CreateSolutionInput) SetRecipeArn(v string) *CreateSolutionInput {
  7378  	s.RecipeArn = &v
  7379  	return s
  7380  }
  7381  
  7382  // SetSolutionConfig sets the SolutionConfig field's value.
  7383  func (s *CreateSolutionInput) SetSolutionConfig(v *SolutionConfig) *CreateSolutionInput {
  7384  	s.SolutionConfig = v
  7385  	return s
  7386  }
  7387  
  7388  type CreateSolutionOutput struct {
  7389  	_ struct{} `type:"structure"`
  7390  
  7391  	// The ARN of the solution.
  7392  	SolutionArn *string `locationName:"solutionArn" type:"string"`
  7393  }
  7394  
  7395  // String returns the string representation.
  7396  //
  7397  // API parameter values that are decorated as "sensitive" in the API will not
  7398  // be included in the string output. The member name will be present, but the
  7399  // value will be replaced with "sensitive".
  7400  func (s CreateSolutionOutput) String() string {
  7401  	return awsutil.Prettify(s)
  7402  }
  7403  
  7404  // GoString returns the string representation.
  7405  //
  7406  // API parameter values that are decorated as "sensitive" in the API will not
  7407  // be included in the string output. The member name will be present, but the
  7408  // value will be replaced with "sensitive".
  7409  func (s CreateSolutionOutput) GoString() string {
  7410  	return s.String()
  7411  }
  7412  
  7413  // SetSolutionArn sets the SolutionArn field's value.
  7414  func (s *CreateSolutionOutput) SetSolutionArn(v string) *CreateSolutionOutput {
  7415  	s.SolutionArn = &v
  7416  	return s
  7417  }
  7418  
  7419  type CreateSolutionVersionInput struct {
  7420  	_ struct{} `type:"structure"`
  7421  
  7422  	// The Amazon Resource Name (ARN) of the solution containing the training configuration
  7423  	// information.
  7424  	//
  7425  	// SolutionArn is a required field
  7426  	SolutionArn *string `locationName:"solutionArn" type:"string" required:"true"`
  7427  
  7428  	// The scope of training to be performed when creating the solution version.
  7429  	// The FULL option trains the solution version based on the entirety of the
  7430  	// input solution's training data, while the UPDATE option processes only the
  7431  	// data that has changed in comparison to the input solution. Choose UPDATE
  7432  	// when you want to incrementally update your solution version instead of creating
  7433  	// an entirely new one.
  7434  	//
  7435  	// The UPDATE option can only be used when you already have an active solution
  7436  	// version created from the input solution using the FULL option and the input
  7437  	// solution was trained with the User-Personalization (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html)
  7438  	// recipe or the HRNN-Coldstart (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-hrnn-coldstart.html)
  7439  	// recipe.
  7440  	TrainingMode *string `locationName:"trainingMode" type:"string" enum:"TrainingMode"`
  7441  }
  7442  
  7443  // String returns the string representation.
  7444  //
  7445  // API parameter values that are decorated as "sensitive" in the API will not
  7446  // be included in the string output. The member name will be present, but the
  7447  // value will be replaced with "sensitive".
  7448  func (s CreateSolutionVersionInput) String() string {
  7449  	return awsutil.Prettify(s)
  7450  }
  7451  
  7452  // GoString returns the string representation.
  7453  //
  7454  // API parameter values that are decorated as "sensitive" in the API will not
  7455  // be included in the string output. The member name will be present, but the
  7456  // value will be replaced with "sensitive".
  7457  func (s CreateSolutionVersionInput) GoString() string {
  7458  	return s.String()
  7459  }
  7460  
  7461  // Validate inspects the fields of the type to determine if they are valid.
  7462  func (s *CreateSolutionVersionInput) Validate() error {
  7463  	invalidParams := request.ErrInvalidParams{Context: "CreateSolutionVersionInput"}
  7464  	if s.SolutionArn == nil {
  7465  		invalidParams.Add(request.NewErrParamRequired("SolutionArn"))
  7466  	}
  7467  
  7468  	if invalidParams.Len() > 0 {
  7469  		return invalidParams
  7470  	}
  7471  	return nil
  7472  }
  7473  
  7474  // SetSolutionArn sets the SolutionArn field's value.
  7475  func (s *CreateSolutionVersionInput) SetSolutionArn(v string) *CreateSolutionVersionInput {
  7476  	s.SolutionArn = &v
  7477  	return s
  7478  }
  7479  
  7480  // SetTrainingMode sets the TrainingMode field's value.
  7481  func (s *CreateSolutionVersionInput) SetTrainingMode(v string) *CreateSolutionVersionInput {
  7482  	s.TrainingMode = &v
  7483  	return s
  7484  }
  7485  
  7486  type CreateSolutionVersionOutput struct {
  7487  	_ struct{} `type:"structure"`
  7488  
  7489  	// The ARN of the new solution version.
  7490  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
  7491  }
  7492  
  7493  // String returns the string representation.
  7494  //
  7495  // API parameter values that are decorated as "sensitive" in the API will not
  7496  // be included in the string output. The member name will be present, but the
  7497  // value will be replaced with "sensitive".
  7498  func (s CreateSolutionVersionOutput) String() string {
  7499  	return awsutil.Prettify(s)
  7500  }
  7501  
  7502  // GoString returns the string representation.
  7503  //
  7504  // API parameter values that are decorated as "sensitive" in the API will not
  7505  // be included in the string output. The member name will be present, but the
  7506  // value will be replaced with "sensitive".
  7507  func (s CreateSolutionVersionOutput) GoString() string {
  7508  	return s.String()
  7509  }
  7510  
  7511  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
  7512  func (s *CreateSolutionVersionOutput) SetSolutionVersionArn(v string) *CreateSolutionVersionOutput {
  7513  	s.SolutionVersionArn = &v
  7514  	return s
  7515  }
  7516  
  7517  // Describes the data source that contains the data to upload to a dataset.
  7518  type DataSource struct {
  7519  	_ struct{} `type:"structure"`
  7520  
  7521  	// The path to the Amazon S3 bucket where the data that you want to upload to
  7522  	// your dataset is stored. For example:
  7523  	//
  7524  	// s3://bucket-name/folder-name/
  7525  	DataLocation *string `locationName:"dataLocation" type:"string"`
  7526  }
  7527  
  7528  // String returns the string representation.
  7529  //
  7530  // API parameter values that are decorated as "sensitive" in the API will not
  7531  // be included in the string output. The member name will be present, but the
  7532  // value will be replaced with "sensitive".
  7533  func (s DataSource) String() string {
  7534  	return awsutil.Prettify(s)
  7535  }
  7536  
  7537  // GoString returns the string representation.
  7538  //
  7539  // API parameter values that are decorated as "sensitive" in the API will not
  7540  // be included in the string output. The member name will be present, but the
  7541  // value will be replaced with "sensitive".
  7542  func (s DataSource) GoString() string {
  7543  	return s.String()
  7544  }
  7545  
  7546  // SetDataLocation sets the DataLocation field's value.
  7547  func (s *DataSource) SetDataLocation(v string) *DataSource {
  7548  	s.DataLocation = &v
  7549  	return s
  7550  }
  7551  
  7552  // Provides metadata for a dataset.
  7553  type Dataset struct {
  7554  	_ struct{} `type:"structure"`
  7555  
  7556  	// The creation date and time (in Unix time) of the dataset.
  7557  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  7558  
  7559  	// The Amazon Resource Name (ARN) of the dataset that you want metadata for.
  7560  	DatasetArn *string `locationName:"datasetArn" type:"string"`
  7561  
  7562  	// The Amazon Resource Name (ARN) of the dataset group.
  7563  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
  7564  
  7565  	// One of the following values:
  7566  	//
  7567  	//    * Interactions
  7568  	//
  7569  	//    * Items
  7570  	//
  7571  	//    * Users
  7572  	DatasetType *string `locationName:"datasetType" type:"string"`
  7573  
  7574  	// A time stamp that shows when the dataset was updated.
  7575  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  7576  
  7577  	// The name of the dataset.
  7578  	Name *string `locationName:"name" min:"1" type:"string"`
  7579  
  7580  	// The ARN of the associated schema.
  7581  	SchemaArn *string `locationName:"schemaArn" type:"string"`
  7582  
  7583  	// The status of the dataset.
  7584  	//
  7585  	// A dataset can be in one of the following states:
  7586  	//
  7587  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  7588  	//
  7589  	//    * DELETE PENDING > DELETE IN_PROGRESS
  7590  	Status *string `locationName:"status" type:"string"`
  7591  }
  7592  
  7593  // String returns the string representation.
  7594  //
  7595  // API parameter values that are decorated as "sensitive" in the API will not
  7596  // be included in the string output. The member name will be present, but the
  7597  // value will be replaced with "sensitive".
  7598  func (s Dataset) String() string {
  7599  	return awsutil.Prettify(s)
  7600  }
  7601  
  7602  // GoString returns the string representation.
  7603  //
  7604  // API parameter values that are decorated as "sensitive" in the API will not
  7605  // be included in the string output. The member name will be present, but the
  7606  // value will be replaced with "sensitive".
  7607  func (s Dataset) GoString() string {
  7608  	return s.String()
  7609  }
  7610  
  7611  // SetCreationDateTime sets the CreationDateTime field's value.
  7612  func (s *Dataset) SetCreationDateTime(v time.Time) *Dataset {
  7613  	s.CreationDateTime = &v
  7614  	return s
  7615  }
  7616  
  7617  // SetDatasetArn sets the DatasetArn field's value.
  7618  func (s *Dataset) SetDatasetArn(v string) *Dataset {
  7619  	s.DatasetArn = &v
  7620  	return s
  7621  }
  7622  
  7623  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  7624  func (s *Dataset) SetDatasetGroupArn(v string) *Dataset {
  7625  	s.DatasetGroupArn = &v
  7626  	return s
  7627  }
  7628  
  7629  // SetDatasetType sets the DatasetType field's value.
  7630  func (s *Dataset) SetDatasetType(v string) *Dataset {
  7631  	s.DatasetType = &v
  7632  	return s
  7633  }
  7634  
  7635  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  7636  func (s *Dataset) SetLastUpdatedDateTime(v time.Time) *Dataset {
  7637  	s.LastUpdatedDateTime = &v
  7638  	return s
  7639  }
  7640  
  7641  // SetName sets the Name field's value.
  7642  func (s *Dataset) SetName(v string) *Dataset {
  7643  	s.Name = &v
  7644  	return s
  7645  }
  7646  
  7647  // SetSchemaArn sets the SchemaArn field's value.
  7648  func (s *Dataset) SetSchemaArn(v string) *Dataset {
  7649  	s.SchemaArn = &v
  7650  	return s
  7651  }
  7652  
  7653  // SetStatus sets the Status field's value.
  7654  func (s *Dataset) SetStatus(v string) *Dataset {
  7655  	s.Status = &v
  7656  	return s
  7657  }
  7658  
  7659  // Describes a job that exports a dataset to an Amazon S3 bucket. For more information,
  7660  // see CreateDatasetExportJob.
  7661  //
  7662  // A dataset export job can be in one of the following states:
  7663  //
  7664  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  7665  type DatasetExportJob struct {
  7666  	_ struct{} `type:"structure"`
  7667  
  7668  	// The creation date and time (in Unix time) of the dataset export job.
  7669  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  7670  
  7671  	// The Amazon Resource Name (ARN) of the dataset to export.
  7672  	DatasetArn *string `locationName:"datasetArn" type:"string"`
  7673  
  7674  	// The Amazon Resource Name (ARN) of the dataset export job.
  7675  	DatasetExportJobArn *string `locationName:"datasetExportJobArn" type:"string"`
  7676  
  7677  	// If a dataset export job fails, provides the reason why.
  7678  	FailureReason *string `locationName:"failureReason" type:"string"`
  7679  
  7680  	// The data to export, based on how you imported the data. You can choose to
  7681  	// export BULK data that you imported using a dataset import job, PUT data that
  7682  	// you imported incrementally (using the console, PutEvents, PutUsers and PutItems
  7683  	// operations), or ALL for both types. The default value is PUT.
  7684  	IngestionMode *string `locationName:"ingestionMode" type:"string" enum:"IngestionMode"`
  7685  
  7686  	// The name of the export job.
  7687  	JobName *string `locationName:"jobName" min:"1" type:"string"`
  7688  
  7689  	// The path to the Amazon S3 bucket where the job's output is stored. For example:
  7690  	//
  7691  	// s3://bucket-name/folder-name/
  7692  	JobOutput *DatasetExportJobOutput `locationName:"jobOutput" type:"structure"`
  7693  
  7694  	// The date and time (in Unix time) the status of the dataset export job was
  7695  	// last updated.
  7696  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  7697  
  7698  	// The Amazon Resource Name (ARN) of the IAM service role that has permissions
  7699  	// to add data to your output Amazon S3 bucket.
  7700  	RoleArn *string `locationName:"roleArn" type:"string"`
  7701  
  7702  	// The status of the dataset export job.
  7703  	//
  7704  	// A dataset export job can be in one of the following states:
  7705  	//
  7706  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  7707  	Status *string `locationName:"status" type:"string"`
  7708  }
  7709  
  7710  // String returns the string representation.
  7711  //
  7712  // API parameter values that are decorated as "sensitive" in the API will not
  7713  // be included in the string output. The member name will be present, but the
  7714  // value will be replaced with "sensitive".
  7715  func (s DatasetExportJob) String() string {
  7716  	return awsutil.Prettify(s)
  7717  }
  7718  
  7719  // GoString returns the string representation.
  7720  //
  7721  // API parameter values that are decorated as "sensitive" in the API will not
  7722  // be included in the string output. The member name will be present, but the
  7723  // value will be replaced with "sensitive".
  7724  func (s DatasetExportJob) GoString() string {
  7725  	return s.String()
  7726  }
  7727  
  7728  // SetCreationDateTime sets the CreationDateTime field's value.
  7729  func (s *DatasetExportJob) SetCreationDateTime(v time.Time) *DatasetExportJob {
  7730  	s.CreationDateTime = &v
  7731  	return s
  7732  }
  7733  
  7734  // SetDatasetArn sets the DatasetArn field's value.
  7735  func (s *DatasetExportJob) SetDatasetArn(v string) *DatasetExportJob {
  7736  	s.DatasetArn = &v
  7737  	return s
  7738  }
  7739  
  7740  // SetDatasetExportJobArn sets the DatasetExportJobArn field's value.
  7741  func (s *DatasetExportJob) SetDatasetExportJobArn(v string) *DatasetExportJob {
  7742  	s.DatasetExportJobArn = &v
  7743  	return s
  7744  }
  7745  
  7746  // SetFailureReason sets the FailureReason field's value.
  7747  func (s *DatasetExportJob) SetFailureReason(v string) *DatasetExportJob {
  7748  	s.FailureReason = &v
  7749  	return s
  7750  }
  7751  
  7752  // SetIngestionMode sets the IngestionMode field's value.
  7753  func (s *DatasetExportJob) SetIngestionMode(v string) *DatasetExportJob {
  7754  	s.IngestionMode = &v
  7755  	return s
  7756  }
  7757  
  7758  // SetJobName sets the JobName field's value.
  7759  func (s *DatasetExportJob) SetJobName(v string) *DatasetExportJob {
  7760  	s.JobName = &v
  7761  	return s
  7762  }
  7763  
  7764  // SetJobOutput sets the JobOutput field's value.
  7765  func (s *DatasetExportJob) SetJobOutput(v *DatasetExportJobOutput) *DatasetExportJob {
  7766  	s.JobOutput = v
  7767  	return s
  7768  }
  7769  
  7770  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  7771  func (s *DatasetExportJob) SetLastUpdatedDateTime(v time.Time) *DatasetExportJob {
  7772  	s.LastUpdatedDateTime = &v
  7773  	return s
  7774  }
  7775  
  7776  // SetRoleArn sets the RoleArn field's value.
  7777  func (s *DatasetExportJob) SetRoleArn(v string) *DatasetExportJob {
  7778  	s.RoleArn = &v
  7779  	return s
  7780  }
  7781  
  7782  // SetStatus sets the Status field's value.
  7783  func (s *DatasetExportJob) SetStatus(v string) *DatasetExportJob {
  7784  	s.Status = &v
  7785  	return s
  7786  }
  7787  
  7788  // The output configuration parameters of a dataset export job.
  7789  type DatasetExportJobOutput struct {
  7790  	_ struct{} `type:"structure"`
  7791  
  7792  	// The configuration details of an Amazon S3 input or output bucket.
  7793  	//
  7794  	// S3DataDestination is a required field
  7795  	S3DataDestination *S3DataConfig `locationName:"s3DataDestination" type:"structure" required:"true"`
  7796  }
  7797  
  7798  // String returns the string representation.
  7799  //
  7800  // API parameter values that are decorated as "sensitive" in the API will not
  7801  // be included in the string output. The member name will be present, but the
  7802  // value will be replaced with "sensitive".
  7803  func (s DatasetExportJobOutput) String() string {
  7804  	return awsutil.Prettify(s)
  7805  }
  7806  
  7807  // GoString returns the string representation.
  7808  //
  7809  // API parameter values that are decorated as "sensitive" in the API will not
  7810  // be included in the string output. The member name will be present, but the
  7811  // value will be replaced with "sensitive".
  7812  func (s DatasetExportJobOutput) GoString() string {
  7813  	return s.String()
  7814  }
  7815  
  7816  // Validate inspects the fields of the type to determine if they are valid.
  7817  func (s *DatasetExportJobOutput) Validate() error {
  7818  	invalidParams := request.ErrInvalidParams{Context: "DatasetExportJobOutput"}
  7819  	if s.S3DataDestination == nil {
  7820  		invalidParams.Add(request.NewErrParamRequired("S3DataDestination"))
  7821  	}
  7822  	if s.S3DataDestination != nil {
  7823  		if err := s.S3DataDestination.Validate(); err != nil {
  7824  			invalidParams.AddNested("S3DataDestination", err.(request.ErrInvalidParams))
  7825  		}
  7826  	}
  7827  
  7828  	if invalidParams.Len() > 0 {
  7829  		return invalidParams
  7830  	}
  7831  	return nil
  7832  }
  7833  
  7834  // SetS3DataDestination sets the S3DataDestination field's value.
  7835  func (s *DatasetExportJobOutput) SetS3DataDestination(v *S3DataConfig) *DatasetExportJobOutput {
  7836  	s.S3DataDestination = v
  7837  	return s
  7838  }
  7839  
  7840  // Provides a summary of the properties of a dataset export job. For a complete
  7841  // listing, call the DescribeDatasetExportJob API.
  7842  type DatasetExportJobSummary struct {
  7843  	_ struct{} `type:"structure"`
  7844  
  7845  	// The date and time (in Unix time) that the dataset export job was created.
  7846  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  7847  
  7848  	// The Amazon Resource Name (ARN) of the dataset export job.
  7849  	DatasetExportJobArn *string `locationName:"datasetExportJobArn" type:"string"`
  7850  
  7851  	// If a dataset export job fails, the reason behind the failure.
  7852  	FailureReason *string `locationName:"failureReason" type:"string"`
  7853  
  7854  	// The name of the dataset export job.
  7855  	JobName *string `locationName:"jobName" min:"1" type:"string"`
  7856  
  7857  	// The date and time (in Unix time) that the dataset export job status was last
  7858  	// updated.
  7859  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  7860  
  7861  	// The status of the dataset export job.
  7862  	//
  7863  	// A dataset export job can be in one of the following states:
  7864  	//
  7865  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  7866  	Status *string `locationName:"status" type:"string"`
  7867  }
  7868  
  7869  // String returns the string representation.
  7870  //
  7871  // API parameter values that are decorated as "sensitive" in the API will not
  7872  // be included in the string output. The member name will be present, but the
  7873  // value will be replaced with "sensitive".
  7874  func (s DatasetExportJobSummary) String() string {
  7875  	return awsutil.Prettify(s)
  7876  }
  7877  
  7878  // GoString returns the string representation.
  7879  //
  7880  // API parameter values that are decorated as "sensitive" in the API will not
  7881  // be included in the string output. The member name will be present, but the
  7882  // value will be replaced with "sensitive".
  7883  func (s DatasetExportJobSummary) GoString() string {
  7884  	return s.String()
  7885  }
  7886  
  7887  // SetCreationDateTime sets the CreationDateTime field's value.
  7888  func (s *DatasetExportJobSummary) SetCreationDateTime(v time.Time) *DatasetExportJobSummary {
  7889  	s.CreationDateTime = &v
  7890  	return s
  7891  }
  7892  
  7893  // SetDatasetExportJobArn sets the DatasetExportJobArn field's value.
  7894  func (s *DatasetExportJobSummary) SetDatasetExportJobArn(v string) *DatasetExportJobSummary {
  7895  	s.DatasetExportJobArn = &v
  7896  	return s
  7897  }
  7898  
  7899  // SetFailureReason sets the FailureReason field's value.
  7900  func (s *DatasetExportJobSummary) SetFailureReason(v string) *DatasetExportJobSummary {
  7901  	s.FailureReason = &v
  7902  	return s
  7903  }
  7904  
  7905  // SetJobName sets the JobName field's value.
  7906  func (s *DatasetExportJobSummary) SetJobName(v string) *DatasetExportJobSummary {
  7907  	s.JobName = &v
  7908  	return s
  7909  }
  7910  
  7911  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  7912  func (s *DatasetExportJobSummary) SetLastUpdatedDateTime(v time.Time) *DatasetExportJobSummary {
  7913  	s.LastUpdatedDateTime = &v
  7914  	return s
  7915  }
  7916  
  7917  // SetStatus sets the Status field's value.
  7918  func (s *DatasetExportJobSummary) SetStatus(v string) *DatasetExportJobSummary {
  7919  	s.Status = &v
  7920  	return s
  7921  }
  7922  
  7923  // A dataset group is a collection of related datasets (Interactions, User,
  7924  // and Item). You create a dataset group by calling CreateDatasetGroup. You
  7925  // then create a dataset and add it to a dataset group by calling CreateDataset.
  7926  // The dataset group is used to create and train a solution by calling CreateSolution.
  7927  // A dataset group can contain only one of each type of dataset.
  7928  //
  7929  // You can specify an Key Management Service (KMS) key to encrypt the datasets
  7930  // in the group.
  7931  type DatasetGroup struct {
  7932  	_ struct{} `type:"structure"`
  7933  
  7934  	// The creation date and time (in Unix time) of the dataset group.
  7935  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  7936  
  7937  	// The Amazon Resource Name (ARN) of the dataset group.
  7938  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
  7939  
  7940  	// If creating a dataset group fails, provides the reason why.
  7941  	FailureReason *string `locationName:"failureReason" type:"string"`
  7942  
  7943  	// The Amazon Resource Name (ARN) of the Key Management Service (KMS) key used
  7944  	// to encrypt the datasets.
  7945  	KmsKeyArn *string `locationName:"kmsKeyArn" type:"string"`
  7946  
  7947  	// The last update date and time (in Unix time) of the dataset group.
  7948  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  7949  
  7950  	// The name of the dataset group.
  7951  	Name *string `locationName:"name" min:"1" type:"string"`
  7952  
  7953  	// The ARN of the IAM role that has permissions to create the dataset group.
  7954  	RoleArn *string `locationName:"roleArn" type:"string"`
  7955  
  7956  	// The current status of the dataset group.
  7957  	//
  7958  	// A dataset group can be in one of the following states:
  7959  	//
  7960  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  7961  	//
  7962  	//    * DELETE PENDING
  7963  	Status *string `locationName:"status" type:"string"`
  7964  }
  7965  
  7966  // String returns the string representation.
  7967  //
  7968  // API parameter values that are decorated as "sensitive" in the API will not
  7969  // be included in the string output. The member name will be present, but the
  7970  // value will be replaced with "sensitive".
  7971  func (s DatasetGroup) String() string {
  7972  	return awsutil.Prettify(s)
  7973  }
  7974  
  7975  // GoString returns the string representation.
  7976  //
  7977  // API parameter values that are decorated as "sensitive" in the API will not
  7978  // be included in the string output. The member name will be present, but the
  7979  // value will be replaced with "sensitive".
  7980  func (s DatasetGroup) GoString() string {
  7981  	return s.String()
  7982  }
  7983  
  7984  // SetCreationDateTime sets the CreationDateTime field's value.
  7985  func (s *DatasetGroup) SetCreationDateTime(v time.Time) *DatasetGroup {
  7986  	s.CreationDateTime = &v
  7987  	return s
  7988  }
  7989  
  7990  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  7991  func (s *DatasetGroup) SetDatasetGroupArn(v string) *DatasetGroup {
  7992  	s.DatasetGroupArn = &v
  7993  	return s
  7994  }
  7995  
  7996  // SetFailureReason sets the FailureReason field's value.
  7997  func (s *DatasetGroup) SetFailureReason(v string) *DatasetGroup {
  7998  	s.FailureReason = &v
  7999  	return s
  8000  }
  8001  
  8002  // SetKmsKeyArn sets the KmsKeyArn field's value.
  8003  func (s *DatasetGroup) SetKmsKeyArn(v string) *DatasetGroup {
  8004  	s.KmsKeyArn = &v
  8005  	return s
  8006  }
  8007  
  8008  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  8009  func (s *DatasetGroup) SetLastUpdatedDateTime(v time.Time) *DatasetGroup {
  8010  	s.LastUpdatedDateTime = &v
  8011  	return s
  8012  }
  8013  
  8014  // SetName sets the Name field's value.
  8015  func (s *DatasetGroup) SetName(v string) *DatasetGroup {
  8016  	s.Name = &v
  8017  	return s
  8018  }
  8019  
  8020  // SetRoleArn sets the RoleArn field's value.
  8021  func (s *DatasetGroup) SetRoleArn(v string) *DatasetGroup {
  8022  	s.RoleArn = &v
  8023  	return s
  8024  }
  8025  
  8026  // SetStatus sets the Status field's value.
  8027  func (s *DatasetGroup) SetStatus(v string) *DatasetGroup {
  8028  	s.Status = &v
  8029  	return s
  8030  }
  8031  
  8032  // Provides a summary of the properties of a dataset group. For a complete listing,
  8033  // call the DescribeDatasetGroup API.
  8034  type DatasetGroupSummary struct {
  8035  	_ struct{} `type:"structure"`
  8036  
  8037  	// The date and time (in Unix time) that the dataset group was created.
  8038  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  8039  
  8040  	// The Amazon Resource Name (ARN) of the dataset group.
  8041  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
  8042  
  8043  	// If creating a dataset group fails, the reason behind the failure.
  8044  	FailureReason *string `locationName:"failureReason" type:"string"`
  8045  
  8046  	// The date and time (in Unix time) that the dataset group was last updated.
  8047  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  8048  
  8049  	// The name of the dataset group.
  8050  	Name *string `locationName:"name" min:"1" type:"string"`
  8051  
  8052  	// The status of the dataset group.
  8053  	//
  8054  	// A dataset group can be in one of the following states:
  8055  	//
  8056  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  8057  	//
  8058  	//    * DELETE PENDING
  8059  	Status *string `locationName:"status" type:"string"`
  8060  }
  8061  
  8062  // String returns the string representation.
  8063  //
  8064  // API parameter values that are decorated as "sensitive" in the API will not
  8065  // be included in the string output. The member name will be present, but the
  8066  // value will be replaced with "sensitive".
  8067  func (s DatasetGroupSummary) String() string {
  8068  	return awsutil.Prettify(s)
  8069  }
  8070  
  8071  // GoString returns the string representation.
  8072  //
  8073  // API parameter values that are decorated as "sensitive" in the API will not
  8074  // be included in the string output. The member name will be present, but the
  8075  // value will be replaced with "sensitive".
  8076  func (s DatasetGroupSummary) GoString() string {
  8077  	return s.String()
  8078  }
  8079  
  8080  // SetCreationDateTime sets the CreationDateTime field's value.
  8081  func (s *DatasetGroupSummary) SetCreationDateTime(v time.Time) *DatasetGroupSummary {
  8082  	s.CreationDateTime = &v
  8083  	return s
  8084  }
  8085  
  8086  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  8087  func (s *DatasetGroupSummary) SetDatasetGroupArn(v string) *DatasetGroupSummary {
  8088  	s.DatasetGroupArn = &v
  8089  	return s
  8090  }
  8091  
  8092  // SetFailureReason sets the FailureReason field's value.
  8093  func (s *DatasetGroupSummary) SetFailureReason(v string) *DatasetGroupSummary {
  8094  	s.FailureReason = &v
  8095  	return s
  8096  }
  8097  
  8098  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  8099  func (s *DatasetGroupSummary) SetLastUpdatedDateTime(v time.Time) *DatasetGroupSummary {
  8100  	s.LastUpdatedDateTime = &v
  8101  	return s
  8102  }
  8103  
  8104  // SetName sets the Name field's value.
  8105  func (s *DatasetGroupSummary) SetName(v string) *DatasetGroupSummary {
  8106  	s.Name = &v
  8107  	return s
  8108  }
  8109  
  8110  // SetStatus sets the Status field's value.
  8111  func (s *DatasetGroupSummary) SetStatus(v string) *DatasetGroupSummary {
  8112  	s.Status = &v
  8113  	return s
  8114  }
  8115  
  8116  // Describes a job that imports training data from a data source (Amazon S3
  8117  // bucket) to an Amazon Personalize dataset. For more information, see CreateDatasetImportJob.
  8118  //
  8119  // A dataset import job can be in one of the following states:
  8120  //
  8121  //    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  8122  type DatasetImportJob struct {
  8123  	_ struct{} `type:"structure"`
  8124  
  8125  	// The creation date and time (in Unix time) of the dataset import job.
  8126  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  8127  
  8128  	// The Amazon S3 bucket that contains the training data to import.
  8129  	DataSource *DataSource `locationName:"dataSource" type:"structure"`
  8130  
  8131  	// The Amazon Resource Name (ARN) of the dataset that receives the imported
  8132  	// data.
  8133  	DatasetArn *string `locationName:"datasetArn" type:"string"`
  8134  
  8135  	// The ARN of the dataset import job.
  8136  	DatasetImportJobArn *string `locationName:"datasetImportJobArn" type:"string"`
  8137  
  8138  	// If a dataset import job fails, provides the reason why.
  8139  	FailureReason *string `locationName:"failureReason" type:"string"`
  8140  
  8141  	// The name of the import job.
  8142  	JobName *string `locationName:"jobName" min:"1" type:"string"`
  8143  
  8144  	// The date and time (in Unix time) the dataset was last updated.
  8145  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  8146  
  8147  	// The ARN of the IAM role that has permissions to read from the Amazon S3 data
  8148  	// source.
  8149  	RoleArn *string `locationName:"roleArn" type:"string"`
  8150  
  8151  	// The status of the dataset import job.
  8152  	//
  8153  	// A dataset import job can be in one of the following states:
  8154  	//
  8155  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  8156  	Status *string `locationName:"status" type:"string"`
  8157  }
  8158  
  8159  // String returns the string representation.
  8160  //
  8161  // API parameter values that are decorated as "sensitive" in the API will not
  8162  // be included in the string output. The member name will be present, but the
  8163  // value will be replaced with "sensitive".
  8164  func (s DatasetImportJob) String() string {
  8165  	return awsutil.Prettify(s)
  8166  }
  8167  
  8168  // GoString returns the string representation.
  8169  //
  8170  // API parameter values that are decorated as "sensitive" in the API will not
  8171  // be included in the string output. The member name will be present, but the
  8172  // value will be replaced with "sensitive".
  8173  func (s DatasetImportJob) GoString() string {
  8174  	return s.String()
  8175  }
  8176  
  8177  // SetCreationDateTime sets the CreationDateTime field's value.
  8178  func (s *DatasetImportJob) SetCreationDateTime(v time.Time) *DatasetImportJob {
  8179  	s.CreationDateTime = &v
  8180  	return s
  8181  }
  8182  
  8183  // SetDataSource sets the DataSource field's value.
  8184  func (s *DatasetImportJob) SetDataSource(v *DataSource) *DatasetImportJob {
  8185  	s.DataSource = v
  8186  	return s
  8187  }
  8188  
  8189  // SetDatasetArn sets the DatasetArn field's value.
  8190  func (s *DatasetImportJob) SetDatasetArn(v string) *DatasetImportJob {
  8191  	s.DatasetArn = &v
  8192  	return s
  8193  }
  8194  
  8195  // SetDatasetImportJobArn sets the DatasetImportJobArn field's value.
  8196  func (s *DatasetImportJob) SetDatasetImportJobArn(v string) *DatasetImportJob {
  8197  	s.DatasetImportJobArn = &v
  8198  	return s
  8199  }
  8200  
  8201  // SetFailureReason sets the FailureReason field's value.
  8202  func (s *DatasetImportJob) SetFailureReason(v string) *DatasetImportJob {
  8203  	s.FailureReason = &v
  8204  	return s
  8205  }
  8206  
  8207  // SetJobName sets the JobName field's value.
  8208  func (s *DatasetImportJob) SetJobName(v string) *DatasetImportJob {
  8209  	s.JobName = &v
  8210  	return s
  8211  }
  8212  
  8213  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  8214  func (s *DatasetImportJob) SetLastUpdatedDateTime(v time.Time) *DatasetImportJob {
  8215  	s.LastUpdatedDateTime = &v
  8216  	return s
  8217  }
  8218  
  8219  // SetRoleArn sets the RoleArn field's value.
  8220  func (s *DatasetImportJob) SetRoleArn(v string) *DatasetImportJob {
  8221  	s.RoleArn = &v
  8222  	return s
  8223  }
  8224  
  8225  // SetStatus sets the Status field's value.
  8226  func (s *DatasetImportJob) SetStatus(v string) *DatasetImportJob {
  8227  	s.Status = &v
  8228  	return s
  8229  }
  8230  
  8231  // Provides a summary of the properties of a dataset import job. For a complete
  8232  // listing, call the DescribeDatasetImportJob API.
  8233  type DatasetImportJobSummary struct {
  8234  	_ struct{} `type:"structure"`
  8235  
  8236  	// The date and time (in Unix time) that the dataset import job was created.
  8237  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  8238  
  8239  	// The Amazon Resource Name (ARN) of the dataset import job.
  8240  	DatasetImportJobArn *string `locationName:"datasetImportJobArn" type:"string"`
  8241  
  8242  	// If a dataset import job fails, the reason behind the failure.
  8243  	FailureReason *string `locationName:"failureReason" type:"string"`
  8244  
  8245  	// The name of the dataset import job.
  8246  	JobName *string `locationName:"jobName" min:"1" type:"string"`
  8247  
  8248  	// The date and time (in Unix time) that the dataset import job status was last
  8249  	// updated.
  8250  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  8251  
  8252  	// The status of the dataset import job.
  8253  	//
  8254  	// A dataset import job can be in one of the following states:
  8255  	//
  8256  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  8257  	Status *string `locationName:"status" type:"string"`
  8258  }
  8259  
  8260  // String returns the string representation.
  8261  //
  8262  // API parameter values that are decorated as "sensitive" in the API will not
  8263  // be included in the string output. The member name will be present, but the
  8264  // value will be replaced with "sensitive".
  8265  func (s DatasetImportJobSummary) String() string {
  8266  	return awsutil.Prettify(s)
  8267  }
  8268  
  8269  // GoString returns the string representation.
  8270  //
  8271  // API parameter values that are decorated as "sensitive" in the API will not
  8272  // be included in the string output. The member name will be present, but the
  8273  // value will be replaced with "sensitive".
  8274  func (s DatasetImportJobSummary) GoString() string {
  8275  	return s.String()
  8276  }
  8277  
  8278  // SetCreationDateTime sets the CreationDateTime field's value.
  8279  func (s *DatasetImportJobSummary) SetCreationDateTime(v time.Time) *DatasetImportJobSummary {
  8280  	s.CreationDateTime = &v
  8281  	return s
  8282  }
  8283  
  8284  // SetDatasetImportJobArn sets the DatasetImportJobArn field's value.
  8285  func (s *DatasetImportJobSummary) SetDatasetImportJobArn(v string) *DatasetImportJobSummary {
  8286  	s.DatasetImportJobArn = &v
  8287  	return s
  8288  }
  8289  
  8290  // SetFailureReason sets the FailureReason field's value.
  8291  func (s *DatasetImportJobSummary) SetFailureReason(v string) *DatasetImportJobSummary {
  8292  	s.FailureReason = &v
  8293  	return s
  8294  }
  8295  
  8296  // SetJobName sets the JobName field's value.
  8297  func (s *DatasetImportJobSummary) SetJobName(v string) *DatasetImportJobSummary {
  8298  	s.JobName = &v
  8299  	return s
  8300  }
  8301  
  8302  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  8303  func (s *DatasetImportJobSummary) SetLastUpdatedDateTime(v time.Time) *DatasetImportJobSummary {
  8304  	s.LastUpdatedDateTime = &v
  8305  	return s
  8306  }
  8307  
  8308  // SetStatus sets the Status field's value.
  8309  func (s *DatasetImportJobSummary) SetStatus(v string) *DatasetImportJobSummary {
  8310  	s.Status = &v
  8311  	return s
  8312  }
  8313  
  8314  // Describes the schema for a dataset. For more information on schemas, see
  8315  // CreateSchema.
  8316  type DatasetSchema struct {
  8317  	_ struct{} `type:"structure"`
  8318  
  8319  	// The date and time (in Unix time) that the schema was created.
  8320  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  8321  
  8322  	// The date and time (in Unix time) that the schema was last updated.
  8323  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  8324  
  8325  	// The name of the schema.
  8326  	Name *string `locationName:"name" min:"1" type:"string"`
  8327  
  8328  	// The schema.
  8329  	Schema *string `locationName:"schema" type:"string"`
  8330  
  8331  	// The Amazon Resource Name (ARN) of the schema.
  8332  	SchemaArn *string `locationName:"schemaArn" type:"string"`
  8333  }
  8334  
  8335  // String returns the string representation.
  8336  //
  8337  // API parameter values that are decorated as "sensitive" in the API will not
  8338  // be included in the string output. The member name will be present, but the
  8339  // value will be replaced with "sensitive".
  8340  func (s DatasetSchema) String() string {
  8341  	return awsutil.Prettify(s)
  8342  }
  8343  
  8344  // GoString returns the string representation.
  8345  //
  8346  // API parameter values that are decorated as "sensitive" in the API will not
  8347  // be included in the string output. The member name will be present, but the
  8348  // value will be replaced with "sensitive".
  8349  func (s DatasetSchema) GoString() string {
  8350  	return s.String()
  8351  }
  8352  
  8353  // SetCreationDateTime sets the CreationDateTime field's value.
  8354  func (s *DatasetSchema) SetCreationDateTime(v time.Time) *DatasetSchema {
  8355  	s.CreationDateTime = &v
  8356  	return s
  8357  }
  8358  
  8359  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  8360  func (s *DatasetSchema) SetLastUpdatedDateTime(v time.Time) *DatasetSchema {
  8361  	s.LastUpdatedDateTime = &v
  8362  	return s
  8363  }
  8364  
  8365  // SetName sets the Name field's value.
  8366  func (s *DatasetSchema) SetName(v string) *DatasetSchema {
  8367  	s.Name = &v
  8368  	return s
  8369  }
  8370  
  8371  // SetSchema sets the Schema field's value.
  8372  func (s *DatasetSchema) SetSchema(v string) *DatasetSchema {
  8373  	s.Schema = &v
  8374  	return s
  8375  }
  8376  
  8377  // SetSchemaArn sets the SchemaArn field's value.
  8378  func (s *DatasetSchema) SetSchemaArn(v string) *DatasetSchema {
  8379  	s.SchemaArn = &v
  8380  	return s
  8381  }
  8382  
  8383  // Provides a summary of the properties of a dataset schema. For a complete
  8384  // listing, call the DescribeSchema API.
  8385  type DatasetSchemaSummary struct {
  8386  	_ struct{} `type:"structure"`
  8387  
  8388  	// The date and time (in Unix time) that the schema was created.
  8389  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  8390  
  8391  	// The date and time (in Unix time) that the schema was last updated.
  8392  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  8393  
  8394  	// The name of the schema.
  8395  	Name *string `locationName:"name" min:"1" type:"string"`
  8396  
  8397  	// The Amazon Resource Name (ARN) of the schema.
  8398  	SchemaArn *string `locationName:"schemaArn" type:"string"`
  8399  }
  8400  
  8401  // String returns the string representation.
  8402  //
  8403  // API parameter values that are decorated as "sensitive" in the API will not
  8404  // be included in the string output. The member name will be present, but the
  8405  // value will be replaced with "sensitive".
  8406  func (s DatasetSchemaSummary) String() string {
  8407  	return awsutil.Prettify(s)
  8408  }
  8409  
  8410  // GoString returns the string representation.
  8411  //
  8412  // API parameter values that are decorated as "sensitive" in the API will not
  8413  // be included in the string output. The member name will be present, but the
  8414  // value will be replaced with "sensitive".
  8415  func (s DatasetSchemaSummary) GoString() string {
  8416  	return s.String()
  8417  }
  8418  
  8419  // SetCreationDateTime sets the CreationDateTime field's value.
  8420  func (s *DatasetSchemaSummary) SetCreationDateTime(v time.Time) *DatasetSchemaSummary {
  8421  	s.CreationDateTime = &v
  8422  	return s
  8423  }
  8424  
  8425  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  8426  func (s *DatasetSchemaSummary) SetLastUpdatedDateTime(v time.Time) *DatasetSchemaSummary {
  8427  	s.LastUpdatedDateTime = &v
  8428  	return s
  8429  }
  8430  
  8431  // SetName sets the Name field's value.
  8432  func (s *DatasetSchemaSummary) SetName(v string) *DatasetSchemaSummary {
  8433  	s.Name = &v
  8434  	return s
  8435  }
  8436  
  8437  // SetSchemaArn sets the SchemaArn field's value.
  8438  func (s *DatasetSchemaSummary) SetSchemaArn(v string) *DatasetSchemaSummary {
  8439  	s.SchemaArn = &v
  8440  	return s
  8441  }
  8442  
  8443  // Provides a summary of the properties of a dataset. For a complete listing,
  8444  // call the DescribeDataset API.
  8445  type DatasetSummary struct {
  8446  	_ struct{} `type:"structure"`
  8447  
  8448  	// The date and time (in Unix time) that the dataset was created.
  8449  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
  8450  
  8451  	// The Amazon Resource Name (ARN) of the dataset.
  8452  	DatasetArn *string `locationName:"datasetArn" type:"string"`
  8453  
  8454  	// The dataset type. One of the following values:
  8455  	//
  8456  	//    * Interactions
  8457  	//
  8458  	//    * Items
  8459  	//
  8460  	//    * Users
  8461  	//
  8462  	//    * Event-Interactions
  8463  	DatasetType *string `locationName:"datasetType" type:"string"`
  8464  
  8465  	// The date and time (in Unix time) that the dataset was last updated.
  8466  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
  8467  
  8468  	// The name of the dataset.
  8469  	Name *string `locationName:"name" min:"1" type:"string"`
  8470  
  8471  	// The status of the dataset.
  8472  	//
  8473  	// A dataset can be in one of the following states:
  8474  	//
  8475  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
  8476  	//
  8477  	//    * DELETE PENDING > DELETE IN_PROGRESS
  8478  	Status *string `locationName:"status" type:"string"`
  8479  }
  8480  
  8481  // String returns the string representation.
  8482  //
  8483  // API parameter values that are decorated as "sensitive" in the API will not
  8484  // be included in the string output. The member name will be present, but the
  8485  // value will be replaced with "sensitive".
  8486  func (s DatasetSummary) String() string {
  8487  	return awsutil.Prettify(s)
  8488  }
  8489  
  8490  // GoString returns the string representation.
  8491  //
  8492  // API parameter values that are decorated as "sensitive" in the API will not
  8493  // be included in the string output. The member name will be present, but the
  8494  // value will be replaced with "sensitive".
  8495  func (s DatasetSummary) GoString() string {
  8496  	return s.String()
  8497  }
  8498  
  8499  // SetCreationDateTime sets the CreationDateTime field's value.
  8500  func (s *DatasetSummary) SetCreationDateTime(v time.Time) *DatasetSummary {
  8501  	s.CreationDateTime = &v
  8502  	return s
  8503  }
  8504  
  8505  // SetDatasetArn sets the DatasetArn field's value.
  8506  func (s *DatasetSummary) SetDatasetArn(v string) *DatasetSummary {
  8507  	s.DatasetArn = &v
  8508  	return s
  8509  }
  8510  
  8511  // SetDatasetType sets the DatasetType field's value.
  8512  func (s *DatasetSummary) SetDatasetType(v string) *DatasetSummary {
  8513  	s.DatasetType = &v
  8514  	return s
  8515  }
  8516  
  8517  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
  8518  func (s *DatasetSummary) SetLastUpdatedDateTime(v time.Time) *DatasetSummary {
  8519  	s.LastUpdatedDateTime = &v
  8520  	return s
  8521  }
  8522  
  8523  // SetName sets the Name field's value.
  8524  func (s *DatasetSummary) SetName(v string) *DatasetSummary {
  8525  	s.Name = &v
  8526  	return s
  8527  }
  8528  
  8529  // SetStatus sets the Status field's value.
  8530  func (s *DatasetSummary) SetStatus(v string) *DatasetSummary {
  8531  	s.Status = &v
  8532  	return s
  8533  }
  8534  
  8535  // Provides the name and default range of a categorical hyperparameter and whether
  8536  // the hyperparameter is tunable. A tunable hyperparameter can have its value
  8537  // determined during hyperparameter optimization (HPO).
  8538  type DefaultCategoricalHyperParameterRange struct {
  8539  	_ struct{} `type:"structure"`
  8540  
  8541  	// Whether the hyperparameter is tunable.
  8542  	IsTunable *bool `locationName:"isTunable" type:"boolean"`
  8543  
  8544  	// The name of the hyperparameter.
  8545  	Name *string `locationName:"name" type:"string"`
  8546  
  8547  	// A list of the categories for the hyperparameter.
  8548  	Values []*string `locationName:"values" type:"list"`
  8549  }
  8550  
  8551  // String returns the string representation.
  8552  //
  8553  // API parameter values that are decorated as "sensitive" in the API will not
  8554  // be included in the string output. The member name will be present, but the
  8555  // value will be replaced with "sensitive".
  8556  func (s DefaultCategoricalHyperParameterRange) String() string {
  8557  	return awsutil.Prettify(s)
  8558  }
  8559  
  8560  // GoString returns the string representation.
  8561  //
  8562  // API parameter values that are decorated as "sensitive" in the API will not
  8563  // be included in the string output. The member name will be present, but the
  8564  // value will be replaced with "sensitive".
  8565  func (s DefaultCategoricalHyperParameterRange) GoString() string {
  8566  	return s.String()
  8567  }
  8568  
  8569  // SetIsTunable sets the IsTunable field's value.
  8570  func (s *DefaultCategoricalHyperParameterRange) SetIsTunable(v bool) *DefaultCategoricalHyperParameterRange {
  8571  	s.IsTunable = &v
  8572  	return s
  8573  }
  8574  
  8575  // SetName sets the Name field's value.
  8576  func (s *DefaultCategoricalHyperParameterRange) SetName(v string) *DefaultCategoricalHyperParameterRange {
  8577  	s.Name = &v
  8578  	return s
  8579  }
  8580  
  8581  // SetValues sets the Values field's value.
  8582  func (s *DefaultCategoricalHyperParameterRange) SetValues(v []*string) *DefaultCategoricalHyperParameterRange {
  8583  	s.Values = v
  8584  	return s
  8585  }
  8586  
  8587  // Provides the name and default range of a continuous hyperparameter and whether
  8588  // the hyperparameter is tunable. A tunable hyperparameter can have its value
  8589  // determined during hyperparameter optimization (HPO).
  8590  type DefaultContinuousHyperParameterRange struct {
  8591  	_ struct{} `type:"structure"`
  8592  
  8593  	// Whether the hyperparameter is tunable.
  8594  	IsTunable *bool `locationName:"isTunable" type:"boolean"`
  8595  
  8596  	// The maximum allowable value for the hyperparameter.
  8597  	MaxValue *float64 `locationName:"maxValue" type:"double"`
  8598  
  8599  	// The minimum allowable value for the hyperparameter.
  8600  	MinValue *float64 `locationName:"minValue" type:"double"`
  8601  
  8602  	// The name of the hyperparameter.
  8603  	Name *string `locationName:"name" type:"string"`
  8604  }
  8605  
  8606  // String returns the string representation.
  8607  //
  8608  // API parameter values that are decorated as "sensitive" in the API will not
  8609  // be included in the string output. The member name will be present, but the
  8610  // value will be replaced with "sensitive".
  8611  func (s DefaultContinuousHyperParameterRange) String() string {
  8612  	return awsutil.Prettify(s)
  8613  }
  8614  
  8615  // GoString returns the string representation.
  8616  //
  8617  // API parameter values that are decorated as "sensitive" in the API will not
  8618  // be included in the string output. The member name will be present, but the
  8619  // value will be replaced with "sensitive".
  8620  func (s DefaultContinuousHyperParameterRange) GoString() string {
  8621  	return s.String()
  8622  }
  8623  
  8624  // SetIsTunable sets the IsTunable field's value.
  8625  func (s *DefaultContinuousHyperParameterRange) SetIsTunable(v bool) *DefaultContinuousHyperParameterRange {
  8626  	s.IsTunable = &v
  8627  	return s
  8628  }
  8629  
  8630  // SetMaxValue sets the MaxValue field's value.
  8631  func (s *DefaultContinuousHyperParameterRange) SetMaxValue(v float64) *DefaultContinuousHyperParameterRange {
  8632  	s.MaxValue = &v
  8633  	return s
  8634  }
  8635  
  8636  // SetMinValue sets the MinValue field's value.
  8637  func (s *DefaultContinuousHyperParameterRange) SetMinValue(v float64) *DefaultContinuousHyperParameterRange {
  8638  	s.MinValue = &v
  8639  	return s
  8640  }
  8641  
  8642  // SetName sets the Name field's value.
  8643  func (s *DefaultContinuousHyperParameterRange) SetName(v string) *DefaultContinuousHyperParameterRange {
  8644  	s.Name = &v
  8645  	return s
  8646  }
  8647  
  8648  // Specifies the hyperparameters and their default ranges. Hyperparameters can
  8649  // be categorical, continuous, or integer-valued.
  8650  type DefaultHyperParameterRanges struct {
  8651  	_ struct{} `type:"structure"`
  8652  
  8653  	// The categorical hyperparameters and their default ranges.
  8654  	CategoricalHyperParameterRanges []*DefaultCategoricalHyperParameterRange `locationName:"categoricalHyperParameterRanges" type:"list"`
  8655  
  8656  	// The continuous hyperparameters and their default ranges.
  8657  	ContinuousHyperParameterRanges []*DefaultContinuousHyperParameterRange `locationName:"continuousHyperParameterRanges" type:"list"`
  8658  
  8659  	// The integer-valued hyperparameters and their default ranges.
  8660  	IntegerHyperParameterRanges []*DefaultIntegerHyperParameterRange `locationName:"integerHyperParameterRanges" type:"list"`
  8661  }
  8662  
  8663  // String returns the string representation.
  8664  //
  8665  // API parameter values that are decorated as "sensitive" in the API will not
  8666  // be included in the string output. The member name will be present, but the
  8667  // value will be replaced with "sensitive".
  8668  func (s DefaultHyperParameterRanges) String() string {
  8669  	return awsutil.Prettify(s)
  8670  }
  8671  
  8672  // GoString returns the string representation.
  8673  //
  8674  // API parameter values that are decorated as "sensitive" in the API will not
  8675  // be included in the string output. The member name will be present, but the
  8676  // value will be replaced with "sensitive".
  8677  func (s DefaultHyperParameterRanges) GoString() string {
  8678  	return s.String()
  8679  }
  8680  
  8681  // SetCategoricalHyperParameterRanges sets the CategoricalHyperParameterRanges field's value.
  8682  func (s *DefaultHyperParameterRanges) SetCategoricalHyperParameterRanges(v []*DefaultCategoricalHyperParameterRange) *DefaultHyperParameterRanges {
  8683  	s.CategoricalHyperParameterRanges = v
  8684  	return s
  8685  }
  8686  
  8687  // SetContinuousHyperParameterRanges sets the ContinuousHyperParameterRanges field's value.
  8688  func (s *DefaultHyperParameterRanges) SetContinuousHyperParameterRanges(v []*DefaultContinuousHyperParameterRange) *DefaultHyperParameterRanges {
  8689  	s.ContinuousHyperParameterRanges = v
  8690  	return s
  8691  }
  8692  
  8693  // SetIntegerHyperParameterRanges sets the IntegerHyperParameterRanges field's value.
  8694  func (s *DefaultHyperParameterRanges) SetIntegerHyperParameterRanges(v []*DefaultIntegerHyperParameterRange) *DefaultHyperParameterRanges {
  8695  	s.IntegerHyperParameterRanges = v
  8696  	return s
  8697  }
  8698  
  8699  // Provides the name and default range of a integer-valued hyperparameter and
  8700  // whether the hyperparameter is tunable. A tunable hyperparameter can have
  8701  // its value determined during hyperparameter optimization (HPO).
  8702  type DefaultIntegerHyperParameterRange struct {
  8703  	_ struct{} `type:"structure"`
  8704  
  8705  	// Indicates whether the hyperparameter is tunable.
  8706  	IsTunable *bool `locationName:"isTunable" type:"boolean"`
  8707  
  8708  	// The maximum allowable value for the hyperparameter.
  8709  	MaxValue *int64 `locationName:"maxValue" type:"integer"`
  8710  
  8711  	// The minimum allowable value for the hyperparameter.
  8712  	MinValue *int64 `locationName:"minValue" type:"integer"`
  8713  
  8714  	// The name of the hyperparameter.
  8715  	Name *string `locationName:"name" type:"string"`
  8716  }
  8717  
  8718  // String returns the string representation.
  8719  //
  8720  // API parameter values that are decorated as "sensitive" in the API will not
  8721  // be included in the string output. The member name will be present, but the
  8722  // value will be replaced with "sensitive".
  8723  func (s DefaultIntegerHyperParameterRange) String() string {
  8724  	return awsutil.Prettify(s)
  8725  }
  8726  
  8727  // GoString returns the string representation.
  8728  //
  8729  // API parameter values that are decorated as "sensitive" in the API will not
  8730  // be included in the string output. The member name will be present, but the
  8731  // value will be replaced with "sensitive".
  8732  func (s DefaultIntegerHyperParameterRange) GoString() string {
  8733  	return s.String()
  8734  }
  8735  
  8736  // SetIsTunable sets the IsTunable field's value.
  8737  func (s *DefaultIntegerHyperParameterRange) SetIsTunable(v bool) *DefaultIntegerHyperParameterRange {
  8738  	s.IsTunable = &v
  8739  	return s
  8740  }
  8741  
  8742  // SetMaxValue sets the MaxValue field's value.
  8743  func (s *DefaultIntegerHyperParameterRange) SetMaxValue(v int64) *DefaultIntegerHyperParameterRange {
  8744  	s.MaxValue = &v
  8745  	return s
  8746  }
  8747  
  8748  // SetMinValue sets the MinValue field's value.
  8749  func (s *DefaultIntegerHyperParameterRange) SetMinValue(v int64) *DefaultIntegerHyperParameterRange {
  8750  	s.MinValue = &v
  8751  	return s
  8752  }
  8753  
  8754  // SetName sets the Name field's value.
  8755  func (s *DefaultIntegerHyperParameterRange) SetName(v string) *DefaultIntegerHyperParameterRange {
  8756  	s.Name = &v
  8757  	return s
  8758  }
  8759  
  8760  type DeleteCampaignInput struct {
  8761  	_ struct{} `type:"structure"`
  8762  
  8763  	// The Amazon Resource Name (ARN) of the campaign to delete.
  8764  	//
  8765  	// CampaignArn is a required field
  8766  	CampaignArn *string `locationName:"campaignArn" type:"string" required:"true"`
  8767  }
  8768  
  8769  // String returns the string representation.
  8770  //
  8771  // API parameter values that are decorated as "sensitive" in the API will not
  8772  // be included in the string output. The member name will be present, but the
  8773  // value will be replaced with "sensitive".
  8774  func (s DeleteCampaignInput) String() string {
  8775  	return awsutil.Prettify(s)
  8776  }
  8777  
  8778  // GoString returns the string representation.
  8779  //
  8780  // API parameter values that are decorated as "sensitive" in the API will not
  8781  // be included in the string output. The member name will be present, but the
  8782  // value will be replaced with "sensitive".
  8783  func (s DeleteCampaignInput) GoString() string {
  8784  	return s.String()
  8785  }
  8786  
  8787  // Validate inspects the fields of the type to determine if they are valid.
  8788  func (s *DeleteCampaignInput) Validate() error {
  8789  	invalidParams := request.ErrInvalidParams{Context: "DeleteCampaignInput"}
  8790  	if s.CampaignArn == nil {
  8791  		invalidParams.Add(request.NewErrParamRequired("CampaignArn"))
  8792  	}
  8793  
  8794  	if invalidParams.Len() > 0 {
  8795  		return invalidParams
  8796  	}
  8797  	return nil
  8798  }
  8799  
  8800  // SetCampaignArn sets the CampaignArn field's value.
  8801  func (s *DeleteCampaignInput) SetCampaignArn(v string) *DeleteCampaignInput {
  8802  	s.CampaignArn = &v
  8803  	return s
  8804  }
  8805  
  8806  type DeleteCampaignOutput struct {
  8807  	_ struct{} `type:"structure"`
  8808  }
  8809  
  8810  // String returns the string representation.
  8811  //
  8812  // API parameter values that are decorated as "sensitive" in the API will not
  8813  // be included in the string output. The member name will be present, but the
  8814  // value will be replaced with "sensitive".
  8815  func (s DeleteCampaignOutput) String() string {
  8816  	return awsutil.Prettify(s)
  8817  }
  8818  
  8819  // GoString returns the string representation.
  8820  //
  8821  // API parameter values that are decorated as "sensitive" in the API will not
  8822  // be included in the string output. The member name will be present, but the
  8823  // value will be replaced with "sensitive".
  8824  func (s DeleteCampaignOutput) GoString() string {
  8825  	return s.String()
  8826  }
  8827  
  8828  type DeleteDatasetGroupInput struct {
  8829  	_ struct{} `type:"structure"`
  8830  
  8831  	// The ARN of the dataset group to delete.
  8832  	//
  8833  	// DatasetGroupArn is a required field
  8834  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string" required:"true"`
  8835  }
  8836  
  8837  // String returns the string representation.
  8838  //
  8839  // API parameter values that are decorated as "sensitive" in the API will not
  8840  // be included in the string output. The member name will be present, but the
  8841  // value will be replaced with "sensitive".
  8842  func (s DeleteDatasetGroupInput) String() string {
  8843  	return awsutil.Prettify(s)
  8844  }
  8845  
  8846  // GoString returns the string representation.
  8847  //
  8848  // API parameter values that are decorated as "sensitive" in the API will not
  8849  // be included in the string output. The member name will be present, but the
  8850  // value will be replaced with "sensitive".
  8851  func (s DeleteDatasetGroupInput) GoString() string {
  8852  	return s.String()
  8853  }
  8854  
  8855  // Validate inspects the fields of the type to determine if they are valid.
  8856  func (s *DeleteDatasetGroupInput) Validate() error {
  8857  	invalidParams := request.ErrInvalidParams{Context: "DeleteDatasetGroupInput"}
  8858  	if s.DatasetGroupArn == nil {
  8859  		invalidParams.Add(request.NewErrParamRequired("DatasetGroupArn"))
  8860  	}
  8861  
  8862  	if invalidParams.Len() > 0 {
  8863  		return invalidParams
  8864  	}
  8865  	return nil
  8866  }
  8867  
  8868  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  8869  func (s *DeleteDatasetGroupInput) SetDatasetGroupArn(v string) *DeleteDatasetGroupInput {
  8870  	s.DatasetGroupArn = &v
  8871  	return s
  8872  }
  8873  
  8874  type DeleteDatasetGroupOutput struct {
  8875  	_ struct{} `type:"structure"`
  8876  }
  8877  
  8878  // String returns the string representation.
  8879  //
  8880  // API parameter values that are decorated as "sensitive" in the API will not
  8881  // be included in the string output. The member name will be present, but the
  8882  // value will be replaced with "sensitive".
  8883  func (s DeleteDatasetGroupOutput) String() string {
  8884  	return awsutil.Prettify(s)
  8885  }
  8886  
  8887  // GoString returns the string representation.
  8888  //
  8889  // API parameter values that are decorated as "sensitive" in the API will not
  8890  // be included in the string output. The member name will be present, but the
  8891  // value will be replaced with "sensitive".
  8892  func (s DeleteDatasetGroupOutput) GoString() string {
  8893  	return s.String()
  8894  }
  8895  
  8896  type DeleteDatasetInput struct {
  8897  	_ struct{} `type:"structure"`
  8898  
  8899  	// The Amazon Resource Name (ARN) of the dataset to delete.
  8900  	//
  8901  	// DatasetArn is a required field
  8902  	DatasetArn *string `locationName:"datasetArn" type:"string" required:"true"`
  8903  }
  8904  
  8905  // String returns the string representation.
  8906  //
  8907  // API parameter values that are decorated as "sensitive" in the API will not
  8908  // be included in the string output. The member name will be present, but the
  8909  // value will be replaced with "sensitive".
  8910  func (s DeleteDatasetInput) String() string {
  8911  	return awsutil.Prettify(s)
  8912  }
  8913  
  8914  // GoString returns the string representation.
  8915  //
  8916  // API parameter values that are decorated as "sensitive" in the API will not
  8917  // be included in the string output. The member name will be present, but the
  8918  // value will be replaced with "sensitive".
  8919  func (s DeleteDatasetInput) GoString() string {
  8920  	return s.String()
  8921  }
  8922  
  8923  // Validate inspects the fields of the type to determine if they are valid.
  8924  func (s *DeleteDatasetInput) Validate() error {
  8925  	invalidParams := request.ErrInvalidParams{Context: "DeleteDatasetInput"}
  8926  	if s.DatasetArn == nil {
  8927  		invalidParams.Add(request.NewErrParamRequired("DatasetArn"))
  8928  	}
  8929  
  8930  	if invalidParams.Len() > 0 {
  8931  		return invalidParams
  8932  	}
  8933  	return nil
  8934  }
  8935  
  8936  // SetDatasetArn sets the DatasetArn field's value.
  8937  func (s *DeleteDatasetInput) SetDatasetArn(v string) *DeleteDatasetInput {
  8938  	s.DatasetArn = &v
  8939  	return s
  8940  }
  8941  
  8942  type DeleteDatasetOutput struct {
  8943  	_ struct{} `type:"structure"`
  8944  }
  8945  
  8946  // String returns the string representation.
  8947  //
  8948  // API parameter values that are decorated as "sensitive" in the API will not
  8949  // be included in the string output. The member name will be present, but the
  8950  // value will be replaced with "sensitive".
  8951  func (s DeleteDatasetOutput) String() string {
  8952  	return awsutil.Prettify(s)
  8953  }
  8954  
  8955  // GoString returns the string representation.
  8956  //
  8957  // API parameter values that are decorated as "sensitive" in the API will not
  8958  // be included in the string output. The member name will be present, but the
  8959  // value will be replaced with "sensitive".
  8960  func (s DeleteDatasetOutput) GoString() string {
  8961  	return s.String()
  8962  }
  8963  
  8964  type DeleteEventTrackerInput struct {
  8965  	_ struct{} `type:"structure"`
  8966  
  8967  	// The Amazon Resource Name (ARN) of the event tracker to delete.
  8968  	//
  8969  	// EventTrackerArn is a required field
  8970  	EventTrackerArn *string `locationName:"eventTrackerArn" type:"string" required:"true"`
  8971  }
  8972  
  8973  // String returns the string representation.
  8974  //
  8975  // API parameter values that are decorated as "sensitive" in the API will not
  8976  // be included in the string output. The member name will be present, but the
  8977  // value will be replaced with "sensitive".
  8978  func (s DeleteEventTrackerInput) String() string {
  8979  	return awsutil.Prettify(s)
  8980  }
  8981  
  8982  // GoString 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 DeleteEventTrackerInput) GoString() string {
  8988  	return s.String()
  8989  }
  8990  
  8991  // Validate inspects the fields of the type to determine if they are valid.
  8992  func (s *DeleteEventTrackerInput) Validate() error {
  8993  	invalidParams := request.ErrInvalidParams{Context: "DeleteEventTrackerInput"}
  8994  	if s.EventTrackerArn == nil {
  8995  		invalidParams.Add(request.NewErrParamRequired("EventTrackerArn"))
  8996  	}
  8997  
  8998  	if invalidParams.Len() > 0 {
  8999  		return invalidParams
  9000  	}
  9001  	return nil
  9002  }
  9003  
  9004  // SetEventTrackerArn sets the EventTrackerArn field's value.
  9005  func (s *DeleteEventTrackerInput) SetEventTrackerArn(v string) *DeleteEventTrackerInput {
  9006  	s.EventTrackerArn = &v
  9007  	return s
  9008  }
  9009  
  9010  type DeleteEventTrackerOutput struct {
  9011  	_ struct{} `type:"structure"`
  9012  }
  9013  
  9014  // String returns the string representation.
  9015  //
  9016  // API parameter values that are decorated as "sensitive" in the API will not
  9017  // be included in the string output. The member name will be present, but the
  9018  // value will be replaced with "sensitive".
  9019  func (s DeleteEventTrackerOutput) String() string {
  9020  	return awsutil.Prettify(s)
  9021  }
  9022  
  9023  // GoString returns the string representation.
  9024  //
  9025  // API parameter values that are decorated as "sensitive" in the API will not
  9026  // be included in the string output. The member name will be present, but the
  9027  // value will be replaced with "sensitive".
  9028  func (s DeleteEventTrackerOutput) GoString() string {
  9029  	return s.String()
  9030  }
  9031  
  9032  type DeleteFilterInput struct {
  9033  	_ struct{} `type:"structure"`
  9034  
  9035  	// The ARN of the filter to delete.
  9036  	//
  9037  	// FilterArn is a required field
  9038  	FilterArn *string `locationName:"filterArn" type:"string" required:"true"`
  9039  }
  9040  
  9041  // String returns the string representation.
  9042  //
  9043  // API parameter values that are decorated as "sensitive" in the API will not
  9044  // be included in the string output. The member name will be present, but the
  9045  // value will be replaced with "sensitive".
  9046  func (s DeleteFilterInput) String() string {
  9047  	return awsutil.Prettify(s)
  9048  }
  9049  
  9050  // GoString returns the string representation.
  9051  //
  9052  // API parameter values that are decorated as "sensitive" in the API will not
  9053  // be included in the string output. The member name will be present, but the
  9054  // value will be replaced with "sensitive".
  9055  func (s DeleteFilterInput) GoString() string {
  9056  	return s.String()
  9057  }
  9058  
  9059  // Validate inspects the fields of the type to determine if they are valid.
  9060  func (s *DeleteFilterInput) Validate() error {
  9061  	invalidParams := request.ErrInvalidParams{Context: "DeleteFilterInput"}
  9062  	if s.FilterArn == nil {
  9063  		invalidParams.Add(request.NewErrParamRequired("FilterArn"))
  9064  	}
  9065  
  9066  	if invalidParams.Len() > 0 {
  9067  		return invalidParams
  9068  	}
  9069  	return nil
  9070  }
  9071  
  9072  // SetFilterArn sets the FilterArn field's value.
  9073  func (s *DeleteFilterInput) SetFilterArn(v string) *DeleteFilterInput {
  9074  	s.FilterArn = &v
  9075  	return s
  9076  }
  9077  
  9078  type DeleteFilterOutput struct {
  9079  	_ struct{} `type:"structure"`
  9080  }
  9081  
  9082  // String returns the string representation.
  9083  //
  9084  // API parameter values that are decorated as "sensitive" in the API will not
  9085  // be included in the string output. The member name will be present, but the
  9086  // value will be replaced with "sensitive".
  9087  func (s DeleteFilterOutput) String() string {
  9088  	return awsutil.Prettify(s)
  9089  }
  9090  
  9091  // GoString returns the string representation.
  9092  //
  9093  // API parameter values that are decorated as "sensitive" in the API will not
  9094  // be included in the string output. The member name will be present, but the
  9095  // value will be replaced with "sensitive".
  9096  func (s DeleteFilterOutput) GoString() string {
  9097  	return s.String()
  9098  }
  9099  
  9100  type DeleteSchemaInput struct {
  9101  	_ struct{} `type:"structure"`
  9102  
  9103  	// The Amazon Resource Name (ARN) of the schema to delete.
  9104  	//
  9105  	// SchemaArn is a required field
  9106  	SchemaArn *string `locationName:"schemaArn" type:"string" required:"true"`
  9107  }
  9108  
  9109  // String returns the string representation.
  9110  //
  9111  // API parameter values that are decorated as "sensitive" in the API will not
  9112  // be included in the string output. The member name will be present, but the
  9113  // value will be replaced with "sensitive".
  9114  func (s DeleteSchemaInput) String() string {
  9115  	return awsutil.Prettify(s)
  9116  }
  9117  
  9118  // GoString returns the string representation.
  9119  //
  9120  // API parameter values that are decorated as "sensitive" in the API will not
  9121  // be included in the string output. The member name will be present, but the
  9122  // value will be replaced with "sensitive".
  9123  func (s DeleteSchemaInput) GoString() string {
  9124  	return s.String()
  9125  }
  9126  
  9127  // Validate inspects the fields of the type to determine if they are valid.
  9128  func (s *DeleteSchemaInput) Validate() error {
  9129  	invalidParams := request.ErrInvalidParams{Context: "DeleteSchemaInput"}
  9130  	if s.SchemaArn == nil {
  9131  		invalidParams.Add(request.NewErrParamRequired("SchemaArn"))
  9132  	}
  9133  
  9134  	if invalidParams.Len() > 0 {
  9135  		return invalidParams
  9136  	}
  9137  	return nil
  9138  }
  9139  
  9140  // SetSchemaArn sets the SchemaArn field's value.
  9141  func (s *DeleteSchemaInput) SetSchemaArn(v string) *DeleteSchemaInput {
  9142  	s.SchemaArn = &v
  9143  	return s
  9144  }
  9145  
  9146  type DeleteSchemaOutput struct {
  9147  	_ struct{} `type:"structure"`
  9148  }
  9149  
  9150  // String returns the string representation.
  9151  //
  9152  // API parameter values that are decorated as "sensitive" in the API will not
  9153  // be included in the string output. The member name will be present, but the
  9154  // value will be replaced with "sensitive".
  9155  func (s DeleteSchemaOutput) String() string {
  9156  	return awsutil.Prettify(s)
  9157  }
  9158  
  9159  // GoString returns the string representation.
  9160  //
  9161  // API parameter values that are decorated as "sensitive" in the API will not
  9162  // be included in the string output. The member name will be present, but the
  9163  // value will be replaced with "sensitive".
  9164  func (s DeleteSchemaOutput) GoString() string {
  9165  	return s.String()
  9166  }
  9167  
  9168  type DeleteSolutionInput struct {
  9169  	_ struct{} `type:"structure"`
  9170  
  9171  	// The ARN of the solution to delete.
  9172  	//
  9173  	// SolutionArn is a required field
  9174  	SolutionArn *string `locationName:"solutionArn" type:"string" required:"true"`
  9175  }
  9176  
  9177  // String returns the string representation.
  9178  //
  9179  // API parameter values that are decorated as "sensitive" in the API will not
  9180  // be included in the string output. The member name will be present, but the
  9181  // value will be replaced with "sensitive".
  9182  func (s DeleteSolutionInput) String() string {
  9183  	return awsutil.Prettify(s)
  9184  }
  9185  
  9186  // GoString returns the string representation.
  9187  //
  9188  // API parameter values that are decorated as "sensitive" in the API will not
  9189  // be included in the string output. The member name will be present, but the
  9190  // value will be replaced with "sensitive".
  9191  func (s DeleteSolutionInput) GoString() string {
  9192  	return s.String()
  9193  }
  9194  
  9195  // Validate inspects the fields of the type to determine if they are valid.
  9196  func (s *DeleteSolutionInput) Validate() error {
  9197  	invalidParams := request.ErrInvalidParams{Context: "DeleteSolutionInput"}
  9198  	if s.SolutionArn == nil {
  9199  		invalidParams.Add(request.NewErrParamRequired("SolutionArn"))
  9200  	}
  9201  
  9202  	if invalidParams.Len() > 0 {
  9203  		return invalidParams
  9204  	}
  9205  	return nil
  9206  }
  9207  
  9208  // SetSolutionArn sets the SolutionArn field's value.
  9209  func (s *DeleteSolutionInput) SetSolutionArn(v string) *DeleteSolutionInput {
  9210  	s.SolutionArn = &v
  9211  	return s
  9212  }
  9213  
  9214  type DeleteSolutionOutput struct {
  9215  	_ struct{} `type:"structure"`
  9216  }
  9217  
  9218  // String returns the string representation.
  9219  //
  9220  // API parameter values that are decorated as "sensitive" in the API will not
  9221  // be included in the string output. The member name will be present, but the
  9222  // value will be replaced with "sensitive".
  9223  func (s DeleteSolutionOutput) String() string {
  9224  	return awsutil.Prettify(s)
  9225  }
  9226  
  9227  // GoString 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 DeleteSolutionOutput) GoString() string {
  9233  	return s.String()
  9234  }
  9235  
  9236  type DescribeAlgorithmInput struct {
  9237  	_ struct{} `type:"structure"`
  9238  
  9239  	// The Amazon Resource Name (ARN) of the algorithm to describe.
  9240  	//
  9241  	// AlgorithmArn is a required field
  9242  	AlgorithmArn *string `locationName:"algorithmArn" type:"string" required:"true"`
  9243  }
  9244  
  9245  // String returns the string representation.
  9246  //
  9247  // API parameter values that are decorated as "sensitive" in the API will not
  9248  // be included in the string output. The member name will be present, but the
  9249  // value will be replaced with "sensitive".
  9250  func (s DescribeAlgorithmInput) String() string {
  9251  	return awsutil.Prettify(s)
  9252  }
  9253  
  9254  // GoString returns the string representation.
  9255  //
  9256  // API parameter values that are decorated as "sensitive" in the API will not
  9257  // be included in the string output. The member name will be present, but the
  9258  // value will be replaced with "sensitive".
  9259  func (s DescribeAlgorithmInput) GoString() string {
  9260  	return s.String()
  9261  }
  9262  
  9263  // Validate inspects the fields of the type to determine if they are valid.
  9264  func (s *DescribeAlgorithmInput) Validate() error {
  9265  	invalidParams := request.ErrInvalidParams{Context: "DescribeAlgorithmInput"}
  9266  	if s.AlgorithmArn == nil {
  9267  		invalidParams.Add(request.NewErrParamRequired("AlgorithmArn"))
  9268  	}
  9269  
  9270  	if invalidParams.Len() > 0 {
  9271  		return invalidParams
  9272  	}
  9273  	return nil
  9274  }
  9275  
  9276  // SetAlgorithmArn sets the AlgorithmArn field's value.
  9277  func (s *DescribeAlgorithmInput) SetAlgorithmArn(v string) *DescribeAlgorithmInput {
  9278  	s.AlgorithmArn = &v
  9279  	return s
  9280  }
  9281  
  9282  type DescribeAlgorithmOutput struct {
  9283  	_ struct{} `type:"structure"`
  9284  
  9285  	// A listing of the properties of the algorithm.
  9286  	Algorithm *Algorithm `locationName:"algorithm" type:"structure"`
  9287  }
  9288  
  9289  // String returns the string representation.
  9290  //
  9291  // API parameter values that are decorated as "sensitive" in the API will not
  9292  // be included in the string output. The member name will be present, but the
  9293  // value will be replaced with "sensitive".
  9294  func (s DescribeAlgorithmOutput) String() string {
  9295  	return awsutil.Prettify(s)
  9296  }
  9297  
  9298  // GoString returns the string representation.
  9299  //
  9300  // API parameter values that are decorated as "sensitive" in the API will not
  9301  // be included in the string output. The member name will be present, but the
  9302  // value will be replaced with "sensitive".
  9303  func (s DescribeAlgorithmOutput) GoString() string {
  9304  	return s.String()
  9305  }
  9306  
  9307  // SetAlgorithm sets the Algorithm field's value.
  9308  func (s *DescribeAlgorithmOutput) SetAlgorithm(v *Algorithm) *DescribeAlgorithmOutput {
  9309  	s.Algorithm = v
  9310  	return s
  9311  }
  9312  
  9313  type DescribeBatchInferenceJobInput struct {
  9314  	_ struct{} `type:"structure"`
  9315  
  9316  	// The ARN of the batch inference job to describe.
  9317  	//
  9318  	// BatchInferenceJobArn is a required field
  9319  	BatchInferenceJobArn *string `locationName:"batchInferenceJobArn" type:"string" required:"true"`
  9320  }
  9321  
  9322  // String returns the string representation.
  9323  //
  9324  // API parameter values that are decorated as "sensitive" in the API will not
  9325  // be included in the string output. The member name will be present, but the
  9326  // value will be replaced with "sensitive".
  9327  func (s DescribeBatchInferenceJobInput) String() string {
  9328  	return awsutil.Prettify(s)
  9329  }
  9330  
  9331  // GoString returns the string representation.
  9332  //
  9333  // API parameter values that are decorated as "sensitive" in the API will not
  9334  // be included in the string output. The member name will be present, but the
  9335  // value will be replaced with "sensitive".
  9336  func (s DescribeBatchInferenceJobInput) GoString() string {
  9337  	return s.String()
  9338  }
  9339  
  9340  // Validate inspects the fields of the type to determine if they are valid.
  9341  func (s *DescribeBatchInferenceJobInput) Validate() error {
  9342  	invalidParams := request.ErrInvalidParams{Context: "DescribeBatchInferenceJobInput"}
  9343  	if s.BatchInferenceJobArn == nil {
  9344  		invalidParams.Add(request.NewErrParamRequired("BatchInferenceJobArn"))
  9345  	}
  9346  
  9347  	if invalidParams.Len() > 0 {
  9348  		return invalidParams
  9349  	}
  9350  	return nil
  9351  }
  9352  
  9353  // SetBatchInferenceJobArn sets the BatchInferenceJobArn field's value.
  9354  func (s *DescribeBatchInferenceJobInput) SetBatchInferenceJobArn(v string) *DescribeBatchInferenceJobInput {
  9355  	s.BatchInferenceJobArn = &v
  9356  	return s
  9357  }
  9358  
  9359  type DescribeBatchInferenceJobOutput struct {
  9360  	_ struct{} `type:"structure"`
  9361  
  9362  	// Information on the specified batch inference job.
  9363  	BatchInferenceJob *BatchInferenceJob `locationName:"batchInferenceJob" type:"structure"`
  9364  }
  9365  
  9366  // String returns the string representation.
  9367  //
  9368  // API parameter values that are decorated as "sensitive" in the API will not
  9369  // be included in the string output. The member name will be present, but the
  9370  // value will be replaced with "sensitive".
  9371  func (s DescribeBatchInferenceJobOutput) String() string {
  9372  	return awsutil.Prettify(s)
  9373  }
  9374  
  9375  // GoString returns the string representation.
  9376  //
  9377  // API parameter values that are decorated as "sensitive" in the API will not
  9378  // be included in the string output. The member name will be present, but the
  9379  // value will be replaced with "sensitive".
  9380  func (s DescribeBatchInferenceJobOutput) GoString() string {
  9381  	return s.String()
  9382  }
  9383  
  9384  // SetBatchInferenceJob sets the BatchInferenceJob field's value.
  9385  func (s *DescribeBatchInferenceJobOutput) SetBatchInferenceJob(v *BatchInferenceJob) *DescribeBatchInferenceJobOutput {
  9386  	s.BatchInferenceJob = v
  9387  	return s
  9388  }
  9389  
  9390  type DescribeCampaignInput struct {
  9391  	_ struct{} `type:"structure"`
  9392  
  9393  	// The Amazon Resource Name (ARN) of the campaign.
  9394  	//
  9395  	// CampaignArn is a required field
  9396  	CampaignArn *string `locationName:"campaignArn" type:"string" required:"true"`
  9397  }
  9398  
  9399  // String returns the string representation.
  9400  //
  9401  // API parameter values that are decorated as "sensitive" in the API will not
  9402  // be included in the string output. The member name will be present, but the
  9403  // value will be replaced with "sensitive".
  9404  func (s DescribeCampaignInput) String() string {
  9405  	return awsutil.Prettify(s)
  9406  }
  9407  
  9408  // GoString returns the string representation.
  9409  //
  9410  // API parameter values that are decorated as "sensitive" in the API will not
  9411  // be included in the string output. The member name will be present, but the
  9412  // value will be replaced with "sensitive".
  9413  func (s DescribeCampaignInput) GoString() string {
  9414  	return s.String()
  9415  }
  9416  
  9417  // Validate inspects the fields of the type to determine if they are valid.
  9418  func (s *DescribeCampaignInput) Validate() error {
  9419  	invalidParams := request.ErrInvalidParams{Context: "DescribeCampaignInput"}
  9420  	if s.CampaignArn == nil {
  9421  		invalidParams.Add(request.NewErrParamRequired("CampaignArn"))
  9422  	}
  9423  
  9424  	if invalidParams.Len() > 0 {
  9425  		return invalidParams
  9426  	}
  9427  	return nil
  9428  }
  9429  
  9430  // SetCampaignArn sets the CampaignArn field's value.
  9431  func (s *DescribeCampaignInput) SetCampaignArn(v string) *DescribeCampaignInput {
  9432  	s.CampaignArn = &v
  9433  	return s
  9434  }
  9435  
  9436  type DescribeCampaignOutput struct {
  9437  	_ struct{} `type:"structure"`
  9438  
  9439  	// The properties of the campaign.
  9440  	Campaign *Campaign `locationName:"campaign" type:"structure"`
  9441  }
  9442  
  9443  // String returns the string representation.
  9444  //
  9445  // API parameter values that are decorated as "sensitive" in the API will not
  9446  // be included in the string output. The member name will be present, but the
  9447  // value will be replaced with "sensitive".
  9448  func (s DescribeCampaignOutput) String() string {
  9449  	return awsutil.Prettify(s)
  9450  }
  9451  
  9452  // GoString returns the string representation.
  9453  //
  9454  // API parameter values that are decorated as "sensitive" in the API will not
  9455  // be included in the string output. The member name will be present, but the
  9456  // value will be replaced with "sensitive".
  9457  func (s DescribeCampaignOutput) GoString() string {
  9458  	return s.String()
  9459  }
  9460  
  9461  // SetCampaign sets the Campaign field's value.
  9462  func (s *DescribeCampaignOutput) SetCampaign(v *Campaign) *DescribeCampaignOutput {
  9463  	s.Campaign = v
  9464  	return s
  9465  }
  9466  
  9467  type DescribeDatasetExportJobInput struct {
  9468  	_ struct{} `type:"structure"`
  9469  
  9470  	// The Amazon Resource Name (ARN) of the dataset export job to describe.
  9471  	//
  9472  	// DatasetExportJobArn is a required field
  9473  	DatasetExportJobArn *string `locationName:"datasetExportJobArn" type:"string" required:"true"`
  9474  }
  9475  
  9476  // String returns the string representation.
  9477  //
  9478  // API parameter values that are decorated as "sensitive" in the API will not
  9479  // be included in the string output. The member name will be present, but the
  9480  // value will be replaced with "sensitive".
  9481  func (s DescribeDatasetExportJobInput) String() string {
  9482  	return awsutil.Prettify(s)
  9483  }
  9484  
  9485  // GoString returns the string representation.
  9486  //
  9487  // API parameter values that are decorated as "sensitive" in the API will not
  9488  // be included in the string output. The member name will be present, but the
  9489  // value will be replaced with "sensitive".
  9490  func (s DescribeDatasetExportJobInput) GoString() string {
  9491  	return s.String()
  9492  }
  9493  
  9494  // Validate inspects the fields of the type to determine if they are valid.
  9495  func (s *DescribeDatasetExportJobInput) Validate() error {
  9496  	invalidParams := request.ErrInvalidParams{Context: "DescribeDatasetExportJobInput"}
  9497  	if s.DatasetExportJobArn == nil {
  9498  		invalidParams.Add(request.NewErrParamRequired("DatasetExportJobArn"))
  9499  	}
  9500  
  9501  	if invalidParams.Len() > 0 {
  9502  		return invalidParams
  9503  	}
  9504  	return nil
  9505  }
  9506  
  9507  // SetDatasetExportJobArn sets the DatasetExportJobArn field's value.
  9508  func (s *DescribeDatasetExportJobInput) SetDatasetExportJobArn(v string) *DescribeDatasetExportJobInput {
  9509  	s.DatasetExportJobArn = &v
  9510  	return s
  9511  }
  9512  
  9513  type DescribeDatasetExportJobOutput struct {
  9514  	_ struct{} `type:"structure"`
  9515  
  9516  	// Information about the dataset export job, including the status.
  9517  	//
  9518  	// The status is one of the following values:
  9519  	//
  9520  	//    * CREATE PENDING
  9521  	//
  9522  	//    * CREATE IN_PROGRESS
  9523  	//
  9524  	//    * ACTIVE
  9525  	//
  9526  	//    * CREATE FAILED
  9527  	DatasetExportJob *DatasetExportJob `locationName:"datasetExportJob" type:"structure"`
  9528  }
  9529  
  9530  // String returns the string representation.
  9531  //
  9532  // API parameter values that are decorated as "sensitive" in the API will not
  9533  // be included in the string output. The member name will be present, but the
  9534  // value will be replaced with "sensitive".
  9535  func (s DescribeDatasetExportJobOutput) String() string {
  9536  	return awsutil.Prettify(s)
  9537  }
  9538  
  9539  // GoString returns the string representation.
  9540  //
  9541  // API parameter values that are decorated as "sensitive" in the API will not
  9542  // be included in the string output. The member name will be present, but the
  9543  // value will be replaced with "sensitive".
  9544  func (s DescribeDatasetExportJobOutput) GoString() string {
  9545  	return s.String()
  9546  }
  9547  
  9548  // SetDatasetExportJob sets the DatasetExportJob field's value.
  9549  func (s *DescribeDatasetExportJobOutput) SetDatasetExportJob(v *DatasetExportJob) *DescribeDatasetExportJobOutput {
  9550  	s.DatasetExportJob = v
  9551  	return s
  9552  }
  9553  
  9554  type DescribeDatasetGroupInput struct {
  9555  	_ struct{} `type:"structure"`
  9556  
  9557  	// The Amazon Resource Name (ARN) of the dataset group to describe.
  9558  	//
  9559  	// DatasetGroupArn is a required field
  9560  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string" required:"true"`
  9561  }
  9562  
  9563  // String returns the string representation.
  9564  //
  9565  // API parameter values that are decorated as "sensitive" in the API will not
  9566  // be included in the string output. The member name will be present, but the
  9567  // value will be replaced with "sensitive".
  9568  func (s DescribeDatasetGroupInput) String() string {
  9569  	return awsutil.Prettify(s)
  9570  }
  9571  
  9572  // GoString returns the string representation.
  9573  //
  9574  // API parameter values that are decorated as "sensitive" in the API will not
  9575  // be included in the string output. The member name will be present, but the
  9576  // value will be replaced with "sensitive".
  9577  func (s DescribeDatasetGroupInput) GoString() string {
  9578  	return s.String()
  9579  }
  9580  
  9581  // Validate inspects the fields of the type to determine if they are valid.
  9582  func (s *DescribeDatasetGroupInput) Validate() error {
  9583  	invalidParams := request.ErrInvalidParams{Context: "DescribeDatasetGroupInput"}
  9584  	if s.DatasetGroupArn == nil {
  9585  		invalidParams.Add(request.NewErrParamRequired("DatasetGroupArn"))
  9586  	}
  9587  
  9588  	if invalidParams.Len() > 0 {
  9589  		return invalidParams
  9590  	}
  9591  	return nil
  9592  }
  9593  
  9594  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
  9595  func (s *DescribeDatasetGroupInput) SetDatasetGroupArn(v string) *DescribeDatasetGroupInput {
  9596  	s.DatasetGroupArn = &v
  9597  	return s
  9598  }
  9599  
  9600  type DescribeDatasetGroupOutput struct {
  9601  	_ struct{} `type:"structure"`
  9602  
  9603  	// A listing of the dataset group's properties.
  9604  	DatasetGroup *DatasetGroup `locationName:"datasetGroup" type:"structure"`
  9605  }
  9606  
  9607  // String returns the string representation.
  9608  //
  9609  // API parameter values that are decorated as "sensitive" in the API will not
  9610  // be included in the string output. The member name will be present, but the
  9611  // value will be replaced with "sensitive".
  9612  func (s DescribeDatasetGroupOutput) String() string {
  9613  	return awsutil.Prettify(s)
  9614  }
  9615  
  9616  // GoString returns the string representation.
  9617  //
  9618  // API parameter values that are decorated as "sensitive" in the API will not
  9619  // be included in the string output. The member name will be present, but the
  9620  // value will be replaced with "sensitive".
  9621  func (s DescribeDatasetGroupOutput) GoString() string {
  9622  	return s.String()
  9623  }
  9624  
  9625  // SetDatasetGroup sets the DatasetGroup field's value.
  9626  func (s *DescribeDatasetGroupOutput) SetDatasetGroup(v *DatasetGroup) *DescribeDatasetGroupOutput {
  9627  	s.DatasetGroup = v
  9628  	return s
  9629  }
  9630  
  9631  type DescribeDatasetImportJobInput struct {
  9632  	_ struct{} `type:"structure"`
  9633  
  9634  	// The Amazon Resource Name (ARN) of the dataset import job to describe.
  9635  	//
  9636  	// DatasetImportJobArn is a required field
  9637  	DatasetImportJobArn *string `locationName:"datasetImportJobArn" type:"string" required:"true"`
  9638  }
  9639  
  9640  // String returns the string representation.
  9641  //
  9642  // API parameter values that are decorated as "sensitive" in the API will not
  9643  // be included in the string output. The member name will be present, but the
  9644  // value will be replaced with "sensitive".
  9645  func (s DescribeDatasetImportJobInput) String() string {
  9646  	return awsutil.Prettify(s)
  9647  }
  9648  
  9649  // GoString returns the string representation.
  9650  //
  9651  // API parameter values that are decorated as "sensitive" in the API will not
  9652  // be included in the string output. The member name will be present, but the
  9653  // value will be replaced with "sensitive".
  9654  func (s DescribeDatasetImportJobInput) GoString() string {
  9655  	return s.String()
  9656  }
  9657  
  9658  // Validate inspects the fields of the type to determine if they are valid.
  9659  func (s *DescribeDatasetImportJobInput) Validate() error {
  9660  	invalidParams := request.ErrInvalidParams{Context: "DescribeDatasetImportJobInput"}
  9661  	if s.DatasetImportJobArn == nil {
  9662  		invalidParams.Add(request.NewErrParamRequired("DatasetImportJobArn"))
  9663  	}
  9664  
  9665  	if invalidParams.Len() > 0 {
  9666  		return invalidParams
  9667  	}
  9668  	return nil
  9669  }
  9670  
  9671  // SetDatasetImportJobArn sets the DatasetImportJobArn field's value.
  9672  func (s *DescribeDatasetImportJobInput) SetDatasetImportJobArn(v string) *DescribeDatasetImportJobInput {
  9673  	s.DatasetImportJobArn = &v
  9674  	return s
  9675  }
  9676  
  9677  type DescribeDatasetImportJobOutput struct {
  9678  	_ struct{} `type:"structure"`
  9679  
  9680  	// Information about the dataset import job, including the status.
  9681  	//
  9682  	// The status is one of the following values:
  9683  	//
  9684  	//    * CREATE PENDING
  9685  	//
  9686  	//    * CREATE IN_PROGRESS
  9687  	//
  9688  	//    * ACTIVE
  9689  	//
  9690  	//    * CREATE FAILED
  9691  	DatasetImportJob *DatasetImportJob `locationName:"datasetImportJob" type:"structure"`
  9692  }
  9693  
  9694  // String returns the string representation.
  9695  //
  9696  // API parameter values that are decorated as "sensitive" in the API will not
  9697  // be included in the string output. The member name will be present, but the
  9698  // value will be replaced with "sensitive".
  9699  func (s DescribeDatasetImportJobOutput) String() string {
  9700  	return awsutil.Prettify(s)
  9701  }
  9702  
  9703  // GoString returns the string representation.
  9704  //
  9705  // API parameter values that are decorated as "sensitive" in the API will not
  9706  // be included in the string output. The member name will be present, but the
  9707  // value will be replaced with "sensitive".
  9708  func (s DescribeDatasetImportJobOutput) GoString() string {
  9709  	return s.String()
  9710  }
  9711  
  9712  // SetDatasetImportJob sets the DatasetImportJob field's value.
  9713  func (s *DescribeDatasetImportJobOutput) SetDatasetImportJob(v *DatasetImportJob) *DescribeDatasetImportJobOutput {
  9714  	s.DatasetImportJob = v
  9715  	return s
  9716  }
  9717  
  9718  type DescribeDatasetInput struct {
  9719  	_ struct{} `type:"structure"`
  9720  
  9721  	// The Amazon Resource Name (ARN) of the dataset to describe.
  9722  	//
  9723  	// DatasetArn is a required field
  9724  	DatasetArn *string `locationName:"datasetArn" type:"string" required:"true"`
  9725  }
  9726  
  9727  // String 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 DescribeDatasetInput) String() string {
  9733  	return awsutil.Prettify(s)
  9734  }
  9735  
  9736  // GoString returns the string representation.
  9737  //
  9738  // API parameter values that are decorated as "sensitive" in the API will not
  9739  // be included in the string output. The member name will be present, but the
  9740  // value will be replaced with "sensitive".
  9741  func (s DescribeDatasetInput) GoString() string {
  9742  	return s.String()
  9743  }
  9744  
  9745  // Validate inspects the fields of the type to determine if they are valid.
  9746  func (s *DescribeDatasetInput) Validate() error {
  9747  	invalidParams := request.ErrInvalidParams{Context: "DescribeDatasetInput"}
  9748  	if s.DatasetArn == nil {
  9749  		invalidParams.Add(request.NewErrParamRequired("DatasetArn"))
  9750  	}
  9751  
  9752  	if invalidParams.Len() > 0 {
  9753  		return invalidParams
  9754  	}
  9755  	return nil
  9756  }
  9757  
  9758  // SetDatasetArn sets the DatasetArn field's value.
  9759  func (s *DescribeDatasetInput) SetDatasetArn(v string) *DescribeDatasetInput {
  9760  	s.DatasetArn = &v
  9761  	return s
  9762  }
  9763  
  9764  type DescribeDatasetOutput struct {
  9765  	_ struct{} `type:"structure"`
  9766  
  9767  	// A listing of the dataset's properties.
  9768  	Dataset *Dataset `locationName:"dataset" type:"structure"`
  9769  }
  9770  
  9771  // String returns the string representation.
  9772  //
  9773  // API parameter values that are decorated as "sensitive" in the API will not
  9774  // be included in the string output. The member name will be present, but the
  9775  // value will be replaced with "sensitive".
  9776  func (s DescribeDatasetOutput) String() string {
  9777  	return awsutil.Prettify(s)
  9778  }
  9779  
  9780  // GoString returns the string representation.
  9781  //
  9782  // API parameter values that are decorated as "sensitive" in the API will not
  9783  // be included in the string output. The member name will be present, but the
  9784  // value will be replaced with "sensitive".
  9785  func (s DescribeDatasetOutput) GoString() string {
  9786  	return s.String()
  9787  }
  9788  
  9789  // SetDataset sets the Dataset field's value.
  9790  func (s *DescribeDatasetOutput) SetDataset(v *Dataset) *DescribeDatasetOutput {
  9791  	s.Dataset = v
  9792  	return s
  9793  }
  9794  
  9795  type DescribeEventTrackerInput struct {
  9796  	_ struct{} `type:"structure"`
  9797  
  9798  	// The Amazon Resource Name (ARN) of the event tracker to describe.
  9799  	//
  9800  	// EventTrackerArn is a required field
  9801  	EventTrackerArn *string `locationName:"eventTrackerArn" type:"string" required:"true"`
  9802  }
  9803  
  9804  // String returns the string representation.
  9805  //
  9806  // API parameter values that are decorated as "sensitive" in the API will not
  9807  // be included in the string output. The member name will be present, but the
  9808  // value will be replaced with "sensitive".
  9809  func (s DescribeEventTrackerInput) String() string {
  9810  	return awsutil.Prettify(s)
  9811  }
  9812  
  9813  // GoString returns the string representation.
  9814  //
  9815  // API parameter values that are decorated as "sensitive" in the API will not
  9816  // be included in the string output. The member name will be present, but the
  9817  // value will be replaced with "sensitive".
  9818  func (s DescribeEventTrackerInput) GoString() string {
  9819  	return s.String()
  9820  }
  9821  
  9822  // Validate inspects the fields of the type to determine if they are valid.
  9823  func (s *DescribeEventTrackerInput) Validate() error {
  9824  	invalidParams := request.ErrInvalidParams{Context: "DescribeEventTrackerInput"}
  9825  	if s.EventTrackerArn == nil {
  9826  		invalidParams.Add(request.NewErrParamRequired("EventTrackerArn"))
  9827  	}
  9828  
  9829  	if invalidParams.Len() > 0 {
  9830  		return invalidParams
  9831  	}
  9832  	return nil
  9833  }
  9834  
  9835  // SetEventTrackerArn sets the EventTrackerArn field's value.
  9836  func (s *DescribeEventTrackerInput) SetEventTrackerArn(v string) *DescribeEventTrackerInput {
  9837  	s.EventTrackerArn = &v
  9838  	return s
  9839  }
  9840  
  9841  type DescribeEventTrackerOutput struct {
  9842  	_ struct{} `type:"structure"`
  9843  
  9844  	// An object that describes the event tracker.
  9845  	EventTracker *EventTracker `locationName:"eventTracker" type:"structure"`
  9846  }
  9847  
  9848  // String returns the string representation.
  9849  //
  9850  // API parameter values that are decorated as "sensitive" in the API will not
  9851  // be included in the string output. The member name will be present, but the
  9852  // value will be replaced with "sensitive".
  9853  func (s DescribeEventTrackerOutput) String() string {
  9854  	return awsutil.Prettify(s)
  9855  }
  9856  
  9857  // GoString returns the string representation.
  9858  //
  9859  // API parameter values that are decorated as "sensitive" in the API will not
  9860  // be included in the string output. The member name will be present, but the
  9861  // value will be replaced with "sensitive".
  9862  func (s DescribeEventTrackerOutput) GoString() string {
  9863  	return s.String()
  9864  }
  9865  
  9866  // SetEventTracker sets the EventTracker field's value.
  9867  func (s *DescribeEventTrackerOutput) SetEventTracker(v *EventTracker) *DescribeEventTrackerOutput {
  9868  	s.EventTracker = v
  9869  	return s
  9870  }
  9871  
  9872  type DescribeFeatureTransformationInput struct {
  9873  	_ struct{} `type:"structure"`
  9874  
  9875  	// The Amazon Resource Name (ARN) of the feature transformation to describe.
  9876  	//
  9877  	// FeatureTransformationArn is a required field
  9878  	FeatureTransformationArn *string `locationName:"featureTransformationArn" type:"string" required:"true"`
  9879  }
  9880  
  9881  // String returns the string representation.
  9882  //
  9883  // API parameter values that are decorated as "sensitive" in the API will not
  9884  // be included in the string output. The member name will be present, but the
  9885  // value will be replaced with "sensitive".
  9886  func (s DescribeFeatureTransformationInput) String() string {
  9887  	return awsutil.Prettify(s)
  9888  }
  9889  
  9890  // GoString returns the string representation.
  9891  //
  9892  // API parameter values that are decorated as "sensitive" in the API will not
  9893  // be included in the string output. The member name will be present, but the
  9894  // value will be replaced with "sensitive".
  9895  func (s DescribeFeatureTransformationInput) GoString() string {
  9896  	return s.String()
  9897  }
  9898  
  9899  // Validate inspects the fields of the type to determine if they are valid.
  9900  func (s *DescribeFeatureTransformationInput) Validate() error {
  9901  	invalidParams := request.ErrInvalidParams{Context: "DescribeFeatureTransformationInput"}
  9902  	if s.FeatureTransformationArn == nil {
  9903  		invalidParams.Add(request.NewErrParamRequired("FeatureTransformationArn"))
  9904  	}
  9905  
  9906  	if invalidParams.Len() > 0 {
  9907  		return invalidParams
  9908  	}
  9909  	return nil
  9910  }
  9911  
  9912  // SetFeatureTransformationArn sets the FeatureTransformationArn field's value.
  9913  func (s *DescribeFeatureTransformationInput) SetFeatureTransformationArn(v string) *DescribeFeatureTransformationInput {
  9914  	s.FeatureTransformationArn = &v
  9915  	return s
  9916  }
  9917  
  9918  type DescribeFeatureTransformationOutput struct {
  9919  	_ struct{} `type:"structure"`
  9920  
  9921  	// A listing of the FeatureTransformation properties.
  9922  	FeatureTransformation *FeatureTransformation `locationName:"featureTransformation" type:"structure"`
  9923  }
  9924  
  9925  // String returns the string representation.
  9926  //
  9927  // API parameter values that are decorated as "sensitive" in the API will not
  9928  // be included in the string output. The member name will be present, but the
  9929  // value will be replaced with "sensitive".
  9930  func (s DescribeFeatureTransformationOutput) String() string {
  9931  	return awsutil.Prettify(s)
  9932  }
  9933  
  9934  // GoString returns the string representation.
  9935  //
  9936  // API parameter values that are decorated as "sensitive" in the API will not
  9937  // be included in the string output. The member name will be present, but the
  9938  // value will be replaced with "sensitive".
  9939  func (s DescribeFeatureTransformationOutput) GoString() string {
  9940  	return s.String()
  9941  }
  9942  
  9943  // SetFeatureTransformation sets the FeatureTransformation field's value.
  9944  func (s *DescribeFeatureTransformationOutput) SetFeatureTransformation(v *FeatureTransformation) *DescribeFeatureTransformationOutput {
  9945  	s.FeatureTransformation = v
  9946  	return s
  9947  }
  9948  
  9949  type DescribeFilterInput struct {
  9950  	_ struct{} `type:"structure"`
  9951  
  9952  	// The ARN of the filter to describe.
  9953  	//
  9954  	// FilterArn is a required field
  9955  	FilterArn *string `locationName:"filterArn" type:"string" required:"true"`
  9956  }
  9957  
  9958  // String returns the string representation.
  9959  //
  9960  // API parameter values that are decorated as "sensitive" in the API will not
  9961  // be included in the string output. The member name will be present, but the
  9962  // value will be replaced with "sensitive".
  9963  func (s DescribeFilterInput) String() string {
  9964  	return awsutil.Prettify(s)
  9965  }
  9966  
  9967  // GoString returns the string representation.
  9968  //
  9969  // API parameter values that are decorated as "sensitive" in the API will not
  9970  // be included in the string output. The member name will be present, but the
  9971  // value will be replaced with "sensitive".
  9972  func (s DescribeFilterInput) GoString() string {
  9973  	return s.String()
  9974  }
  9975  
  9976  // Validate inspects the fields of the type to determine if they are valid.
  9977  func (s *DescribeFilterInput) Validate() error {
  9978  	invalidParams := request.ErrInvalidParams{Context: "DescribeFilterInput"}
  9979  	if s.FilterArn == nil {
  9980  		invalidParams.Add(request.NewErrParamRequired("FilterArn"))
  9981  	}
  9982  
  9983  	if invalidParams.Len() > 0 {
  9984  		return invalidParams
  9985  	}
  9986  	return nil
  9987  }
  9988  
  9989  // SetFilterArn sets the FilterArn field's value.
  9990  func (s *DescribeFilterInput) SetFilterArn(v string) *DescribeFilterInput {
  9991  	s.FilterArn = &v
  9992  	return s
  9993  }
  9994  
  9995  type DescribeFilterOutput struct {
  9996  	_ struct{} `type:"structure"`
  9997  
  9998  	// The filter's details.
  9999  	Filter *Filter `locationName:"filter" type:"structure"`
 10000  }
 10001  
 10002  // String returns the string representation.
 10003  //
 10004  // API parameter values that are decorated as "sensitive" in the API will not
 10005  // be included in the string output. The member name will be present, but the
 10006  // value will be replaced with "sensitive".
 10007  func (s DescribeFilterOutput) String() string {
 10008  	return awsutil.Prettify(s)
 10009  }
 10010  
 10011  // GoString returns the string representation.
 10012  //
 10013  // API parameter values that are decorated as "sensitive" in the API will not
 10014  // be included in the string output. The member name will be present, but the
 10015  // value will be replaced with "sensitive".
 10016  func (s DescribeFilterOutput) GoString() string {
 10017  	return s.String()
 10018  }
 10019  
 10020  // SetFilter sets the Filter field's value.
 10021  func (s *DescribeFilterOutput) SetFilter(v *Filter) *DescribeFilterOutput {
 10022  	s.Filter = v
 10023  	return s
 10024  }
 10025  
 10026  type DescribeRecipeInput struct {
 10027  	_ struct{} `type:"structure"`
 10028  
 10029  	// The Amazon Resource Name (ARN) of the recipe to describe.
 10030  	//
 10031  	// RecipeArn is a required field
 10032  	RecipeArn *string `locationName:"recipeArn" type:"string" required:"true"`
 10033  }
 10034  
 10035  // String returns the string representation.
 10036  //
 10037  // API parameter values that are decorated as "sensitive" in the API will not
 10038  // be included in the string output. The member name will be present, but the
 10039  // value will be replaced with "sensitive".
 10040  func (s DescribeRecipeInput) String() string {
 10041  	return awsutil.Prettify(s)
 10042  }
 10043  
 10044  // GoString returns the string representation.
 10045  //
 10046  // API parameter values that are decorated as "sensitive" in the API will not
 10047  // be included in the string output. The member name will be present, but the
 10048  // value will be replaced with "sensitive".
 10049  func (s DescribeRecipeInput) GoString() string {
 10050  	return s.String()
 10051  }
 10052  
 10053  // Validate inspects the fields of the type to determine if they are valid.
 10054  func (s *DescribeRecipeInput) Validate() error {
 10055  	invalidParams := request.ErrInvalidParams{Context: "DescribeRecipeInput"}
 10056  	if s.RecipeArn == nil {
 10057  		invalidParams.Add(request.NewErrParamRequired("RecipeArn"))
 10058  	}
 10059  
 10060  	if invalidParams.Len() > 0 {
 10061  		return invalidParams
 10062  	}
 10063  	return nil
 10064  }
 10065  
 10066  // SetRecipeArn sets the RecipeArn field's value.
 10067  func (s *DescribeRecipeInput) SetRecipeArn(v string) *DescribeRecipeInput {
 10068  	s.RecipeArn = &v
 10069  	return s
 10070  }
 10071  
 10072  type DescribeRecipeOutput struct {
 10073  	_ struct{} `type:"structure"`
 10074  
 10075  	// An object that describes the recipe.
 10076  	Recipe *Recipe `locationName:"recipe" type:"structure"`
 10077  }
 10078  
 10079  // String returns the string representation.
 10080  //
 10081  // API parameter values that are decorated as "sensitive" in the API will not
 10082  // be included in the string output. The member name will be present, but the
 10083  // value will be replaced with "sensitive".
 10084  func (s DescribeRecipeOutput) String() string {
 10085  	return awsutil.Prettify(s)
 10086  }
 10087  
 10088  // GoString returns the string representation.
 10089  //
 10090  // API parameter values that are decorated as "sensitive" in the API will not
 10091  // be included in the string output. The member name will be present, but the
 10092  // value will be replaced with "sensitive".
 10093  func (s DescribeRecipeOutput) GoString() string {
 10094  	return s.String()
 10095  }
 10096  
 10097  // SetRecipe sets the Recipe field's value.
 10098  func (s *DescribeRecipeOutput) SetRecipe(v *Recipe) *DescribeRecipeOutput {
 10099  	s.Recipe = v
 10100  	return s
 10101  }
 10102  
 10103  type DescribeSchemaInput struct {
 10104  	_ struct{} `type:"structure"`
 10105  
 10106  	// The Amazon Resource Name (ARN) of the schema to retrieve.
 10107  	//
 10108  	// SchemaArn is a required field
 10109  	SchemaArn *string `locationName:"schemaArn" type:"string" required:"true"`
 10110  }
 10111  
 10112  // String returns the string representation.
 10113  //
 10114  // API parameter values that are decorated as "sensitive" in the API will not
 10115  // be included in the string output. The member name will be present, but the
 10116  // value will be replaced with "sensitive".
 10117  func (s DescribeSchemaInput) String() string {
 10118  	return awsutil.Prettify(s)
 10119  }
 10120  
 10121  // GoString returns the string representation.
 10122  //
 10123  // API parameter values that are decorated as "sensitive" in the API will not
 10124  // be included in the string output. The member name will be present, but the
 10125  // value will be replaced with "sensitive".
 10126  func (s DescribeSchemaInput) GoString() string {
 10127  	return s.String()
 10128  }
 10129  
 10130  // Validate inspects the fields of the type to determine if they are valid.
 10131  func (s *DescribeSchemaInput) Validate() error {
 10132  	invalidParams := request.ErrInvalidParams{Context: "DescribeSchemaInput"}
 10133  	if s.SchemaArn == nil {
 10134  		invalidParams.Add(request.NewErrParamRequired("SchemaArn"))
 10135  	}
 10136  
 10137  	if invalidParams.Len() > 0 {
 10138  		return invalidParams
 10139  	}
 10140  	return nil
 10141  }
 10142  
 10143  // SetSchemaArn sets the SchemaArn field's value.
 10144  func (s *DescribeSchemaInput) SetSchemaArn(v string) *DescribeSchemaInput {
 10145  	s.SchemaArn = &v
 10146  	return s
 10147  }
 10148  
 10149  type DescribeSchemaOutput struct {
 10150  	_ struct{} `type:"structure"`
 10151  
 10152  	// The requested schema.
 10153  	Schema *DatasetSchema `locationName:"schema" type:"structure"`
 10154  }
 10155  
 10156  // String returns the string representation.
 10157  //
 10158  // API parameter values that are decorated as "sensitive" in the API will not
 10159  // be included in the string output. The member name will be present, but the
 10160  // value will be replaced with "sensitive".
 10161  func (s DescribeSchemaOutput) String() string {
 10162  	return awsutil.Prettify(s)
 10163  }
 10164  
 10165  // GoString returns the string representation.
 10166  //
 10167  // API parameter values that are decorated as "sensitive" in the API will not
 10168  // be included in the string output. The member name will be present, but the
 10169  // value will be replaced with "sensitive".
 10170  func (s DescribeSchemaOutput) GoString() string {
 10171  	return s.String()
 10172  }
 10173  
 10174  // SetSchema sets the Schema field's value.
 10175  func (s *DescribeSchemaOutput) SetSchema(v *DatasetSchema) *DescribeSchemaOutput {
 10176  	s.Schema = v
 10177  	return s
 10178  }
 10179  
 10180  type DescribeSolutionInput struct {
 10181  	_ struct{} `type:"structure"`
 10182  
 10183  	// The Amazon Resource Name (ARN) of the solution to describe.
 10184  	//
 10185  	// SolutionArn is a required field
 10186  	SolutionArn *string `locationName:"solutionArn" type:"string" required:"true"`
 10187  }
 10188  
 10189  // String returns the string representation.
 10190  //
 10191  // API parameter values that are decorated as "sensitive" in the API will not
 10192  // be included in the string output. The member name will be present, but the
 10193  // value will be replaced with "sensitive".
 10194  func (s DescribeSolutionInput) String() string {
 10195  	return awsutil.Prettify(s)
 10196  }
 10197  
 10198  // GoString returns the string representation.
 10199  //
 10200  // API parameter values that are decorated as "sensitive" in the API will not
 10201  // be included in the string output. The member name will be present, but the
 10202  // value will be replaced with "sensitive".
 10203  func (s DescribeSolutionInput) GoString() string {
 10204  	return s.String()
 10205  }
 10206  
 10207  // Validate inspects the fields of the type to determine if they are valid.
 10208  func (s *DescribeSolutionInput) Validate() error {
 10209  	invalidParams := request.ErrInvalidParams{Context: "DescribeSolutionInput"}
 10210  	if s.SolutionArn == nil {
 10211  		invalidParams.Add(request.NewErrParamRequired("SolutionArn"))
 10212  	}
 10213  
 10214  	if invalidParams.Len() > 0 {
 10215  		return invalidParams
 10216  	}
 10217  	return nil
 10218  }
 10219  
 10220  // SetSolutionArn sets the SolutionArn field's value.
 10221  func (s *DescribeSolutionInput) SetSolutionArn(v string) *DescribeSolutionInput {
 10222  	s.SolutionArn = &v
 10223  	return s
 10224  }
 10225  
 10226  type DescribeSolutionOutput struct {
 10227  	_ struct{} `type:"structure"`
 10228  
 10229  	// An object that describes the solution.
 10230  	Solution *Solution `locationName:"solution" type:"structure"`
 10231  }
 10232  
 10233  // String returns the string representation.
 10234  //
 10235  // API parameter values that are decorated as "sensitive" in the API will not
 10236  // be included in the string output. The member name will be present, but the
 10237  // value will be replaced with "sensitive".
 10238  func (s DescribeSolutionOutput) String() string {
 10239  	return awsutil.Prettify(s)
 10240  }
 10241  
 10242  // GoString returns the string representation.
 10243  //
 10244  // API parameter values that are decorated as "sensitive" in the API will not
 10245  // be included in the string output. The member name will be present, but the
 10246  // value will be replaced with "sensitive".
 10247  func (s DescribeSolutionOutput) GoString() string {
 10248  	return s.String()
 10249  }
 10250  
 10251  // SetSolution sets the Solution field's value.
 10252  func (s *DescribeSolutionOutput) SetSolution(v *Solution) *DescribeSolutionOutput {
 10253  	s.Solution = v
 10254  	return s
 10255  }
 10256  
 10257  type DescribeSolutionVersionInput struct {
 10258  	_ struct{} `type:"structure"`
 10259  
 10260  	// The Amazon Resource Name (ARN) of the solution version.
 10261  	//
 10262  	// SolutionVersionArn is a required field
 10263  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string" required:"true"`
 10264  }
 10265  
 10266  // String returns the string representation.
 10267  //
 10268  // API parameter values that are decorated as "sensitive" in the API will not
 10269  // be included in the string output. The member name will be present, but the
 10270  // value will be replaced with "sensitive".
 10271  func (s DescribeSolutionVersionInput) String() string {
 10272  	return awsutil.Prettify(s)
 10273  }
 10274  
 10275  // GoString returns the string representation.
 10276  //
 10277  // API parameter values that are decorated as "sensitive" in the API will not
 10278  // be included in the string output. The member name will be present, but the
 10279  // value will be replaced with "sensitive".
 10280  func (s DescribeSolutionVersionInput) GoString() string {
 10281  	return s.String()
 10282  }
 10283  
 10284  // Validate inspects the fields of the type to determine if they are valid.
 10285  func (s *DescribeSolutionVersionInput) Validate() error {
 10286  	invalidParams := request.ErrInvalidParams{Context: "DescribeSolutionVersionInput"}
 10287  	if s.SolutionVersionArn == nil {
 10288  		invalidParams.Add(request.NewErrParamRequired("SolutionVersionArn"))
 10289  	}
 10290  
 10291  	if invalidParams.Len() > 0 {
 10292  		return invalidParams
 10293  	}
 10294  	return nil
 10295  }
 10296  
 10297  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 10298  func (s *DescribeSolutionVersionInput) SetSolutionVersionArn(v string) *DescribeSolutionVersionInput {
 10299  	s.SolutionVersionArn = &v
 10300  	return s
 10301  }
 10302  
 10303  type DescribeSolutionVersionOutput struct {
 10304  	_ struct{} `type:"structure"`
 10305  
 10306  	// The solution version.
 10307  	SolutionVersion *SolutionVersion `locationName:"solutionVersion" type:"structure"`
 10308  }
 10309  
 10310  // String returns the string representation.
 10311  //
 10312  // API parameter values that are decorated as "sensitive" in the API will not
 10313  // be included in the string output. The member name will be present, but the
 10314  // value will be replaced with "sensitive".
 10315  func (s DescribeSolutionVersionOutput) String() string {
 10316  	return awsutil.Prettify(s)
 10317  }
 10318  
 10319  // GoString returns the string representation.
 10320  //
 10321  // API parameter values that are decorated as "sensitive" in the API will not
 10322  // be included in the string output. The member name will be present, but the
 10323  // value will be replaced with "sensitive".
 10324  func (s DescribeSolutionVersionOutput) GoString() string {
 10325  	return s.String()
 10326  }
 10327  
 10328  // SetSolutionVersion sets the SolutionVersion field's value.
 10329  func (s *DescribeSolutionVersionOutput) SetSolutionVersion(v *SolutionVersion) *DescribeSolutionVersionOutput {
 10330  	s.SolutionVersion = v
 10331  	return s
 10332  }
 10333  
 10334  // Provides information about an event tracker.
 10335  type EventTracker struct {
 10336  	_ struct{} `type:"structure"`
 10337  
 10338  	// The Amazon Web Services account that owns the event tracker.
 10339  	AccountId *string `locationName:"accountId" type:"string"`
 10340  
 10341  	// The date and time (in Unix format) that the event tracker was created.
 10342  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 10343  
 10344  	// The Amazon Resource Name (ARN) of the dataset group that receives the event
 10345  	// data.
 10346  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 10347  
 10348  	// The ARN of the event tracker.
 10349  	EventTrackerArn *string `locationName:"eventTrackerArn" type:"string"`
 10350  
 10351  	// The date and time (in Unix time) that the event tracker was last updated.
 10352  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 10353  
 10354  	// The name of the event tracker.
 10355  	Name *string `locationName:"name" min:"1" type:"string"`
 10356  
 10357  	// The status of the event tracker.
 10358  	//
 10359  	// An event tracker can be in one of the following states:
 10360  	//
 10361  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
 10362  	//
 10363  	//    * DELETE PENDING > DELETE IN_PROGRESS
 10364  	Status *string `locationName:"status" type:"string"`
 10365  
 10366  	// The ID of the event tracker. Include this ID in requests to the PutEvents
 10367  	// (https://docs.aws.amazon.com/personalize/latest/dg/API_UBS_PutEvents.html)
 10368  	// API.
 10369  	TrackingId *string `locationName:"trackingId" type:"string"`
 10370  }
 10371  
 10372  // String returns the string representation.
 10373  //
 10374  // API parameter values that are decorated as "sensitive" in the API will not
 10375  // be included in the string output. The member name will be present, but the
 10376  // value will be replaced with "sensitive".
 10377  func (s EventTracker) String() string {
 10378  	return awsutil.Prettify(s)
 10379  }
 10380  
 10381  // GoString returns the string representation.
 10382  //
 10383  // API parameter values that are decorated as "sensitive" in the API will not
 10384  // be included in the string output. The member name will be present, but the
 10385  // value will be replaced with "sensitive".
 10386  func (s EventTracker) GoString() string {
 10387  	return s.String()
 10388  }
 10389  
 10390  // SetAccountId sets the AccountId field's value.
 10391  func (s *EventTracker) SetAccountId(v string) *EventTracker {
 10392  	s.AccountId = &v
 10393  	return s
 10394  }
 10395  
 10396  // SetCreationDateTime sets the CreationDateTime field's value.
 10397  func (s *EventTracker) SetCreationDateTime(v time.Time) *EventTracker {
 10398  	s.CreationDateTime = &v
 10399  	return s
 10400  }
 10401  
 10402  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 10403  func (s *EventTracker) SetDatasetGroupArn(v string) *EventTracker {
 10404  	s.DatasetGroupArn = &v
 10405  	return s
 10406  }
 10407  
 10408  // SetEventTrackerArn sets the EventTrackerArn field's value.
 10409  func (s *EventTracker) SetEventTrackerArn(v string) *EventTracker {
 10410  	s.EventTrackerArn = &v
 10411  	return s
 10412  }
 10413  
 10414  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 10415  func (s *EventTracker) SetLastUpdatedDateTime(v time.Time) *EventTracker {
 10416  	s.LastUpdatedDateTime = &v
 10417  	return s
 10418  }
 10419  
 10420  // SetName sets the Name field's value.
 10421  func (s *EventTracker) SetName(v string) *EventTracker {
 10422  	s.Name = &v
 10423  	return s
 10424  }
 10425  
 10426  // SetStatus sets the Status field's value.
 10427  func (s *EventTracker) SetStatus(v string) *EventTracker {
 10428  	s.Status = &v
 10429  	return s
 10430  }
 10431  
 10432  // SetTrackingId sets the TrackingId field's value.
 10433  func (s *EventTracker) SetTrackingId(v string) *EventTracker {
 10434  	s.TrackingId = &v
 10435  	return s
 10436  }
 10437  
 10438  // Provides a summary of the properties of an event tracker. For a complete
 10439  // listing, call the DescribeEventTracker API.
 10440  type EventTrackerSummary struct {
 10441  	_ struct{} `type:"structure"`
 10442  
 10443  	// The date and time (in Unix time) that the event tracker was created.
 10444  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 10445  
 10446  	// The Amazon Resource Name (ARN) of the event tracker.
 10447  	EventTrackerArn *string `locationName:"eventTrackerArn" type:"string"`
 10448  
 10449  	// The date and time (in Unix time) that the event tracker was last updated.
 10450  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 10451  
 10452  	// The name of the event tracker.
 10453  	Name *string `locationName:"name" min:"1" type:"string"`
 10454  
 10455  	// The status of the event tracker.
 10456  	//
 10457  	// An event tracker can be in one of the following states:
 10458  	//
 10459  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
 10460  	//
 10461  	//    * DELETE PENDING > DELETE IN_PROGRESS
 10462  	Status *string `locationName:"status" type:"string"`
 10463  }
 10464  
 10465  // String returns the string representation.
 10466  //
 10467  // API parameter values that are decorated as "sensitive" in the API will not
 10468  // be included in the string output. The member name will be present, but the
 10469  // value will be replaced with "sensitive".
 10470  func (s EventTrackerSummary) String() string {
 10471  	return awsutil.Prettify(s)
 10472  }
 10473  
 10474  // GoString returns the string representation.
 10475  //
 10476  // API parameter values that are decorated as "sensitive" in the API will not
 10477  // be included in the string output. The member name will be present, but the
 10478  // value will be replaced with "sensitive".
 10479  func (s EventTrackerSummary) GoString() string {
 10480  	return s.String()
 10481  }
 10482  
 10483  // SetCreationDateTime sets the CreationDateTime field's value.
 10484  func (s *EventTrackerSummary) SetCreationDateTime(v time.Time) *EventTrackerSummary {
 10485  	s.CreationDateTime = &v
 10486  	return s
 10487  }
 10488  
 10489  // SetEventTrackerArn sets the EventTrackerArn field's value.
 10490  func (s *EventTrackerSummary) SetEventTrackerArn(v string) *EventTrackerSummary {
 10491  	s.EventTrackerArn = &v
 10492  	return s
 10493  }
 10494  
 10495  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 10496  func (s *EventTrackerSummary) SetLastUpdatedDateTime(v time.Time) *EventTrackerSummary {
 10497  	s.LastUpdatedDateTime = &v
 10498  	return s
 10499  }
 10500  
 10501  // SetName sets the Name field's value.
 10502  func (s *EventTrackerSummary) SetName(v string) *EventTrackerSummary {
 10503  	s.Name = &v
 10504  	return s
 10505  }
 10506  
 10507  // SetStatus sets the Status field's value.
 10508  func (s *EventTrackerSummary) SetStatus(v string) *EventTrackerSummary {
 10509  	s.Status = &v
 10510  	return s
 10511  }
 10512  
 10513  // Provides feature transformation information. Feature transformation is the
 10514  // process of modifying raw input data into a form more suitable for model training.
 10515  type FeatureTransformation struct {
 10516  	_ struct{} `type:"structure"`
 10517  
 10518  	// The creation date and time (in Unix time) of the feature transformation.
 10519  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 10520  
 10521  	// Provides the default parameters for feature transformation.
 10522  	DefaultParameters map[string]*string `locationName:"defaultParameters" type:"map"`
 10523  
 10524  	// The Amazon Resource Name (ARN) of the FeatureTransformation object.
 10525  	FeatureTransformationArn *string `locationName:"featureTransformationArn" type:"string"`
 10526  
 10527  	// The last update date and time (in Unix time) of the feature transformation.
 10528  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 10529  
 10530  	// The name of the feature transformation.
 10531  	Name *string `locationName:"name" min:"1" type:"string"`
 10532  
 10533  	// The status of the feature transformation.
 10534  	//
 10535  	// A feature transformation can be in one of the following states:
 10536  	//
 10537  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
 10538  	Status *string `locationName:"status" type:"string"`
 10539  }
 10540  
 10541  // String returns the string representation.
 10542  //
 10543  // API parameter values that are decorated as "sensitive" in the API will not
 10544  // be included in the string output. The member name will be present, but the
 10545  // value will be replaced with "sensitive".
 10546  func (s FeatureTransformation) String() string {
 10547  	return awsutil.Prettify(s)
 10548  }
 10549  
 10550  // GoString returns the string representation.
 10551  //
 10552  // API parameter values that are decorated as "sensitive" in the API will not
 10553  // be included in the string output. The member name will be present, but the
 10554  // value will be replaced with "sensitive".
 10555  func (s FeatureTransformation) GoString() string {
 10556  	return s.String()
 10557  }
 10558  
 10559  // SetCreationDateTime sets the CreationDateTime field's value.
 10560  func (s *FeatureTransformation) SetCreationDateTime(v time.Time) *FeatureTransformation {
 10561  	s.CreationDateTime = &v
 10562  	return s
 10563  }
 10564  
 10565  // SetDefaultParameters sets the DefaultParameters field's value.
 10566  func (s *FeatureTransformation) SetDefaultParameters(v map[string]*string) *FeatureTransformation {
 10567  	s.DefaultParameters = v
 10568  	return s
 10569  }
 10570  
 10571  // SetFeatureTransformationArn sets the FeatureTransformationArn field's value.
 10572  func (s *FeatureTransformation) SetFeatureTransformationArn(v string) *FeatureTransformation {
 10573  	s.FeatureTransformationArn = &v
 10574  	return s
 10575  }
 10576  
 10577  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 10578  func (s *FeatureTransformation) SetLastUpdatedDateTime(v time.Time) *FeatureTransformation {
 10579  	s.LastUpdatedDateTime = &v
 10580  	return s
 10581  }
 10582  
 10583  // SetName sets the Name field's value.
 10584  func (s *FeatureTransformation) SetName(v string) *FeatureTransformation {
 10585  	s.Name = &v
 10586  	return s
 10587  }
 10588  
 10589  // SetStatus sets the Status field's value.
 10590  func (s *FeatureTransformation) SetStatus(v string) *FeatureTransformation {
 10591  	s.Status = &v
 10592  	return s
 10593  }
 10594  
 10595  // Contains information on a recommendation filter, including its ARN, status,
 10596  // and filter expression.
 10597  type Filter struct {
 10598  	_ struct{} `type:"structure"`
 10599  
 10600  	// The time at which the filter was created.
 10601  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 10602  
 10603  	// The ARN of the dataset group to which the filter belongs.
 10604  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 10605  
 10606  	// If the filter failed, the reason for its failure.
 10607  	FailureReason *string `locationName:"failureReason" type:"string"`
 10608  
 10609  	// The ARN of the filter.
 10610  	FilterArn *string `locationName:"filterArn" type:"string"`
 10611  
 10612  	// Specifies the type of item interactions to filter out of recommendation results.
 10613  	// The filter expression must follow specific format rules. For information
 10614  	// about filter expression structure and syntax, see filter-expressions.
 10615  	//
 10616  	// FilterExpression is a sensitive parameter and its value will be
 10617  	// replaced with "sensitive" in string returned by Filter's
 10618  	// String and GoString methods.
 10619  	FilterExpression *string `locationName:"filterExpression" min:"1" type:"string" sensitive:"true"`
 10620  
 10621  	// The time at which the filter was last updated.
 10622  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 10623  
 10624  	// The name of the filter.
 10625  	Name *string `locationName:"name" min:"1" type:"string"`
 10626  
 10627  	// The status of the filter.
 10628  	Status *string `locationName:"status" type:"string"`
 10629  }
 10630  
 10631  // String returns the string representation.
 10632  //
 10633  // API parameter values that are decorated as "sensitive" in the API will not
 10634  // be included in the string output. The member name will be present, but the
 10635  // value will be replaced with "sensitive".
 10636  func (s Filter) String() string {
 10637  	return awsutil.Prettify(s)
 10638  }
 10639  
 10640  // GoString returns the string representation.
 10641  //
 10642  // API parameter values that are decorated as "sensitive" in the API will not
 10643  // be included in the string output. The member name will be present, but the
 10644  // value will be replaced with "sensitive".
 10645  func (s Filter) GoString() string {
 10646  	return s.String()
 10647  }
 10648  
 10649  // SetCreationDateTime sets the CreationDateTime field's value.
 10650  func (s *Filter) SetCreationDateTime(v time.Time) *Filter {
 10651  	s.CreationDateTime = &v
 10652  	return s
 10653  }
 10654  
 10655  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 10656  func (s *Filter) SetDatasetGroupArn(v string) *Filter {
 10657  	s.DatasetGroupArn = &v
 10658  	return s
 10659  }
 10660  
 10661  // SetFailureReason sets the FailureReason field's value.
 10662  func (s *Filter) SetFailureReason(v string) *Filter {
 10663  	s.FailureReason = &v
 10664  	return s
 10665  }
 10666  
 10667  // SetFilterArn sets the FilterArn field's value.
 10668  func (s *Filter) SetFilterArn(v string) *Filter {
 10669  	s.FilterArn = &v
 10670  	return s
 10671  }
 10672  
 10673  // SetFilterExpression sets the FilterExpression field's value.
 10674  func (s *Filter) SetFilterExpression(v string) *Filter {
 10675  	s.FilterExpression = &v
 10676  	return s
 10677  }
 10678  
 10679  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 10680  func (s *Filter) SetLastUpdatedDateTime(v time.Time) *Filter {
 10681  	s.LastUpdatedDateTime = &v
 10682  	return s
 10683  }
 10684  
 10685  // SetName sets the Name field's value.
 10686  func (s *Filter) SetName(v string) *Filter {
 10687  	s.Name = &v
 10688  	return s
 10689  }
 10690  
 10691  // SetStatus sets the Status field's value.
 10692  func (s *Filter) SetStatus(v string) *Filter {
 10693  	s.Status = &v
 10694  	return s
 10695  }
 10696  
 10697  // A short summary of a filter's attributes.
 10698  type FilterSummary struct {
 10699  	_ struct{} `type:"structure"`
 10700  
 10701  	// The time at which the filter was created.
 10702  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 10703  
 10704  	// The ARN of the dataset group to which the filter belongs.
 10705  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 10706  
 10707  	// If the filter failed, the reason for the failure.
 10708  	FailureReason *string `locationName:"failureReason" type:"string"`
 10709  
 10710  	// The ARN of the filter.
 10711  	FilterArn *string `locationName:"filterArn" type:"string"`
 10712  
 10713  	// The time at which the filter was last updated.
 10714  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 10715  
 10716  	// The name of the filter.
 10717  	Name *string `locationName:"name" min:"1" type:"string"`
 10718  
 10719  	// The status of the filter.
 10720  	Status *string `locationName:"status" type:"string"`
 10721  }
 10722  
 10723  // String returns the string representation.
 10724  //
 10725  // API parameter values that are decorated as "sensitive" in the API will not
 10726  // be included in the string output. The member name will be present, but the
 10727  // value will be replaced with "sensitive".
 10728  func (s FilterSummary) String() string {
 10729  	return awsutil.Prettify(s)
 10730  }
 10731  
 10732  // GoString returns the string representation.
 10733  //
 10734  // API parameter values that are decorated as "sensitive" in the API will not
 10735  // be included in the string output. The member name will be present, but the
 10736  // value will be replaced with "sensitive".
 10737  func (s FilterSummary) GoString() string {
 10738  	return s.String()
 10739  }
 10740  
 10741  // SetCreationDateTime sets the CreationDateTime field's value.
 10742  func (s *FilterSummary) SetCreationDateTime(v time.Time) *FilterSummary {
 10743  	s.CreationDateTime = &v
 10744  	return s
 10745  }
 10746  
 10747  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 10748  func (s *FilterSummary) SetDatasetGroupArn(v string) *FilterSummary {
 10749  	s.DatasetGroupArn = &v
 10750  	return s
 10751  }
 10752  
 10753  // SetFailureReason sets the FailureReason field's value.
 10754  func (s *FilterSummary) SetFailureReason(v string) *FilterSummary {
 10755  	s.FailureReason = &v
 10756  	return s
 10757  }
 10758  
 10759  // SetFilterArn sets the FilterArn field's value.
 10760  func (s *FilterSummary) SetFilterArn(v string) *FilterSummary {
 10761  	s.FilterArn = &v
 10762  	return s
 10763  }
 10764  
 10765  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 10766  func (s *FilterSummary) SetLastUpdatedDateTime(v time.Time) *FilterSummary {
 10767  	s.LastUpdatedDateTime = &v
 10768  	return s
 10769  }
 10770  
 10771  // SetName sets the Name field's value.
 10772  func (s *FilterSummary) SetName(v string) *FilterSummary {
 10773  	s.Name = &v
 10774  	return s
 10775  }
 10776  
 10777  // SetStatus sets the Status field's value.
 10778  func (s *FilterSummary) SetStatus(v string) *FilterSummary {
 10779  	s.Status = &v
 10780  	return s
 10781  }
 10782  
 10783  type GetSolutionMetricsInput struct {
 10784  	_ struct{} `type:"structure"`
 10785  
 10786  	// The Amazon Resource Name (ARN) of the solution version for which to get metrics.
 10787  	//
 10788  	// SolutionVersionArn is a required field
 10789  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string" required:"true"`
 10790  }
 10791  
 10792  // String returns the string representation.
 10793  //
 10794  // API parameter values that are decorated as "sensitive" in the API will not
 10795  // be included in the string output. The member name will be present, but the
 10796  // value will be replaced with "sensitive".
 10797  func (s GetSolutionMetricsInput) String() string {
 10798  	return awsutil.Prettify(s)
 10799  }
 10800  
 10801  // GoString returns the string representation.
 10802  //
 10803  // API parameter values that are decorated as "sensitive" in the API will not
 10804  // be included in the string output. The member name will be present, but the
 10805  // value will be replaced with "sensitive".
 10806  func (s GetSolutionMetricsInput) GoString() string {
 10807  	return s.String()
 10808  }
 10809  
 10810  // Validate inspects the fields of the type to determine if they are valid.
 10811  func (s *GetSolutionMetricsInput) Validate() error {
 10812  	invalidParams := request.ErrInvalidParams{Context: "GetSolutionMetricsInput"}
 10813  	if s.SolutionVersionArn == nil {
 10814  		invalidParams.Add(request.NewErrParamRequired("SolutionVersionArn"))
 10815  	}
 10816  
 10817  	if invalidParams.Len() > 0 {
 10818  		return invalidParams
 10819  	}
 10820  	return nil
 10821  }
 10822  
 10823  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 10824  func (s *GetSolutionMetricsInput) SetSolutionVersionArn(v string) *GetSolutionMetricsInput {
 10825  	s.SolutionVersionArn = &v
 10826  	return s
 10827  }
 10828  
 10829  type GetSolutionMetricsOutput struct {
 10830  	_ struct{} `type:"structure"`
 10831  
 10832  	// The metrics for the solution version.
 10833  	Metrics map[string]*float64 `locationName:"metrics" type:"map"`
 10834  
 10835  	// The same solution version ARN as specified in the request.
 10836  	SolutionVersionArn *string `locationName:"solutionVersionArn" 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 GetSolutionMetricsOutput) 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 GetSolutionMetricsOutput) GoString() string {
 10854  	return s.String()
 10855  }
 10856  
 10857  // SetMetrics sets the Metrics field's value.
 10858  func (s *GetSolutionMetricsOutput) SetMetrics(v map[string]*float64) *GetSolutionMetricsOutput {
 10859  	s.Metrics = v
 10860  	return s
 10861  }
 10862  
 10863  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 10864  func (s *GetSolutionMetricsOutput) SetSolutionVersionArn(v string) *GetSolutionMetricsOutput {
 10865  	s.SolutionVersionArn = &v
 10866  	return s
 10867  }
 10868  
 10869  // Describes the properties for hyperparameter optimization (HPO).
 10870  type HPOConfig struct {
 10871  	_ struct{} `type:"structure"`
 10872  
 10873  	// The hyperparameters and their allowable ranges.
 10874  	AlgorithmHyperParameterRanges *HyperParameterRanges `locationName:"algorithmHyperParameterRanges" type:"structure"`
 10875  
 10876  	// The metric to optimize during HPO.
 10877  	//
 10878  	// Amazon Personalize doesn't support configuring the hpoObjective at this time.
 10879  	HpoObjective *HPOObjective `locationName:"hpoObjective" type:"structure"`
 10880  
 10881  	// Describes the resource configuration for HPO.
 10882  	HpoResourceConfig *HPOResourceConfig `locationName:"hpoResourceConfig" type:"structure"`
 10883  }
 10884  
 10885  // String returns the string representation.
 10886  //
 10887  // API parameter values that are decorated as "sensitive" in the API will not
 10888  // be included in the string output. The member name will be present, but the
 10889  // value will be replaced with "sensitive".
 10890  func (s HPOConfig) String() string {
 10891  	return awsutil.Prettify(s)
 10892  }
 10893  
 10894  // GoString returns the string representation.
 10895  //
 10896  // API parameter values that are decorated as "sensitive" in the API will not
 10897  // be included in the string output. The member name will be present, but the
 10898  // value will be replaced with "sensitive".
 10899  func (s HPOConfig) GoString() string {
 10900  	return s.String()
 10901  }
 10902  
 10903  // Validate inspects the fields of the type to determine if they are valid.
 10904  func (s *HPOConfig) Validate() error {
 10905  	invalidParams := request.ErrInvalidParams{Context: "HPOConfig"}
 10906  	if s.AlgorithmHyperParameterRanges != nil {
 10907  		if err := s.AlgorithmHyperParameterRanges.Validate(); err != nil {
 10908  			invalidParams.AddNested("AlgorithmHyperParameterRanges", err.(request.ErrInvalidParams))
 10909  		}
 10910  	}
 10911  
 10912  	if invalidParams.Len() > 0 {
 10913  		return invalidParams
 10914  	}
 10915  	return nil
 10916  }
 10917  
 10918  // SetAlgorithmHyperParameterRanges sets the AlgorithmHyperParameterRanges field's value.
 10919  func (s *HPOConfig) SetAlgorithmHyperParameterRanges(v *HyperParameterRanges) *HPOConfig {
 10920  	s.AlgorithmHyperParameterRanges = v
 10921  	return s
 10922  }
 10923  
 10924  // SetHpoObjective sets the HpoObjective field's value.
 10925  func (s *HPOConfig) SetHpoObjective(v *HPOObjective) *HPOConfig {
 10926  	s.HpoObjective = v
 10927  	return s
 10928  }
 10929  
 10930  // SetHpoResourceConfig sets the HpoResourceConfig field's value.
 10931  func (s *HPOConfig) SetHpoResourceConfig(v *HPOResourceConfig) *HPOConfig {
 10932  	s.HpoResourceConfig = v
 10933  	return s
 10934  }
 10935  
 10936  // The metric to optimize during hyperparameter optimization (HPO).
 10937  //
 10938  // Amazon Personalize doesn't support configuring the hpoObjective at this time.
 10939  type HPOObjective struct {
 10940  	_ struct{} `type:"structure"`
 10941  
 10942  	// The name of the metric.
 10943  	MetricName *string `locationName:"metricName" type:"string"`
 10944  
 10945  	// A regular expression for finding the metric in the training job logs.
 10946  	MetricRegex *string `locationName:"metricRegex" type:"string"`
 10947  
 10948  	// The type of the metric. Valid values are Maximize and Minimize.
 10949  	Type *string `locationName:"type" type:"string"`
 10950  }
 10951  
 10952  // String returns the string representation.
 10953  //
 10954  // API parameter values that are decorated as "sensitive" in the API will not
 10955  // be included in the string output. The member name will be present, but the
 10956  // value will be replaced with "sensitive".
 10957  func (s HPOObjective) String() string {
 10958  	return awsutil.Prettify(s)
 10959  }
 10960  
 10961  // GoString returns the string representation.
 10962  //
 10963  // API parameter values that are decorated as "sensitive" in the API will not
 10964  // be included in the string output. The member name will be present, but the
 10965  // value will be replaced with "sensitive".
 10966  func (s HPOObjective) GoString() string {
 10967  	return s.String()
 10968  }
 10969  
 10970  // SetMetricName sets the MetricName field's value.
 10971  func (s *HPOObjective) SetMetricName(v string) *HPOObjective {
 10972  	s.MetricName = &v
 10973  	return s
 10974  }
 10975  
 10976  // SetMetricRegex sets the MetricRegex field's value.
 10977  func (s *HPOObjective) SetMetricRegex(v string) *HPOObjective {
 10978  	s.MetricRegex = &v
 10979  	return s
 10980  }
 10981  
 10982  // SetType sets the Type field's value.
 10983  func (s *HPOObjective) SetType(v string) *HPOObjective {
 10984  	s.Type = &v
 10985  	return s
 10986  }
 10987  
 10988  // Describes the resource configuration for hyperparameter optimization (HPO).
 10989  type HPOResourceConfig struct {
 10990  	_ struct{} `type:"structure"`
 10991  
 10992  	// The maximum number of training jobs when you create a solution version. The
 10993  	// maximum value for maxNumberOfTrainingJobs is 40.
 10994  	MaxNumberOfTrainingJobs *string `locationName:"maxNumberOfTrainingJobs" type:"string"`
 10995  
 10996  	// The maximum number of parallel training jobs when you create a solution version.
 10997  	// The maximum value for maxParallelTrainingJobs is 10.
 10998  	MaxParallelTrainingJobs *string `locationName:"maxParallelTrainingJobs" type:"string"`
 10999  }
 11000  
 11001  // String returns the string representation.
 11002  //
 11003  // API parameter values that are decorated as "sensitive" in the API will not
 11004  // be included in the string output. The member name will be present, but the
 11005  // value will be replaced with "sensitive".
 11006  func (s HPOResourceConfig) String() string {
 11007  	return awsutil.Prettify(s)
 11008  }
 11009  
 11010  // GoString returns the string representation.
 11011  //
 11012  // API parameter values that are decorated as "sensitive" in the API will not
 11013  // be included in the string output. The member name will be present, but the
 11014  // value will be replaced with "sensitive".
 11015  func (s HPOResourceConfig) GoString() string {
 11016  	return s.String()
 11017  }
 11018  
 11019  // SetMaxNumberOfTrainingJobs sets the MaxNumberOfTrainingJobs field's value.
 11020  func (s *HPOResourceConfig) SetMaxNumberOfTrainingJobs(v string) *HPOResourceConfig {
 11021  	s.MaxNumberOfTrainingJobs = &v
 11022  	return s
 11023  }
 11024  
 11025  // SetMaxParallelTrainingJobs sets the MaxParallelTrainingJobs field's value.
 11026  func (s *HPOResourceConfig) SetMaxParallelTrainingJobs(v string) *HPOResourceConfig {
 11027  	s.MaxParallelTrainingJobs = &v
 11028  	return s
 11029  }
 11030  
 11031  // Specifies the hyperparameters and their ranges. Hyperparameters can be categorical,
 11032  // continuous, or integer-valued.
 11033  type HyperParameterRanges struct {
 11034  	_ struct{} `type:"structure"`
 11035  
 11036  	// The categorical hyperparameters and their ranges.
 11037  	CategoricalHyperParameterRanges []*CategoricalHyperParameterRange `locationName:"categoricalHyperParameterRanges" type:"list"`
 11038  
 11039  	// The continuous hyperparameters and their ranges.
 11040  	ContinuousHyperParameterRanges []*ContinuousHyperParameterRange `locationName:"continuousHyperParameterRanges" type:"list"`
 11041  
 11042  	// The integer-valued hyperparameters and their ranges.
 11043  	IntegerHyperParameterRanges []*IntegerHyperParameterRange `locationName:"integerHyperParameterRanges" type:"list"`
 11044  }
 11045  
 11046  // String returns the string representation.
 11047  //
 11048  // API parameter values that are decorated as "sensitive" in the API will not
 11049  // be included in the string output. The member name will be present, but the
 11050  // value will be replaced with "sensitive".
 11051  func (s HyperParameterRanges) String() string {
 11052  	return awsutil.Prettify(s)
 11053  }
 11054  
 11055  // GoString returns the string representation.
 11056  //
 11057  // API parameter values that are decorated as "sensitive" in the API will not
 11058  // be included in the string output. The member name will be present, but the
 11059  // value will be replaced with "sensitive".
 11060  func (s HyperParameterRanges) GoString() string {
 11061  	return s.String()
 11062  }
 11063  
 11064  // Validate inspects the fields of the type to determine if they are valid.
 11065  func (s *HyperParameterRanges) Validate() error {
 11066  	invalidParams := request.ErrInvalidParams{Context: "HyperParameterRanges"}
 11067  	if s.ContinuousHyperParameterRanges != nil {
 11068  		for i, v := range s.ContinuousHyperParameterRanges {
 11069  			if v == nil {
 11070  				continue
 11071  			}
 11072  			if err := v.Validate(); err != nil {
 11073  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ContinuousHyperParameterRanges", i), err.(request.ErrInvalidParams))
 11074  			}
 11075  		}
 11076  	}
 11077  	if s.IntegerHyperParameterRanges != nil {
 11078  		for i, v := range s.IntegerHyperParameterRanges {
 11079  			if v == nil {
 11080  				continue
 11081  			}
 11082  			if err := v.Validate(); err != nil {
 11083  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "IntegerHyperParameterRanges", i), err.(request.ErrInvalidParams))
 11084  			}
 11085  		}
 11086  	}
 11087  
 11088  	if invalidParams.Len() > 0 {
 11089  		return invalidParams
 11090  	}
 11091  	return nil
 11092  }
 11093  
 11094  // SetCategoricalHyperParameterRanges sets the CategoricalHyperParameterRanges field's value.
 11095  func (s *HyperParameterRanges) SetCategoricalHyperParameterRanges(v []*CategoricalHyperParameterRange) *HyperParameterRanges {
 11096  	s.CategoricalHyperParameterRanges = v
 11097  	return s
 11098  }
 11099  
 11100  // SetContinuousHyperParameterRanges sets the ContinuousHyperParameterRanges field's value.
 11101  func (s *HyperParameterRanges) SetContinuousHyperParameterRanges(v []*ContinuousHyperParameterRange) *HyperParameterRanges {
 11102  	s.ContinuousHyperParameterRanges = v
 11103  	return s
 11104  }
 11105  
 11106  // SetIntegerHyperParameterRanges sets the IntegerHyperParameterRanges field's value.
 11107  func (s *HyperParameterRanges) SetIntegerHyperParameterRanges(v []*IntegerHyperParameterRange) *HyperParameterRanges {
 11108  	s.IntegerHyperParameterRanges = v
 11109  	return s
 11110  }
 11111  
 11112  // Provides the name and range of an integer-valued hyperparameter.
 11113  type IntegerHyperParameterRange struct {
 11114  	_ struct{} `type:"structure"`
 11115  
 11116  	// The maximum allowable value for the hyperparameter.
 11117  	MaxValue *int64 `locationName:"maxValue" type:"integer"`
 11118  
 11119  	// The minimum allowable value for the hyperparameter.
 11120  	MinValue *int64 `locationName:"minValue" type:"integer"`
 11121  
 11122  	// The name of the hyperparameter.
 11123  	Name *string `locationName:"name" type:"string"`
 11124  }
 11125  
 11126  // String returns the string representation.
 11127  //
 11128  // API parameter values that are decorated as "sensitive" in the API will not
 11129  // be included in the string output. The member name will be present, but the
 11130  // value will be replaced with "sensitive".
 11131  func (s IntegerHyperParameterRange) String() string {
 11132  	return awsutil.Prettify(s)
 11133  }
 11134  
 11135  // GoString returns the string representation.
 11136  //
 11137  // API parameter values that are decorated as "sensitive" in the API will not
 11138  // be included in the string output. The member name will be present, but the
 11139  // value will be replaced with "sensitive".
 11140  func (s IntegerHyperParameterRange) GoString() string {
 11141  	return s.String()
 11142  }
 11143  
 11144  // Validate inspects the fields of the type to determine if they are valid.
 11145  func (s *IntegerHyperParameterRange) Validate() error {
 11146  	invalidParams := request.ErrInvalidParams{Context: "IntegerHyperParameterRange"}
 11147  	if s.MinValue != nil && *s.MinValue < -1e+06 {
 11148  		invalidParams.Add(request.NewErrParamMinValue("MinValue", -1e+06))
 11149  	}
 11150  
 11151  	if invalidParams.Len() > 0 {
 11152  		return invalidParams
 11153  	}
 11154  	return nil
 11155  }
 11156  
 11157  // SetMaxValue sets the MaxValue field's value.
 11158  func (s *IntegerHyperParameterRange) SetMaxValue(v int64) *IntegerHyperParameterRange {
 11159  	s.MaxValue = &v
 11160  	return s
 11161  }
 11162  
 11163  // SetMinValue sets the MinValue field's value.
 11164  func (s *IntegerHyperParameterRange) SetMinValue(v int64) *IntegerHyperParameterRange {
 11165  	s.MinValue = &v
 11166  	return s
 11167  }
 11168  
 11169  // SetName sets the Name field's value.
 11170  func (s *IntegerHyperParameterRange) SetName(v string) *IntegerHyperParameterRange {
 11171  	s.Name = &v
 11172  	return s
 11173  }
 11174  
 11175  // Provide a valid value for the field or parameter.
 11176  type InvalidInputException struct {
 11177  	_            struct{}                  `type:"structure"`
 11178  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11179  
 11180  	Message_ *string `locationName:"message" type:"string"`
 11181  }
 11182  
 11183  // String returns the string representation.
 11184  //
 11185  // API parameter values that are decorated as "sensitive" in the API will not
 11186  // be included in the string output. The member name will be present, but the
 11187  // value will be replaced with "sensitive".
 11188  func (s InvalidInputException) String() string {
 11189  	return awsutil.Prettify(s)
 11190  }
 11191  
 11192  // GoString returns the string representation.
 11193  //
 11194  // API parameter values that are decorated as "sensitive" in the API will not
 11195  // be included in the string output. The member name will be present, but the
 11196  // value will be replaced with "sensitive".
 11197  func (s InvalidInputException) GoString() string {
 11198  	return s.String()
 11199  }
 11200  
 11201  func newErrorInvalidInputException(v protocol.ResponseMetadata) error {
 11202  	return &InvalidInputException{
 11203  		RespMetadata: v,
 11204  	}
 11205  }
 11206  
 11207  // Code returns the exception type name.
 11208  func (s *InvalidInputException) Code() string {
 11209  	return "InvalidInputException"
 11210  }
 11211  
 11212  // Message returns the exception's message.
 11213  func (s *InvalidInputException) Message() string {
 11214  	if s.Message_ != nil {
 11215  		return *s.Message_
 11216  	}
 11217  	return ""
 11218  }
 11219  
 11220  // OrigErr always returns nil, satisfies awserr.Error interface.
 11221  func (s *InvalidInputException) OrigErr() error {
 11222  	return nil
 11223  }
 11224  
 11225  func (s *InvalidInputException) Error() string {
 11226  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11227  }
 11228  
 11229  // Status code returns the HTTP status code for the request's response error.
 11230  func (s *InvalidInputException) StatusCode() int {
 11231  	return s.RespMetadata.StatusCode
 11232  }
 11233  
 11234  // RequestID returns the service's response RequestID for request.
 11235  func (s *InvalidInputException) RequestID() string {
 11236  	return s.RespMetadata.RequestID
 11237  }
 11238  
 11239  // The token is not valid.
 11240  type InvalidNextTokenException struct {
 11241  	_            struct{}                  `type:"structure"`
 11242  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11243  
 11244  	Message_ *string `locationName:"message" type:"string"`
 11245  }
 11246  
 11247  // String returns the string representation.
 11248  //
 11249  // API parameter values that are decorated as "sensitive" in the API will not
 11250  // be included in the string output. The member name will be present, but the
 11251  // value will be replaced with "sensitive".
 11252  func (s InvalidNextTokenException) String() string {
 11253  	return awsutil.Prettify(s)
 11254  }
 11255  
 11256  // GoString returns the string representation.
 11257  //
 11258  // API parameter values that are decorated as "sensitive" in the API will not
 11259  // be included in the string output. The member name will be present, but the
 11260  // value will be replaced with "sensitive".
 11261  func (s InvalidNextTokenException) GoString() string {
 11262  	return s.String()
 11263  }
 11264  
 11265  func newErrorInvalidNextTokenException(v protocol.ResponseMetadata) error {
 11266  	return &InvalidNextTokenException{
 11267  		RespMetadata: v,
 11268  	}
 11269  }
 11270  
 11271  // Code returns the exception type name.
 11272  func (s *InvalidNextTokenException) Code() string {
 11273  	return "InvalidNextTokenException"
 11274  }
 11275  
 11276  // Message returns the exception's message.
 11277  func (s *InvalidNextTokenException) Message() string {
 11278  	if s.Message_ != nil {
 11279  		return *s.Message_
 11280  	}
 11281  	return ""
 11282  }
 11283  
 11284  // OrigErr always returns nil, satisfies awserr.Error interface.
 11285  func (s *InvalidNextTokenException) OrigErr() error {
 11286  	return nil
 11287  }
 11288  
 11289  func (s *InvalidNextTokenException) Error() string {
 11290  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11291  }
 11292  
 11293  // Status code returns the HTTP status code for the request's response error.
 11294  func (s *InvalidNextTokenException) StatusCode() int {
 11295  	return s.RespMetadata.StatusCode
 11296  }
 11297  
 11298  // RequestID returns the service's response RequestID for request.
 11299  func (s *InvalidNextTokenException) RequestID() string {
 11300  	return s.RespMetadata.RequestID
 11301  }
 11302  
 11303  // The limit on the number of requests per second has been exceeded.
 11304  type LimitExceededException struct {
 11305  	_            struct{}                  `type:"structure"`
 11306  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11307  
 11308  	Message_ *string `locationName:"message" type:"string"`
 11309  }
 11310  
 11311  // String returns the string representation.
 11312  //
 11313  // API parameter values that are decorated as "sensitive" in the API will not
 11314  // be included in the string output. The member name will be present, but the
 11315  // value will be replaced with "sensitive".
 11316  func (s LimitExceededException) String() string {
 11317  	return awsutil.Prettify(s)
 11318  }
 11319  
 11320  // GoString returns the string representation.
 11321  //
 11322  // API parameter values that are decorated as "sensitive" in the API will not
 11323  // be included in the string output. The member name will be present, but the
 11324  // value will be replaced with "sensitive".
 11325  func (s LimitExceededException) GoString() string {
 11326  	return s.String()
 11327  }
 11328  
 11329  func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
 11330  	return &LimitExceededException{
 11331  		RespMetadata: v,
 11332  	}
 11333  }
 11334  
 11335  // Code returns the exception type name.
 11336  func (s *LimitExceededException) Code() string {
 11337  	return "LimitExceededException"
 11338  }
 11339  
 11340  // Message returns the exception's message.
 11341  func (s *LimitExceededException) Message() string {
 11342  	if s.Message_ != nil {
 11343  		return *s.Message_
 11344  	}
 11345  	return ""
 11346  }
 11347  
 11348  // OrigErr always returns nil, satisfies awserr.Error interface.
 11349  func (s *LimitExceededException) OrigErr() error {
 11350  	return nil
 11351  }
 11352  
 11353  func (s *LimitExceededException) Error() string {
 11354  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11355  }
 11356  
 11357  // Status code returns the HTTP status code for the request's response error.
 11358  func (s *LimitExceededException) StatusCode() int {
 11359  	return s.RespMetadata.StatusCode
 11360  }
 11361  
 11362  // RequestID returns the service's response RequestID for request.
 11363  func (s *LimitExceededException) RequestID() string {
 11364  	return s.RespMetadata.RequestID
 11365  }
 11366  
 11367  type ListBatchInferenceJobsInput struct {
 11368  	_ struct{} `type:"structure"`
 11369  
 11370  	// The maximum number of batch inference job results to return in each page.
 11371  	// The default value is 100.
 11372  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 11373  
 11374  	// The token to request the next page of results.
 11375  	NextToken *string `locationName:"nextToken" type:"string"`
 11376  
 11377  	// The Amazon Resource Name (ARN) of the solution version from which the batch
 11378  	// inference jobs were created.
 11379  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
 11380  }
 11381  
 11382  // String returns the string representation.
 11383  //
 11384  // API parameter values that are decorated as "sensitive" in the API will not
 11385  // be included in the string output. The member name will be present, but the
 11386  // value will be replaced with "sensitive".
 11387  func (s ListBatchInferenceJobsInput) String() string {
 11388  	return awsutil.Prettify(s)
 11389  }
 11390  
 11391  // GoString returns the string representation.
 11392  //
 11393  // API parameter values that are decorated as "sensitive" in the API will not
 11394  // be included in the string output. The member name will be present, but the
 11395  // value will be replaced with "sensitive".
 11396  func (s ListBatchInferenceJobsInput) GoString() string {
 11397  	return s.String()
 11398  }
 11399  
 11400  // Validate inspects the fields of the type to determine if they are valid.
 11401  func (s *ListBatchInferenceJobsInput) Validate() error {
 11402  	invalidParams := request.ErrInvalidParams{Context: "ListBatchInferenceJobsInput"}
 11403  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11404  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11405  	}
 11406  
 11407  	if invalidParams.Len() > 0 {
 11408  		return invalidParams
 11409  	}
 11410  	return nil
 11411  }
 11412  
 11413  // SetMaxResults sets the MaxResults field's value.
 11414  func (s *ListBatchInferenceJobsInput) SetMaxResults(v int64) *ListBatchInferenceJobsInput {
 11415  	s.MaxResults = &v
 11416  	return s
 11417  }
 11418  
 11419  // SetNextToken sets the NextToken field's value.
 11420  func (s *ListBatchInferenceJobsInput) SetNextToken(v string) *ListBatchInferenceJobsInput {
 11421  	s.NextToken = &v
 11422  	return s
 11423  }
 11424  
 11425  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 11426  func (s *ListBatchInferenceJobsInput) SetSolutionVersionArn(v string) *ListBatchInferenceJobsInput {
 11427  	s.SolutionVersionArn = &v
 11428  	return s
 11429  }
 11430  
 11431  type ListBatchInferenceJobsOutput struct {
 11432  	_ struct{} `type:"structure"`
 11433  
 11434  	// A list containing information on each job that is returned.
 11435  	BatchInferenceJobs []*BatchInferenceJobSummary `locationName:"batchInferenceJobs" type:"list"`
 11436  
 11437  	// The token to use to retrieve the next page of results. The value is null
 11438  	// when there are no more results to return.
 11439  	NextToken *string `locationName:"nextToken" type:"string"`
 11440  }
 11441  
 11442  // String returns the string representation.
 11443  //
 11444  // API parameter values that are decorated as "sensitive" in the API will not
 11445  // be included in the string output. The member name will be present, but the
 11446  // value will be replaced with "sensitive".
 11447  func (s ListBatchInferenceJobsOutput) String() string {
 11448  	return awsutil.Prettify(s)
 11449  }
 11450  
 11451  // GoString returns the string representation.
 11452  //
 11453  // API parameter values that are decorated as "sensitive" in the API will not
 11454  // be included in the string output. The member name will be present, but the
 11455  // value will be replaced with "sensitive".
 11456  func (s ListBatchInferenceJobsOutput) GoString() string {
 11457  	return s.String()
 11458  }
 11459  
 11460  // SetBatchInferenceJobs sets the BatchInferenceJobs field's value.
 11461  func (s *ListBatchInferenceJobsOutput) SetBatchInferenceJobs(v []*BatchInferenceJobSummary) *ListBatchInferenceJobsOutput {
 11462  	s.BatchInferenceJobs = v
 11463  	return s
 11464  }
 11465  
 11466  // SetNextToken sets the NextToken field's value.
 11467  func (s *ListBatchInferenceJobsOutput) SetNextToken(v string) *ListBatchInferenceJobsOutput {
 11468  	s.NextToken = &v
 11469  	return s
 11470  }
 11471  
 11472  type ListCampaignsInput struct {
 11473  	_ struct{} `type:"structure"`
 11474  
 11475  	// The maximum number of campaigns to return.
 11476  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 11477  
 11478  	// A token returned from the previous call to ListCampaigns for getting the
 11479  	// next set of campaigns (if they exist).
 11480  	NextToken *string `locationName:"nextToken" type:"string"`
 11481  
 11482  	// The Amazon Resource Name (ARN) of the solution to list the campaigns for.
 11483  	// When a solution is not specified, all the campaigns associated with the account
 11484  	// are listed.
 11485  	SolutionArn *string `locationName:"solutionArn" type:"string"`
 11486  }
 11487  
 11488  // String returns the string representation.
 11489  //
 11490  // API parameter values that are decorated as "sensitive" in the API will not
 11491  // be included in the string output. The member name will be present, but the
 11492  // value will be replaced with "sensitive".
 11493  func (s ListCampaignsInput) String() string {
 11494  	return awsutil.Prettify(s)
 11495  }
 11496  
 11497  // GoString returns the string representation.
 11498  //
 11499  // API parameter values that are decorated as "sensitive" in the API will not
 11500  // be included in the string output. The member name will be present, but the
 11501  // value will be replaced with "sensitive".
 11502  func (s ListCampaignsInput) GoString() string {
 11503  	return s.String()
 11504  }
 11505  
 11506  // Validate inspects the fields of the type to determine if they are valid.
 11507  func (s *ListCampaignsInput) Validate() error {
 11508  	invalidParams := request.ErrInvalidParams{Context: "ListCampaignsInput"}
 11509  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11510  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11511  	}
 11512  
 11513  	if invalidParams.Len() > 0 {
 11514  		return invalidParams
 11515  	}
 11516  	return nil
 11517  }
 11518  
 11519  // SetMaxResults sets the MaxResults field's value.
 11520  func (s *ListCampaignsInput) SetMaxResults(v int64) *ListCampaignsInput {
 11521  	s.MaxResults = &v
 11522  	return s
 11523  }
 11524  
 11525  // SetNextToken sets the NextToken field's value.
 11526  func (s *ListCampaignsInput) SetNextToken(v string) *ListCampaignsInput {
 11527  	s.NextToken = &v
 11528  	return s
 11529  }
 11530  
 11531  // SetSolutionArn sets the SolutionArn field's value.
 11532  func (s *ListCampaignsInput) SetSolutionArn(v string) *ListCampaignsInput {
 11533  	s.SolutionArn = &v
 11534  	return s
 11535  }
 11536  
 11537  type ListCampaignsOutput struct {
 11538  	_ struct{} `type:"structure"`
 11539  
 11540  	// A list of the campaigns.
 11541  	Campaigns []*CampaignSummary `locationName:"campaigns" type:"list"`
 11542  
 11543  	// A token for getting the next set of campaigns (if they exist).
 11544  	NextToken *string `locationName:"nextToken" type:"string"`
 11545  }
 11546  
 11547  // String returns the string representation.
 11548  //
 11549  // API parameter values that are decorated as "sensitive" in the API will not
 11550  // be included in the string output. The member name will be present, but the
 11551  // value will be replaced with "sensitive".
 11552  func (s ListCampaignsOutput) String() string {
 11553  	return awsutil.Prettify(s)
 11554  }
 11555  
 11556  // GoString returns the string representation.
 11557  //
 11558  // API parameter values that are decorated as "sensitive" in the API will not
 11559  // be included in the string output. The member name will be present, but the
 11560  // value will be replaced with "sensitive".
 11561  func (s ListCampaignsOutput) GoString() string {
 11562  	return s.String()
 11563  }
 11564  
 11565  // SetCampaigns sets the Campaigns field's value.
 11566  func (s *ListCampaignsOutput) SetCampaigns(v []*CampaignSummary) *ListCampaignsOutput {
 11567  	s.Campaigns = v
 11568  	return s
 11569  }
 11570  
 11571  // SetNextToken sets the NextToken field's value.
 11572  func (s *ListCampaignsOutput) SetNextToken(v string) *ListCampaignsOutput {
 11573  	s.NextToken = &v
 11574  	return s
 11575  }
 11576  
 11577  type ListDatasetExportJobsInput struct {
 11578  	_ struct{} `type:"structure"`
 11579  
 11580  	// The Amazon Resource Name (ARN) of the dataset to list the dataset export
 11581  	// jobs for.
 11582  	DatasetArn *string `locationName:"datasetArn" type:"string"`
 11583  
 11584  	// The maximum number of dataset export jobs to return.
 11585  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 11586  
 11587  	// A token returned from the previous call to ListDatasetExportJobs for getting
 11588  	// the next set of dataset export jobs (if they exist).
 11589  	NextToken *string `locationName:"nextToken" type:"string"`
 11590  }
 11591  
 11592  // String returns the string representation.
 11593  //
 11594  // API parameter values that are decorated as "sensitive" in the API will not
 11595  // be included in the string output. The member name will be present, but the
 11596  // value will be replaced with "sensitive".
 11597  func (s ListDatasetExportJobsInput) String() string {
 11598  	return awsutil.Prettify(s)
 11599  }
 11600  
 11601  // GoString returns the string representation.
 11602  //
 11603  // API parameter values that are decorated as "sensitive" in the API will not
 11604  // be included in the string output. The member name will be present, but the
 11605  // value will be replaced with "sensitive".
 11606  func (s ListDatasetExportJobsInput) GoString() string {
 11607  	return s.String()
 11608  }
 11609  
 11610  // Validate inspects the fields of the type to determine if they are valid.
 11611  func (s *ListDatasetExportJobsInput) Validate() error {
 11612  	invalidParams := request.ErrInvalidParams{Context: "ListDatasetExportJobsInput"}
 11613  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11614  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11615  	}
 11616  
 11617  	if invalidParams.Len() > 0 {
 11618  		return invalidParams
 11619  	}
 11620  	return nil
 11621  }
 11622  
 11623  // SetDatasetArn sets the DatasetArn field's value.
 11624  func (s *ListDatasetExportJobsInput) SetDatasetArn(v string) *ListDatasetExportJobsInput {
 11625  	s.DatasetArn = &v
 11626  	return s
 11627  }
 11628  
 11629  // SetMaxResults sets the MaxResults field's value.
 11630  func (s *ListDatasetExportJobsInput) SetMaxResults(v int64) *ListDatasetExportJobsInput {
 11631  	s.MaxResults = &v
 11632  	return s
 11633  }
 11634  
 11635  // SetNextToken sets the NextToken field's value.
 11636  func (s *ListDatasetExportJobsInput) SetNextToken(v string) *ListDatasetExportJobsInput {
 11637  	s.NextToken = &v
 11638  	return s
 11639  }
 11640  
 11641  type ListDatasetExportJobsOutput struct {
 11642  	_ struct{} `type:"structure"`
 11643  
 11644  	// The list of dataset export jobs.
 11645  	DatasetExportJobs []*DatasetExportJobSummary `locationName:"datasetExportJobs" type:"list"`
 11646  
 11647  	// A token for getting the next set of dataset export jobs (if they exist).
 11648  	NextToken *string `locationName:"nextToken" type:"string"`
 11649  }
 11650  
 11651  // String returns the string representation.
 11652  //
 11653  // API parameter values that are decorated as "sensitive" in the API will not
 11654  // be included in the string output. The member name will be present, but the
 11655  // value will be replaced with "sensitive".
 11656  func (s ListDatasetExportJobsOutput) String() string {
 11657  	return awsutil.Prettify(s)
 11658  }
 11659  
 11660  // GoString returns the string representation.
 11661  //
 11662  // API parameter values that are decorated as "sensitive" in the API will not
 11663  // be included in the string output. The member name will be present, but the
 11664  // value will be replaced with "sensitive".
 11665  func (s ListDatasetExportJobsOutput) GoString() string {
 11666  	return s.String()
 11667  }
 11668  
 11669  // SetDatasetExportJobs sets the DatasetExportJobs field's value.
 11670  func (s *ListDatasetExportJobsOutput) SetDatasetExportJobs(v []*DatasetExportJobSummary) *ListDatasetExportJobsOutput {
 11671  	s.DatasetExportJobs = v
 11672  	return s
 11673  }
 11674  
 11675  // SetNextToken sets the NextToken field's value.
 11676  func (s *ListDatasetExportJobsOutput) SetNextToken(v string) *ListDatasetExportJobsOutput {
 11677  	s.NextToken = &v
 11678  	return s
 11679  }
 11680  
 11681  type ListDatasetGroupsInput struct {
 11682  	_ struct{} `type:"structure"`
 11683  
 11684  	// The maximum number of dataset groups to return.
 11685  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 11686  
 11687  	// A token returned from the previous call to ListDatasetGroups for getting
 11688  	// the next set of dataset groups (if they exist).
 11689  	NextToken *string `locationName:"nextToken" type:"string"`
 11690  }
 11691  
 11692  // String returns the string representation.
 11693  //
 11694  // API parameter values that are decorated as "sensitive" in the API will not
 11695  // be included in the string output. The member name will be present, but the
 11696  // value will be replaced with "sensitive".
 11697  func (s ListDatasetGroupsInput) String() string {
 11698  	return awsutil.Prettify(s)
 11699  }
 11700  
 11701  // GoString returns the string representation.
 11702  //
 11703  // API parameter values that are decorated as "sensitive" in the API will not
 11704  // be included in the string output. The member name will be present, but the
 11705  // value will be replaced with "sensitive".
 11706  func (s ListDatasetGroupsInput) GoString() string {
 11707  	return s.String()
 11708  }
 11709  
 11710  // Validate inspects the fields of the type to determine if they are valid.
 11711  func (s *ListDatasetGroupsInput) Validate() error {
 11712  	invalidParams := request.ErrInvalidParams{Context: "ListDatasetGroupsInput"}
 11713  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11714  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11715  	}
 11716  
 11717  	if invalidParams.Len() > 0 {
 11718  		return invalidParams
 11719  	}
 11720  	return nil
 11721  }
 11722  
 11723  // SetMaxResults sets the MaxResults field's value.
 11724  func (s *ListDatasetGroupsInput) SetMaxResults(v int64) *ListDatasetGroupsInput {
 11725  	s.MaxResults = &v
 11726  	return s
 11727  }
 11728  
 11729  // SetNextToken sets the NextToken field's value.
 11730  func (s *ListDatasetGroupsInput) SetNextToken(v string) *ListDatasetGroupsInput {
 11731  	s.NextToken = &v
 11732  	return s
 11733  }
 11734  
 11735  type ListDatasetGroupsOutput struct {
 11736  	_ struct{} `type:"structure"`
 11737  
 11738  	// The list of your dataset groups.
 11739  	DatasetGroups []*DatasetGroupSummary `locationName:"datasetGroups" type:"list"`
 11740  
 11741  	// A token for getting the next set of dataset groups (if they exist).
 11742  	NextToken *string `locationName:"nextToken" type:"string"`
 11743  }
 11744  
 11745  // String returns the string representation.
 11746  //
 11747  // API parameter values that are decorated as "sensitive" in the API will not
 11748  // be included in the string output. The member name will be present, but the
 11749  // value will be replaced with "sensitive".
 11750  func (s ListDatasetGroupsOutput) String() string {
 11751  	return awsutil.Prettify(s)
 11752  }
 11753  
 11754  // GoString returns the string representation.
 11755  //
 11756  // API parameter values that are decorated as "sensitive" in the API will not
 11757  // be included in the string output. The member name will be present, but the
 11758  // value will be replaced with "sensitive".
 11759  func (s ListDatasetGroupsOutput) GoString() string {
 11760  	return s.String()
 11761  }
 11762  
 11763  // SetDatasetGroups sets the DatasetGroups field's value.
 11764  func (s *ListDatasetGroupsOutput) SetDatasetGroups(v []*DatasetGroupSummary) *ListDatasetGroupsOutput {
 11765  	s.DatasetGroups = v
 11766  	return s
 11767  }
 11768  
 11769  // SetNextToken sets the NextToken field's value.
 11770  func (s *ListDatasetGroupsOutput) SetNextToken(v string) *ListDatasetGroupsOutput {
 11771  	s.NextToken = &v
 11772  	return s
 11773  }
 11774  
 11775  type ListDatasetImportJobsInput struct {
 11776  	_ struct{} `type:"structure"`
 11777  
 11778  	// The Amazon Resource Name (ARN) of the dataset to list the dataset import
 11779  	// jobs for.
 11780  	DatasetArn *string `locationName:"datasetArn" type:"string"`
 11781  
 11782  	// The maximum number of dataset import jobs to return.
 11783  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 11784  
 11785  	// A token returned from the previous call to ListDatasetImportJobs for getting
 11786  	// the next set of dataset import jobs (if they exist).
 11787  	NextToken *string `locationName:"nextToken" type:"string"`
 11788  }
 11789  
 11790  // String returns the string representation.
 11791  //
 11792  // API parameter values that are decorated as "sensitive" in the API will not
 11793  // be included in the string output. The member name will be present, but the
 11794  // value will be replaced with "sensitive".
 11795  func (s ListDatasetImportJobsInput) String() string {
 11796  	return awsutil.Prettify(s)
 11797  }
 11798  
 11799  // GoString returns the string representation.
 11800  //
 11801  // API parameter values that are decorated as "sensitive" in the API will not
 11802  // be included in the string output. The member name will be present, but the
 11803  // value will be replaced with "sensitive".
 11804  func (s ListDatasetImportJobsInput) GoString() string {
 11805  	return s.String()
 11806  }
 11807  
 11808  // Validate inspects the fields of the type to determine if they are valid.
 11809  func (s *ListDatasetImportJobsInput) Validate() error {
 11810  	invalidParams := request.ErrInvalidParams{Context: "ListDatasetImportJobsInput"}
 11811  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11812  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11813  	}
 11814  
 11815  	if invalidParams.Len() > 0 {
 11816  		return invalidParams
 11817  	}
 11818  	return nil
 11819  }
 11820  
 11821  // SetDatasetArn sets the DatasetArn field's value.
 11822  func (s *ListDatasetImportJobsInput) SetDatasetArn(v string) *ListDatasetImportJobsInput {
 11823  	s.DatasetArn = &v
 11824  	return s
 11825  }
 11826  
 11827  // SetMaxResults sets the MaxResults field's value.
 11828  func (s *ListDatasetImportJobsInput) SetMaxResults(v int64) *ListDatasetImportJobsInput {
 11829  	s.MaxResults = &v
 11830  	return s
 11831  }
 11832  
 11833  // SetNextToken sets the NextToken field's value.
 11834  func (s *ListDatasetImportJobsInput) SetNextToken(v string) *ListDatasetImportJobsInput {
 11835  	s.NextToken = &v
 11836  	return s
 11837  }
 11838  
 11839  type ListDatasetImportJobsOutput struct {
 11840  	_ struct{} `type:"structure"`
 11841  
 11842  	// The list of dataset import jobs.
 11843  	DatasetImportJobs []*DatasetImportJobSummary `locationName:"datasetImportJobs" type:"list"`
 11844  
 11845  	// A token for getting the next set of dataset import jobs (if they exist).
 11846  	NextToken *string `locationName:"nextToken" type:"string"`
 11847  }
 11848  
 11849  // String returns the string representation.
 11850  //
 11851  // API parameter values that are decorated as "sensitive" in the API will not
 11852  // be included in the string output. The member name will be present, but the
 11853  // value will be replaced with "sensitive".
 11854  func (s ListDatasetImportJobsOutput) String() string {
 11855  	return awsutil.Prettify(s)
 11856  }
 11857  
 11858  // GoString returns the string representation.
 11859  //
 11860  // API parameter values that are decorated as "sensitive" in the API will not
 11861  // be included in the string output. The member name will be present, but the
 11862  // value will be replaced with "sensitive".
 11863  func (s ListDatasetImportJobsOutput) GoString() string {
 11864  	return s.String()
 11865  }
 11866  
 11867  // SetDatasetImportJobs sets the DatasetImportJobs field's value.
 11868  func (s *ListDatasetImportJobsOutput) SetDatasetImportJobs(v []*DatasetImportJobSummary) *ListDatasetImportJobsOutput {
 11869  	s.DatasetImportJobs = v
 11870  	return s
 11871  }
 11872  
 11873  // SetNextToken sets the NextToken field's value.
 11874  func (s *ListDatasetImportJobsOutput) SetNextToken(v string) *ListDatasetImportJobsOutput {
 11875  	s.NextToken = &v
 11876  	return s
 11877  }
 11878  
 11879  type ListDatasetsInput struct {
 11880  	_ struct{} `type:"structure"`
 11881  
 11882  	// The Amazon Resource Name (ARN) of the dataset group that contains the datasets
 11883  	// to list.
 11884  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 11885  
 11886  	// The maximum number of datasets to return.
 11887  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 11888  
 11889  	// A token returned from the previous call to ListDatasetImportJobs for getting
 11890  	// the next set of dataset import jobs (if they exist).
 11891  	NextToken *string `locationName:"nextToken" type:"string"`
 11892  }
 11893  
 11894  // String returns the string representation.
 11895  //
 11896  // API parameter values that are decorated as "sensitive" in the API will not
 11897  // be included in the string output. The member name will be present, but the
 11898  // value will be replaced with "sensitive".
 11899  func (s ListDatasetsInput) String() string {
 11900  	return awsutil.Prettify(s)
 11901  }
 11902  
 11903  // GoString returns the string representation.
 11904  //
 11905  // API parameter values that are decorated as "sensitive" in the API will not
 11906  // be included in the string output. The member name will be present, but the
 11907  // value will be replaced with "sensitive".
 11908  func (s ListDatasetsInput) GoString() string {
 11909  	return s.String()
 11910  }
 11911  
 11912  // Validate inspects the fields of the type to determine if they are valid.
 11913  func (s *ListDatasetsInput) Validate() error {
 11914  	invalidParams := request.ErrInvalidParams{Context: "ListDatasetsInput"}
 11915  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11916  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11917  	}
 11918  
 11919  	if invalidParams.Len() > 0 {
 11920  		return invalidParams
 11921  	}
 11922  	return nil
 11923  }
 11924  
 11925  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 11926  func (s *ListDatasetsInput) SetDatasetGroupArn(v string) *ListDatasetsInput {
 11927  	s.DatasetGroupArn = &v
 11928  	return s
 11929  }
 11930  
 11931  // SetMaxResults sets the MaxResults field's value.
 11932  func (s *ListDatasetsInput) SetMaxResults(v int64) *ListDatasetsInput {
 11933  	s.MaxResults = &v
 11934  	return s
 11935  }
 11936  
 11937  // SetNextToken sets the NextToken field's value.
 11938  func (s *ListDatasetsInput) SetNextToken(v string) *ListDatasetsInput {
 11939  	s.NextToken = &v
 11940  	return s
 11941  }
 11942  
 11943  type ListDatasetsOutput struct {
 11944  	_ struct{} `type:"structure"`
 11945  
 11946  	// An array of Dataset objects. Each object provides metadata information.
 11947  	Datasets []*DatasetSummary `locationName:"datasets" type:"list"`
 11948  
 11949  	// A token for getting the next set of datasets (if they exist).
 11950  	NextToken *string `locationName:"nextToken" type:"string"`
 11951  }
 11952  
 11953  // String returns the string representation.
 11954  //
 11955  // API parameter values that are decorated as "sensitive" in the API will not
 11956  // be included in the string output. The member name will be present, but the
 11957  // value will be replaced with "sensitive".
 11958  func (s ListDatasetsOutput) String() string {
 11959  	return awsutil.Prettify(s)
 11960  }
 11961  
 11962  // GoString returns the string representation.
 11963  //
 11964  // API parameter values that are decorated as "sensitive" in the API will not
 11965  // be included in the string output. The member name will be present, but the
 11966  // value will be replaced with "sensitive".
 11967  func (s ListDatasetsOutput) GoString() string {
 11968  	return s.String()
 11969  }
 11970  
 11971  // SetDatasets sets the Datasets field's value.
 11972  func (s *ListDatasetsOutput) SetDatasets(v []*DatasetSummary) *ListDatasetsOutput {
 11973  	s.Datasets = v
 11974  	return s
 11975  }
 11976  
 11977  // SetNextToken sets the NextToken field's value.
 11978  func (s *ListDatasetsOutput) SetNextToken(v string) *ListDatasetsOutput {
 11979  	s.NextToken = &v
 11980  	return s
 11981  }
 11982  
 11983  type ListEventTrackersInput struct {
 11984  	_ struct{} `type:"structure"`
 11985  
 11986  	// The ARN of a dataset group used to filter the response.
 11987  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 11988  
 11989  	// The maximum number of event trackers to return.
 11990  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 11991  
 11992  	// A token returned from the previous call to ListEventTrackers for getting
 11993  	// the next set of event trackers (if they exist).
 11994  	NextToken *string `locationName:"nextToken" type:"string"`
 11995  }
 11996  
 11997  // String returns the string representation.
 11998  //
 11999  // API parameter values that are decorated as "sensitive" in the API will not
 12000  // be included in the string output. The member name will be present, but the
 12001  // value will be replaced with "sensitive".
 12002  func (s ListEventTrackersInput) String() string {
 12003  	return awsutil.Prettify(s)
 12004  }
 12005  
 12006  // GoString returns the string representation.
 12007  //
 12008  // API parameter values that are decorated as "sensitive" in the API will not
 12009  // be included in the string output. The member name will be present, but the
 12010  // value will be replaced with "sensitive".
 12011  func (s ListEventTrackersInput) GoString() string {
 12012  	return s.String()
 12013  }
 12014  
 12015  // Validate inspects the fields of the type to determine if they are valid.
 12016  func (s *ListEventTrackersInput) Validate() error {
 12017  	invalidParams := request.ErrInvalidParams{Context: "ListEventTrackersInput"}
 12018  	if s.MaxResults != nil && *s.MaxResults < 1 {
 12019  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 12020  	}
 12021  
 12022  	if invalidParams.Len() > 0 {
 12023  		return invalidParams
 12024  	}
 12025  	return nil
 12026  }
 12027  
 12028  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 12029  func (s *ListEventTrackersInput) SetDatasetGroupArn(v string) *ListEventTrackersInput {
 12030  	s.DatasetGroupArn = &v
 12031  	return s
 12032  }
 12033  
 12034  // SetMaxResults sets the MaxResults field's value.
 12035  func (s *ListEventTrackersInput) SetMaxResults(v int64) *ListEventTrackersInput {
 12036  	s.MaxResults = &v
 12037  	return s
 12038  }
 12039  
 12040  // SetNextToken sets the NextToken field's value.
 12041  func (s *ListEventTrackersInput) SetNextToken(v string) *ListEventTrackersInput {
 12042  	s.NextToken = &v
 12043  	return s
 12044  }
 12045  
 12046  type ListEventTrackersOutput struct {
 12047  	_ struct{} `type:"structure"`
 12048  
 12049  	// A list of event trackers.
 12050  	EventTrackers []*EventTrackerSummary `locationName:"eventTrackers" type:"list"`
 12051  
 12052  	// A token for getting the next set of event trackers (if they exist).
 12053  	NextToken *string `locationName:"nextToken" type:"string"`
 12054  }
 12055  
 12056  // String returns the string representation.
 12057  //
 12058  // API parameter values that are decorated as "sensitive" in the API will not
 12059  // be included in the string output. The member name will be present, but the
 12060  // value will be replaced with "sensitive".
 12061  func (s ListEventTrackersOutput) String() string {
 12062  	return awsutil.Prettify(s)
 12063  }
 12064  
 12065  // GoString returns the string representation.
 12066  //
 12067  // API parameter values that are decorated as "sensitive" in the API will not
 12068  // be included in the string output. The member name will be present, but the
 12069  // value will be replaced with "sensitive".
 12070  func (s ListEventTrackersOutput) GoString() string {
 12071  	return s.String()
 12072  }
 12073  
 12074  // SetEventTrackers sets the EventTrackers field's value.
 12075  func (s *ListEventTrackersOutput) SetEventTrackers(v []*EventTrackerSummary) *ListEventTrackersOutput {
 12076  	s.EventTrackers = v
 12077  	return s
 12078  }
 12079  
 12080  // SetNextToken sets the NextToken field's value.
 12081  func (s *ListEventTrackersOutput) SetNextToken(v string) *ListEventTrackersOutput {
 12082  	s.NextToken = &v
 12083  	return s
 12084  }
 12085  
 12086  type ListFiltersInput struct {
 12087  	_ struct{} `type:"structure"`
 12088  
 12089  	// The ARN of the dataset group that contains the filters.
 12090  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 12091  
 12092  	// The maximum number of filters to return.
 12093  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 12094  
 12095  	// A token returned from the previous call to ListFilters for getting the next
 12096  	// set of filters (if they exist).
 12097  	NextToken *string `locationName:"nextToken" type:"string"`
 12098  }
 12099  
 12100  // String returns the string representation.
 12101  //
 12102  // API parameter values that are decorated as "sensitive" in the API will not
 12103  // be included in the string output. The member name will be present, but the
 12104  // value will be replaced with "sensitive".
 12105  func (s ListFiltersInput) String() string {
 12106  	return awsutil.Prettify(s)
 12107  }
 12108  
 12109  // GoString returns the string representation.
 12110  //
 12111  // API parameter values that are decorated as "sensitive" in the API will not
 12112  // be included in the string output. The member name will be present, but the
 12113  // value will be replaced with "sensitive".
 12114  func (s ListFiltersInput) GoString() string {
 12115  	return s.String()
 12116  }
 12117  
 12118  // Validate inspects the fields of the type to determine if they are valid.
 12119  func (s *ListFiltersInput) Validate() error {
 12120  	invalidParams := request.ErrInvalidParams{Context: "ListFiltersInput"}
 12121  	if s.MaxResults != nil && *s.MaxResults < 1 {
 12122  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 12123  	}
 12124  
 12125  	if invalidParams.Len() > 0 {
 12126  		return invalidParams
 12127  	}
 12128  	return nil
 12129  }
 12130  
 12131  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 12132  func (s *ListFiltersInput) SetDatasetGroupArn(v string) *ListFiltersInput {
 12133  	s.DatasetGroupArn = &v
 12134  	return s
 12135  }
 12136  
 12137  // SetMaxResults sets the MaxResults field's value.
 12138  func (s *ListFiltersInput) SetMaxResults(v int64) *ListFiltersInput {
 12139  	s.MaxResults = &v
 12140  	return s
 12141  }
 12142  
 12143  // SetNextToken sets the NextToken field's value.
 12144  func (s *ListFiltersInput) SetNextToken(v string) *ListFiltersInput {
 12145  	s.NextToken = &v
 12146  	return s
 12147  }
 12148  
 12149  type ListFiltersOutput struct {
 12150  	_ struct{} `type:"structure"`
 12151  
 12152  	// A list of returned filters.
 12153  	Filters []*FilterSummary `type:"list"`
 12154  
 12155  	// A token for getting the next set of filters (if they exist).
 12156  	NextToken *string `locationName:"nextToken" type:"string"`
 12157  }
 12158  
 12159  // String returns the string representation.
 12160  //
 12161  // API parameter values that are decorated as "sensitive" in the API will not
 12162  // be included in the string output. The member name will be present, but the
 12163  // value will be replaced with "sensitive".
 12164  func (s ListFiltersOutput) String() string {
 12165  	return awsutil.Prettify(s)
 12166  }
 12167  
 12168  // GoString returns the string representation.
 12169  //
 12170  // API parameter values that are decorated as "sensitive" in the API will not
 12171  // be included in the string output. The member name will be present, but the
 12172  // value will be replaced with "sensitive".
 12173  func (s ListFiltersOutput) GoString() string {
 12174  	return s.String()
 12175  }
 12176  
 12177  // SetFilters sets the Filters field's value.
 12178  func (s *ListFiltersOutput) SetFilters(v []*FilterSummary) *ListFiltersOutput {
 12179  	s.Filters = v
 12180  	return s
 12181  }
 12182  
 12183  // SetNextToken sets the NextToken field's value.
 12184  func (s *ListFiltersOutput) SetNextToken(v string) *ListFiltersOutput {
 12185  	s.NextToken = &v
 12186  	return s
 12187  }
 12188  
 12189  type ListRecipesInput struct {
 12190  	_ struct{} `type:"structure"`
 12191  
 12192  	// The maximum number of recipes to return.
 12193  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 12194  
 12195  	// A token returned from the previous call to ListRecipes for getting the next
 12196  	// set of recipes (if they exist).
 12197  	NextToken *string `locationName:"nextToken" type:"string"`
 12198  
 12199  	// The default is SERVICE.
 12200  	RecipeProvider *string `locationName:"recipeProvider" type:"string" enum:"RecipeProvider"`
 12201  }
 12202  
 12203  // String returns the string representation.
 12204  //
 12205  // API parameter values that are decorated as "sensitive" in the API will not
 12206  // be included in the string output. The member name will be present, but the
 12207  // value will be replaced with "sensitive".
 12208  func (s ListRecipesInput) String() string {
 12209  	return awsutil.Prettify(s)
 12210  }
 12211  
 12212  // GoString returns the string representation.
 12213  //
 12214  // API parameter values that are decorated as "sensitive" in the API will not
 12215  // be included in the string output. The member name will be present, but the
 12216  // value will be replaced with "sensitive".
 12217  func (s ListRecipesInput) GoString() string {
 12218  	return s.String()
 12219  }
 12220  
 12221  // Validate inspects the fields of the type to determine if they are valid.
 12222  func (s *ListRecipesInput) Validate() error {
 12223  	invalidParams := request.ErrInvalidParams{Context: "ListRecipesInput"}
 12224  	if s.MaxResults != nil && *s.MaxResults < 1 {
 12225  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 12226  	}
 12227  
 12228  	if invalidParams.Len() > 0 {
 12229  		return invalidParams
 12230  	}
 12231  	return nil
 12232  }
 12233  
 12234  // SetMaxResults sets the MaxResults field's value.
 12235  func (s *ListRecipesInput) SetMaxResults(v int64) *ListRecipesInput {
 12236  	s.MaxResults = &v
 12237  	return s
 12238  }
 12239  
 12240  // SetNextToken sets the NextToken field's value.
 12241  func (s *ListRecipesInput) SetNextToken(v string) *ListRecipesInput {
 12242  	s.NextToken = &v
 12243  	return s
 12244  }
 12245  
 12246  // SetRecipeProvider sets the RecipeProvider field's value.
 12247  func (s *ListRecipesInput) SetRecipeProvider(v string) *ListRecipesInput {
 12248  	s.RecipeProvider = &v
 12249  	return s
 12250  }
 12251  
 12252  type ListRecipesOutput struct {
 12253  	_ struct{} `type:"structure"`
 12254  
 12255  	// A token for getting the next set of recipes.
 12256  	NextToken *string `locationName:"nextToken" type:"string"`
 12257  
 12258  	// The list of available recipes.
 12259  	Recipes []*RecipeSummary `locationName:"recipes" type:"list"`
 12260  }
 12261  
 12262  // String returns the string representation.
 12263  //
 12264  // API parameter values that are decorated as "sensitive" in the API will not
 12265  // be included in the string output. The member name will be present, but the
 12266  // value will be replaced with "sensitive".
 12267  func (s ListRecipesOutput) String() string {
 12268  	return awsutil.Prettify(s)
 12269  }
 12270  
 12271  // GoString returns the string representation.
 12272  //
 12273  // API parameter values that are decorated as "sensitive" in the API will not
 12274  // be included in the string output. The member name will be present, but the
 12275  // value will be replaced with "sensitive".
 12276  func (s ListRecipesOutput) GoString() string {
 12277  	return s.String()
 12278  }
 12279  
 12280  // SetNextToken sets the NextToken field's value.
 12281  func (s *ListRecipesOutput) SetNextToken(v string) *ListRecipesOutput {
 12282  	s.NextToken = &v
 12283  	return s
 12284  }
 12285  
 12286  // SetRecipes sets the Recipes field's value.
 12287  func (s *ListRecipesOutput) SetRecipes(v []*RecipeSummary) *ListRecipesOutput {
 12288  	s.Recipes = v
 12289  	return s
 12290  }
 12291  
 12292  type ListSchemasInput struct {
 12293  	_ struct{} `type:"structure"`
 12294  
 12295  	// The maximum number of schemas to return.
 12296  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 12297  
 12298  	// A token returned from the previous call to ListSchemas for getting the next
 12299  	// set of schemas (if they exist).
 12300  	NextToken *string `locationName:"nextToken" type:"string"`
 12301  }
 12302  
 12303  // String returns the string representation.
 12304  //
 12305  // API parameter values that are decorated as "sensitive" in the API will not
 12306  // be included in the string output. The member name will be present, but the
 12307  // value will be replaced with "sensitive".
 12308  func (s ListSchemasInput) String() string {
 12309  	return awsutil.Prettify(s)
 12310  }
 12311  
 12312  // GoString returns the string representation.
 12313  //
 12314  // API parameter values that are decorated as "sensitive" in the API will not
 12315  // be included in the string output. The member name will be present, but the
 12316  // value will be replaced with "sensitive".
 12317  func (s ListSchemasInput) GoString() string {
 12318  	return s.String()
 12319  }
 12320  
 12321  // Validate inspects the fields of the type to determine if they are valid.
 12322  func (s *ListSchemasInput) Validate() error {
 12323  	invalidParams := request.ErrInvalidParams{Context: "ListSchemasInput"}
 12324  	if s.MaxResults != nil && *s.MaxResults < 1 {
 12325  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 12326  	}
 12327  
 12328  	if invalidParams.Len() > 0 {
 12329  		return invalidParams
 12330  	}
 12331  	return nil
 12332  }
 12333  
 12334  // SetMaxResults sets the MaxResults field's value.
 12335  func (s *ListSchemasInput) SetMaxResults(v int64) *ListSchemasInput {
 12336  	s.MaxResults = &v
 12337  	return s
 12338  }
 12339  
 12340  // SetNextToken sets the NextToken field's value.
 12341  func (s *ListSchemasInput) SetNextToken(v string) *ListSchemasInput {
 12342  	s.NextToken = &v
 12343  	return s
 12344  }
 12345  
 12346  type ListSchemasOutput struct {
 12347  	_ struct{} `type:"structure"`
 12348  
 12349  	// A token used to get the next set of schemas (if they exist).
 12350  	NextToken *string `locationName:"nextToken" type:"string"`
 12351  
 12352  	// A list of schemas.
 12353  	Schemas []*DatasetSchemaSummary `locationName:"schemas" type:"list"`
 12354  }
 12355  
 12356  // String returns the string representation.
 12357  //
 12358  // API parameter values that are decorated as "sensitive" in the API will not
 12359  // be included in the string output. The member name will be present, but the
 12360  // value will be replaced with "sensitive".
 12361  func (s ListSchemasOutput) String() string {
 12362  	return awsutil.Prettify(s)
 12363  }
 12364  
 12365  // GoString returns the string representation.
 12366  //
 12367  // API parameter values that are decorated as "sensitive" in the API will not
 12368  // be included in the string output. The member name will be present, but the
 12369  // value will be replaced with "sensitive".
 12370  func (s ListSchemasOutput) GoString() string {
 12371  	return s.String()
 12372  }
 12373  
 12374  // SetNextToken sets the NextToken field's value.
 12375  func (s *ListSchemasOutput) SetNextToken(v string) *ListSchemasOutput {
 12376  	s.NextToken = &v
 12377  	return s
 12378  }
 12379  
 12380  // SetSchemas sets the Schemas field's value.
 12381  func (s *ListSchemasOutput) SetSchemas(v []*DatasetSchemaSummary) *ListSchemasOutput {
 12382  	s.Schemas = v
 12383  	return s
 12384  }
 12385  
 12386  type ListSolutionVersionsInput struct {
 12387  	_ struct{} `type:"structure"`
 12388  
 12389  	// The maximum number of solution versions to return.
 12390  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 12391  
 12392  	// A token returned from the previous call to ListSolutionVersions for getting
 12393  	// the next set of solution versions (if they exist).
 12394  	NextToken *string `locationName:"nextToken" type:"string"`
 12395  
 12396  	// The Amazon Resource Name (ARN) of the solution.
 12397  	SolutionArn *string `locationName:"solutionArn" type:"string"`
 12398  }
 12399  
 12400  // String returns the string representation.
 12401  //
 12402  // API parameter values that are decorated as "sensitive" in the API will not
 12403  // be included in the string output. The member name will be present, but the
 12404  // value will be replaced with "sensitive".
 12405  func (s ListSolutionVersionsInput) String() string {
 12406  	return awsutil.Prettify(s)
 12407  }
 12408  
 12409  // GoString returns the string representation.
 12410  //
 12411  // API parameter values that are decorated as "sensitive" in the API will not
 12412  // be included in the string output. The member name will be present, but the
 12413  // value will be replaced with "sensitive".
 12414  func (s ListSolutionVersionsInput) GoString() string {
 12415  	return s.String()
 12416  }
 12417  
 12418  // Validate inspects the fields of the type to determine if they are valid.
 12419  func (s *ListSolutionVersionsInput) Validate() error {
 12420  	invalidParams := request.ErrInvalidParams{Context: "ListSolutionVersionsInput"}
 12421  	if s.MaxResults != nil && *s.MaxResults < 1 {
 12422  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 12423  	}
 12424  
 12425  	if invalidParams.Len() > 0 {
 12426  		return invalidParams
 12427  	}
 12428  	return nil
 12429  }
 12430  
 12431  // SetMaxResults sets the MaxResults field's value.
 12432  func (s *ListSolutionVersionsInput) SetMaxResults(v int64) *ListSolutionVersionsInput {
 12433  	s.MaxResults = &v
 12434  	return s
 12435  }
 12436  
 12437  // SetNextToken sets the NextToken field's value.
 12438  func (s *ListSolutionVersionsInput) SetNextToken(v string) *ListSolutionVersionsInput {
 12439  	s.NextToken = &v
 12440  	return s
 12441  }
 12442  
 12443  // SetSolutionArn sets the SolutionArn field's value.
 12444  func (s *ListSolutionVersionsInput) SetSolutionArn(v string) *ListSolutionVersionsInput {
 12445  	s.SolutionArn = &v
 12446  	return s
 12447  }
 12448  
 12449  type ListSolutionVersionsOutput struct {
 12450  	_ struct{} `type:"structure"`
 12451  
 12452  	// A token for getting the next set of solution versions (if they exist).
 12453  	NextToken *string `locationName:"nextToken" type:"string"`
 12454  
 12455  	// A list of solution versions describing the version properties.
 12456  	SolutionVersions []*SolutionVersionSummary `locationName:"solutionVersions" type:"list"`
 12457  }
 12458  
 12459  // String returns the string representation.
 12460  //
 12461  // API parameter values that are decorated as "sensitive" in the API will not
 12462  // be included in the string output. The member name will be present, but the
 12463  // value will be replaced with "sensitive".
 12464  func (s ListSolutionVersionsOutput) String() string {
 12465  	return awsutil.Prettify(s)
 12466  }
 12467  
 12468  // GoString returns the string representation.
 12469  //
 12470  // API parameter values that are decorated as "sensitive" in the API will not
 12471  // be included in the string output. The member name will be present, but the
 12472  // value will be replaced with "sensitive".
 12473  func (s ListSolutionVersionsOutput) GoString() string {
 12474  	return s.String()
 12475  }
 12476  
 12477  // SetNextToken sets the NextToken field's value.
 12478  func (s *ListSolutionVersionsOutput) SetNextToken(v string) *ListSolutionVersionsOutput {
 12479  	s.NextToken = &v
 12480  	return s
 12481  }
 12482  
 12483  // SetSolutionVersions sets the SolutionVersions field's value.
 12484  func (s *ListSolutionVersionsOutput) SetSolutionVersions(v []*SolutionVersionSummary) *ListSolutionVersionsOutput {
 12485  	s.SolutionVersions = v
 12486  	return s
 12487  }
 12488  
 12489  type ListSolutionsInput struct {
 12490  	_ struct{} `type:"structure"`
 12491  
 12492  	// The Amazon Resource Name (ARN) of the dataset group.
 12493  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 12494  
 12495  	// The maximum number of solutions to return.
 12496  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 12497  
 12498  	// A token returned from the previous call to ListSolutions for getting the
 12499  	// next set of solutions (if they exist).
 12500  	NextToken *string `locationName:"nextToken" type:"string"`
 12501  }
 12502  
 12503  // String returns the string representation.
 12504  //
 12505  // API parameter values that are decorated as "sensitive" in the API will not
 12506  // be included in the string output. The member name will be present, but the
 12507  // value will be replaced with "sensitive".
 12508  func (s ListSolutionsInput) String() string {
 12509  	return awsutil.Prettify(s)
 12510  }
 12511  
 12512  // GoString returns the string representation.
 12513  //
 12514  // API parameter values that are decorated as "sensitive" in the API will not
 12515  // be included in the string output. The member name will be present, but the
 12516  // value will be replaced with "sensitive".
 12517  func (s ListSolutionsInput) GoString() string {
 12518  	return s.String()
 12519  }
 12520  
 12521  // Validate inspects the fields of the type to determine if they are valid.
 12522  func (s *ListSolutionsInput) Validate() error {
 12523  	invalidParams := request.ErrInvalidParams{Context: "ListSolutionsInput"}
 12524  	if s.MaxResults != nil && *s.MaxResults < 1 {
 12525  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 12526  	}
 12527  
 12528  	if invalidParams.Len() > 0 {
 12529  		return invalidParams
 12530  	}
 12531  	return nil
 12532  }
 12533  
 12534  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 12535  func (s *ListSolutionsInput) SetDatasetGroupArn(v string) *ListSolutionsInput {
 12536  	s.DatasetGroupArn = &v
 12537  	return s
 12538  }
 12539  
 12540  // SetMaxResults sets the MaxResults field's value.
 12541  func (s *ListSolutionsInput) SetMaxResults(v int64) *ListSolutionsInput {
 12542  	s.MaxResults = &v
 12543  	return s
 12544  }
 12545  
 12546  // SetNextToken sets the NextToken field's value.
 12547  func (s *ListSolutionsInput) SetNextToken(v string) *ListSolutionsInput {
 12548  	s.NextToken = &v
 12549  	return s
 12550  }
 12551  
 12552  type ListSolutionsOutput struct {
 12553  	_ struct{} `type:"structure"`
 12554  
 12555  	// A token for getting the next set of solutions (if they exist).
 12556  	NextToken *string `locationName:"nextToken" type:"string"`
 12557  
 12558  	// A list of the current solutions.
 12559  	Solutions []*SolutionSummary `locationName:"solutions" type:"list"`
 12560  }
 12561  
 12562  // String returns the string representation.
 12563  //
 12564  // API parameter values that are decorated as "sensitive" in the API will not
 12565  // be included in the string output. The member name will be present, but the
 12566  // value will be replaced with "sensitive".
 12567  func (s ListSolutionsOutput) String() string {
 12568  	return awsutil.Prettify(s)
 12569  }
 12570  
 12571  // GoString returns the string representation.
 12572  //
 12573  // API parameter values that are decorated as "sensitive" in the API will not
 12574  // be included in the string output. The member name will be present, but the
 12575  // value will be replaced with "sensitive".
 12576  func (s ListSolutionsOutput) GoString() string {
 12577  	return s.String()
 12578  }
 12579  
 12580  // SetNextToken sets the NextToken field's value.
 12581  func (s *ListSolutionsOutput) SetNextToken(v string) *ListSolutionsOutput {
 12582  	s.NextToken = &v
 12583  	return s
 12584  }
 12585  
 12586  // SetSolutions sets the Solutions field's value.
 12587  func (s *ListSolutionsOutput) SetSolutions(v []*SolutionSummary) *ListSolutionsOutput {
 12588  	s.Solutions = v
 12589  	return s
 12590  }
 12591  
 12592  // Describes the additional objective for the solution, such as maximizing streaming
 12593  // minutes or increasing revenue. For more information see Optimizing a solution
 12594  // (https://docs.aws.amazon.com/personalize/latest/dg/optimizing-solution-for-objective.html).
 12595  type OptimizationObjective struct {
 12596  	_ struct{} `type:"structure"`
 12597  
 12598  	// The numerical metadata column in an Items dataset related to the optimization
 12599  	// objective. For example, VIDEO_LENGTH (to maximize streaming minutes), or
 12600  	// PRICE (to maximize revenue).
 12601  	ItemAttribute *string `locationName:"itemAttribute" min:"1" type:"string"`
 12602  
 12603  	// Specifies how Amazon Personalize balances the importance of your optimization
 12604  	// objective versus relevance.
 12605  	ObjectiveSensitivity *string `locationName:"objectiveSensitivity" type:"string" enum:"ObjectiveSensitivity"`
 12606  }
 12607  
 12608  // String returns the string representation.
 12609  //
 12610  // API parameter values that are decorated as "sensitive" in the API will not
 12611  // be included in the string output. The member name will be present, but the
 12612  // value will be replaced with "sensitive".
 12613  func (s OptimizationObjective) String() string {
 12614  	return awsutil.Prettify(s)
 12615  }
 12616  
 12617  // GoString returns the string representation.
 12618  //
 12619  // API parameter values that are decorated as "sensitive" in the API will not
 12620  // be included in the string output. The member name will be present, but the
 12621  // value will be replaced with "sensitive".
 12622  func (s OptimizationObjective) GoString() string {
 12623  	return s.String()
 12624  }
 12625  
 12626  // Validate inspects the fields of the type to determine if they are valid.
 12627  func (s *OptimizationObjective) Validate() error {
 12628  	invalidParams := request.ErrInvalidParams{Context: "OptimizationObjective"}
 12629  	if s.ItemAttribute != nil && len(*s.ItemAttribute) < 1 {
 12630  		invalidParams.Add(request.NewErrParamMinLen("ItemAttribute", 1))
 12631  	}
 12632  
 12633  	if invalidParams.Len() > 0 {
 12634  		return invalidParams
 12635  	}
 12636  	return nil
 12637  }
 12638  
 12639  // SetItemAttribute sets the ItemAttribute field's value.
 12640  func (s *OptimizationObjective) SetItemAttribute(v string) *OptimizationObjective {
 12641  	s.ItemAttribute = &v
 12642  	return s
 12643  }
 12644  
 12645  // SetObjectiveSensitivity sets the ObjectiveSensitivity field's value.
 12646  func (s *OptimizationObjective) SetObjectiveSensitivity(v string) *OptimizationObjective {
 12647  	s.ObjectiveSensitivity = &v
 12648  	return s
 12649  }
 12650  
 12651  // Provides information about a recipe. Each recipe provides an algorithm that
 12652  // Amazon Personalize uses in model training when you use the CreateSolution
 12653  // operation.
 12654  type Recipe struct {
 12655  	_ struct{} `type:"structure"`
 12656  
 12657  	// The Amazon Resource Name (ARN) of the algorithm that Amazon Personalize uses
 12658  	// to train the model.
 12659  	AlgorithmArn *string `locationName:"algorithmArn" type:"string"`
 12660  
 12661  	// The date and time (in Unix format) that the recipe was created.
 12662  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 12663  
 12664  	// The description of the recipe.
 12665  	Description *string `locationName:"description" type:"string"`
 12666  
 12667  	// The ARN of the FeatureTransformation object.
 12668  	FeatureTransformationArn *string `locationName:"featureTransformationArn" type:"string"`
 12669  
 12670  	// The date and time (in Unix format) that the recipe was last updated.
 12671  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 12672  
 12673  	// The name of the recipe.
 12674  	Name *string `locationName:"name" min:"1" type:"string"`
 12675  
 12676  	// The Amazon Resource Name (ARN) of the recipe.
 12677  	RecipeArn *string `locationName:"recipeArn" type:"string"`
 12678  
 12679  	// One of the following values:
 12680  	//
 12681  	//    * PERSONALIZED_RANKING
 12682  	//
 12683  	//    * RELATED_ITEMS
 12684  	//
 12685  	//    * USER_PERSONALIZATION
 12686  	RecipeType *string `locationName:"recipeType" type:"string"`
 12687  
 12688  	// The status of the recipe.
 12689  	Status *string `locationName:"status" type:"string"`
 12690  }
 12691  
 12692  // String returns the string representation.
 12693  //
 12694  // API parameter values that are decorated as "sensitive" in the API will not
 12695  // be included in the string output. The member name will be present, but the
 12696  // value will be replaced with "sensitive".
 12697  func (s Recipe) String() string {
 12698  	return awsutil.Prettify(s)
 12699  }
 12700  
 12701  // GoString returns the string representation.
 12702  //
 12703  // API parameter values that are decorated as "sensitive" in the API will not
 12704  // be included in the string output. The member name will be present, but the
 12705  // value will be replaced with "sensitive".
 12706  func (s Recipe) GoString() string {
 12707  	return s.String()
 12708  }
 12709  
 12710  // SetAlgorithmArn sets the AlgorithmArn field's value.
 12711  func (s *Recipe) SetAlgorithmArn(v string) *Recipe {
 12712  	s.AlgorithmArn = &v
 12713  	return s
 12714  }
 12715  
 12716  // SetCreationDateTime sets the CreationDateTime field's value.
 12717  func (s *Recipe) SetCreationDateTime(v time.Time) *Recipe {
 12718  	s.CreationDateTime = &v
 12719  	return s
 12720  }
 12721  
 12722  // SetDescription sets the Description field's value.
 12723  func (s *Recipe) SetDescription(v string) *Recipe {
 12724  	s.Description = &v
 12725  	return s
 12726  }
 12727  
 12728  // SetFeatureTransformationArn sets the FeatureTransformationArn field's value.
 12729  func (s *Recipe) SetFeatureTransformationArn(v string) *Recipe {
 12730  	s.FeatureTransformationArn = &v
 12731  	return s
 12732  }
 12733  
 12734  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 12735  func (s *Recipe) SetLastUpdatedDateTime(v time.Time) *Recipe {
 12736  	s.LastUpdatedDateTime = &v
 12737  	return s
 12738  }
 12739  
 12740  // SetName sets the Name field's value.
 12741  func (s *Recipe) SetName(v string) *Recipe {
 12742  	s.Name = &v
 12743  	return s
 12744  }
 12745  
 12746  // SetRecipeArn sets the RecipeArn field's value.
 12747  func (s *Recipe) SetRecipeArn(v string) *Recipe {
 12748  	s.RecipeArn = &v
 12749  	return s
 12750  }
 12751  
 12752  // SetRecipeType sets the RecipeType field's value.
 12753  func (s *Recipe) SetRecipeType(v string) *Recipe {
 12754  	s.RecipeType = &v
 12755  	return s
 12756  }
 12757  
 12758  // SetStatus sets the Status field's value.
 12759  func (s *Recipe) SetStatus(v string) *Recipe {
 12760  	s.Status = &v
 12761  	return s
 12762  }
 12763  
 12764  // Provides a summary of the properties of a recipe. For a complete listing,
 12765  // call the DescribeRecipe API.
 12766  type RecipeSummary struct {
 12767  	_ struct{} `type:"structure"`
 12768  
 12769  	// The date and time (in Unix time) that the recipe was created.
 12770  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 12771  
 12772  	// The date and time (in Unix time) that the recipe was last updated.
 12773  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 12774  
 12775  	// The name of the recipe.
 12776  	Name *string `locationName:"name" min:"1" type:"string"`
 12777  
 12778  	// The Amazon Resource Name (ARN) of the recipe.
 12779  	RecipeArn *string `locationName:"recipeArn" type:"string"`
 12780  
 12781  	// The status of the recipe.
 12782  	Status *string `locationName:"status" type:"string"`
 12783  }
 12784  
 12785  // String returns the string representation.
 12786  //
 12787  // API parameter values that are decorated as "sensitive" in the API will not
 12788  // be included in the string output. The member name will be present, but the
 12789  // value will be replaced with "sensitive".
 12790  func (s RecipeSummary) String() string {
 12791  	return awsutil.Prettify(s)
 12792  }
 12793  
 12794  // GoString returns the string representation.
 12795  //
 12796  // API parameter values that are decorated as "sensitive" in the API will not
 12797  // be included in the string output. The member name will be present, but the
 12798  // value will be replaced with "sensitive".
 12799  func (s RecipeSummary) GoString() string {
 12800  	return s.String()
 12801  }
 12802  
 12803  // SetCreationDateTime sets the CreationDateTime field's value.
 12804  func (s *RecipeSummary) SetCreationDateTime(v time.Time) *RecipeSummary {
 12805  	s.CreationDateTime = &v
 12806  	return s
 12807  }
 12808  
 12809  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 12810  func (s *RecipeSummary) SetLastUpdatedDateTime(v time.Time) *RecipeSummary {
 12811  	s.LastUpdatedDateTime = &v
 12812  	return s
 12813  }
 12814  
 12815  // SetName sets the Name field's value.
 12816  func (s *RecipeSummary) SetName(v string) *RecipeSummary {
 12817  	s.Name = &v
 12818  	return s
 12819  }
 12820  
 12821  // SetRecipeArn sets the RecipeArn field's value.
 12822  func (s *RecipeSummary) SetRecipeArn(v string) *RecipeSummary {
 12823  	s.RecipeArn = &v
 12824  	return s
 12825  }
 12826  
 12827  // SetStatus sets the Status field's value.
 12828  func (s *RecipeSummary) SetStatus(v string) *RecipeSummary {
 12829  	s.Status = &v
 12830  	return s
 12831  }
 12832  
 12833  // The specified resource already exists.
 12834  type ResourceAlreadyExistsException struct {
 12835  	_            struct{}                  `type:"structure"`
 12836  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12837  
 12838  	Message_ *string `locationName:"message" type:"string"`
 12839  }
 12840  
 12841  // String returns the string representation.
 12842  //
 12843  // API parameter values that are decorated as "sensitive" in the API will not
 12844  // be included in the string output. The member name will be present, but the
 12845  // value will be replaced with "sensitive".
 12846  func (s ResourceAlreadyExistsException) String() string {
 12847  	return awsutil.Prettify(s)
 12848  }
 12849  
 12850  // GoString returns the string representation.
 12851  //
 12852  // API parameter values that are decorated as "sensitive" in the API will not
 12853  // be included in the string output. The member name will be present, but the
 12854  // value will be replaced with "sensitive".
 12855  func (s ResourceAlreadyExistsException) GoString() string {
 12856  	return s.String()
 12857  }
 12858  
 12859  func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error {
 12860  	return &ResourceAlreadyExistsException{
 12861  		RespMetadata: v,
 12862  	}
 12863  }
 12864  
 12865  // Code returns the exception type name.
 12866  func (s *ResourceAlreadyExistsException) Code() string {
 12867  	return "ResourceAlreadyExistsException"
 12868  }
 12869  
 12870  // Message returns the exception's message.
 12871  func (s *ResourceAlreadyExistsException) Message() string {
 12872  	if s.Message_ != nil {
 12873  		return *s.Message_
 12874  	}
 12875  	return ""
 12876  }
 12877  
 12878  // OrigErr always returns nil, satisfies awserr.Error interface.
 12879  func (s *ResourceAlreadyExistsException) OrigErr() error {
 12880  	return nil
 12881  }
 12882  
 12883  func (s *ResourceAlreadyExistsException) Error() string {
 12884  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 12885  }
 12886  
 12887  // Status code returns the HTTP status code for the request's response error.
 12888  func (s *ResourceAlreadyExistsException) StatusCode() int {
 12889  	return s.RespMetadata.StatusCode
 12890  }
 12891  
 12892  // RequestID returns the service's response RequestID for request.
 12893  func (s *ResourceAlreadyExistsException) RequestID() string {
 12894  	return s.RespMetadata.RequestID
 12895  }
 12896  
 12897  // The specified resource is in use.
 12898  type ResourceInUseException struct {
 12899  	_            struct{}                  `type:"structure"`
 12900  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12901  
 12902  	Message_ *string `locationName:"message" type:"string"`
 12903  }
 12904  
 12905  // String returns the string representation.
 12906  //
 12907  // API parameter values that are decorated as "sensitive" in the API will not
 12908  // be included in the string output. The member name will be present, but the
 12909  // value will be replaced with "sensitive".
 12910  func (s ResourceInUseException) String() string {
 12911  	return awsutil.Prettify(s)
 12912  }
 12913  
 12914  // GoString returns the string representation.
 12915  //
 12916  // API parameter values that are decorated as "sensitive" in the API will not
 12917  // be included in the string output. The member name will be present, but the
 12918  // value will be replaced with "sensitive".
 12919  func (s ResourceInUseException) GoString() string {
 12920  	return s.String()
 12921  }
 12922  
 12923  func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
 12924  	return &ResourceInUseException{
 12925  		RespMetadata: v,
 12926  	}
 12927  }
 12928  
 12929  // Code returns the exception type name.
 12930  func (s *ResourceInUseException) Code() string {
 12931  	return "ResourceInUseException"
 12932  }
 12933  
 12934  // Message returns the exception's message.
 12935  func (s *ResourceInUseException) Message() string {
 12936  	if s.Message_ != nil {
 12937  		return *s.Message_
 12938  	}
 12939  	return ""
 12940  }
 12941  
 12942  // OrigErr always returns nil, satisfies awserr.Error interface.
 12943  func (s *ResourceInUseException) OrigErr() error {
 12944  	return nil
 12945  }
 12946  
 12947  func (s *ResourceInUseException) Error() string {
 12948  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 12949  }
 12950  
 12951  // Status code returns the HTTP status code for the request's response error.
 12952  func (s *ResourceInUseException) StatusCode() int {
 12953  	return s.RespMetadata.StatusCode
 12954  }
 12955  
 12956  // RequestID returns the service's response RequestID for request.
 12957  func (s *ResourceInUseException) RequestID() string {
 12958  	return s.RespMetadata.RequestID
 12959  }
 12960  
 12961  // Could not find the specified resource.
 12962  type ResourceNotFoundException struct {
 12963  	_            struct{}                  `type:"structure"`
 12964  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12965  
 12966  	Message_ *string `locationName:"message" type:"string"`
 12967  }
 12968  
 12969  // String returns the string representation.
 12970  //
 12971  // API parameter values that are decorated as "sensitive" in the API will not
 12972  // be included in the string output. The member name will be present, but the
 12973  // value will be replaced with "sensitive".
 12974  func (s ResourceNotFoundException) String() string {
 12975  	return awsutil.Prettify(s)
 12976  }
 12977  
 12978  // GoString returns the string representation.
 12979  //
 12980  // API parameter values that are decorated as "sensitive" in the API will not
 12981  // be included in the string output. The member name will be present, but the
 12982  // value will be replaced with "sensitive".
 12983  func (s ResourceNotFoundException) GoString() string {
 12984  	return s.String()
 12985  }
 12986  
 12987  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
 12988  	return &ResourceNotFoundException{
 12989  		RespMetadata: v,
 12990  	}
 12991  }
 12992  
 12993  // Code returns the exception type name.
 12994  func (s *ResourceNotFoundException) Code() string {
 12995  	return "ResourceNotFoundException"
 12996  }
 12997  
 12998  // Message returns the exception's message.
 12999  func (s *ResourceNotFoundException) Message() string {
 13000  	if s.Message_ != nil {
 13001  		return *s.Message_
 13002  	}
 13003  	return ""
 13004  }
 13005  
 13006  // OrigErr always returns nil, satisfies awserr.Error interface.
 13007  func (s *ResourceNotFoundException) OrigErr() error {
 13008  	return nil
 13009  }
 13010  
 13011  func (s *ResourceNotFoundException) Error() string {
 13012  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 13013  }
 13014  
 13015  // Status code returns the HTTP status code for the request's response error.
 13016  func (s *ResourceNotFoundException) StatusCode() int {
 13017  	return s.RespMetadata.StatusCode
 13018  }
 13019  
 13020  // RequestID returns the service's response RequestID for request.
 13021  func (s *ResourceNotFoundException) RequestID() string {
 13022  	return s.RespMetadata.RequestID
 13023  }
 13024  
 13025  // The configuration details of an Amazon S3 input or output bucket.
 13026  type S3DataConfig struct {
 13027  	_ struct{} `type:"structure"`
 13028  
 13029  	// The Amazon Resource Name (ARN) of the Key Management Service (KMS) key that
 13030  	// Amazon Personalize uses to encrypt or decrypt the input and output files
 13031  	// of a batch inference job.
 13032  	KmsKeyArn *string `locationName:"kmsKeyArn" type:"string"`
 13033  
 13034  	// The file path of the Amazon S3 bucket.
 13035  	//
 13036  	// Path is a required field
 13037  	Path *string `locationName:"path" type:"string" required:"true"`
 13038  }
 13039  
 13040  // String returns the string representation.
 13041  //
 13042  // API parameter values that are decorated as "sensitive" in the API will not
 13043  // be included in the string output. The member name will be present, but the
 13044  // value will be replaced with "sensitive".
 13045  func (s S3DataConfig) String() string {
 13046  	return awsutil.Prettify(s)
 13047  }
 13048  
 13049  // GoString returns the string representation.
 13050  //
 13051  // API parameter values that are decorated as "sensitive" in the API will not
 13052  // be included in the string output. The member name will be present, but the
 13053  // value will be replaced with "sensitive".
 13054  func (s S3DataConfig) GoString() string {
 13055  	return s.String()
 13056  }
 13057  
 13058  // Validate inspects the fields of the type to determine if they are valid.
 13059  func (s *S3DataConfig) Validate() error {
 13060  	invalidParams := request.ErrInvalidParams{Context: "S3DataConfig"}
 13061  	if s.Path == nil {
 13062  		invalidParams.Add(request.NewErrParamRequired("Path"))
 13063  	}
 13064  
 13065  	if invalidParams.Len() > 0 {
 13066  		return invalidParams
 13067  	}
 13068  	return nil
 13069  }
 13070  
 13071  // SetKmsKeyArn sets the KmsKeyArn field's value.
 13072  func (s *S3DataConfig) SetKmsKeyArn(v string) *S3DataConfig {
 13073  	s.KmsKeyArn = &v
 13074  	return s
 13075  }
 13076  
 13077  // SetPath sets the Path field's value.
 13078  func (s *S3DataConfig) SetPath(v string) *S3DataConfig {
 13079  	s.Path = &v
 13080  	return s
 13081  }
 13082  
 13083  // An object that provides information about a solution. A solution is a trained
 13084  // model that can be deployed as a campaign.
 13085  type Solution struct {
 13086  	_ struct{} `type:"structure"`
 13087  
 13088  	// When performAutoML is true, specifies the best recipe found.
 13089  	AutoMLResult *AutoMLResult `locationName:"autoMLResult" type:"structure"`
 13090  
 13091  	// The creation date and time (in Unix time) of the solution.
 13092  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 13093  
 13094  	// The Amazon Resource Name (ARN) of the dataset group that provides the training
 13095  	// data.
 13096  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 13097  
 13098  	// The event type (for example, 'click' or 'like') that is used for training
 13099  	// the model. If no eventType is provided, Amazon Personalize uses all interactions
 13100  	// for training with equal weight regardless of type.
 13101  	EventType *string `locationName:"eventType" type:"string"`
 13102  
 13103  	// The date and time (in Unix time) that the solution was last updated.
 13104  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 13105  
 13106  	// Describes the latest version of the solution, including the status and the
 13107  	// ARN.
 13108  	LatestSolutionVersion *SolutionVersionSummary `locationName:"latestSolutionVersion" type:"structure"`
 13109  
 13110  	// The name of the solution.
 13111  	Name *string `locationName:"name" min:"1" type:"string"`
 13112  
 13113  	// When true, Amazon Personalize performs a search for the best USER_PERSONALIZATION
 13114  	// recipe from the list specified in the solution configuration (recipeArn must
 13115  	// not be specified). When false (the default), Amazon Personalize uses recipeArn
 13116  	// for training.
 13117  	PerformAutoML *bool `locationName:"performAutoML" type:"boolean"`
 13118  
 13119  	// Whether to perform hyperparameter optimization (HPO) on the chosen recipe.
 13120  	// The default is false.
 13121  	PerformHPO *bool `locationName:"performHPO" type:"boolean"`
 13122  
 13123  	// The ARN of the recipe used to create the solution.
 13124  	RecipeArn *string `locationName:"recipeArn" type:"string"`
 13125  
 13126  	// The ARN of the solution.
 13127  	SolutionArn *string `locationName:"solutionArn" type:"string"`
 13128  
 13129  	// Describes the configuration properties for the solution.
 13130  	SolutionConfig *SolutionConfig `locationName:"solutionConfig" type:"structure"`
 13131  
 13132  	// The status of the solution.
 13133  	//
 13134  	// A solution can be in one of the following states:
 13135  	//
 13136  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
 13137  	//
 13138  	//    * DELETE PENDING > DELETE IN_PROGRESS
 13139  	Status *string `locationName:"status" type:"string"`
 13140  }
 13141  
 13142  // String returns the string representation.
 13143  //
 13144  // API parameter values that are decorated as "sensitive" in the API will not
 13145  // be included in the string output. The member name will be present, but the
 13146  // value will be replaced with "sensitive".
 13147  func (s Solution) String() string {
 13148  	return awsutil.Prettify(s)
 13149  }
 13150  
 13151  // GoString returns the string representation.
 13152  //
 13153  // API parameter values that are decorated as "sensitive" in the API will not
 13154  // be included in the string output. The member name will be present, but the
 13155  // value will be replaced with "sensitive".
 13156  func (s Solution) GoString() string {
 13157  	return s.String()
 13158  }
 13159  
 13160  // SetAutoMLResult sets the AutoMLResult field's value.
 13161  func (s *Solution) SetAutoMLResult(v *AutoMLResult) *Solution {
 13162  	s.AutoMLResult = v
 13163  	return s
 13164  }
 13165  
 13166  // SetCreationDateTime sets the CreationDateTime field's value.
 13167  func (s *Solution) SetCreationDateTime(v time.Time) *Solution {
 13168  	s.CreationDateTime = &v
 13169  	return s
 13170  }
 13171  
 13172  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 13173  func (s *Solution) SetDatasetGroupArn(v string) *Solution {
 13174  	s.DatasetGroupArn = &v
 13175  	return s
 13176  }
 13177  
 13178  // SetEventType sets the EventType field's value.
 13179  func (s *Solution) SetEventType(v string) *Solution {
 13180  	s.EventType = &v
 13181  	return s
 13182  }
 13183  
 13184  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 13185  func (s *Solution) SetLastUpdatedDateTime(v time.Time) *Solution {
 13186  	s.LastUpdatedDateTime = &v
 13187  	return s
 13188  }
 13189  
 13190  // SetLatestSolutionVersion sets the LatestSolutionVersion field's value.
 13191  func (s *Solution) SetLatestSolutionVersion(v *SolutionVersionSummary) *Solution {
 13192  	s.LatestSolutionVersion = v
 13193  	return s
 13194  }
 13195  
 13196  // SetName sets the Name field's value.
 13197  func (s *Solution) SetName(v string) *Solution {
 13198  	s.Name = &v
 13199  	return s
 13200  }
 13201  
 13202  // SetPerformAutoML sets the PerformAutoML field's value.
 13203  func (s *Solution) SetPerformAutoML(v bool) *Solution {
 13204  	s.PerformAutoML = &v
 13205  	return s
 13206  }
 13207  
 13208  // SetPerformHPO sets the PerformHPO field's value.
 13209  func (s *Solution) SetPerformHPO(v bool) *Solution {
 13210  	s.PerformHPO = &v
 13211  	return s
 13212  }
 13213  
 13214  // SetRecipeArn sets the RecipeArn field's value.
 13215  func (s *Solution) SetRecipeArn(v string) *Solution {
 13216  	s.RecipeArn = &v
 13217  	return s
 13218  }
 13219  
 13220  // SetSolutionArn sets the SolutionArn field's value.
 13221  func (s *Solution) SetSolutionArn(v string) *Solution {
 13222  	s.SolutionArn = &v
 13223  	return s
 13224  }
 13225  
 13226  // SetSolutionConfig sets the SolutionConfig field's value.
 13227  func (s *Solution) SetSolutionConfig(v *SolutionConfig) *Solution {
 13228  	s.SolutionConfig = v
 13229  	return s
 13230  }
 13231  
 13232  // SetStatus sets the Status field's value.
 13233  func (s *Solution) SetStatus(v string) *Solution {
 13234  	s.Status = &v
 13235  	return s
 13236  }
 13237  
 13238  // Describes the configuration properties for the solution.
 13239  type SolutionConfig struct {
 13240  	_ struct{} `type:"structure"`
 13241  
 13242  	// Lists the hyperparameter names and ranges.
 13243  	AlgorithmHyperParameters map[string]*string `locationName:"algorithmHyperParameters" type:"map"`
 13244  
 13245  	// The AutoMLConfig object containing a list of recipes to search when AutoML
 13246  	// is performed.
 13247  	AutoMLConfig *AutoMLConfig `locationName:"autoMLConfig" type:"structure"`
 13248  
 13249  	// Only events with a value greater than or equal to this threshold are used
 13250  	// for training a model.
 13251  	EventValueThreshold *string `locationName:"eventValueThreshold" type:"string"`
 13252  
 13253  	// Lists the feature transformation parameters.
 13254  	FeatureTransformationParameters map[string]*string `locationName:"featureTransformationParameters" type:"map"`
 13255  
 13256  	// Describes the properties for hyperparameter optimization (HPO).
 13257  	HpoConfig *HPOConfig `locationName:"hpoConfig" type:"structure"`
 13258  
 13259  	// Describes the additional objective for the solution, such as maximizing streaming
 13260  	// minutes or increasing revenue. For more information see Optimizing a solution
 13261  	// (https://docs.aws.amazon.com/personalize/latest/dg/optimizing-solution-for-objective.html).
 13262  	OptimizationObjective *OptimizationObjective `locationName:"optimizationObjective" type:"structure"`
 13263  }
 13264  
 13265  // String returns the string representation.
 13266  //
 13267  // API parameter values that are decorated as "sensitive" in the API will not
 13268  // be included in the string output. The member name will be present, but the
 13269  // value will be replaced with "sensitive".
 13270  func (s SolutionConfig) String() string {
 13271  	return awsutil.Prettify(s)
 13272  }
 13273  
 13274  // GoString returns the string representation.
 13275  //
 13276  // API parameter values that are decorated as "sensitive" in the API will not
 13277  // be included in the string output. The member name will be present, but the
 13278  // value will be replaced with "sensitive".
 13279  func (s SolutionConfig) GoString() string {
 13280  	return s.String()
 13281  }
 13282  
 13283  // Validate inspects the fields of the type to determine if they are valid.
 13284  func (s *SolutionConfig) Validate() error {
 13285  	invalidParams := request.ErrInvalidParams{Context: "SolutionConfig"}
 13286  	if s.HpoConfig != nil {
 13287  		if err := s.HpoConfig.Validate(); err != nil {
 13288  			invalidParams.AddNested("HpoConfig", err.(request.ErrInvalidParams))
 13289  		}
 13290  	}
 13291  	if s.OptimizationObjective != nil {
 13292  		if err := s.OptimizationObjective.Validate(); err != nil {
 13293  			invalidParams.AddNested("OptimizationObjective", err.(request.ErrInvalidParams))
 13294  		}
 13295  	}
 13296  
 13297  	if invalidParams.Len() > 0 {
 13298  		return invalidParams
 13299  	}
 13300  	return nil
 13301  }
 13302  
 13303  // SetAlgorithmHyperParameters sets the AlgorithmHyperParameters field's value.
 13304  func (s *SolutionConfig) SetAlgorithmHyperParameters(v map[string]*string) *SolutionConfig {
 13305  	s.AlgorithmHyperParameters = v
 13306  	return s
 13307  }
 13308  
 13309  // SetAutoMLConfig sets the AutoMLConfig field's value.
 13310  func (s *SolutionConfig) SetAutoMLConfig(v *AutoMLConfig) *SolutionConfig {
 13311  	s.AutoMLConfig = v
 13312  	return s
 13313  }
 13314  
 13315  // SetEventValueThreshold sets the EventValueThreshold field's value.
 13316  func (s *SolutionConfig) SetEventValueThreshold(v string) *SolutionConfig {
 13317  	s.EventValueThreshold = &v
 13318  	return s
 13319  }
 13320  
 13321  // SetFeatureTransformationParameters sets the FeatureTransformationParameters field's value.
 13322  func (s *SolutionConfig) SetFeatureTransformationParameters(v map[string]*string) *SolutionConfig {
 13323  	s.FeatureTransformationParameters = v
 13324  	return s
 13325  }
 13326  
 13327  // SetHpoConfig sets the HpoConfig field's value.
 13328  func (s *SolutionConfig) SetHpoConfig(v *HPOConfig) *SolutionConfig {
 13329  	s.HpoConfig = v
 13330  	return s
 13331  }
 13332  
 13333  // SetOptimizationObjective sets the OptimizationObjective field's value.
 13334  func (s *SolutionConfig) SetOptimizationObjective(v *OptimizationObjective) *SolutionConfig {
 13335  	s.OptimizationObjective = v
 13336  	return s
 13337  }
 13338  
 13339  // Provides a summary of the properties of a solution. For a complete listing,
 13340  // call the DescribeSolution API.
 13341  type SolutionSummary struct {
 13342  	_ struct{} `type:"structure"`
 13343  
 13344  	// The date and time (in Unix time) that the solution was created.
 13345  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 13346  
 13347  	// The date and time (in Unix time) that the solution was last updated.
 13348  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 13349  
 13350  	// The name of the solution.
 13351  	Name *string `locationName:"name" min:"1" type:"string"`
 13352  
 13353  	// The Amazon Resource Name (ARN) of the solution.
 13354  	SolutionArn *string `locationName:"solutionArn" type:"string"`
 13355  
 13356  	// The status of the solution.
 13357  	//
 13358  	// A solution can be in one of the following states:
 13359  	//
 13360  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
 13361  	//
 13362  	//    * DELETE PENDING > DELETE IN_PROGRESS
 13363  	Status *string `locationName:"status" type:"string"`
 13364  }
 13365  
 13366  // String returns the string representation.
 13367  //
 13368  // API parameter values that are decorated as "sensitive" in the API will not
 13369  // be included in the string output. The member name will be present, but the
 13370  // value will be replaced with "sensitive".
 13371  func (s SolutionSummary) String() string {
 13372  	return awsutil.Prettify(s)
 13373  }
 13374  
 13375  // GoString returns the string representation.
 13376  //
 13377  // API parameter values that are decorated as "sensitive" in the API will not
 13378  // be included in the string output. The member name will be present, but the
 13379  // value will be replaced with "sensitive".
 13380  func (s SolutionSummary) GoString() string {
 13381  	return s.String()
 13382  }
 13383  
 13384  // SetCreationDateTime sets the CreationDateTime field's value.
 13385  func (s *SolutionSummary) SetCreationDateTime(v time.Time) *SolutionSummary {
 13386  	s.CreationDateTime = &v
 13387  	return s
 13388  }
 13389  
 13390  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 13391  func (s *SolutionSummary) SetLastUpdatedDateTime(v time.Time) *SolutionSummary {
 13392  	s.LastUpdatedDateTime = &v
 13393  	return s
 13394  }
 13395  
 13396  // SetName sets the Name field's value.
 13397  func (s *SolutionSummary) SetName(v string) *SolutionSummary {
 13398  	s.Name = &v
 13399  	return s
 13400  }
 13401  
 13402  // SetSolutionArn sets the SolutionArn field's value.
 13403  func (s *SolutionSummary) SetSolutionArn(v string) *SolutionSummary {
 13404  	s.SolutionArn = &v
 13405  	return s
 13406  }
 13407  
 13408  // SetStatus sets the Status field's value.
 13409  func (s *SolutionSummary) SetStatus(v string) *SolutionSummary {
 13410  	s.Status = &v
 13411  	return s
 13412  }
 13413  
 13414  // An object that provides information about a specific version of a Solution.
 13415  type SolutionVersion struct {
 13416  	_ struct{} `type:"structure"`
 13417  
 13418  	// The date and time (in Unix time) that this version of the solution was created.
 13419  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 13420  
 13421  	// The Amazon Resource Name (ARN) of the dataset group providing the training
 13422  	// data.
 13423  	DatasetGroupArn *string `locationName:"datasetGroupArn" type:"string"`
 13424  
 13425  	// The event type (for example, 'click' or 'like') that is used for training
 13426  	// the model.
 13427  	EventType *string `locationName:"eventType" type:"string"`
 13428  
 13429  	// If training a solution version fails, the reason for the failure.
 13430  	FailureReason *string `locationName:"failureReason" type:"string"`
 13431  
 13432  	// The date and time (in Unix time) that the solution was last updated.
 13433  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 13434  
 13435  	// When true, Amazon Personalize searches for the most optimal recipe according
 13436  	// to the solution configuration. When false (the default), Amazon Personalize
 13437  	// uses recipeArn.
 13438  	PerformAutoML *bool `locationName:"performAutoML" type:"boolean"`
 13439  
 13440  	// Whether to perform hyperparameter optimization (HPO) on the chosen recipe.
 13441  	// The default is false.
 13442  	PerformHPO *bool `locationName:"performHPO" type:"boolean"`
 13443  
 13444  	// The ARN of the recipe used in the solution.
 13445  	RecipeArn *string `locationName:"recipeArn" type:"string"`
 13446  
 13447  	// The ARN of the solution.
 13448  	SolutionArn *string `locationName:"solutionArn" type:"string"`
 13449  
 13450  	// Describes the configuration properties for the solution.
 13451  	SolutionConfig *SolutionConfig `locationName:"solutionConfig" type:"structure"`
 13452  
 13453  	// The ARN of the solution version.
 13454  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
 13455  
 13456  	// The status of the solution version.
 13457  	//
 13458  	// A solution version can be in one of the following states:
 13459  	//
 13460  	//    * CREATE PENDING
 13461  	//
 13462  	//    * CREATE IN_PROGRESS
 13463  	//
 13464  	//    * ACTIVE
 13465  	//
 13466  	//    * CREATE FAILED
 13467  	//
 13468  	//    * CREATE STOPPING
 13469  	//
 13470  	//    * CREATE STOPPED
 13471  	Status *string `locationName:"status" type:"string"`
 13472  
 13473  	// The time used to train the model. You are billed for the time it takes to
 13474  	// train a model. This field is visible only after Amazon Personalize successfully
 13475  	// trains a model.
 13476  	TrainingHours *float64 `locationName:"trainingHours" type:"double"`
 13477  
 13478  	// The scope of training to be performed when creating the solution version.
 13479  	// The FULL option trains the solution version based on the entirety of the
 13480  	// input solution's training data, while the UPDATE option processes only the
 13481  	// data that has changed in comparison to the input solution. Choose UPDATE
 13482  	// when you want to incrementally update your solution version instead of creating
 13483  	// an entirely new one.
 13484  	//
 13485  	// The UPDATE option can only be used when you already have an active solution
 13486  	// version created from the input solution using the FULL option and the input
 13487  	// solution was trained with the User-Personalization (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-new-item-USER_PERSONALIZATION.html)
 13488  	// recipe or the HRNN-Coldstart (https://docs.aws.amazon.com/personalize/latest/dg/native-recipe-hrnn-coldstart.html)
 13489  	// recipe.
 13490  	TrainingMode *string `locationName:"trainingMode" type:"string" enum:"TrainingMode"`
 13491  
 13492  	// If hyperparameter optimization was performed, contains the hyperparameter
 13493  	// values of the best performing model.
 13494  	TunedHPOParams *TunedHPOParams `locationName:"tunedHPOParams" type:"structure"`
 13495  }
 13496  
 13497  // String returns the string representation.
 13498  //
 13499  // API parameter values that are decorated as "sensitive" in the API will not
 13500  // be included in the string output. The member name will be present, but the
 13501  // value will be replaced with "sensitive".
 13502  func (s SolutionVersion) String() string {
 13503  	return awsutil.Prettify(s)
 13504  }
 13505  
 13506  // GoString returns the string representation.
 13507  //
 13508  // API parameter values that are decorated as "sensitive" in the API will not
 13509  // be included in the string output. The member name will be present, but the
 13510  // value will be replaced with "sensitive".
 13511  func (s SolutionVersion) GoString() string {
 13512  	return s.String()
 13513  }
 13514  
 13515  // SetCreationDateTime sets the CreationDateTime field's value.
 13516  func (s *SolutionVersion) SetCreationDateTime(v time.Time) *SolutionVersion {
 13517  	s.CreationDateTime = &v
 13518  	return s
 13519  }
 13520  
 13521  // SetDatasetGroupArn sets the DatasetGroupArn field's value.
 13522  func (s *SolutionVersion) SetDatasetGroupArn(v string) *SolutionVersion {
 13523  	s.DatasetGroupArn = &v
 13524  	return s
 13525  }
 13526  
 13527  // SetEventType sets the EventType field's value.
 13528  func (s *SolutionVersion) SetEventType(v string) *SolutionVersion {
 13529  	s.EventType = &v
 13530  	return s
 13531  }
 13532  
 13533  // SetFailureReason sets the FailureReason field's value.
 13534  func (s *SolutionVersion) SetFailureReason(v string) *SolutionVersion {
 13535  	s.FailureReason = &v
 13536  	return s
 13537  }
 13538  
 13539  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 13540  func (s *SolutionVersion) SetLastUpdatedDateTime(v time.Time) *SolutionVersion {
 13541  	s.LastUpdatedDateTime = &v
 13542  	return s
 13543  }
 13544  
 13545  // SetPerformAutoML sets the PerformAutoML field's value.
 13546  func (s *SolutionVersion) SetPerformAutoML(v bool) *SolutionVersion {
 13547  	s.PerformAutoML = &v
 13548  	return s
 13549  }
 13550  
 13551  // SetPerformHPO sets the PerformHPO field's value.
 13552  func (s *SolutionVersion) SetPerformHPO(v bool) *SolutionVersion {
 13553  	s.PerformHPO = &v
 13554  	return s
 13555  }
 13556  
 13557  // SetRecipeArn sets the RecipeArn field's value.
 13558  func (s *SolutionVersion) SetRecipeArn(v string) *SolutionVersion {
 13559  	s.RecipeArn = &v
 13560  	return s
 13561  }
 13562  
 13563  // SetSolutionArn sets the SolutionArn field's value.
 13564  func (s *SolutionVersion) SetSolutionArn(v string) *SolutionVersion {
 13565  	s.SolutionArn = &v
 13566  	return s
 13567  }
 13568  
 13569  // SetSolutionConfig sets the SolutionConfig field's value.
 13570  func (s *SolutionVersion) SetSolutionConfig(v *SolutionConfig) *SolutionVersion {
 13571  	s.SolutionConfig = v
 13572  	return s
 13573  }
 13574  
 13575  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 13576  func (s *SolutionVersion) SetSolutionVersionArn(v string) *SolutionVersion {
 13577  	s.SolutionVersionArn = &v
 13578  	return s
 13579  }
 13580  
 13581  // SetStatus sets the Status field's value.
 13582  func (s *SolutionVersion) SetStatus(v string) *SolutionVersion {
 13583  	s.Status = &v
 13584  	return s
 13585  }
 13586  
 13587  // SetTrainingHours sets the TrainingHours field's value.
 13588  func (s *SolutionVersion) SetTrainingHours(v float64) *SolutionVersion {
 13589  	s.TrainingHours = &v
 13590  	return s
 13591  }
 13592  
 13593  // SetTrainingMode sets the TrainingMode field's value.
 13594  func (s *SolutionVersion) SetTrainingMode(v string) *SolutionVersion {
 13595  	s.TrainingMode = &v
 13596  	return s
 13597  }
 13598  
 13599  // SetTunedHPOParams sets the TunedHPOParams field's value.
 13600  func (s *SolutionVersion) SetTunedHPOParams(v *TunedHPOParams) *SolutionVersion {
 13601  	s.TunedHPOParams = v
 13602  	return s
 13603  }
 13604  
 13605  // Provides a summary of the properties of a solution version. For a complete
 13606  // listing, call the DescribeSolutionVersion API.
 13607  type SolutionVersionSummary struct {
 13608  	_ struct{} `type:"structure"`
 13609  
 13610  	// The date and time (in Unix time) that this version of a solution was created.
 13611  	CreationDateTime *time.Time `locationName:"creationDateTime" type:"timestamp"`
 13612  
 13613  	// If a solution version fails, the reason behind the failure.
 13614  	FailureReason *string `locationName:"failureReason" type:"string"`
 13615  
 13616  	// The date and time (in Unix time) that the solution version was last updated.
 13617  	LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"`
 13618  
 13619  	// The Amazon Resource Name (ARN) of the solution version.
 13620  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
 13621  
 13622  	// The status of the solution version.
 13623  	//
 13624  	// A solution version can be in one of the following states:
 13625  	//
 13626  	//    * CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
 13627  	Status *string `locationName:"status" type:"string"`
 13628  }
 13629  
 13630  // String returns the string representation.
 13631  //
 13632  // API parameter values that are decorated as "sensitive" in the API will not
 13633  // be included in the string output. The member name will be present, but the
 13634  // value will be replaced with "sensitive".
 13635  func (s SolutionVersionSummary) String() string {
 13636  	return awsutil.Prettify(s)
 13637  }
 13638  
 13639  // GoString returns the string representation.
 13640  //
 13641  // API parameter values that are decorated as "sensitive" in the API will not
 13642  // be included in the string output. The member name will be present, but the
 13643  // value will be replaced with "sensitive".
 13644  func (s SolutionVersionSummary) GoString() string {
 13645  	return s.String()
 13646  }
 13647  
 13648  // SetCreationDateTime sets the CreationDateTime field's value.
 13649  func (s *SolutionVersionSummary) SetCreationDateTime(v time.Time) *SolutionVersionSummary {
 13650  	s.CreationDateTime = &v
 13651  	return s
 13652  }
 13653  
 13654  // SetFailureReason sets the FailureReason field's value.
 13655  func (s *SolutionVersionSummary) SetFailureReason(v string) *SolutionVersionSummary {
 13656  	s.FailureReason = &v
 13657  	return s
 13658  }
 13659  
 13660  // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value.
 13661  func (s *SolutionVersionSummary) SetLastUpdatedDateTime(v time.Time) *SolutionVersionSummary {
 13662  	s.LastUpdatedDateTime = &v
 13663  	return s
 13664  }
 13665  
 13666  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 13667  func (s *SolutionVersionSummary) SetSolutionVersionArn(v string) *SolutionVersionSummary {
 13668  	s.SolutionVersionArn = &v
 13669  	return s
 13670  }
 13671  
 13672  // SetStatus sets the Status field's value.
 13673  func (s *SolutionVersionSummary) SetStatus(v string) *SolutionVersionSummary {
 13674  	s.Status = &v
 13675  	return s
 13676  }
 13677  
 13678  type StopSolutionVersionCreationInput struct {
 13679  	_ struct{} `type:"structure"`
 13680  
 13681  	// The Amazon Resource Name (ARN) of the solution version you want to stop creating.
 13682  	//
 13683  	// SolutionVersionArn is a required field
 13684  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string" required:"true"`
 13685  }
 13686  
 13687  // String returns the string representation.
 13688  //
 13689  // API parameter values that are decorated as "sensitive" in the API will not
 13690  // be included in the string output. The member name will be present, but the
 13691  // value will be replaced with "sensitive".
 13692  func (s StopSolutionVersionCreationInput) String() string {
 13693  	return awsutil.Prettify(s)
 13694  }
 13695  
 13696  // GoString returns the string representation.
 13697  //
 13698  // API parameter values that are decorated as "sensitive" in the API will not
 13699  // be included in the string output. The member name will be present, but the
 13700  // value will be replaced with "sensitive".
 13701  func (s StopSolutionVersionCreationInput) GoString() string {
 13702  	return s.String()
 13703  }
 13704  
 13705  // Validate inspects the fields of the type to determine if they are valid.
 13706  func (s *StopSolutionVersionCreationInput) Validate() error {
 13707  	invalidParams := request.ErrInvalidParams{Context: "StopSolutionVersionCreationInput"}
 13708  	if s.SolutionVersionArn == nil {
 13709  		invalidParams.Add(request.NewErrParamRequired("SolutionVersionArn"))
 13710  	}
 13711  
 13712  	if invalidParams.Len() > 0 {
 13713  		return invalidParams
 13714  	}
 13715  	return nil
 13716  }
 13717  
 13718  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 13719  func (s *StopSolutionVersionCreationInput) SetSolutionVersionArn(v string) *StopSolutionVersionCreationInput {
 13720  	s.SolutionVersionArn = &v
 13721  	return s
 13722  }
 13723  
 13724  type StopSolutionVersionCreationOutput struct {
 13725  	_ struct{} `type:"structure"`
 13726  }
 13727  
 13728  // String returns the string representation.
 13729  //
 13730  // API parameter values that are decorated as "sensitive" in the API will not
 13731  // be included in the string output. The member name will be present, but the
 13732  // value will be replaced with "sensitive".
 13733  func (s StopSolutionVersionCreationOutput) String() string {
 13734  	return awsutil.Prettify(s)
 13735  }
 13736  
 13737  // GoString returns the string representation.
 13738  //
 13739  // API parameter values that are decorated as "sensitive" in the API will not
 13740  // be included in the string output. The member name will be present, but the
 13741  // value will be replaced with "sensitive".
 13742  func (s StopSolutionVersionCreationOutput) GoString() string {
 13743  	return s.String()
 13744  }
 13745  
 13746  // If hyperparameter optimization (HPO) was performed, contains the hyperparameter
 13747  // values of the best performing model.
 13748  type TunedHPOParams struct {
 13749  	_ struct{} `type:"structure"`
 13750  
 13751  	// A list of the hyperparameter values of the best performing model.
 13752  	AlgorithmHyperParameters map[string]*string `locationName:"algorithmHyperParameters" type:"map"`
 13753  }
 13754  
 13755  // String returns the string representation.
 13756  //
 13757  // API parameter values that are decorated as "sensitive" in the API will not
 13758  // be included in the string output. The member name will be present, but the
 13759  // value will be replaced with "sensitive".
 13760  func (s TunedHPOParams) String() string {
 13761  	return awsutil.Prettify(s)
 13762  }
 13763  
 13764  // GoString returns the string representation.
 13765  //
 13766  // API parameter values that are decorated as "sensitive" in the API will not
 13767  // be included in the string output. The member name will be present, but the
 13768  // value will be replaced with "sensitive".
 13769  func (s TunedHPOParams) GoString() string {
 13770  	return s.String()
 13771  }
 13772  
 13773  // SetAlgorithmHyperParameters sets the AlgorithmHyperParameters field's value.
 13774  func (s *TunedHPOParams) SetAlgorithmHyperParameters(v map[string]*string) *TunedHPOParams {
 13775  	s.AlgorithmHyperParameters = v
 13776  	return s
 13777  }
 13778  
 13779  type UpdateCampaignInput struct {
 13780  	_ struct{} `type:"structure"`
 13781  
 13782  	// The Amazon Resource Name (ARN) of the campaign.
 13783  	//
 13784  	// CampaignArn is a required field
 13785  	CampaignArn *string `locationName:"campaignArn" type:"string" required:"true"`
 13786  
 13787  	// The configuration details of a campaign.
 13788  	CampaignConfig *CampaignConfig `locationName:"campaignConfig" type:"structure"`
 13789  
 13790  	// Specifies the requested minimum provisioned transactions (recommendations)
 13791  	// per second that Amazon Personalize will support.
 13792  	MinProvisionedTPS *int64 `locationName:"minProvisionedTPS" min:"1" type:"integer"`
 13793  
 13794  	// The ARN of a new solution version to deploy.
 13795  	SolutionVersionArn *string `locationName:"solutionVersionArn" type:"string"`
 13796  }
 13797  
 13798  // String returns the string representation.
 13799  //
 13800  // API parameter values that are decorated as "sensitive" in the API will not
 13801  // be included in the string output. The member name will be present, but the
 13802  // value will be replaced with "sensitive".
 13803  func (s UpdateCampaignInput) String() string {
 13804  	return awsutil.Prettify(s)
 13805  }
 13806  
 13807  // GoString returns the string representation.
 13808  //
 13809  // API parameter values that are decorated as "sensitive" in the API will not
 13810  // be included in the string output. The member name will be present, but the
 13811  // value will be replaced with "sensitive".
 13812  func (s UpdateCampaignInput) GoString() string {
 13813  	return s.String()
 13814  }
 13815  
 13816  // Validate inspects the fields of the type to determine if they are valid.
 13817  func (s *UpdateCampaignInput) Validate() error {
 13818  	invalidParams := request.ErrInvalidParams{Context: "UpdateCampaignInput"}
 13819  	if s.CampaignArn == nil {
 13820  		invalidParams.Add(request.NewErrParamRequired("CampaignArn"))
 13821  	}
 13822  	if s.MinProvisionedTPS != nil && *s.MinProvisionedTPS < 1 {
 13823  		invalidParams.Add(request.NewErrParamMinValue("MinProvisionedTPS", 1))
 13824  	}
 13825  
 13826  	if invalidParams.Len() > 0 {
 13827  		return invalidParams
 13828  	}
 13829  	return nil
 13830  }
 13831  
 13832  // SetCampaignArn sets the CampaignArn field's value.
 13833  func (s *UpdateCampaignInput) SetCampaignArn(v string) *UpdateCampaignInput {
 13834  	s.CampaignArn = &v
 13835  	return s
 13836  }
 13837  
 13838  // SetCampaignConfig sets the CampaignConfig field's value.
 13839  func (s *UpdateCampaignInput) SetCampaignConfig(v *CampaignConfig) *UpdateCampaignInput {
 13840  	s.CampaignConfig = v
 13841  	return s
 13842  }
 13843  
 13844  // SetMinProvisionedTPS sets the MinProvisionedTPS field's value.
 13845  func (s *UpdateCampaignInput) SetMinProvisionedTPS(v int64) *UpdateCampaignInput {
 13846  	s.MinProvisionedTPS = &v
 13847  	return s
 13848  }
 13849  
 13850  // SetSolutionVersionArn sets the SolutionVersionArn field's value.
 13851  func (s *UpdateCampaignInput) SetSolutionVersionArn(v string) *UpdateCampaignInput {
 13852  	s.SolutionVersionArn = &v
 13853  	return s
 13854  }
 13855  
 13856  type UpdateCampaignOutput struct {
 13857  	_ struct{} `type:"structure"`
 13858  
 13859  	// The same campaign ARN as given in the request.
 13860  	CampaignArn *string `locationName:"campaignArn" type:"string"`
 13861  }
 13862  
 13863  // String returns the string representation.
 13864  //
 13865  // API parameter values that are decorated as "sensitive" in the API will not
 13866  // be included in the string output. The member name will be present, but the
 13867  // value will be replaced with "sensitive".
 13868  func (s UpdateCampaignOutput) String() string {
 13869  	return awsutil.Prettify(s)
 13870  }
 13871  
 13872  // GoString returns the string representation.
 13873  //
 13874  // API parameter values that are decorated as "sensitive" in the API will not
 13875  // be included in the string output. The member name will be present, but the
 13876  // value will be replaced with "sensitive".
 13877  func (s UpdateCampaignOutput) GoString() string {
 13878  	return s.String()
 13879  }
 13880  
 13881  // SetCampaignArn sets the CampaignArn field's value.
 13882  func (s *UpdateCampaignOutput) SetCampaignArn(v string) *UpdateCampaignOutput {
 13883  	s.CampaignArn = &v
 13884  	return s
 13885  }
 13886  
 13887  const (
 13888  	// IngestionModeBulk is a IngestionMode enum value
 13889  	IngestionModeBulk = "BULK"
 13890  
 13891  	// IngestionModePut is a IngestionMode enum value
 13892  	IngestionModePut = "PUT"
 13893  
 13894  	// IngestionModeAll is a IngestionMode enum value
 13895  	IngestionModeAll = "ALL"
 13896  )
 13897  
 13898  // IngestionMode_Values returns all elements of the IngestionMode enum
 13899  func IngestionMode_Values() []string {
 13900  	return []string{
 13901  		IngestionModeBulk,
 13902  		IngestionModePut,
 13903  		IngestionModeAll,
 13904  	}
 13905  }
 13906  
 13907  const (
 13908  	// ObjectiveSensitivityLow is a ObjectiveSensitivity enum value
 13909  	ObjectiveSensitivityLow = "LOW"
 13910  
 13911  	// ObjectiveSensitivityMedium is a ObjectiveSensitivity enum value
 13912  	ObjectiveSensitivityMedium = "MEDIUM"
 13913  
 13914  	// ObjectiveSensitivityHigh is a ObjectiveSensitivity enum value
 13915  	ObjectiveSensitivityHigh = "HIGH"
 13916  
 13917  	// ObjectiveSensitivityOff is a ObjectiveSensitivity enum value
 13918  	ObjectiveSensitivityOff = "OFF"
 13919  )
 13920  
 13921  // ObjectiveSensitivity_Values returns all elements of the ObjectiveSensitivity enum
 13922  func ObjectiveSensitivity_Values() []string {
 13923  	return []string{
 13924  		ObjectiveSensitivityLow,
 13925  		ObjectiveSensitivityMedium,
 13926  		ObjectiveSensitivityHigh,
 13927  		ObjectiveSensitivityOff,
 13928  	}
 13929  }
 13930  
 13931  const (
 13932  	// RecipeProviderService is a RecipeProvider enum value
 13933  	RecipeProviderService = "SERVICE"
 13934  )
 13935  
 13936  // RecipeProvider_Values returns all elements of the RecipeProvider enum
 13937  func RecipeProvider_Values() []string {
 13938  	return []string{
 13939  		RecipeProviderService,
 13940  	}
 13941  }
 13942  
 13943  const (
 13944  	// TrainingModeFull is a TrainingMode enum value
 13945  	TrainingModeFull = "FULL"
 13946  
 13947  	// TrainingModeUpdate is a TrainingMode enum value
 13948  	TrainingModeUpdate = "UPDATE"
 13949  )
 13950  
 13951  // TrainingMode_Values returns all elements of the TrainingMode enum
 13952  func TrainingMode_Values() []string {
 13953  	return []string{
 13954  		TrainingModeFull,
 13955  		TrainingModeUpdate,
 13956  	}
 13957  }