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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package personalizeruntime
     4  
     5  import (
     6  	"fmt"
     7  
     8  	"github.com/aavshr/aws-sdk-go/aws"
     9  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    10  	"github.com/aavshr/aws-sdk-go/aws/request"
    11  	"github.com/aavshr/aws-sdk-go/private/protocol"
    12  )
    13  
    14  const opGetPersonalizedRanking = "GetPersonalizedRanking"
    15  
    16  // GetPersonalizedRankingRequest generates a "aws/request.Request" representing the
    17  // client's request for the GetPersonalizedRanking operation. The "output" return
    18  // value will be populated with the request's response once the request completes
    19  // successfully.
    20  //
    21  // Use "Send" method on the returned Request to send the API call to the service.
    22  // the "output" return value is not valid until after Send returns without error.
    23  //
    24  // See GetPersonalizedRanking for more information on using the GetPersonalizedRanking
    25  // API call, and error handling.
    26  //
    27  // This method is useful when you want to inject custom logic or configuration
    28  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    29  //
    30  //
    31  //    // Example sending a request using the GetPersonalizedRankingRequest method.
    32  //    req, resp := client.GetPersonalizedRankingRequest(params)
    33  //
    34  //    err := req.Send()
    35  //    if err == nil { // resp is now filled
    36  //        fmt.Println(resp)
    37  //    }
    38  //
    39  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-runtime-2018-05-22/GetPersonalizedRanking
    40  func (c *PersonalizeRuntime) GetPersonalizedRankingRequest(input *GetPersonalizedRankingInput) (req *request.Request, output *GetPersonalizedRankingOutput) {
    41  	op := &request.Operation{
    42  		Name:       opGetPersonalizedRanking,
    43  		HTTPMethod: "POST",
    44  		HTTPPath:   "/personalize-ranking",
    45  	}
    46  
    47  	if input == nil {
    48  		input = &GetPersonalizedRankingInput{}
    49  	}
    50  
    51  	output = &GetPersonalizedRankingOutput{}
    52  	req = c.newRequest(op, input, output)
    53  	return
    54  }
    55  
    56  // GetPersonalizedRanking API operation for Amazon Personalize Runtime.
    57  //
    58  // Re-ranks a list of recommended items for the given user. The first item in
    59  // the list is deemed the most likely item to be of interest to the user.
    60  //
    61  // The solution backing the campaign must have been created using a recipe of
    62  // type PERSONALIZED_RANKING.
    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 Runtime's
    69  // API operation GetPersonalizedRanking for usage and error information.
    70  //
    71  // Returned Error Types:
    72  //   * InvalidInputException
    73  //   Provide a valid value for the field or parameter.
    74  //
    75  //   * ResourceNotFoundException
    76  //   The specified resource does not exist.
    77  //
    78  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-runtime-2018-05-22/GetPersonalizedRanking
    79  func (c *PersonalizeRuntime) GetPersonalizedRanking(input *GetPersonalizedRankingInput) (*GetPersonalizedRankingOutput, error) {
    80  	req, out := c.GetPersonalizedRankingRequest(input)
    81  	return out, req.Send()
    82  }
    83  
    84  // GetPersonalizedRankingWithContext is the same as GetPersonalizedRanking with the addition of
    85  // the ability to pass a context and additional request options.
    86  //
    87  // See GetPersonalizedRanking for details on how to use this API operation.
    88  //
    89  // The context must be non-nil and will be used for request cancellation. If
    90  // the context is nil a panic will occur. In the future the SDK may create
    91  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    92  // for more information on using Contexts.
    93  func (c *PersonalizeRuntime) GetPersonalizedRankingWithContext(ctx aws.Context, input *GetPersonalizedRankingInput, opts ...request.Option) (*GetPersonalizedRankingOutput, error) {
    94  	req, out := c.GetPersonalizedRankingRequest(input)
    95  	req.SetContext(ctx)
    96  	req.ApplyOptions(opts...)
    97  	return out, req.Send()
    98  }
    99  
   100  const opGetRecommendations = "GetRecommendations"
   101  
   102  // GetRecommendationsRequest generates a "aws/request.Request" representing the
   103  // client's request for the GetRecommendations operation. The "output" return
   104  // value will be populated with the request's response once the request completes
   105  // successfully.
   106  //
   107  // Use "Send" method on the returned Request to send the API call to the service.
   108  // the "output" return value is not valid until after Send returns without error.
   109  //
   110  // See GetRecommendations for more information on using the GetRecommendations
   111  // API call, and error handling.
   112  //
   113  // This method is useful when you want to inject custom logic or configuration
   114  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   115  //
   116  //
   117  //    // Example sending a request using the GetRecommendationsRequest method.
   118  //    req, resp := client.GetRecommendationsRequest(params)
   119  //
   120  //    err := req.Send()
   121  //    if err == nil { // resp is now filled
   122  //        fmt.Println(resp)
   123  //    }
   124  //
   125  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-runtime-2018-05-22/GetRecommendations
   126  func (c *PersonalizeRuntime) GetRecommendationsRequest(input *GetRecommendationsInput) (req *request.Request, output *GetRecommendationsOutput) {
   127  	op := &request.Operation{
   128  		Name:       opGetRecommendations,
   129  		HTTPMethod: "POST",
   130  		HTTPPath:   "/recommendations",
   131  	}
   132  
   133  	if input == nil {
   134  		input = &GetRecommendationsInput{}
   135  	}
   136  
   137  	output = &GetRecommendationsOutput{}
   138  	req = c.newRequest(op, input, output)
   139  	return
   140  }
   141  
   142  // GetRecommendations API operation for Amazon Personalize Runtime.
   143  //
   144  // Returns a list of recommended items. The required input depends on the recipe
   145  // type used to create the solution backing the campaign, as follows:
   146  //
   147  //    * RELATED_ITEMS - itemId required, userId not used
   148  //
   149  //    * USER_PERSONALIZATION - itemId optional, userId required
   150  //
   151  // Campaigns that are backed by a solution created using a recipe of type PERSONALIZED_RANKING
   152  // use the API.
   153  //
   154  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   155  // with awserr.Error's Code and Message methods to get detailed information about
   156  // the error.
   157  //
   158  // See the AWS API reference guide for Amazon Personalize Runtime's
   159  // API operation GetRecommendations for usage and error information.
   160  //
   161  // Returned Error Types:
   162  //   * InvalidInputException
   163  //   Provide a valid value for the field or parameter.
   164  //
   165  //   * ResourceNotFoundException
   166  //   The specified resource does not exist.
   167  //
   168  // See also, https://docs.aws.amazon.com/goto/WebAPI/personalize-runtime-2018-05-22/GetRecommendations
   169  func (c *PersonalizeRuntime) GetRecommendations(input *GetRecommendationsInput) (*GetRecommendationsOutput, error) {
   170  	req, out := c.GetRecommendationsRequest(input)
   171  	return out, req.Send()
   172  }
   173  
   174  // GetRecommendationsWithContext is the same as GetRecommendations with the addition of
   175  // the ability to pass a context and additional request options.
   176  //
   177  // See GetRecommendations for details on how to use this API operation.
   178  //
   179  // The context must be non-nil and will be used for request cancellation. If
   180  // the context is nil a panic will occur. In the future the SDK may create
   181  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   182  // for more information on using Contexts.
   183  func (c *PersonalizeRuntime) GetRecommendationsWithContext(ctx aws.Context, input *GetRecommendationsInput, opts ...request.Option) (*GetRecommendationsOutput, error) {
   184  	req, out := c.GetRecommendationsRequest(input)
   185  	req.SetContext(ctx)
   186  	req.ApplyOptions(opts...)
   187  	return out, req.Send()
   188  }
   189  
   190  type GetPersonalizedRankingInput struct {
   191  	_ struct{} `type:"structure"`
   192  
   193  	// The Amazon Resource Name (ARN) of the campaign to use for generating the
   194  	// personalized ranking.
   195  	//
   196  	// CampaignArn is a required field
   197  	CampaignArn *string `locationName:"campaignArn" type:"string" required:"true"`
   198  
   199  	// The contextual metadata to use when getting recommendations. Contextual metadata
   200  	// includes any interaction information that might be relevant when getting
   201  	// a user's recommendations, such as the user's current location or device type.
   202  	Context map[string]*string `locationName:"context" type:"map"`
   203  
   204  	// The Amazon Resource Name (ARN) of a filter you created to include items or
   205  	// exclude items from recommendations for a given user. For more information,
   206  	// see Filtering Recommendations (https://docs.aws.amazon.com/personalize/latest/dg/filter.html).
   207  	FilterArn *string `locationName:"filterArn" type:"string"`
   208  
   209  	// The values to use when filtering recommendations. For each placeholder parameter
   210  	// in your filter expression, provide the parameter name (in matching case)
   211  	// as a key and the filter value(s) as the corresponding value. Separate multiple
   212  	// values for one parameter with a comma.
   213  	//
   214  	// For filter expressions that use an INCLUDE element to include items, you
   215  	// must provide values for all parameters that are defined in the expression.
   216  	// For filters with expressions that use an EXCLUDE element to exclude items,
   217  	// you can omit the filter-values.In this case, Amazon Personalize doesn't use
   218  	// that portion of the expression to filter recommendations.
   219  	//
   220  	// For more information, see Filtering Recommendations (https://docs.aws.amazon.com/personalize/latest/dg/filter.html).
   221  	FilterValues map[string]*string `locationName:"filterValues" type:"map"`
   222  
   223  	// A list of items (by itemId) to rank. If an item was not included in the training
   224  	// dataset, the item is appended to the end of the reranked list. The maximum
   225  	// is 500.
   226  	//
   227  	// InputList is a required field
   228  	InputList []*string `locationName:"inputList" type:"list" required:"true"`
   229  
   230  	// The user for which you want the campaign to provide a personalized ranking.
   231  	//
   232  	// UserId is a required field
   233  	UserId *string `locationName:"userId" type:"string" required:"true"`
   234  }
   235  
   236  // String returns the string representation.
   237  //
   238  // API parameter values that are decorated as "sensitive" in the API will not
   239  // be included in the string output. The member name will be present, but the
   240  // value will be replaced with "sensitive".
   241  func (s GetPersonalizedRankingInput) String() string {
   242  	return awsutil.Prettify(s)
   243  }
   244  
   245  // GoString returns the string representation.
   246  //
   247  // API parameter values that are decorated as "sensitive" in the API will not
   248  // be included in the string output. The member name will be present, but the
   249  // value will be replaced with "sensitive".
   250  func (s GetPersonalizedRankingInput) GoString() string {
   251  	return s.String()
   252  }
   253  
   254  // Validate inspects the fields of the type to determine if they are valid.
   255  func (s *GetPersonalizedRankingInput) Validate() error {
   256  	invalidParams := request.ErrInvalidParams{Context: "GetPersonalizedRankingInput"}
   257  	if s.CampaignArn == nil {
   258  		invalidParams.Add(request.NewErrParamRequired("CampaignArn"))
   259  	}
   260  	if s.InputList == nil {
   261  		invalidParams.Add(request.NewErrParamRequired("InputList"))
   262  	}
   263  	if s.UserId == nil {
   264  		invalidParams.Add(request.NewErrParamRequired("UserId"))
   265  	}
   266  
   267  	if invalidParams.Len() > 0 {
   268  		return invalidParams
   269  	}
   270  	return nil
   271  }
   272  
   273  // SetCampaignArn sets the CampaignArn field's value.
   274  func (s *GetPersonalizedRankingInput) SetCampaignArn(v string) *GetPersonalizedRankingInput {
   275  	s.CampaignArn = &v
   276  	return s
   277  }
   278  
   279  // SetContext sets the Context field's value.
   280  func (s *GetPersonalizedRankingInput) SetContext(v map[string]*string) *GetPersonalizedRankingInput {
   281  	s.Context = v
   282  	return s
   283  }
   284  
   285  // SetFilterArn sets the FilterArn field's value.
   286  func (s *GetPersonalizedRankingInput) SetFilterArn(v string) *GetPersonalizedRankingInput {
   287  	s.FilterArn = &v
   288  	return s
   289  }
   290  
   291  // SetFilterValues sets the FilterValues field's value.
   292  func (s *GetPersonalizedRankingInput) SetFilterValues(v map[string]*string) *GetPersonalizedRankingInput {
   293  	s.FilterValues = v
   294  	return s
   295  }
   296  
   297  // SetInputList sets the InputList field's value.
   298  func (s *GetPersonalizedRankingInput) SetInputList(v []*string) *GetPersonalizedRankingInput {
   299  	s.InputList = v
   300  	return s
   301  }
   302  
   303  // SetUserId sets the UserId field's value.
   304  func (s *GetPersonalizedRankingInput) SetUserId(v string) *GetPersonalizedRankingInput {
   305  	s.UserId = &v
   306  	return s
   307  }
   308  
   309  type GetPersonalizedRankingOutput struct {
   310  	_ struct{} `type:"structure"`
   311  
   312  	// A list of items in order of most likely interest to the user. The maximum
   313  	// is 500.
   314  	PersonalizedRanking []*PredictedItem `locationName:"personalizedRanking" type:"list"`
   315  
   316  	// The ID of the recommendation.
   317  	RecommendationId *string `locationName:"recommendationId" type:"string"`
   318  }
   319  
   320  // String returns the string representation.
   321  //
   322  // API parameter values that are decorated as "sensitive" in the API will not
   323  // be included in the string output. The member name will be present, but the
   324  // value will be replaced with "sensitive".
   325  func (s GetPersonalizedRankingOutput) String() string {
   326  	return awsutil.Prettify(s)
   327  }
   328  
   329  // GoString returns the string representation.
   330  //
   331  // API parameter values that are decorated as "sensitive" in the API will not
   332  // be included in the string output. The member name will be present, but the
   333  // value will be replaced with "sensitive".
   334  func (s GetPersonalizedRankingOutput) GoString() string {
   335  	return s.String()
   336  }
   337  
   338  // SetPersonalizedRanking sets the PersonalizedRanking field's value.
   339  func (s *GetPersonalizedRankingOutput) SetPersonalizedRanking(v []*PredictedItem) *GetPersonalizedRankingOutput {
   340  	s.PersonalizedRanking = v
   341  	return s
   342  }
   343  
   344  // SetRecommendationId sets the RecommendationId field's value.
   345  func (s *GetPersonalizedRankingOutput) SetRecommendationId(v string) *GetPersonalizedRankingOutput {
   346  	s.RecommendationId = &v
   347  	return s
   348  }
   349  
   350  type GetRecommendationsInput struct {
   351  	_ struct{} `type:"structure"`
   352  
   353  	// The Amazon Resource Name (ARN) of the campaign to use for getting recommendations.
   354  	//
   355  	// CampaignArn is a required field
   356  	CampaignArn *string `locationName:"campaignArn" type:"string" required:"true"`
   357  
   358  	// The contextual metadata to use when getting recommendations. Contextual metadata
   359  	// includes any interaction information that might be relevant when getting
   360  	// a user's recommendations, such as the user's current location or device type.
   361  	Context map[string]*string `locationName:"context" type:"map"`
   362  
   363  	// The ARN of the filter to apply to the returned recommendations. For more
   364  	// information, see Filtering Recommendations (https://docs.aws.amazon.com/personalize/latest/dg/filter.html).
   365  	//
   366  	// When using this parameter, be sure the filter resource is ACTIVE.
   367  	FilterArn *string `locationName:"filterArn" type:"string"`
   368  
   369  	// The values to use when filtering recommendations. For each placeholder parameter
   370  	// in your filter expression, provide the parameter name (in matching case)
   371  	// as a key and the filter value(s) as the corresponding value. Separate multiple
   372  	// values for one parameter with a comma.
   373  	//
   374  	// For filter expressions that use an INCLUDE element to include items, you
   375  	// must provide values for all parameters that are defined in the expression.
   376  	// For filters with expressions that use an EXCLUDE element to exclude items,
   377  	// you can omit the filter-values.In this case, Amazon Personalize doesn't use
   378  	// that portion of the expression to filter recommendations.
   379  	//
   380  	// For more information, see Filtering Recommendations (https://docs.aws.amazon.com/personalize/latest/dg/filter.html).
   381  	FilterValues map[string]*string `locationName:"filterValues" type:"map"`
   382  
   383  	// The item ID to provide recommendations for.
   384  	//
   385  	// Required for RELATED_ITEMS recipe type.
   386  	ItemId *string `locationName:"itemId" type:"string"`
   387  
   388  	// The number of results to return. The default is 25. The maximum is 500.
   389  	NumResults *int64 `locationName:"numResults" type:"integer"`
   390  
   391  	// The user ID to provide recommendations for.
   392  	//
   393  	// Required for USER_PERSONALIZATION recipe type.
   394  	UserId *string `locationName:"userId" type:"string"`
   395  }
   396  
   397  // String returns the string representation.
   398  //
   399  // API parameter values that are decorated as "sensitive" in the API will not
   400  // be included in the string output. The member name will be present, but the
   401  // value will be replaced with "sensitive".
   402  func (s GetRecommendationsInput) String() string {
   403  	return awsutil.Prettify(s)
   404  }
   405  
   406  // GoString returns the string representation.
   407  //
   408  // API parameter values that are decorated as "sensitive" in the API will not
   409  // be included in the string output. The member name will be present, but the
   410  // value will be replaced with "sensitive".
   411  func (s GetRecommendationsInput) GoString() string {
   412  	return s.String()
   413  }
   414  
   415  // Validate inspects the fields of the type to determine if they are valid.
   416  func (s *GetRecommendationsInput) Validate() error {
   417  	invalidParams := request.ErrInvalidParams{Context: "GetRecommendationsInput"}
   418  	if s.CampaignArn == nil {
   419  		invalidParams.Add(request.NewErrParamRequired("CampaignArn"))
   420  	}
   421  
   422  	if invalidParams.Len() > 0 {
   423  		return invalidParams
   424  	}
   425  	return nil
   426  }
   427  
   428  // SetCampaignArn sets the CampaignArn field's value.
   429  func (s *GetRecommendationsInput) SetCampaignArn(v string) *GetRecommendationsInput {
   430  	s.CampaignArn = &v
   431  	return s
   432  }
   433  
   434  // SetContext sets the Context field's value.
   435  func (s *GetRecommendationsInput) SetContext(v map[string]*string) *GetRecommendationsInput {
   436  	s.Context = v
   437  	return s
   438  }
   439  
   440  // SetFilterArn sets the FilterArn field's value.
   441  func (s *GetRecommendationsInput) SetFilterArn(v string) *GetRecommendationsInput {
   442  	s.FilterArn = &v
   443  	return s
   444  }
   445  
   446  // SetFilterValues sets the FilterValues field's value.
   447  func (s *GetRecommendationsInput) SetFilterValues(v map[string]*string) *GetRecommendationsInput {
   448  	s.FilterValues = v
   449  	return s
   450  }
   451  
   452  // SetItemId sets the ItemId field's value.
   453  func (s *GetRecommendationsInput) SetItemId(v string) *GetRecommendationsInput {
   454  	s.ItemId = &v
   455  	return s
   456  }
   457  
   458  // SetNumResults sets the NumResults field's value.
   459  func (s *GetRecommendationsInput) SetNumResults(v int64) *GetRecommendationsInput {
   460  	s.NumResults = &v
   461  	return s
   462  }
   463  
   464  // SetUserId sets the UserId field's value.
   465  func (s *GetRecommendationsInput) SetUserId(v string) *GetRecommendationsInput {
   466  	s.UserId = &v
   467  	return s
   468  }
   469  
   470  type GetRecommendationsOutput struct {
   471  	_ struct{} `type:"structure"`
   472  
   473  	// A list of recommendations sorted in ascending order by prediction score.
   474  	// There can be a maximum of 500 items in the list.
   475  	ItemList []*PredictedItem `locationName:"itemList" type:"list"`
   476  
   477  	// The ID of the recommendation.
   478  	RecommendationId *string `locationName:"recommendationId" type:"string"`
   479  }
   480  
   481  // String returns the string representation.
   482  //
   483  // API parameter values that are decorated as "sensitive" in the API will not
   484  // be included in the string output. The member name will be present, but the
   485  // value will be replaced with "sensitive".
   486  func (s GetRecommendationsOutput) String() string {
   487  	return awsutil.Prettify(s)
   488  }
   489  
   490  // GoString returns the string representation.
   491  //
   492  // API parameter values that are decorated as "sensitive" in the API will not
   493  // be included in the string output. The member name will be present, but the
   494  // value will be replaced with "sensitive".
   495  func (s GetRecommendationsOutput) GoString() string {
   496  	return s.String()
   497  }
   498  
   499  // SetItemList sets the ItemList field's value.
   500  func (s *GetRecommendationsOutput) SetItemList(v []*PredictedItem) *GetRecommendationsOutput {
   501  	s.ItemList = v
   502  	return s
   503  }
   504  
   505  // SetRecommendationId sets the RecommendationId field's value.
   506  func (s *GetRecommendationsOutput) SetRecommendationId(v string) *GetRecommendationsOutput {
   507  	s.RecommendationId = &v
   508  	return s
   509  }
   510  
   511  // Provide a valid value for the field or parameter.
   512  type InvalidInputException struct {
   513  	_            struct{}                  `type:"structure"`
   514  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
   515  
   516  	Message_ *string `locationName:"message" type:"string"`
   517  }
   518  
   519  // String returns the string representation.
   520  //
   521  // API parameter values that are decorated as "sensitive" in the API will not
   522  // be included in the string output. The member name will be present, but the
   523  // value will be replaced with "sensitive".
   524  func (s InvalidInputException) String() string {
   525  	return awsutil.Prettify(s)
   526  }
   527  
   528  // GoString returns the string representation.
   529  //
   530  // API parameter values that are decorated as "sensitive" in the API will not
   531  // be included in the string output. The member name will be present, but the
   532  // value will be replaced with "sensitive".
   533  func (s InvalidInputException) GoString() string {
   534  	return s.String()
   535  }
   536  
   537  func newErrorInvalidInputException(v protocol.ResponseMetadata) error {
   538  	return &InvalidInputException{
   539  		RespMetadata: v,
   540  	}
   541  }
   542  
   543  // Code returns the exception type name.
   544  func (s *InvalidInputException) Code() string {
   545  	return "InvalidInputException"
   546  }
   547  
   548  // Message returns the exception's message.
   549  func (s *InvalidInputException) Message() string {
   550  	if s.Message_ != nil {
   551  		return *s.Message_
   552  	}
   553  	return ""
   554  }
   555  
   556  // OrigErr always returns nil, satisfies awserr.Error interface.
   557  func (s *InvalidInputException) OrigErr() error {
   558  	return nil
   559  }
   560  
   561  func (s *InvalidInputException) Error() string {
   562  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
   563  }
   564  
   565  // Status code returns the HTTP status code for the request's response error.
   566  func (s *InvalidInputException) StatusCode() int {
   567  	return s.RespMetadata.StatusCode
   568  }
   569  
   570  // RequestID returns the service's response RequestID for request.
   571  func (s *InvalidInputException) RequestID() string {
   572  	return s.RespMetadata.RequestID
   573  }
   574  
   575  // An object that identifies an item.
   576  //
   577  // The and APIs return a list of PredictedItems.
   578  type PredictedItem struct {
   579  	_ struct{} `type:"structure"`
   580  
   581  	// The recommended item ID.
   582  	ItemId *string `locationName:"itemId" type:"string"`
   583  
   584  	// A numeric representation of the model's certainty that the item will be the
   585  	// next user selection. For more information on scoring logic, see how-scores-work.
   586  	Score *float64 `locationName:"score" type:"double"`
   587  }
   588  
   589  // String returns the string representation.
   590  //
   591  // API parameter values that are decorated as "sensitive" in the API will not
   592  // be included in the string output. The member name will be present, but the
   593  // value will be replaced with "sensitive".
   594  func (s PredictedItem) String() string {
   595  	return awsutil.Prettify(s)
   596  }
   597  
   598  // GoString returns the string representation.
   599  //
   600  // API parameter values that are decorated as "sensitive" in the API will not
   601  // be included in the string output. The member name will be present, but the
   602  // value will be replaced with "sensitive".
   603  func (s PredictedItem) GoString() string {
   604  	return s.String()
   605  }
   606  
   607  // SetItemId sets the ItemId field's value.
   608  func (s *PredictedItem) SetItemId(v string) *PredictedItem {
   609  	s.ItemId = &v
   610  	return s
   611  }
   612  
   613  // SetScore sets the Score field's value.
   614  func (s *PredictedItem) SetScore(v float64) *PredictedItem {
   615  	s.Score = &v
   616  	return s
   617  }
   618  
   619  // The specified resource does not exist.
   620  type ResourceNotFoundException struct {
   621  	_            struct{}                  `type:"structure"`
   622  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
   623  
   624  	Message_ *string `locationName:"message" type:"string"`
   625  }
   626  
   627  // String returns the string representation.
   628  //
   629  // API parameter values that are decorated as "sensitive" in the API will not
   630  // be included in the string output. The member name will be present, but the
   631  // value will be replaced with "sensitive".
   632  func (s ResourceNotFoundException) String() string {
   633  	return awsutil.Prettify(s)
   634  }
   635  
   636  // GoString returns the string representation.
   637  //
   638  // API parameter values that are decorated as "sensitive" in the API will not
   639  // be included in the string output. The member name will be present, but the
   640  // value will be replaced with "sensitive".
   641  func (s ResourceNotFoundException) GoString() string {
   642  	return s.String()
   643  }
   644  
   645  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
   646  	return &ResourceNotFoundException{
   647  		RespMetadata: v,
   648  	}
   649  }
   650  
   651  // Code returns the exception type name.
   652  func (s *ResourceNotFoundException) Code() string {
   653  	return "ResourceNotFoundException"
   654  }
   655  
   656  // Message returns the exception's message.
   657  func (s *ResourceNotFoundException) Message() string {
   658  	if s.Message_ != nil {
   659  		return *s.Message_
   660  	}
   661  	return ""
   662  }
   663  
   664  // OrigErr always returns nil, satisfies awserr.Error interface.
   665  func (s *ResourceNotFoundException) OrigErr() error {
   666  	return nil
   667  }
   668  
   669  func (s *ResourceNotFoundException) Error() string {
   670  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
   671  }
   672  
   673  // Status code returns the HTTP status code for the request's response error.
   674  func (s *ResourceNotFoundException) StatusCode() int {
   675  	return s.RespMetadata.StatusCode
   676  }
   677  
   678  // RequestID returns the service's response RequestID for request.
   679  func (s *ResourceNotFoundException) RequestID() string {
   680  	return s.RespMetadata.RequestID
   681  }