1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package lexmodelbuildingservice 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12 "github.com/aws/aws-sdk-go/private/protocol" 13 "github.com/aws/aws-sdk-go/private/protocol/restjson" 14) 15 16const opCreateBotVersion = "CreateBotVersion" 17 18// CreateBotVersionRequest generates a "aws/request.Request" representing the 19// client's request for the CreateBotVersion 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 CreateBotVersion for more information on using the CreateBotVersion 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 CreateBotVersionRequest method. 34// req, resp := client.CreateBotVersionRequest(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/lex-models-2017-04-19/CreateBotVersion 42func (c *LexModelBuildingService) CreateBotVersionRequest(input *CreateBotVersionInput) (req *request.Request, output *CreateBotVersionOutput) { 43 op := &request.Operation{ 44 Name: opCreateBotVersion, 45 HTTPMethod: "POST", 46 HTTPPath: "/bots/{name}/versions", 47 } 48 49 if input == nil { 50 input = &CreateBotVersionInput{} 51 } 52 53 output = &CreateBotVersionOutput{} 54 req = c.newRequest(op, input, output) 55 return 56} 57 58// CreateBotVersion API operation for Amazon Lex Model Building Service. 59// 60// Creates a new version of the bot based on the $LATEST version. If the $LATEST 61// version of this resource hasn't changed since you created the last version, 62// Amazon Lex doesn't create a new version. It returns the last created version. 63// 64// You can update only the $LATEST version of the bot. You can't update the 65// numbered versions that you create with the CreateBotVersion operation. 66// 67// When you create the first version of a bot, Amazon Lex sets the version to 68// 1. Subsequent versions increment by 1. For more information, see versioning-intro. 69// 70// This operation requires permission for the lex:CreateBotVersion action. 71// 72// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 73// with awserr.Error's Code and Message methods to get detailed information about 74// the error. 75// 76// See the AWS API reference guide for Amazon Lex Model Building Service's 77// API operation CreateBotVersion for usage and error information. 78// 79// Returned Error Types: 80// * NotFoundException 81// The resource specified in the request was not found. Check the resource and 82// try again. 83// 84// * ConflictException 85// There was a conflict processing the request. Try your request again. 86// 87// * LimitExceededException 88// The request exceeded a limit. Try your request again. 89// 90// * InternalFailureException 91// An internal Amazon Lex error occurred. Try your request again. 92// 93// * BadRequestException 94// The request is not well formed. For example, a value is invalid or a required 95// field is missing. Check the field values, and try again. 96// 97// * PreconditionFailedException 98// The checksum of the resource that you are trying to change does not match 99// the checksum in the request. Check the resource's checksum and try again. 100// 101// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/CreateBotVersion 102func (c *LexModelBuildingService) CreateBotVersion(input *CreateBotVersionInput) (*CreateBotVersionOutput, error) { 103 req, out := c.CreateBotVersionRequest(input) 104 return out, req.Send() 105} 106 107// CreateBotVersionWithContext is the same as CreateBotVersion with the addition of 108// the ability to pass a context and additional request options. 109// 110// See CreateBotVersion for details on how to use this API operation. 111// 112// The context must be non-nil and will be used for request cancellation. If 113// the context is nil a panic will occur. In the future the SDK may create 114// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 115// for more information on using Contexts. 116func (c *LexModelBuildingService) CreateBotVersionWithContext(ctx aws.Context, input *CreateBotVersionInput, opts ...request.Option) (*CreateBotVersionOutput, error) { 117 req, out := c.CreateBotVersionRequest(input) 118 req.SetContext(ctx) 119 req.ApplyOptions(opts...) 120 return out, req.Send() 121} 122 123const opCreateIntentVersion = "CreateIntentVersion" 124 125// CreateIntentVersionRequest generates a "aws/request.Request" representing the 126// client's request for the CreateIntentVersion operation. The "output" return 127// value will be populated with the request's response once the request completes 128// successfully. 129// 130// Use "Send" method on the returned Request to send the API call to the service. 131// the "output" return value is not valid until after Send returns without error. 132// 133// See CreateIntentVersion for more information on using the CreateIntentVersion 134// API call, and error handling. 135// 136// This method is useful when you want to inject custom logic or configuration 137// into the SDK's request lifecycle. Such as custom headers, or retry logic. 138// 139// 140// // Example sending a request using the CreateIntentVersionRequest method. 141// req, resp := client.CreateIntentVersionRequest(params) 142// 143// err := req.Send() 144// if err == nil { // resp is now filled 145// fmt.Println(resp) 146// } 147// 148// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/CreateIntentVersion 149func (c *LexModelBuildingService) CreateIntentVersionRequest(input *CreateIntentVersionInput) (req *request.Request, output *CreateIntentVersionOutput) { 150 op := &request.Operation{ 151 Name: opCreateIntentVersion, 152 HTTPMethod: "POST", 153 HTTPPath: "/intents/{name}/versions", 154 } 155 156 if input == nil { 157 input = &CreateIntentVersionInput{} 158 } 159 160 output = &CreateIntentVersionOutput{} 161 req = c.newRequest(op, input, output) 162 return 163} 164 165// CreateIntentVersion API operation for Amazon Lex Model Building Service. 166// 167// Creates a new version of an intent based on the $LATEST version of the intent. 168// If the $LATEST version of this intent hasn't changed since you last updated 169// it, Amazon Lex doesn't create a new version. It returns the last version 170// you created. 171// 172// You can update only the $LATEST version of the intent. You can't update the 173// numbered versions that you create with the CreateIntentVersion operation. 174// 175// When you create a version of an intent, Amazon Lex sets the version to 1. 176// Subsequent versions increment by 1. For more information, see versioning-intro. 177// 178// This operation requires permissions to perform the lex:CreateIntentVersion 179// action. 180// 181// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 182// with awserr.Error's Code and Message methods to get detailed information about 183// the error. 184// 185// See the AWS API reference guide for Amazon Lex Model Building Service's 186// API operation CreateIntentVersion for usage and error information. 187// 188// Returned Error Types: 189// * NotFoundException 190// The resource specified in the request was not found. Check the resource and 191// try again. 192// 193// * ConflictException 194// There was a conflict processing the request. Try your request again. 195// 196// * LimitExceededException 197// The request exceeded a limit. Try your request again. 198// 199// * InternalFailureException 200// An internal Amazon Lex error occurred. Try your request again. 201// 202// * BadRequestException 203// The request is not well formed. For example, a value is invalid or a required 204// field is missing. Check the field values, and try again. 205// 206// * PreconditionFailedException 207// The checksum of the resource that you are trying to change does not match 208// the checksum in the request. Check the resource's checksum and try again. 209// 210// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/CreateIntentVersion 211func (c *LexModelBuildingService) CreateIntentVersion(input *CreateIntentVersionInput) (*CreateIntentVersionOutput, error) { 212 req, out := c.CreateIntentVersionRequest(input) 213 return out, req.Send() 214} 215 216// CreateIntentVersionWithContext is the same as CreateIntentVersion with the addition of 217// the ability to pass a context and additional request options. 218// 219// See CreateIntentVersion for details on how to use this API operation. 220// 221// The context must be non-nil and will be used for request cancellation. If 222// the context is nil a panic will occur. In the future the SDK may create 223// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 224// for more information on using Contexts. 225func (c *LexModelBuildingService) CreateIntentVersionWithContext(ctx aws.Context, input *CreateIntentVersionInput, opts ...request.Option) (*CreateIntentVersionOutput, error) { 226 req, out := c.CreateIntentVersionRequest(input) 227 req.SetContext(ctx) 228 req.ApplyOptions(opts...) 229 return out, req.Send() 230} 231 232const opCreateSlotTypeVersion = "CreateSlotTypeVersion" 233 234// CreateSlotTypeVersionRequest generates a "aws/request.Request" representing the 235// client's request for the CreateSlotTypeVersion operation. The "output" return 236// value will be populated with the request's response once the request completes 237// successfully. 238// 239// Use "Send" method on the returned Request to send the API call to the service. 240// the "output" return value is not valid until after Send returns without error. 241// 242// See CreateSlotTypeVersion for more information on using the CreateSlotTypeVersion 243// API call, and error handling. 244// 245// This method is useful when you want to inject custom logic or configuration 246// into the SDK's request lifecycle. Such as custom headers, or retry logic. 247// 248// 249// // Example sending a request using the CreateSlotTypeVersionRequest method. 250// req, resp := client.CreateSlotTypeVersionRequest(params) 251// 252// err := req.Send() 253// if err == nil { // resp is now filled 254// fmt.Println(resp) 255// } 256// 257// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/CreateSlotTypeVersion 258func (c *LexModelBuildingService) CreateSlotTypeVersionRequest(input *CreateSlotTypeVersionInput) (req *request.Request, output *CreateSlotTypeVersionOutput) { 259 op := &request.Operation{ 260 Name: opCreateSlotTypeVersion, 261 HTTPMethod: "POST", 262 HTTPPath: "/slottypes/{name}/versions", 263 } 264 265 if input == nil { 266 input = &CreateSlotTypeVersionInput{} 267 } 268 269 output = &CreateSlotTypeVersionOutput{} 270 req = c.newRequest(op, input, output) 271 return 272} 273 274// CreateSlotTypeVersion API operation for Amazon Lex Model Building Service. 275// 276// Creates a new version of a slot type based on the $LATEST version of the 277// specified slot type. If the $LATEST version of this resource has not changed 278// since the last version that you created, Amazon Lex doesn't create a new 279// version. It returns the last version that you created. 280// 281// You can update only the $LATEST version of a slot type. You can't update 282// the numbered versions that you create with the CreateSlotTypeVersion operation. 283// 284// When you create a version of a slot type, Amazon Lex sets the version to 285// 1. Subsequent versions increment by 1. For more information, see versioning-intro. 286// 287// This operation requires permissions for the lex:CreateSlotTypeVersion action. 288// 289// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 290// with awserr.Error's Code and Message methods to get detailed information about 291// the error. 292// 293// See the AWS API reference guide for Amazon Lex Model Building Service's 294// API operation CreateSlotTypeVersion for usage and error information. 295// 296// Returned Error Types: 297// * NotFoundException 298// The resource specified in the request was not found. Check the resource and 299// try again. 300// 301// * ConflictException 302// There was a conflict processing the request. Try your request again. 303// 304// * LimitExceededException 305// The request exceeded a limit. Try your request again. 306// 307// * InternalFailureException 308// An internal Amazon Lex error occurred. Try your request again. 309// 310// * BadRequestException 311// The request is not well formed. For example, a value is invalid or a required 312// field is missing. Check the field values, and try again. 313// 314// * PreconditionFailedException 315// The checksum of the resource that you are trying to change does not match 316// the checksum in the request. Check the resource's checksum and try again. 317// 318// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/CreateSlotTypeVersion 319func (c *LexModelBuildingService) CreateSlotTypeVersion(input *CreateSlotTypeVersionInput) (*CreateSlotTypeVersionOutput, error) { 320 req, out := c.CreateSlotTypeVersionRequest(input) 321 return out, req.Send() 322} 323 324// CreateSlotTypeVersionWithContext is the same as CreateSlotTypeVersion with the addition of 325// the ability to pass a context and additional request options. 326// 327// See CreateSlotTypeVersion for details on how to use this API operation. 328// 329// The context must be non-nil and will be used for request cancellation. If 330// the context is nil a panic will occur. In the future the SDK may create 331// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 332// for more information on using Contexts. 333func (c *LexModelBuildingService) CreateSlotTypeVersionWithContext(ctx aws.Context, input *CreateSlotTypeVersionInput, opts ...request.Option) (*CreateSlotTypeVersionOutput, error) { 334 req, out := c.CreateSlotTypeVersionRequest(input) 335 req.SetContext(ctx) 336 req.ApplyOptions(opts...) 337 return out, req.Send() 338} 339 340const opDeleteBot = "DeleteBot" 341 342// DeleteBotRequest generates a "aws/request.Request" representing the 343// client's request for the DeleteBot operation. The "output" return 344// value will be populated with the request's response once the request completes 345// successfully. 346// 347// Use "Send" method on the returned Request to send the API call to the service. 348// the "output" return value is not valid until after Send returns without error. 349// 350// See DeleteBot for more information on using the DeleteBot 351// API call, and error handling. 352// 353// This method is useful when you want to inject custom logic or configuration 354// into the SDK's request lifecycle. Such as custom headers, or retry logic. 355// 356// 357// // Example sending a request using the DeleteBotRequest method. 358// req, resp := client.DeleteBotRequest(params) 359// 360// err := req.Send() 361// if err == nil { // resp is now filled 362// fmt.Println(resp) 363// } 364// 365// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBot 366func (c *LexModelBuildingService) DeleteBotRequest(input *DeleteBotInput) (req *request.Request, output *DeleteBotOutput) { 367 op := &request.Operation{ 368 Name: opDeleteBot, 369 HTTPMethod: "DELETE", 370 HTTPPath: "/bots/{name}", 371 } 372 373 if input == nil { 374 input = &DeleteBotInput{} 375 } 376 377 output = &DeleteBotOutput{} 378 req = c.newRequest(op, input, output) 379 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 380 return 381} 382 383// DeleteBot API operation for Amazon Lex Model Building Service. 384// 385// Deletes all versions of the bot, including the $LATEST version. To delete 386// a specific version of the bot, use the DeleteBotVersion operation. The DeleteBot 387// operation doesn't immediately remove the bot schema. Instead, it is marked 388// for deletion and removed later. 389// 390// Amazon Lex stores utterances indefinitely for improving the ability of your 391// bot to respond to user inputs. These utterances are not removed when the 392// bot is deleted. To remove the utterances, use the DeleteUtterances operation. 393// 394// If a bot has an alias, you can't delete it. Instead, the DeleteBot operation 395// returns a ResourceInUseException exception that includes a reference to the 396// alias that refers to the bot. To remove the reference to the bot, delete 397// the alias. If you get the same exception again, delete the referring alias 398// until the DeleteBot operation is successful. 399// 400// This operation requires permissions for the lex:DeleteBot action. 401// 402// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 403// with awserr.Error's Code and Message methods to get detailed information about 404// the error. 405// 406// See the AWS API reference guide for Amazon Lex Model Building Service's 407// API operation DeleteBot for usage and error information. 408// 409// Returned Error Types: 410// * NotFoundException 411// The resource specified in the request was not found. Check the resource and 412// try again. 413// 414// * ConflictException 415// There was a conflict processing the request. Try your request again. 416// 417// * LimitExceededException 418// The request exceeded a limit. Try your request again. 419// 420// * InternalFailureException 421// An internal Amazon Lex error occurred. Try your request again. 422// 423// * BadRequestException 424// The request is not well formed. For example, a value is invalid or a required 425// field is missing. Check the field values, and try again. 426// 427// * ResourceInUseException 428// The resource that you are attempting to delete is referred to by another 429// resource. Use this information to remove references to the resource that 430// you are trying to delete. 431// 432// The body of the exception contains a JSON object that describes the resource. 433// 434// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 435// 436// "resourceReference": { 437// 438// "name": string, "version": string } } 439// 440// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBot 441func (c *LexModelBuildingService) DeleteBot(input *DeleteBotInput) (*DeleteBotOutput, error) { 442 req, out := c.DeleteBotRequest(input) 443 return out, req.Send() 444} 445 446// DeleteBotWithContext is the same as DeleteBot with the addition of 447// the ability to pass a context and additional request options. 448// 449// See DeleteBot for details on how to use this API operation. 450// 451// The context must be non-nil and will be used for request cancellation. If 452// the context is nil a panic will occur. In the future the SDK may create 453// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 454// for more information on using Contexts. 455func (c *LexModelBuildingService) DeleteBotWithContext(ctx aws.Context, input *DeleteBotInput, opts ...request.Option) (*DeleteBotOutput, error) { 456 req, out := c.DeleteBotRequest(input) 457 req.SetContext(ctx) 458 req.ApplyOptions(opts...) 459 return out, req.Send() 460} 461 462const opDeleteBotAlias = "DeleteBotAlias" 463 464// DeleteBotAliasRequest generates a "aws/request.Request" representing the 465// client's request for the DeleteBotAlias operation. The "output" return 466// value will be populated with the request's response once the request completes 467// successfully. 468// 469// Use "Send" method on the returned Request to send the API call to the service. 470// the "output" return value is not valid until after Send returns without error. 471// 472// See DeleteBotAlias for more information on using the DeleteBotAlias 473// API call, and error handling. 474// 475// This method is useful when you want to inject custom logic or configuration 476// into the SDK's request lifecycle. Such as custom headers, or retry logic. 477// 478// 479// // Example sending a request using the DeleteBotAliasRequest method. 480// req, resp := client.DeleteBotAliasRequest(params) 481// 482// err := req.Send() 483// if err == nil { // resp is now filled 484// fmt.Println(resp) 485// } 486// 487// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBotAlias 488func (c *LexModelBuildingService) DeleteBotAliasRequest(input *DeleteBotAliasInput) (req *request.Request, output *DeleteBotAliasOutput) { 489 op := &request.Operation{ 490 Name: opDeleteBotAlias, 491 HTTPMethod: "DELETE", 492 HTTPPath: "/bots/{botName}/aliases/{name}", 493 } 494 495 if input == nil { 496 input = &DeleteBotAliasInput{} 497 } 498 499 output = &DeleteBotAliasOutput{} 500 req = c.newRequest(op, input, output) 501 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 502 return 503} 504 505// DeleteBotAlias API operation for Amazon Lex Model Building Service. 506// 507// Deletes an alias for the specified bot. 508// 509// You can't delete an alias that is used in the association between a bot and 510// a messaging channel. If an alias is used in a channel association, the DeleteBot 511// operation returns a ResourceInUseException exception that includes a reference 512// to the channel association that refers to the bot. You can remove the reference 513// to the alias by deleting the channel association. If you get the same exception 514// again, delete the referring association until the DeleteBotAlias operation 515// is successful. 516// 517// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 518// with awserr.Error's Code and Message methods to get detailed information about 519// the error. 520// 521// See the AWS API reference guide for Amazon Lex Model Building Service's 522// API operation DeleteBotAlias for usage and error information. 523// 524// Returned Error Types: 525// * NotFoundException 526// The resource specified in the request was not found. Check the resource and 527// try again. 528// 529// * ConflictException 530// There was a conflict processing the request. Try your request again. 531// 532// * LimitExceededException 533// The request exceeded a limit. Try your request again. 534// 535// * InternalFailureException 536// An internal Amazon Lex error occurred. Try your request again. 537// 538// * BadRequestException 539// The request is not well formed. For example, a value is invalid or a required 540// field is missing. Check the field values, and try again. 541// 542// * ResourceInUseException 543// The resource that you are attempting to delete is referred to by another 544// resource. Use this information to remove references to the resource that 545// you are trying to delete. 546// 547// The body of the exception contains a JSON object that describes the resource. 548// 549// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 550// 551// "resourceReference": { 552// 553// "name": string, "version": string } } 554// 555// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBotAlias 556func (c *LexModelBuildingService) DeleteBotAlias(input *DeleteBotAliasInput) (*DeleteBotAliasOutput, error) { 557 req, out := c.DeleteBotAliasRequest(input) 558 return out, req.Send() 559} 560 561// DeleteBotAliasWithContext is the same as DeleteBotAlias with the addition of 562// the ability to pass a context and additional request options. 563// 564// See DeleteBotAlias for details on how to use this API operation. 565// 566// The context must be non-nil and will be used for request cancellation. If 567// the context is nil a panic will occur. In the future the SDK may create 568// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 569// for more information on using Contexts. 570func (c *LexModelBuildingService) DeleteBotAliasWithContext(ctx aws.Context, input *DeleteBotAliasInput, opts ...request.Option) (*DeleteBotAliasOutput, error) { 571 req, out := c.DeleteBotAliasRequest(input) 572 req.SetContext(ctx) 573 req.ApplyOptions(opts...) 574 return out, req.Send() 575} 576 577const opDeleteBotChannelAssociation = "DeleteBotChannelAssociation" 578 579// DeleteBotChannelAssociationRequest generates a "aws/request.Request" representing the 580// client's request for the DeleteBotChannelAssociation operation. The "output" return 581// value will be populated with the request's response once the request completes 582// successfully. 583// 584// Use "Send" method on the returned Request to send the API call to the service. 585// the "output" return value is not valid until after Send returns without error. 586// 587// See DeleteBotChannelAssociation for more information on using the DeleteBotChannelAssociation 588// API call, and error handling. 589// 590// This method is useful when you want to inject custom logic or configuration 591// into the SDK's request lifecycle. Such as custom headers, or retry logic. 592// 593// 594// // Example sending a request using the DeleteBotChannelAssociationRequest method. 595// req, resp := client.DeleteBotChannelAssociationRequest(params) 596// 597// err := req.Send() 598// if err == nil { // resp is now filled 599// fmt.Println(resp) 600// } 601// 602// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBotChannelAssociation 603func (c *LexModelBuildingService) DeleteBotChannelAssociationRequest(input *DeleteBotChannelAssociationInput) (req *request.Request, output *DeleteBotChannelAssociationOutput) { 604 op := &request.Operation{ 605 Name: opDeleteBotChannelAssociation, 606 HTTPMethod: "DELETE", 607 HTTPPath: "/bots/{botName}/aliases/{aliasName}/channels/{name}", 608 } 609 610 if input == nil { 611 input = &DeleteBotChannelAssociationInput{} 612 } 613 614 output = &DeleteBotChannelAssociationOutput{} 615 req = c.newRequest(op, input, output) 616 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 617 return 618} 619 620// DeleteBotChannelAssociation API operation for Amazon Lex Model Building Service. 621// 622// Deletes the association between an Amazon Lex bot and a messaging platform. 623// 624// This operation requires permission for the lex:DeleteBotChannelAssociation 625// action. 626// 627// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 628// with awserr.Error's Code and Message methods to get detailed information about 629// the error. 630// 631// See the AWS API reference guide for Amazon Lex Model Building Service's 632// API operation DeleteBotChannelAssociation for usage and error information. 633// 634// Returned Error Types: 635// * NotFoundException 636// The resource specified in the request was not found. Check the resource and 637// try again. 638// 639// * ConflictException 640// There was a conflict processing the request. Try your request again. 641// 642// * LimitExceededException 643// The request exceeded a limit. Try your request again. 644// 645// * InternalFailureException 646// An internal Amazon Lex error occurred. Try your request again. 647// 648// * BadRequestException 649// The request is not well formed. For example, a value is invalid or a required 650// field is missing. Check the field values, and try again. 651// 652// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBotChannelAssociation 653func (c *LexModelBuildingService) DeleteBotChannelAssociation(input *DeleteBotChannelAssociationInput) (*DeleteBotChannelAssociationOutput, error) { 654 req, out := c.DeleteBotChannelAssociationRequest(input) 655 return out, req.Send() 656} 657 658// DeleteBotChannelAssociationWithContext is the same as DeleteBotChannelAssociation with the addition of 659// the ability to pass a context and additional request options. 660// 661// See DeleteBotChannelAssociation for details on how to use this API operation. 662// 663// The context must be non-nil and will be used for request cancellation. If 664// the context is nil a panic will occur. In the future the SDK may create 665// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 666// for more information on using Contexts. 667func (c *LexModelBuildingService) DeleteBotChannelAssociationWithContext(ctx aws.Context, input *DeleteBotChannelAssociationInput, opts ...request.Option) (*DeleteBotChannelAssociationOutput, error) { 668 req, out := c.DeleteBotChannelAssociationRequest(input) 669 req.SetContext(ctx) 670 req.ApplyOptions(opts...) 671 return out, req.Send() 672} 673 674const opDeleteBotVersion = "DeleteBotVersion" 675 676// DeleteBotVersionRequest generates a "aws/request.Request" representing the 677// client's request for the DeleteBotVersion operation. The "output" return 678// value will be populated with the request's response once the request completes 679// successfully. 680// 681// Use "Send" method on the returned Request to send the API call to the service. 682// the "output" return value is not valid until after Send returns without error. 683// 684// See DeleteBotVersion for more information on using the DeleteBotVersion 685// API call, and error handling. 686// 687// This method is useful when you want to inject custom logic or configuration 688// into the SDK's request lifecycle. Such as custom headers, or retry logic. 689// 690// 691// // Example sending a request using the DeleteBotVersionRequest method. 692// req, resp := client.DeleteBotVersionRequest(params) 693// 694// err := req.Send() 695// if err == nil { // resp is now filled 696// fmt.Println(resp) 697// } 698// 699// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBotVersion 700func (c *LexModelBuildingService) DeleteBotVersionRequest(input *DeleteBotVersionInput) (req *request.Request, output *DeleteBotVersionOutput) { 701 op := &request.Operation{ 702 Name: opDeleteBotVersion, 703 HTTPMethod: "DELETE", 704 HTTPPath: "/bots/{name}/versions/{version}", 705 } 706 707 if input == nil { 708 input = &DeleteBotVersionInput{} 709 } 710 711 output = &DeleteBotVersionOutput{} 712 req = c.newRequest(op, input, output) 713 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 714 return 715} 716 717// DeleteBotVersion API operation for Amazon Lex Model Building Service. 718// 719// Deletes a specific version of a bot. To delete all versions of a bot, use 720// the DeleteBot operation. 721// 722// This operation requires permissions for the lex:DeleteBotVersion action. 723// 724// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 725// with awserr.Error's Code and Message methods to get detailed information about 726// the error. 727// 728// See the AWS API reference guide for Amazon Lex Model Building Service's 729// API operation DeleteBotVersion for usage and error information. 730// 731// Returned Error Types: 732// * NotFoundException 733// The resource specified in the request was not found. Check the resource and 734// try again. 735// 736// * ConflictException 737// There was a conflict processing the request. Try your request again. 738// 739// * LimitExceededException 740// The request exceeded a limit. Try your request again. 741// 742// * InternalFailureException 743// An internal Amazon Lex error occurred. Try your request again. 744// 745// * BadRequestException 746// The request is not well formed. For example, a value is invalid or a required 747// field is missing. Check the field values, and try again. 748// 749// * ResourceInUseException 750// The resource that you are attempting to delete is referred to by another 751// resource. Use this information to remove references to the resource that 752// you are trying to delete. 753// 754// The body of the exception contains a JSON object that describes the resource. 755// 756// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 757// 758// "resourceReference": { 759// 760// "name": string, "version": string } } 761// 762// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteBotVersion 763func (c *LexModelBuildingService) DeleteBotVersion(input *DeleteBotVersionInput) (*DeleteBotVersionOutput, error) { 764 req, out := c.DeleteBotVersionRequest(input) 765 return out, req.Send() 766} 767 768// DeleteBotVersionWithContext is the same as DeleteBotVersion with the addition of 769// the ability to pass a context and additional request options. 770// 771// See DeleteBotVersion for details on how to use this API operation. 772// 773// The context must be non-nil and will be used for request cancellation. If 774// the context is nil a panic will occur. In the future the SDK may create 775// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 776// for more information on using Contexts. 777func (c *LexModelBuildingService) DeleteBotVersionWithContext(ctx aws.Context, input *DeleteBotVersionInput, opts ...request.Option) (*DeleteBotVersionOutput, error) { 778 req, out := c.DeleteBotVersionRequest(input) 779 req.SetContext(ctx) 780 req.ApplyOptions(opts...) 781 return out, req.Send() 782} 783 784const opDeleteIntent = "DeleteIntent" 785 786// DeleteIntentRequest generates a "aws/request.Request" representing the 787// client's request for the DeleteIntent operation. The "output" return 788// value will be populated with the request's response once the request completes 789// successfully. 790// 791// Use "Send" method on the returned Request to send the API call to the service. 792// the "output" return value is not valid until after Send returns without error. 793// 794// See DeleteIntent for more information on using the DeleteIntent 795// API call, and error handling. 796// 797// This method is useful when you want to inject custom logic or configuration 798// into the SDK's request lifecycle. Such as custom headers, or retry logic. 799// 800// 801// // Example sending a request using the DeleteIntentRequest method. 802// req, resp := client.DeleteIntentRequest(params) 803// 804// err := req.Send() 805// if err == nil { // resp is now filled 806// fmt.Println(resp) 807// } 808// 809// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteIntent 810func (c *LexModelBuildingService) DeleteIntentRequest(input *DeleteIntentInput) (req *request.Request, output *DeleteIntentOutput) { 811 op := &request.Operation{ 812 Name: opDeleteIntent, 813 HTTPMethod: "DELETE", 814 HTTPPath: "/intents/{name}", 815 } 816 817 if input == nil { 818 input = &DeleteIntentInput{} 819 } 820 821 output = &DeleteIntentOutput{} 822 req = c.newRequest(op, input, output) 823 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 824 return 825} 826 827// DeleteIntent API operation for Amazon Lex Model Building Service. 828// 829// Deletes all versions of the intent, including the $LATEST version. To delete 830// a specific version of the intent, use the DeleteIntentVersion operation. 831// 832// You can delete a version of an intent only if it is not referenced. To delete 833// an intent that is referred to in one or more bots (see how-it-works), you 834// must remove those references first. 835// 836// If you get the ResourceInUseException exception, it provides an example reference 837// that shows where the intent is referenced. To remove the reference to the 838// intent, either update the bot or delete it. If you get the same exception 839// when you attempt to delete the intent again, repeat until the intent has 840// no references and the call to DeleteIntent is successful. 841// 842// This operation requires permission for the lex:DeleteIntent action. 843// 844// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 845// with awserr.Error's Code and Message methods to get detailed information about 846// the error. 847// 848// See the AWS API reference guide for Amazon Lex Model Building Service's 849// API operation DeleteIntent for usage and error information. 850// 851// Returned Error Types: 852// * NotFoundException 853// The resource specified in the request was not found. Check the resource and 854// try again. 855// 856// * ConflictException 857// There was a conflict processing the request. Try your request again. 858// 859// * LimitExceededException 860// The request exceeded a limit. Try your request again. 861// 862// * InternalFailureException 863// An internal Amazon Lex error occurred. Try your request again. 864// 865// * BadRequestException 866// The request is not well formed. For example, a value is invalid or a required 867// field is missing. Check the field values, and try again. 868// 869// * ResourceInUseException 870// The resource that you are attempting to delete is referred to by another 871// resource. Use this information to remove references to the resource that 872// you are trying to delete. 873// 874// The body of the exception contains a JSON object that describes the resource. 875// 876// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 877// 878// "resourceReference": { 879// 880// "name": string, "version": string } } 881// 882// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteIntent 883func (c *LexModelBuildingService) DeleteIntent(input *DeleteIntentInput) (*DeleteIntentOutput, error) { 884 req, out := c.DeleteIntentRequest(input) 885 return out, req.Send() 886} 887 888// DeleteIntentWithContext is the same as DeleteIntent with the addition of 889// the ability to pass a context and additional request options. 890// 891// See DeleteIntent for details on how to use this API operation. 892// 893// The context must be non-nil and will be used for request cancellation. If 894// the context is nil a panic will occur. In the future the SDK may create 895// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 896// for more information on using Contexts. 897func (c *LexModelBuildingService) DeleteIntentWithContext(ctx aws.Context, input *DeleteIntentInput, opts ...request.Option) (*DeleteIntentOutput, error) { 898 req, out := c.DeleteIntentRequest(input) 899 req.SetContext(ctx) 900 req.ApplyOptions(opts...) 901 return out, req.Send() 902} 903 904const opDeleteIntentVersion = "DeleteIntentVersion" 905 906// DeleteIntentVersionRequest generates a "aws/request.Request" representing the 907// client's request for the DeleteIntentVersion operation. The "output" return 908// value will be populated with the request's response once the request completes 909// successfully. 910// 911// Use "Send" method on the returned Request to send the API call to the service. 912// the "output" return value is not valid until after Send returns without error. 913// 914// See DeleteIntentVersion for more information on using the DeleteIntentVersion 915// API call, and error handling. 916// 917// This method is useful when you want to inject custom logic or configuration 918// into the SDK's request lifecycle. Such as custom headers, or retry logic. 919// 920// 921// // Example sending a request using the DeleteIntentVersionRequest method. 922// req, resp := client.DeleteIntentVersionRequest(params) 923// 924// err := req.Send() 925// if err == nil { // resp is now filled 926// fmt.Println(resp) 927// } 928// 929// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteIntentVersion 930func (c *LexModelBuildingService) DeleteIntentVersionRequest(input *DeleteIntentVersionInput) (req *request.Request, output *DeleteIntentVersionOutput) { 931 op := &request.Operation{ 932 Name: opDeleteIntentVersion, 933 HTTPMethod: "DELETE", 934 HTTPPath: "/intents/{name}/versions/{version}", 935 } 936 937 if input == nil { 938 input = &DeleteIntentVersionInput{} 939 } 940 941 output = &DeleteIntentVersionOutput{} 942 req = c.newRequest(op, input, output) 943 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 944 return 945} 946 947// DeleteIntentVersion API operation for Amazon Lex Model Building Service. 948// 949// Deletes a specific version of an intent. To delete all versions of a intent, 950// use the DeleteIntent operation. 951// 952// This operation requires permissions for the lex:DeleteIntentVersion action. 953// 954// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 955// with awserr.Error's Code and Message methods to get detailed information about 956// the error. 957// 958// See the AWS API reference guide for Amazon Lex Model Building Service's 959// API operation DeleteIntentVersion for usage and error information. 960// 961// Returned Error Types: 962// * NotFoundException 963// The resource specified in the request was not found. Check the resource and 964// try again. 965// 966// * ConflictException 967// There was a conflict processing the request. Try your request again. 968// 969// * LimitExceededException 970// The request exceeded a limit. Try your request again. 971// 972// * InternalFailureException 973// An internal Amazon Lex error occurred. Try your request again. 974// 975// * BadRequestException 976// The request is not well formed. For example, a value is invalid or a required 977// field is missing. Check the field values, and try again. 978// 979// * ResourceInUseException 980// The resource that you are attempting to delete is referred to by another 981// resource. Use this information to remove references to the resource that 982// you are trying to delete. 983// 984// The body of the exception contains a JSON object that describes the resource. 985// 986// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 987// 988// "resourceReference": { 989// 990// "name": string, "version": string } } 991// 992// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteIntentVersion 993func (c *LexModelBuildingService) DeleteIntentVersion(input *DeleteIntentVersionInput) (*DeleteIntentVersionOutput, error) { 994 req, out := c.DeleteIntentVersionRequest(input) 995 return out, req.Send() 996} 997 998// DeleteIntentVersionWithContext is the same as DeleteIntentVersion with the addition of 999// the ability to pass a context and additional request options. 1000// 1001// See DeleteIntentVersion for details on how to use this API operation. 1002// 1003// The context must be non-nil and will be used for request cancellation. If 1004// the context is nil a panic will occur. In the future the SDK may create 1005// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1006// for more information on using Contexts. 1007func (c *LexModelBuildingService) DeleteIntentVersionWithContext(ctx aws.Context, input *DeleteIntentVersionInput, opts ...request.Option) (*DeleteIntentVersionOutput, error) { 1008 req, out := c.DeleteIntentVersionRequest(input) 1009 req.SetContext(ctx) 1010 req.ApplyOptions(opts...) 1011 return out, req.Send() 1012} 1013 1014const opDeleteSlotType = "DeleteSlotType" 1015 1016// DeleteSlotTypeRequest generates a "aws/request.Request" representing the 1017// client's request for the DeleteSlotType operation. The "output" return 1018// value will be populated with the request's response once the request completes 1019// successfully. 1020// 1021// Use "Send" method on the returned Request to send the API call to the service. 1022// the "output" return value is not valid until after Send returns without error. 1023// 1024// See DeleteSlotType for more information on using the DeleteSlotType 1025// API call, and error handling. 1026// 1027// This method is useful when you want to inject custom logic or configuration 1028// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1029// 1030// 1031// // Example sending a request using the DeleteSlotTypeRequest method. 1032// req, resp := client.DeleteSlotTypeRequest(params) 1033// 1034// err := req.Send() 1035// if err == nil { // resp is now filled 1036// fmt.Println(resp) 1037// } 1038// 1039// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteSlotType 1040func (c *LexModelBuildingService) DeleteSlotTypeRequest(input *DeleteSlotTypeInput) (req *request.Request, output *DeleteSlotTypeOutput) { 1041 op := &request.Operation{ 1042 Name: opDeleteSlotType, 1043 HTTPMethod: "DELETE", 1044 HTTPPath: "/slottypes/{name}", 1045 } 1046 1047 if input == nil { 1048 input = &DeleteSlotTypeInput{} 1049 } 1050 1051 output = &DeleteSlotTypeOutput{} 1052 req = c.newRequest(op, input, output) 1053 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1054 return 1055} 1056 1057// DeleteSlotType API operation for Amazon Lex Model Building Service. 1058// 1059// Deletes all versions of the slot type, including the $LATEST version. To 1060// delete a specific version of the slot type, use the DeleteSlotTypeVersion 1061// operation. 1062// 1063// You can delete a version of a slot type only if it is not referenced. To 1064// delete a slot type that is referred to in one or more intents, you must remove 1065// those references first. 1066// 1067// If you get the ResourceInUseException exception, the exception provides an 1068// example reference that shows the intent where the slot type is referenced. 1069// To remove the reference to the slot type, either update the intent or delete 1070// it. If you get the same exception when you attempt to delete the slot type 1071// again, repeat until the slot type has no references and the DeleteSlotType 1072// call is successful. 1073// 1074// This operation requires permission for the lex:DeleteSlotType action. 1075// 1076// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1077// with awserr.Error's Code and Message methods to get detailed information about 1078// the error. 1079// 1080// See the AWS API reference guide for Amazon Lex Model Building Service's 1081// API operation DeleteSlotType for usage and error information. 1082// 1083// Returned Error Types: 1084// * NotFoundException 1085// The resource specified in the request was not found. Check the resource and 1086// try again. 1087// 1088// * ConflictException 1089// There was a conflict processing the request. Try your request again. 1090// 1091// * LimitExceededException 1092// The request exceeded a limit. Try your request again. 1093// 1094// * InternalFailureException 1095// An internal Amazon Lex error occurred. Try your request again. 1096// 1097// * BadRequestException 1098// The request is not well formed. For example, a value is invalid or a required 1099// field is missing. Check the field values, and try again. 1100// 1101// * ResourceInUseException 1102// The resource that you are attempting to delete is referred to by another 1103// resource. Use this information to remove references to the resource that 1104// you are trying to delete. 1105// 1106// The body of the exception contains a JSON object that describes the resource. 1107// 1108// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 1109// 1110// "resourceReference": { 1111// 1112// "name": string, "version": string } } 1113// 1114// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteSlotType 1115func (c *LexModelBuildingService) DeleteSlotType(input *DeleteSlotTypeInput) (*DeleteSlotTypeOutput, error) { 1116 req, out := c.DeleteSlotTypeRequest(input) 1117 return out, req.Send() 1118} 1119 1120// DeleteSlotTypeWithContext is the same as DeleteSlotType with the addition of 1121// the ability to pass a context and additional request options. 1122// 1123// See DeleteSlotType for details on how to use this API operation. 1124// 1125// The context must be non-nil and will be used for request cancellation. If 1126// the context is nil a panic will occur. In the future the SDK may create 1127// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1128// for more information on using Contexts. 1129func (c *LexModelBuildingService) DeleteSlotTypeWithContext(ctx aws.Context, input *DeleteSlotTypeInput, opts ...request.Option) (*DeleteSlotTypeOutput, error) { 1130 req, out := c.DeleteSlotTypeRequest(input) 1131 req.SetContext(ctx) 1132 req.ApplyOptions(opts...) 1133 return out, req.Send() 1134} 1135 1136const opDeleteSlotTypeVersion = "DeleteSlotTypeVersion" 1137 1138// DeleteSlotTypeVersionRequest generates a "aws/request.Request" representing the 1139// client's request for the DeleteSlotTypeVersion operation. The "output" return 1140// value will be populated with the request's response once the request completes 1141// successfully. 1142// 1143// Use "Send" method on the returned Request to send the API call to the service. 1144// the "output" return value is not valid until after Send returns without error. 1145// 1146// See DeleteSlotTypeVersion for more information on using the DeleteSlotTypeVersion 1147// API call, and error handling. 1148// 1149// This method is useful when you want to inject custom logic or configuration 1150// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1151// 1152// 1153// // Example sending a request using the DeleteSlotTypeVersionRequest method. 1154// req, resp := client.DeleteSlotTypeVersionRequest(params) 1155// 1156// err := req.Send() 1157// if err == nil { // resp is now filled 1158// fmt.Println(resp) 1159// } 1160// 1161// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteSlotTypeVersion 1162func (c *LexModelBuildingService) DeleteSlotTypeVersionRequest(input *DeleteSlotTypeVersionInput) (req *request.Request, output *DeleteSlotTypeVersionOutput) { 1163 op := &request.Operation{ 1164 Name: opDeleteSlotTypeVersion, 1165 HTTPMethod: "DELETE", 1166 HTTPPath: "/slottypes/{name}/version/{version}", 1167 } 1168 1169 if input == nil { 1170 input = &DeleteSlotTypeVersionInput{} 1171 } 1172 1173 output = &DeleteSlotTypeVersionOutput{} 1174 req = c.newRequest(op, input, output) 1175 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1176 return 1177} 1178 1179// DeleteSlotTypeVersion API operation for Amazon Lex Model Building Service. 1180// 1181// Deletes a specific version of a slot type. To delete all versions of a slot 1182// type, use the DeleteSlotType operation. 1183// 1184// This operation requires permissions for the lex:DeleteSlotTypeVersion action. 1185// 1186// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1187// with awserr.Error's Code and Message methods to get detailed information about 1188// the error. 1189// 1190// See the AWS API reference guide for Amazon Lex Model Building Service's 1191// API operation DeleteSlotTypeVersion for usage and error information. 1192// 1193// Returned Error Types: 1194// * NotFoundException 1195// The resource specified in the request was not found. Check the resource and 1196// try again. 1197// 1198// * ConflictException 1199// There was a conflict processing the request. Try your request again. 1200// 1201// * LimitExceededException 1202// The request exceeded a limit. Try your request again. 1203// 1204// * InternalFailureException 1205// An internal Amazon Lex error occurred. Try your request again. 1206// 1207// * BadRequestException 1208// The request is not well formed. For example, a value is invalid or a required 1209// field is missing. Check the field values, and try again. 1210// 1211// * ResourceInUseException 1212// The resource that you are attempting to delete is referred to by another 1213// resource. Use this information to remove references to the resource that 1214// you are trying to delete. 1215// 1216// The body of the exception contains a JSON object that describes the resource. 1217// 1218// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 1219// 1220// "resourceReference": { 1221// 1222// "name": string, "version": string } } 1223// 1224// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteSlotTypeVersion 1225func (c *LexModelBuildingService) DeleteSlotTypeVersion(input *DeleteSlotTypeVersionInput) (*DeleteSlotTypeVersionOutput, error) { 1226 req, out := c.DeleteSlotTypeVersionRequest(input) 1227 return out, req.Send() 1228} 1229 1230// DeleteSlotTypeVersionWithContext is the same as DeleteSlotTypeVersion with the addition of 1231// the ability to pass a context and additional request options. 1232// 1233// See DeleteSlotTypeVersion for details on how to use this API operation. 1234// 1235// The context must be non-nil and will be used for request cancellation. If 1236// the context is nil a panic will occur. In the future the SDK may create 1237// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1238// for more information on using Contexts. 1239func (c *LexModelBuildingService) DeleteSlotTypeVersionWithContext(ctx aws.Context, input *DeleteSlotTypeVersionInput, opts ...request.Option) (*DeleteSlotTypeVersionOutput, error) { 1240 req, out := c.DeleteSlotTypeVersionRequest(input) 1241 req.SetContext(ctx) 1242 req.ApplyOptions(opts...) 1243 return out, req.Send() 1244} 1245 1246const opDeleteUtterances = "DeleteUtterances" 1247 1248// DeleteUtterancesRequest generates a "aws/request.Request" representing the 1249// client's request for the DeleteUtterances operation. The "output" return 1250// value will be populated with the request's response once the request completes 1251// successfully. 1252// 1253// Use "Send" method on the returned Request to send the API call to the service. 1254// the "output" return value is not valid until after Send returns without error. 1255// 1256// See DeleteUtterances for more information on using the DeleteUtterances 1257// API call, and error handling. 1258// 1259// This method is useful when you want to inject custom logic or configuration 1260// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1261// 1262// 1263// // Example sending a request using the DeleteUtterancesRequest method. 1264// req, resp := client.DeleteUtterancesRequest(params) 1265// 1266// err := req.Send() 1267// if err == nil { // resp is now filled 1268// fmt.Println(resp) 1269// } 1270// 1271// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteUtterances 1272func (c *LexModelBuildingService) DeleteUtterancesRequest(input *DeleteUtterancesInput) (req *request.Request, output *DeleteUtterancesOutput) { 1273 op := &request.Operation{ 1274 Name: opDeleteUtterances, 1275 HTTPMethod: "DELETE", 1276 HTTPPath: "/bots/{botName}/utterances/{userId}", 1277 } 1278 1279 if input == nil { 1280 input = &DeleteUtterancesInput{} 1281 } 1282 1283 output = &DeleteUtterancesOutput{} 1284 req = c.newRequest(op, input, output) 1285 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1286 return 1287} 1288 1289// DeleteUtterances API operation for Amazon Lex Model Building Service. 1290// 1291// Deletes stored utterances. 1292// 1293// Amazon Lex stores the utterances that users send to your bot. Utterances 1294// are stored for 15 days for use with the GetUtterancesView operation, and 1295// then stored indefinitely for use in improving the ability of your bot to 1296// respond to user input. 1297// 1298// Use the DeleteUtterances operation to manually delete stored utterances for 1299// a specific user. When you use the DeleteUtterances operation, utterances 1300// stored for improving your bot's ability to respond to user input are deleted 1301// immediately. Utterances stored for use with the GetUtterancesView operation 1302// are deleted after 15 days. 1303// 1304// This operation requires permissions for the lex:DeleteUtterances action. 1305// 1306// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1307// with awserr.Error's Code and Message methods to get detailed information about 1308// the error. 1309// 1310// See the AWS API reference guide for Amazon Lex Model Building Service's 1311// API operation DeleteUtterances for usage and error information. 1312// 1313// Returned Error Types: 1314// * NotFoundException 1315// The resource specified in the request was not found. Check the resource and 1316// try again. 1317// 1318// * LimitExceededException 1319// The request exceeded a limit. Try your request again. 1320// 1321// * InternalFailureException 1322// An internal Amazon Lex error occurred. Try your request again. 1323// 1324// * BadRequestException 1325// The request is not well formed. For example, a value is invalid or a required 1326// field is missing. Check the field values, and try again. 1327// 1328// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/DeleteUtterances 1329func (c *LexModelBuildingService) DeleteUtterances(input *DeleteUtterancesInput) (*DeleteUtterancesOutput, error) { 1330 req, out := c.DeleteUtterancesRequest(input) 1331 return out, req.Send() 1332} 1333 1334// DeleteUtterancesWithContext is the same as DeleteUtterances with the addition of 1335// the ability to pass a context and additional request options. 1336// 1337// See DeleteUtterances for details on how to use this API operation. 1338// 1339// The context must be non-nil and will be used for request cancellation. If 1340// the context is nil a panic will occur. In the future the SDK may create 1341// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1342// for more information on using Contexts. 1343func (c *LexModelBuildingService) DeleteUtterancesWithContext(ctx aws.Context, input *DeleteUtterancesInput, opts ...request.Option) (*DeleteUtterancesOutput, error) { 1344 req, out := c.DeleteUtterancesRequest(input) 1345 req.SetContext(ctx) 1346 req.ApplyOptions(opts...) 1347 return out, req.Send() 1348} 1349 1350const opGetBot = "GetBot" 1351 1352// GetBotRequest generates a "aws/request.Request" representing the 1353// client's request for the GetBot operation. The "output" return 1354// value will be populated with the request's response once the request completes 1355// successfully. 1356// 1357// Use "Send" method on the returned Request to send the API call to the service. 1358// the "output" return value is not valid until after Send returns without error. 1359// 1360// See GetBot for more information on using the GetBot 1361// API call, and error handling. 1362// 1363// This method is useful when you want to inject custom logic or configuration 1364// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1365// 1366// 1367// // Example sending a request using the GetBotRequest method. 1368// req, resp := client.GetBotRequest(params) 1369// 1370// err := req.Send() 1371// if err == nil { // resp is now filled 1372// fmt.Println(resp) 1373// } 1374// 1375// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBot 1376func (c *LexModelBuildingService) GetBotRequest(input *GetBotInput) (req *request.Request, output *GetBotOutput) { 1377 op := &request.Operation{ 1378 Name: opGetBot, 1379 HTTPMethod: "GET", 1380 HTTPPath: "/bots/{name}/versions/{versionoralias}", 1381 } 1382 1383 if input == nil { 1384 input = &GetBotInput{} 1385 } 1386 1387 output = &GetBotOutput{} 1388 req = c.newRequest(op, input, output) 1389 return 1390} 1391 1392// GetBot API operation for Amazon Lex Model Building Service. 1393// 1394// Returns metadata information for a specific bot. You must provide the bot 1395// name and the bot version or alias. 1396// 1397// This operation requires permissions for the lex:GetBot action. 1398// 1399// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1400// with awserr.Error's Code and Message methods to get detailed information about 1401// the error. 1402// 1403// See the AWS API reference guide for Amazon Lex Model Building Service's 1404// API operation GetBot for usage and error information. 1405// 1406// Returned Error Types: 1407// * NotFoundException 1408// The resource specified in the request was not found. Check the resource and 1409// try again. 1410// 1411// * LimitExceededException 1412// The request exceeded a limit. Try your request again. 1413// 1414// * InternalFailureException 1415// An internal Amazon Lex error occurred. Try your request again. 1416// 1417// * BadRequestException 1418// The request is not well formed. For example, a value is invalid or a required 1419// field is missing. Check the field values, and try again. 1420// 1421// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBot 1422func (c *LexModelBuildingService) GetBot(input *GetBotInput) (*GetBotOutput, error) { 1423 req, out := c.GetBotRequest(input) 1424 return out, req.Send() 1425} 1426 1427// GetBotWithContext is the same as GetBot with the addition of 1428// the ability to pass a context and additional request options. 1429// 1430// See GetBot for details on how to use this API operation. 1431// 1432// The context must be non-nil and will be used for request cancellation. If 1433// the context is nil a panic will occur. In the future the SDK may create 1434// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1435// for more information on using Contexts. 1436func (c *LexModelBuildingService) GetBotWithContext(ctx aws.Context, input *GetBotInput, opts ...request.Option) (*GetBotOutput, error) { 1437 req, out := c.GetBotRequest(input) 1438 req.SetContext(ctx) 1439 req.ApplyOptions(opts...) 1440 return out, req.Send() 1441} 1442 1443const opGetBotAlias = "GetBotAlias" 1444 1445// GetBotAliasRequest generates a "aws/request.Request" representing the 1446// client's request for the GetBotAlias operation. The "output" return 1447// value will be populated with the request's response once the request completes 1448// successfully. 1449// 1450// Use "Send" method on the returned Request to send the API call to the service. 1451// the "output" return value is not valid until after Send returns without error. 1452// 1453// See GetBotAlias for more information on using the GetBotAlias 1454// API call, and error handling. 1455// 1456// This method is useful when you want to inject custom logic or configuration 1457// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1458// 1459// 1460// // Example sending a request using the GetBotAliasRequest method. 1461// req, resp := client.GetBotAliasRequest(params) 1462// 1463// err := req.Send() 1464// if err == nil { // resp is now filled 1465// fmt.Println(resp) 1466// } 1467// 1468// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotAlias 1469func (c *LexModelBuildingService) GetBotAliasRequest(input *GetBotAliasInput) (req *request.Request, output *GetBotAliasOutput) { 1470 op := &request.Operation{ 1471 Name: opGetBotAlias, 1472 HTTPMethod: "GET", 1473 HTTPPath: "/bots/{botName}/aliases/{name}", 1474 } 1475 1476 if input == nil { 1477 input = &GetBotAliasInput{} 1478 } 1479 1480 output = &GetBotAliasOutput{} 1481 req = c.newRequest(op, input, output) 1482 return 1483} 1484 1485// GetBotAlias API operation for Amazon Lex Model Building Service. 1486// 1487// Returns information about an Amazon Lex bot alias. For more information about 1488// aliases, see versioning-aliases. 1489// 1490// This operation requires permissions for the lex:GetBotAlias action. 1491// 1492// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1493// with awserr.Error's Code and Message methods to get detailed information about 1494// the error. 1495// 1496// See the AWS API reference guide for Amazon Lex Model Building Service's 1497// API operation GetBotAlias for usage and error information. 1498// 1499// Returned Error Types: 1500// * NotFoundException 1501// The resource specified in the request was not found. Check the resource and 1502// try again. 1503// 1504// * LimitExceededException 1505// The request exceeded a limit. Try your request again. 1506// 1507// * InternalFailureException 1508// An internal Amazon Lex error occurred. Try your request again. 1509// 1510// * BadRequestException 1511// The request is not well formed. For example, a value is invalid or a required 1512// field is missing. Check the field values, and try again. 1513// 1514// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotAlias 1515func (c *LexModelBuildingService) GetBotAlias(input *GetBotAliasInput) (*GetBotAliasOutput, error) { 1516 req, out := c.GetBotAliasRequest(input) 1517 return out, req.Send() 1518} 1519 1520// GetBotAliasWithContext is the same as GetBotAlias with the addition of 1521// the ability to pass a context and additional request options. 1522// 1523// See GetBotAlias for details on how to use this API operation. 1524// 1525// The context must be non-nil and will be used for request cancellation. If 1526// the context is nil a panic will occur. In the future the SDK may create 1527// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1528// for more information on using Contexts. 1529func (c *LexModelBuildingService) GetBotAliasWithContext(ctx aws.Context, input *GetBotAliasInput, opts ...request.Option) (*GetBotAliasOutput, error) { 1530 req, out := c.GetBotAliasRequest(input) 1531 req.SetContext(ctx) 1532 req.ApplyOptions(opts...) 1533 return out, req.Send() 1534} 1535 1536const opGetBotAliases = "GetBotAliases" 1537 1538// GetBotAliasesRequest generates a "aws/request.Request" representing the 1539// client's request for the GetBotAliases operation. The "output" return 1540// value will be populated with the request's response once the request completes 1541// successfully. 1542// 1543// Use "Send" method on the returned Request to send the API call to the service. 1544// the "output" return value is not valid until after Send returns without error. 1545// 1546// See GetBotAliases for more information on using the GetBotAliases 1547// API call, and error handling. 1548// 1549// This method is useful when you want to inject custom logic or configuration 1550// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1551// 1552// 1553// // Example sending a request using the GetBotAliasesRequest method. 1554// req, resp := client.GetBotAliasesRequest(params) 1555// 1556// err := req.Send() 1557// if err == nil { // resp is now filled 1558// fmt.Println(resp) 1559// } 1560// 1561// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotAliases 1562func (c *LexModelBuildingService) GetBotAliasesRequest(input *GetBotAliasesInput) (req *request.Request, output *GetBotAliasesOutput) { 1563 op := &request.Operation{ 1564 Name: opGetBotAliases, 1565 HTTPMethod: "GET", 1566 HTTPPath: "/bots/{botName}/aliases/", 1567 Paginator: &request.Paginator{ 1568 InputTokens: []string{"nextToken"}, 1569 OutputTokens: []string{"nextToken"}, 1570 LimitToken: "maxResults", 1571 TruncationToken: "", 1572 }, 1573 } 1574 1575 if input == nil { 1576 input = &GetBotAliasesInput{} 1577 } 1578 1579 output = &GetBotAliasesOutput{} 1580 req = c.newRequest(op, input, output) 1581 return 1582} 1583 1584// GetBotAliases API operation for Amazon Lex Model Building Service. 1585// 1586// Returns a list of aliases for a specified Amazon Lex bot. 1587// 1588// This operation requires permissions for the lex:GetBotAliases action. 1589// 1590// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1591// with awserr.Error's Code and Message methods to get detailed information about 1592// the error. 1593// 1594// See the AWS API reference guide for Amazon Lex Model Building Service's 1595// API operation GetBotAliases for usage and error information. 1596// 1597// Returned Error Types: 1598// * LimitExceededException 1599// The request exceeded a limit. Try your request again. 1600// 1601// * InternalFailureException 1602// An internal Amazon Lex error occurred. Try your request again. 1603// 1604// * BadRequestException 1605// The request is not well formed. For example, a value is invalid or a required 1606// field is missing. Check the field values, and try again. 1607// 1608// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotAliases 1609func (c *LexModelBuildingService) GetBotAliases(input *GetBotAliasesInput) (*GetBotAliasesOutput, error) { 1610 req, out := c.GetBotAliasesRequest(input) 1611 return out, req.Send() 1612} 1613 1614// GetBotAliasesWithContext is the same as GetBotAliases with the addition of 1615// the ability to pass a context and additional request options. 1616// 1617// See GetBotAliases for details on how to use this API operation. 1618// 1619// The context must be non-nil and will be used for request cancellation. If 1620// the context is nil a panic will occur. In the future the SDK may create 1621// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1622// for more information on using Contexts. 1623func (c *LexModelBuildingService) GetBotAliasesWithContext(ctx aws.Context, input *GetBotAliasesInput, opts ...request.Option) (*GetBotAliasesOutput, error) { 1624 req, out := c.GetBotAliasesRequest(input) 1625 req.SetContext(ctx) 1626 req.ApplyOptions(opts...) 1627 return out, req.Send() 1628} 1629 1630// GetBotAliasesPages iterates over the pages of a GetBotAliases operation, 1631// calling the "fn" function with the response data for each page. To stop 1632// iterating, return false from the fn function. 1633// 1634// See GetBotAliases method for more information on how to use this operation. 1635// 1636// Note: This operation can generate multiple requests to a service. 1637// 1638// // Example iterating over at most 3 pages of a GetBotAliases operation. 1639// pageNum := 0 1640// err := client.GetBotAliasesPages(params, 1641// func(page *lexmodelbuildingservice.GetBotAliasesOutput, lastPage bool) bool { 1642// pageNum++ 1643// fmt.Println(page) 1644// return pageNum <= 3 1645// }) 1646// 1647func (c *LexModelBuildingService) GetBotAliasesPages(input *GetBotAliasesInput, fn func(*GetBotAliasesOutput, bool) bool) error { 1648 return c.GetBotAliasesPagesWithContext(aws.BackgroundContext(), input, fn) 1649} 1650 1651// GetBotAliasesPagesWithContext same as GetBotAliasesPages except 1652// it takes a Context and allows setting request options on the pages. 1653// 1654// The context must be non-nil and will be used for request cancellation. If 1655// the context is nil a panic will occur. In the future the SDK may create 1656// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1657// for more information on using Contexts. 1658func (c *LexModelBuildingService) GetBotAliasesPagesWithContext(ctx aws.Context, input *GetBotAliasesInput, fn func(*GetBotAliasesOutput, bool) bool, opts ...request.Option) error { 1659 p := request.Pagination{ 1660 NewRequest: func() (*request.Request, error) { 1661 var inCpy *GetBotAliasesInput 1662 if input != nil { 1663 tmp := *input 1664 inCpy = &tmp 1665 } 1666 req, _ := c.GetBotAliasesRequest(inCpy) 1667 req.SetContext(ctx) 1668 req.ApplyOptions(opts...) 1669 return req, nil 1670 }, 1671 } 1672 1673 for p.Next() { 1674 if !fn(p.Page().(*GetBotAliasesOutput), !p.HasNextPage()) { 1675 break 1676 } 1677 } 1678 1679 return p.Err() 1680} 1681 1682const opGetBotChannelAssociation = "GetBotChannelAssociation" 1683 1684// GetBotChannelAssociationRequest generates a "aws/request.Request" representing the 1685// client's request for the GetBotChannelAssociation operation. The "output" return 1686// value will be populated with the request's response once the request completes 1687// successfully. 1688// 1689// Use "Send" method on the returned Request to send the API call to the service. 1690// the "output" return value is not valid until after Send returns without error. 1691// 1692// See GetBotChannelAssociation for more information on using the GetBotChannelAssociation 1693// API call, and error handling. 1694// 1695// This method is useful when you want to inject custom logic or configuration 1696// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1697// 1698// 1699// // Example sending a request using the GetBotChannelAssociationRequest method. 1700// req, resp := client.GetBotChannelAssociationRequest(params) 1701// 1702// err := req.Send() 1703// if err == nil { // resp is now filled 1704// fmt.Println(resp) 1705// } 1706// 1707// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotChannelAssociation 1708func (c *LexModelBuildingService) GetBotChannelAssociationRequest(input *GetBotChannelAssociationInput) (req *request.Request, output *GetBotChannelAssociationOutput) { 1709 op := &request.Operation{ 1710 Name: opGetBotChannelAssociation, 1711 HTTPMethod: "GET", 1712 HTTPPath: "/bots/{botName}/aliases/{aliasName}/channels/{name}", 1713 } 1714 1715 if input == nil { 1716 input = &GetBotChannelAssociationInput{} 1717 } 1718 1719 output = &GetBotChannelAssociationOutput{} 1720 req = c.newRequest(op, input, output) 1721 return 1722} 1723 1724// GetBotChannelAssociation API operation for Amazon Lex Model Building Service. 1725// 1726// Returns information about the association between an Amazon Lex bot and a 1727// messaging platform. 1728// 1729// This operation requires permissions for the lex:GetBotChannelAssociation 1730// action. 1731// 1732// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1733// with awserr.Error's Code and Message methods to get detailed information about 1734// the error. 1735// 1736// See the AWS API reference guide for Amazon Lex Model Building Service's 1737// API operation GetBotChannelAssociation for usage and error information. 1738// 1739// Returned Error Types: 1740// * NotFoundException 1741// The resource specified in the request was not found. Check the resource and 1742// try again. 1743// 1744// * LimitExceededException 1745// The request exceeded a limit. Try your request again. 1746// 1747// * InternalFailureException 1748// An internal Amazon Lex error occurred. Try your request again. 1749// 1750// * BadRequestException 1751// The request is not well formed. For example, a value is invalid or a required 1752// field is missing. Check the field values, and try again. 1753// 1754// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotChannelAssociation 1755func (c *LexModelBuildingService) GetBotChannelAssociation(input *GetBotChannelAssociationInput) (*GetBotChannelAssociationOutput, error) { 1756 req, out := c.GetBotChannelAssociationRequest(input) 1757 return out, req.Send() 1758} 1759 1760// GetBotChannelAssociationWithContext is the same as GetBotChannelAssociation with the addition of 1761// the ability to pass a context and additional request options. 1762// 1763// See GetBotChannelAssociation for details on how to use this API operation. 1764// 1765// The context must be non-nil and will be used for request cancellation. If 1766// the context is nil a panic will occur. In the future the SDK may create 1767// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1768// for more information on using Contexts. 1769func (c *LexModelBuildingService) GetBotChannelAssociationWithContext(ctx aws.Context, input *GetBotChannelAssociationInput, opts ...request.Option) (*GetBotChannelAssociationOutput, error) { 1770 req, out := c.GetBotChannelAssociationRequest(input) 1771 req.SetContext(ctx) 1772 req.ApplyOptions(opts...) 1773 return out, req.Send() 1774} 1775 1776const opGetBotChannelAssociations = "GetBotChannelAssociations" 1777 1778// GetBotChannelAssociationsRequest generates a "aws/request.Request" representing the 1779// client's request for the GetBotChannelAssociations operation. The "output" return 1780// value will be populated with the request's response once the request completes 1781// successfully. 1782// 1783// Use "Send" method on the returned Request to send the API call to the service. 1784// the "output" return value is not valid until after Send returns without error. 1785// 1786// See GetBotChannelAssociations for more information on using the GetBotChannelAssociations 1787// API call, and error handling. 1788// 1789// This method is useful when you want to inject custom logic or configuration 1790// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1791// 1792// 1793// // Example sending a request using the GetBotChannelAssociationsRequest method. 1794// req, resp := client.GetBotChannelAssociationsRequest(params) 1795// 1796// err := req.Send() 1797// if err == nil { // resp is now filled 1798// fmt.Println(resp) 1799// } 1800// 1801// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotChannelAssociations 1802func (c *LexModelBuildingService) GetBotChannelAssociationsRequest(input *GetBotChannelAssociationsInput) (req *request.Request, output *GetBotChannelAssociationsOutput) { 1803 op := &request.Operation{ 1804 Name: opGetBotChannelAssociations, 1805 HTTPMethod: "GET", 1806 HTTPPath: "/bots/{botName}/aliases/{aliasName}/channels/", 1807 Paginator: &request.Paginator{ 1808 InputTokens: []string{"nextToken"}, 1809 OutputTokens: []string{"nextToken"}, 1810 LimitToken: "maxResults", 1811 TruncationToken: "", 1812 }, 1813 } 1814 1815 if input == nil { 1816 input = &GetBotChannelAssociationsInput{} 1817 } 1818 1819 output = &GetBotChannelAssociationsOutput{} 1820 req = c.newRequest(op, input, output) 1821 return 1822} 1823 1824// GetBotChannelAssociations API operation for Amazon Lex Model Building Service. 1825// 1826// Returns a list of all of the channels associated with the specified bot. 1827// 1828// The GetBotChannelAssociations operation requires permissions for the lex:GetBotChannelAssociations 1829// action. 1830// 1831// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1832// with awserr.Error's Code and Message methods to get detailed information about 1833// the error. 1834// 1835// See the AWS API reference guide for Amazon Lex Model Building Service's 1836// API operation GetBotChannelAssociations for usage and error information. 1837// 1838// Returned Error Types: 1839// * LimitExceededException 1840// The request exceeded a limit. Try your request again. 1841// 1842// * InternalFailureException 1843// An internal Amazon Lex error occurred. Try your request again. 1844// 1845// * BadRequestException 1846// The request is not well formed. For example, a value is invalid or a required 1847// field is missing. Check the field values, and try again. 1848// 1849// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotChannelAssociations 1850func (c *LexModelBuildingService) GetBotChannelAssociations(input *GetBotChannelAssociationsInput) (*GetBotChannelAssociationsOutput, error) { 1851 req, out := c.GetBotChannelAssociationsRequest(input) 1852 return out, req.Send() 1853} 1854 1855// GetBotChannelAssociationsWithContext is the same as GetBotChannelAssociations with the addition of 1856// the ability to pass a context and additional request options. 1857// 1858// See GetBotChannelAssociations for details on how to use this API operation. 1859// 1860// The context must be non-nil and will be used for request cancellation. If 1861// the context is nil a panic will occur. In the future the SDK may create 1862// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1863// for more information on using Contexts. 1864func (c *LexModelBuildingService) GetBotChannelAssociationsWithContext(ctx aws.Context, input *GetBotChannelAssociationsInput, opts ...request.Option) (*GetBotChannelAssociationsOutput, error) { 1865 req, out := c.GetBotChannelAssociationsRequest(input) 1866 req.SetContext(ctx) 1867 req.ApplyOptions(opts...) 1868 return out, req.Send() 1869} 1870 1871// GetBotChannelAssociationsPages iterates over the pages of a GetBotChannelAssociations operation, 1872// calling the "fn" function with the response data for each page. To stop 1873// iterating, return false from the fn function. 1874// 1875// See GetBotChannelAssociations method for more information on how to use this operation. 1876// 1877// Note: This operation can generate multiple requests to a service. 1878// 1879// // Example iterating over at most 3 pages of a GetBotChannelAssociations operation. 1880// pageNum := 0 1881// err := client.GetBotChannelAssociationsPages(params, 1882// func(page *lexmodelbuildingservice.GetBotChannelAssociationsOutput, lastPage bool) bool { 1883// pageNum++ 1884// fmt.Println(page) 1885// return pageNum <= 3 1886// }) 1887// 1888func (c *LexModelBuildingService) GetBotChannelAssociationsPages(input *GetBotChannelAssociationsInput, fn func(*GetBotChannelAssociationsOutput, bool) bool) error { 1889 return c.GetBotChannelAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) 1890} 1891 1892// GetBotChannelAssociationsPagesWithContext same as GetBotChannelAssociationsPages except 1893// it takes a Context and allows setting request options on the pages. 1894// 1895// The context must be non-nil and will be used for request cancellation. If 1896// the context is nil a panic will occur. In the future the SDK may create 1897// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1898// for more information on using Contexts. 1899func (c *LexModelBuildingService) GetBotChannelAssociationsPagesWithContext(ctx aws.Context, input *GetBotChannelAssociationsInput, fn func(*GetBotChannelAssociationsOutput, bool) bool, opts ...request.Option) error { 1900 p := request.Pagination{ 1901 NewRequest: func() (*request.Request, error) { 1902 var inCpy *GetBotChannelAssociationsInput 1903 if input != nil { 1904 tmp := *input 1905 inCpy = &tmp 1906 } 1907 req, _ := c.GetBotChannelAssociationsRequest(inCpy) 1908 req.SetContext(ctx) 1909 req.ApplyOptions(opts...) 1910 return req, nil 1911 }, 1912 } 1913 1914 for p.Next() { 1915 if !fn(p.Page().(*GetBotChannelAssociationsOutput), !p.HasNextPage()) { 1916 break 1917 } 1918 } 1919 1920 return p.Err() 1921} 1922 1923const opGetBotVersions = "GetBotVersions" 1924 1925// GetBotVersionsRequest generates a "aws/request.Request" representing the 1926// client's request for the GetBotVersions operation. The "output" return 1927// value will be populated with the request's response once the request completes 1928// successfully. 1929// 1930// Use "Send" method on the returned Request to send the API call to the service. 1931// the "output" return value is not valid until after Send returns without error. 1932// 1933// See GetBotVersions for more information on using the GetBotVersions 1934// API call, and error handling. 1935// 1936// This method is useful when you want to inject custom logic or configuration 1937// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1938// 1939// 1940// // Example sending a request using the GetBotVersionsRequest method. 1941// req, resp := client.GetBotVersionsRequest(params) 1942// 1943// err := req.Send() 1944// if err == nil { // resp is now filled 1945// fmt.Println(resp) 1946// } 1947// 1948// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotVersions 1949func (c *LexModelBuildingService) GetBotVersionsRequest(input *GetBotVersionsInput) (req *request.Request, output *GetBotVersionsOutput) { 1950 op := &request.Operation{ 1951 Name: opGetBotVersions, 1952 HTTPMethod: "GET", 1953 HTTPPath: "/bots/{name}/versions/", 1954 Paginator: &request.Paginator{ 1955 InputTokens: []string{"nextToken"}, 1956 OutputTokens: []string{"nextToken"}, 1957 LimitToken: "maxResults", 1958 TruncationToken: "", 1959 }, 1960 } 1961 1962 if input == nil { 1963 input = &GetBotVersionsInput{} 1964 } 1965 1966 output = &GetBotVersionsOutput{} 1967 req = c.newRequest(op, input, output) 1968 return 1969} 1970 1971// GetBotVersions API operation for Amazon Lex Model Building Service. 1972// 1973// Gets information about all of the versions of a bot. 1974// 1975// The GetBotVersions operation returns a BotMetadata object for each version 1976// of a bot. For example, if a bot has three numbered versions, the GetBotVersions 1977// operation returns four BotMetadata objects in the response, one for each 1978// numbered version and one for the $LATEST version. 1979// 1980// The GetBotVersions operation always returns at least one version, the $LATEST 1981// version. 1982// 1983// This operation requires permissions for the lex:GetBotVersions action. 1984// 1985// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1986// with awserr.Error's Code and Message methods to get detailed information about 1987// the error. 1988// 1989// See the AWS API reference guide for Amazon Lex Model Building Service's 1990// API operation GetBotVersions for usage and error information. 1991// 1992// Returned Error Types: 1993// * NotFoundException 1994// The resource specified in the request was not found. Check the resource and 1995// try again. 1996// 1997// * LimitExceededException 1998// The request exceeded a limit. Try your request again. 1999// 2000// * InternalFailureException 2001// An internal Amazon Lex error occurred. Try your request again. 2002// 2003// * BadRequestException 2004// The request is not well formed. For example, a value is invalid or a required 2005// field is missing. Check the field values, and try again. 2006// 2007// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBotVersions 2008func (c *LexModelBuildingService) GetBotVersions(input *GetBotVersionsInput) (*GetBotVersionsOutput, error) { 2009 req, out := c.GetBotVersionsRequest(input) 2010 return out, req.Send() 2011} 2012 2013// GetBotVersionsWithContext is the same as GetBotVersions with the addition of 2014// the ability to pass a context and additional request options. 2015// 2016// See GetBotVersions for details on how to use this API operation. 2017// 2018// The context must be non-nil and will be used for request cancellation. If 2019// the context is nil a panic will occur. In the future the SDK may create 2020// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2021// for more information on using Contexts. 2022func (c *LexModelBuildingService) GetBotVersionsWithContext(ctx aws.Context, input *GetBotVersionsInput, opts ...request.Option) (*GetBotVersionsOutput, error) { 2023 req, out := c.GetBotVersionsRequest(input) 2024 req.SetContext(ctx) 2025 req.ApplyOptions(opts...) 2026 return out, req.Send() 2027} 2028 2029// GetBotVersionsPages iterates over the pages of a GetBotVersions operation, 2030// calling the "fn" function with the response data for each page. To stop 2031// iterating, return false from the fn function. 2032// 2033// See GetBotVersions method for more information on how to use this operation. 2034// 2035// Note: This operation can generate multiple requests to a service. 2036// 2037// // Example iterating over at most 3 pages of a GetBotVersions operation. 2038// pageNum := 0 2039// err := client.GetBotVersionsPages(params, 2040// func(page *lexmodelbuildingservice.GetBotVersionsOutput, lastPage bool) bool { 2041// pageNum++ 2042// fmt.Println(page) 2043// return pageNum <= 3 2044// }) 2045// 2046func (c *LexModelBuildingService) GetBotVersionsPages(input *GetBotVersionsInput, fn func(*GetBotVersionsOutput, bool) bool) error { 2047 return c.GetBotVersionsPagesWithContext(aws.BackgroundContext(), input, fn) 2048} 2049 2050// GetBotVersionsPagesWithContext same as GetBotVersionsPages except 2051// it takes a Context and allows setting request options on the pages. 2052// 2053// The context must be non-nil and will be used for request cancellation. If 2054// the context is nil a panic will occur. In the future the SDK may create 2055// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2056// for more information on using Contexts. 2057func (c *LexModelBuildingService) GetBotVersionsPagesWithContext(ctx aws.Context, input *GetBotVersionsInput, fn func(*GetBotVersionsOutput, bool) bool, opts ...request.Option) error { 2058 p := request.Pagination{ 2059 NewRequest: func() (*request.Request, error) { 2060 var inCpy *GetBotVersionsInput 2061 if input != nil { 2062 tmp := *input 2063 inCpy = &tmp 2064 } 2065 req, _ := c.GetBotVersionsRequest(inCpy) 2066 req.SetContext(ctx) 2067 req.ApplyOptions(opts...) 2068 return req, nil 2069 }, 2070 } 2071 2072 for p.Next() { 2073 if !fn(p.Page().(*GetBotVersionsOutput), !p.HasNextPage()) { 2074 break 2075 } 2076 } 2077 2078 return p.Err() 2079} 2080 2081const opGetBots = "GetBots" 2082 2083// GetBotsRequest generates a "aws/request.Request" representing the 2084// client's request for the GetBots operation. The "output" return 2085// value will be populated with the request's response once the request completes 2086// successfully. 2087// 2088// Use "Send" method on the returned Request to send the API call to the service. 2089// the "output" return value is not valid until after Send returns without error. 2090// 2091// See GetBots for more information on using the GetBots 2092// API call, and error handling. 2093// 2094// This method is useful when you want to inject custom logic or configuration 2095// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2096// 2097// 2098// // Example sending a request using the GetBotsRequest method. 2099// req, resp := client.GetBotsRequest(params) 2100// 2101// err := req.Send() 2102// if err == nil { // resp is now filled 2103// fmt.Println(resp) 2104// } 2105// 2106// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBots 2107func (c *LexModelBuildingService) GetBotsRequest(input *GetBotsInput) (req *request.Request, output *GetBotsOutput) { 2108 op := &request.Operation{ 2109 Name: opGetBots, 2110 HTTPMethod: "GET", 2111 HTTPPath: "/bots/", 2112 Paginator: &request.Paginator{ 2113 InputTokens: []string{"nextToken"}, 2114 OutputTokens: []string{"nextToken"}, 2115 LimitToken: "maxResults", 2116 TruncationToken: "", 2117 }, 2118 } 2119 2120 if input == nil { 2121 input = &GetBotsInput{} 2122 } 2123 2124 output = &GetBotsOutput{} 2125 req = c.newRequest(op, input, output) 2126 return 2127} 2128 2129// GetBots API operation for Amazon Lex Model Building Service. 2130// 2131// Returns bot information as follows: 2132// 2133// * If you provide the nameContains field, the response includes information 2134// for the $LATEST version of all bots whose name contains the specified 2135// string. 2136// 2137// * If you don't specify the nameContains field, the operation returns information 2138// about the $LATEST version of all of your bots. 2139// 2140// This operation requires permission for the lex:GetBots action. 2141// 2142// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2143// with awserr.Error's Code and Message methods to get detailed information about 2144// the error. 2145// 2146// See the AWS API reference guide for Amazon Lex Model Building Service's 2147// API operation GetBots for usage and error information. 2148// 2149// Returned Error Types: 2150// * NotFoundException 2151// The resource specified in the request was not found. Check the resource and 2152// try again. 2153// 2154// * LimitExceededException 2155// The request exceeded a limit. Try your request again. 2156// 2157// * InternalFailureException 2158// An internal Amazon Lex error occurred. Try your request again. 2159// 2160// * BadRequestException 2161// The request is not well formed. For example, a value is invalid or a required 2162// field is missing. Check the field values, and try again. 2163// 2164// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBots 2165func (c *LexModelBuildingService) GetBots(input *GetBotsInput) (*GetBotsOutput, error) { 2166 req, out := c.GetBotsRequest(input) 2167 return out, req.Send() 2168} 2169 2170// GetBotsWithContext is the same as GetBots with the addition of 2171// the ability to pass a context and additional request options. 2172// 2173// See GetBots for details on how to use this API operation. 2174// 2175// The context must be non-nil and will be used for request cancellation. If 2176// the context is nil a panic will occur. In the future the SDK may create 2177// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2178// for more information on using Contexts. 2179func (c *LexModelBuildingService) GetBotsWithContext(ctx aws.Context, input *GetBotsInput, opts ...request.Option) (*GetBotsOutput, error) { 2180 req, out := c.GetBotsRequest(input) 2181 req.SetContext(ctx) 2182 req.ApplyOptions(opts...) 2183 return out, req.Send() 2184} 2185 2186// GetBotsPages iterates over the pages of a GetBots operation, 2187// calling the "fn" function with the response data for each page. To stop 2188// iterating, return false from the fn function. 2189// 2190// See GetBots method for more information on how to use this operation. 2191// 2192// Note: This operation can generate multiple requests to a service. 2193// 2194// // Example iterating over at most 3 pages of a GetBots operation. 2195// pageNum := 0 2196// err := client.GetBotsPages(params, 2197// func(page *lexmodelbuildingservice.GetBotsOutput, lastPage bool) bool { 2198// pageNum++ 2199// fmt.Println(page) 2200// return pageNum <= 3 2201// }) 2202// 2203func (c *LexModelBuildingService) GetBotsPages(input *GetBotsInput, fn func(*GetBotsOutput, bool) bool) error { 2204 return c.GetBotsPagesWithContext(aws.BackgroundContext(), input, fn) 2205} 2206 2207// GetBotsPagesWithContext same as GetBotsPages except 2208// it takes a Context and allows setting request options on the pages. 2209// 2210// The context must be non-nil and will be used for request cancellation. If 2211// the context is nil a panic will occur. In the future the SDK may create 2212// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2213// for more information on using Contexts. 2214func (c *LexModelBuildingService) GetBotsPagesWithContext(ctx aws.Context, input *GetBotsInput, fn func(*GetBotsOutput, bool) bool, opts ...request.Option) error { 2215 p := request.Pagination{ 2216 NewRequest: func() (*request.Request, error) { 2217 var inCpy *GetBotsInput 2218 if input != nil { 2219 tmp := *input 2220 inCpy = &tmp 2221 } 2222 req, _ := c.GetBotsRequest(inCpy) 2223 req.SetContext(ctx) 2224 req.ApplyOptions(opts...) 2225 return req, nil 2226 }, 2227 } 2228 2229 for p.Next() { 2230 if !fn(p.Page().(*GetBotsOutput), !p.HasNextPage()) { 2231 break 2232 } 2233 } 2234 2235 return p.Err() 2236} 2237 2238const opGetBuiltinIntent = "GetBuiltinIntent" 2239 2240// GetBuiltinIntentRequest generates a "aws/request.Request" representing the 2241// client's request for the GetBuiltinIntent operation. The "output" return 2242// value will be populated with the request's response once the request completes 2243// successfully. 2244// 2245// Use "Send" method on the returned Request to send the API call to the service. 2246// the "output" return value is not valid until after Send returns without error. 2247// 2248// See GetBuiltinIntent for more information on using the GetBuiltinIntent 2249// API call, and error handling. 2250// 2251// This method is useful when you want to inject custom logic or configuration 2252// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2253// 2254// 2255// // Example sending a request using the GetBuiltinIntentRequest method. 2256// req, resp := client.GetBuiltinIntentRequest(params) 2257// 2258// err := req.Send() 2259// if err == nil { // resp is now filled 2260// fmt.Println(resp) 2261// } 2262// 2263// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBuiltinIntent 2264func (c *LexModelBuildingService) GetBuiltinIntentRequest(input *GetBuiltinIntentInput) (req *request.Request, output *GetBuiltinIntentOutput) { 2265 op := &request.Operation{ 2266 Name: opGetBuiltinIntent, 2267 HTTPMethod: "GET", 2268 HTTPPath: "/builtins/intents/{signature}", 2269 } 2270 2271 if input == nil { 2272 input = &GetBuiltinIntentInput{} 2273 } 2274 2275 output = &GetBuiltinIntentOutput{} 2276 req = c.newRequest(op, input, output) 2277 return 2278} 2279 2280// GetBuiltinIntent API operation for Amazon Lex Model Building Service. 2281// 2282// Returns information about a built-in intent. 2283// 2284// This operation requires permission for the lex:GetBuiltinIntent action. 2285// 2286// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2287// with awserr.Error's Code and Message methods to get detailed information about 2288// the error. 2289// 2290// See the AWS API reference guide for Amazon Lex Model Building Service's 2291// API operation GetBuiltinIntent for usage and error information. 2292// 2293// Returned Error Types: 2294// * NotFoundException 2295// The resource specified in the request was not found. Check the resource and 2296// try again. 2297// 2298// * LimitExceededException 2299// The request exceeded a limit. Try your request again. 2300// 2301// * InternalFailureException 2302// An internal Amazon Lex error occurred. Try your request again. 2303// 2304// * BadRequestException 2305// The request is not well formed. For example, a value is invalid or a required 2306// field is missing. Check the field values, and try again. 2307// 2308// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBuiltinIntent 2309func (c *LexModelBuildingService) GetBuiltinIntent(input *GetBuiltinIntentInput) (*GetBuiltinIntentOutput, error) { 2310 req, out := c.GetBuiltinIntentRequest(input) 2311 return out, req.Send() 2312} 2313 2314// GetBuiltinIntentWithContext is the same as GetBuiltinIntent with the addition of 2315// the ability to pass a context and additional request options. 2316// 2317// See GetBuiltinIntent for details on how to use this API operation. 2318// 2319// The context must be non-nil and will be used for request cancellation. If 2320// the context is nil a panic will occur. In the future the SDK may create 2321// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2322// for more information on using Contexts. 2323func (c *LexModelBuildingService) GetBuiltinIntentWithContext(ctx aws.Context, input *GetBuiltinIntentInput, opts ...request.Option) (*GetBuiltinIntentOutput, error) { 2324 req, out := c.GetBuiltinIntentRequest(input) 2325 req.SetContext(ctx) 2326 req.ApplyOptions(opts...) 2327 return out, req.Send() 2328} 2329 2330const opGetBuiltinIntents = "GetBuiltinIntents" 2331 2332// GetBuiltinIntentsRequest generates a "aws/request.Request" representing the 2333// client's request for the GetBuiltinIntents operation. The "output" return 2334// value will be populated with the request's response once the request completes 2335// successfully. 2336// 2337// Use "Send" method on the returned Request to send the API call to the service. 2338// the "output" return value is not valid until after Send returns without error. 2339// 2340// See GetBuiltinIntents for more information on using the GetBuiltinIntents 2341// API call, and error handling. 2342// 2343// This method is useful when you want to inject custom logic or configuration 2344// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2345// 2346// 2347// // Example sending a request using the GetBuiltinIntentsRequest method. 2348// req, resp := client.GetBuiltinIntentsRequest(params) 2349// 2350// err := req.Send() 2351// if err == nil { // resp is now filled 2352// fmt.Println(resp) 2353// } 2354// 2355// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBuiltinIntents 2356func (c *LexModelBuildingService) GetBuiltinIntentsRequest(input *GetBuiltinIntentsInput) (req *request.Request, output *GetBuiltinIntentsOutput) { 2357 op := &request.Operation{ 2358 Name: opGetBuiltinIntents, 2359 HTTPMethod: "GET", 2360 HTTPPath: "/builtins/intents/", 2361 Paginator: &request.Paginator{ 2362 InputTokens: []string{"nextToken"}, 2363 OutputTokens: []string{"nextToken"}, 2364 LimitToken: "maxResults", 2365 TruncationToken: "", 2366 }, 2367 } 2368 2369 if input == nil { 2370 input = &GetBuiltinIntentsInput{} 2371 } 2372 2373 output = &GetBuiltinIntentsOutput{} 2374 req = c.newRequest(op, input, output) 2375 return 2376} 2377 2378// GetBuiltinIntents API operation for Amazon Lex Model Building Service. 2379// 2380// Gets a list of built-in intents that meet the specified criteria. 2381// 2382// This operation requires permission for the lex:GetBuiltinIntents action. 2383// 2384// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2385// with awserr.Error's Code and Message methods to get detailed information about 2386// the error. 2387// 2388// See the AWS API reference guide for Amazon Lex Model Building Service's 2389// API operation GetBuiltinIntents for usage and error information. 2390// 2391// Returned Error Types: 2392// * LimitExceededException 2393// The request exceeded a limit. Try your request again. 2394// 2395// * InternalFailureException 2396// An internal Amazon Lex error occurred. Try your request again. 2397// 2398// * BadRequestException 2399// The request is not well formed. For example, a value is invalid or a required 2400// field is missing. Check the field values, and try again. 2401// 2402// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBuiltinIntents 2403func (c *LexModelBuildingService) GetBuiltinIntents(input *GetBuiltinIntentsInput) (*GetBuiltinIntentsOutput, error) { 2404 req, out := c.GetBuiltinIntentsRequest(input) 2405 return out, req.Send() 2406} 2407 2408// GetBuiltinIntentsWithContext is the same as GetBuiltinIntents with the addition of 2409// the ability to pass a context and additional request options. 2410// 2411// See GetBuiltinIntents for details on how to use this API operation. 2412// 2413// The context must be non-nil and will be used for request cancellation. If 2414// the context is nil a panic will occur. In the future the SDK may create 2415// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2416// for more information on using Contexts. 2417func (c *LexModelBuildingService) GetBuiltinIntentsWithContext(ctx aws.Context, input *GetBuiltinIntentsInput, opts ...request.Option) (*GetBuiltinIntentsOutput, error) { 2418 req, out := c.GetBuiltinIntentsRequest(input) 2419 req.SetContext(ctx) 2420 req.ApplyOptions(opts...) 2421 return out, req.Send() 2422} 2423 2424// GetBuiltinIntentsPages iterates over the pages of a GetBuiltinIntents operation, 2425// calling the "fn" function with the response data for each page. To stop 2426// iterating, return false from the fn function. 2427// 2428// See GetBuiltinIntents method for more information on how to use this operation. 2429// 2430// Note: This operation can generate multiple requests to a service. 2431// 2432// // Example iterating over at most 3 pages of a GetBuiltinIntents operation. 2433// pageNum := 0 2434// err := client.GetBuiltinIntentsPages(params, 2435// func(page *lexmodelbuildingservice.GetBuiltinIntentsOutput, lastPage bool) bool { 2436// pageNum++ 2437// fmt.Println(page) 2438// return pageNum <= 3 2439// }) 2440// 2441func (c *LexModelBuildingService) GetBuiltinIntentsPages(input *GetBuiltinIntentsInput, fn func(*GetBuiltinIntentsOutput, bool) bool) error { 2442 return c.GetBuiltinIntentsPagesWithContext(aws.BackgroundContext(), input, fn) 2443} 2444 2445// GetBuiltinIntentsPagesWithContext same as GetBuiltinIntentsPages except 2446// it takes a Context and allows setting request options on the pages. 2447// 2448// The context must be non-nil and will be used for request cancellation. If 2449// the context is nil a panic will occur. In the future the SDK may create 2450// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2451// for more information on using Contexts. 2452func (c *LexModelBuildingService) GetBuiltinIntentsPagesWithContext(ctx aws.Context, input *GetBuiltinIntentsInput, fn func(*GetBuiltinIntentsOutput, bool) bool, opts ...request.Option) error { 2453 p := request.Pagination{ 2454 NewRequest: func() (*request.Request, error) { 2455 var inCpy *GetBuiltinIntentsInput 2456 if input != nil { 2457 tmp := *input 2458 inCpy = &tmp 2459 } 2460 req, _ := c.GetBuiltinIntentsRequest(inCpy) 2461 req.SetContext(ctx) 2462 req.ApplyOptions(opts...) 2463 return req, nil 2464 }, 2465 } 2466 2467 for p.Next() { 2468 if !fn(p.Page().(*GetBuiltinIntentsOutput), !p.HasNextPage()) { 2469 break 2470 } 2471 } 2472 2473 return p.Err() 2474} 2475 2476const opGetBuiltinSlotTypes = "GetBuiltinSlotTypes" 2477 2478// GetBuiltinSlotTypesRequest generates a "aws/request.Request" representing the 2479// client's request for the GetBuiltinSlotTypes operation. The "output" return 2480// value will be populated with the request's response once the request completes 2481// successfully. 2482// 2483// Use "Send" method on the returned Request to send the API call to the service. 2484// the "output" return value is not valid until after Send returns without error. 2485// 2486// See GetBuiltinSlotTypes for more information on using the GetBuiltinSlotTypes 2487// API call, and error handling. 2488// 2489// This method is useful when you want to inject custom logic or configuration 2490// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2491// 2492// 2493// // Example sending a request using the GetBuiltinSlotTypesRequest method. 2494// req, resp := client.GetBuiltinSlotTypesRequest(params) 2495// 2496// err := req.Send() 2497// if err == nil { // resp is now filled 2498// fmt.Println(resp) 2499// } 2500// 2501// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBuiltinSlotTypes 2502func (c *LexModelBuildingService) GetBuiltinSlotTypesRequest(input *GetBuiltinSlotTypesInput) (req *request.Request, output *GetBuiltinSlotTypesOutput) { 2503 op := &request.Operation{ 2504 Name: opGetBuiltinSlotTypes, 2505 HTTPMethod: "GET", 2506 HTTPPath: "/builtins/slottypes/", 2507 Paginator: &request.Paginator{ 2508 InputTokens: []string{"nextToken"}, 2509 OutputTokens: []string{"nextToken"}, 2510 LimitToken: "maxResults", 2511 TruncationToken: "", 2512 }, 2513 } 2514 2515 if input == nil { 2516 input = &GetBuiltinSlotTypesInput{} 2517 } 2518 2519 output = &GetBuiltinSlotTypesOutput{} 2520 req = c.newRequest(op, input, output) 2521 return 2522} 2523 2524// GetBuiltinSlotTypes API operation for Amazon Lex Model Building Service. 2525// 2526// Gets a list of built-in slot types that meet the specified criteria. 2527// 2528// For a list of built-in slot types, see Slot Type Reference (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/slot-type-reference) 2529// in the Alexa Skills Kit. 2530// 2531// This operation requires permission for the lex:GetBuiltInSlotTypes action. 2532// 2533// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2534// with awserr.Error's Code and Message methods to get detailed information about 2535// the error. 2536// 2537// See the AWS API reference guide for Amazon Lex Model Building Service's 2538// API operation GetBuiltinSlotTypes for usage and error information. 2539// 2540// Returned Error Types: 2541// * LimitExceededException 2542// The request exceeded a limit. Try your request again. 2543// 2544// * InternalFailureException 2545// An internal Amazon Lex error occurred. Try your request again. 2546// 2547// * BadRequestException 2548// The request is not well formed. For example, a value is invalid or a required 2549// field is missing. Check the field values, and try again. 2550// 2551// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetBuiltinSlotTypes 2552func (c *LexModelBuildingService) GetBuiltinSlotTypes(input *GetBuiltinSlotTypesInput) (*GetBuiltinSlotTypesOutput, error) { 2553 req, out := c.GetBuiltinSlotTypesRequest(input) 2554 return out, req.Send() 2555} 2556 2557// GetBuiltinSlotTypesWithContext is the same as GetBuiltinSlotTypes with the addition of 2558// the ability to pass a context and additional request options. 2559// 2560// See GetBuiltinSlotTypes for details on how to use this API operation. 2561// 2562// The context must be non-nil and will be used for request cancellation. If 2563// the context is nil a panic will occur. In the future the SDK may create 2564// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2565// for more information on using Contexts. 2566func (c *LexModelBuildingService) GetBuiltinSlotTypesWithContext(ctx aws.Context, input *GetBuiltinSlotTypesInput, opts ...request.Option) (*GetBuiltinSlotTypesOutput, error) { 2567 req, out := c.GetBuiltinSlotTypesRequest(input) 2568 req.SetContext(ctx) 2569 req.ApplyOptions(opts...) 2570 return out, req.Send() 2571} 2572 2573// GetBuiltinSlotTypesPages iterates over the pages of a GetBuiltinSlotTypes operation, 2574// calling the "fn" function with the response data for each page. To stop 2575// iterating, return false from the fn function. 2576// 2577// See GetBuiltinSlotTypes method for more information on how to use this operation. 2578// 2579// Note: This operation can generate multiple requests to a service. 2580// 2581// // Example iterating over at most 3 pages of a GetBuiltinSlotTypes operation. 2582// pageNum := 0 2583// err := client.GetBuiltinSlotTypesPages(params, 2584// func(page *lexmodelbuildingservice.GetBuiltinSlotTypesOutput, lastPage bool) bool { 2585// pageNum++ 2586// fmt.Println(page) 2587// return pageNum <= 3 2588// }) 2589// 2590func (c *LexModelBuildingService) GetBuiltinSlotTypesPages(input *GetBuiltinSlotTypesInput, fn func(*GetBuiltinSlotTypesOutput, bool) bool) error { 2591 return c.GetBuiltinSlotTypesPagesWithContext(aws.BackgroundContext(), input, fn) 2592} 2593 2594// GetBuiltinSlotTypesPagesWithContext same as GetBuiltinSlotTypesPages except 2595// it takes a Context and allows setting request options on the pages. 2596// 2597// The context must be non-nil and will be used for request cancellation. If 2598// the context is nil a panic will occur. In the future the SDK may create 2599// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2600// for more information on using Contexts. 2601func (c *LexModelBuildingService) GetBuiltinSlotTypesPagesWithContext(ctx aws.Context, input *GetBuiltinSlotTypesInput, fn func(*GetBuiltinSlotTypesOutput, bool) bool, opts ...request.Option) error { 2602 p := request.Pagination{ 2603 NewRequest: func() (*request.Request, error) { 2604 var inCpy *GetBuiltinSlotTypesInput 2605 if input != nil { 2606 tmp := *input 2607 inCpy = &tmp 2608 } 2609 req, _ := c.GetBuiltinSlotTypesRequest(inCpy) 2610 req.SetContext(ctx) 2611 req.ApplyOptions(opts...) 2612 return req, nil 2613 }, 2614 } 2615 2616 for p.Next() { 2617 if !fn(p.Page().(*GetBuiltinSlotTypesOutput), !p.HasNextPage()) { 2618 break 2619 } 2620 } 2621 2622 return p.Err() 2623} 2624 2625const opGetExport = "GetExport" 2626 2627// GetExportRequest generates a "aws/request.Request" representing the 2628// client's request for the GetExport operation. The "output" return 2629// value will be populated with the request's response once the request completes 2630// successfully. 2631// 2632// Use "Send" method on the returned Request to send the API call to the service. 2633// the "output" return value is not valid until after Send returns without error. 2634// 2635// See GetExport for more information on using the GetExport 2636// API call, and error handling. 2637// 2638// This method is useful when you want to inject custom logic or configuration 2639// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2640// 2641// 2642// // Example sending a request using the GetExportRequest method. 2643// req, resp := client.GetExportRequest(params) 2644// 2645// err := req.Send() 2646// if err == nil { // resp is now filled 2647// fmt.Println(resp) 2648// } 2649// 2650// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetExport 2651func (c *LexModelBuildingService) GetExportRequest(input *GetExportInput) (req *request.Request, output *GetExportOutput) { 2652 op := &request.Operation{ 2653 Name: opGetExport, 2654 HTTPMethod: "GET", 2655 HTTPPath: "/exports/", 2656 } 2657 2658 if input == nil { 2659 input = &GetExportInput{} 2660 } 2661 2662 output = &GetExportOutput{} 2663 req = c.newRequest(op, input, output) 2664 return 2665} 2666 2667// GetExport API operation for Amazon Lex Model Building Service. 2668// 2669// Exports the contents of a Amazon Lex resource in a specified format. 2670// 2671// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2672// with awserr.Error's Code and Message methods to get detailed information about 2673// the error. 2674// 2675// See the AWS API reference guide for Amazon Lex Model Building Service's 2676// API operation GetExport for usage and error information. 2677// 2678// Returned Error Types: 2679// * NotFoundException 2680// The resource specified in the request was not found. Check the resource and 2681// try again. 2682// 2683// * LimitExceededException 2684// The request exceeded a limit. Try your request again. 2685// 2686// * InternalFailureException 2687// An internal Amazon Lex error occurred. Try your request again. 2688// 2689// * BadRequestException 2690// The request is not well formed. For example, a value is invalid or a required 2691// field is missing. Check the field values, and try again. 2692// 2693// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetExport 2694func (c *LexModelBuildingService) GetExport(input *GetExportInput) (*GetExportOutput, error) { 2695 req, out := c.GetExportRequest(input) 2696 return out, req.Send() 2697} 2698 2699// GetExportWithContext is the same as GetExport with the addition of 2700// the ability to pass a context and additional request options. 2701// 2702// See GetExport for details on how to use this API operation. 2703// 2704// The context must be non-nil and will be used for request cancellation. If 2705// the context is nil a panic will occur. In the future the SDK may create 2706// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2707// for more information on using Contexts. 2708func (c *LexModelBuildingService) GetExportWithContext(ctx aws.Context, input *GetExportInput, opts ...request.Option) (*GetExportOutput, error) { 2709 req, out := c.GetExportRequest(input) 2710 req.SetContext(ctx) 2711 req.ApplyOptions(opts...) 2712 return out, req.Send() 2713} 2714 2715const opGetImport = "GetImport" 2716 2717// GetImportRequest generates a "aws/request.Request" representing the 2718// client's request for the GetImport operation. The "output" return 2719// value will be populated with the request's response once the request completes 2720// successfully. 2721// 2722// Use "Send" method on the returned Request to send the API call to the service. 2723// the "output" return value is not valid until after Send returns without error. 2724// 2725// See GetImport for more information on using the GetImport 2726// API call, and error handling. 2727// 2728// This method is useful when you want to inject custom logic or configuration 2729// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2730// 2731// 2732// // Example sending a request using the GetImportRequest method. 2733// req, resp := client.GetImportRequest(params) 2734// 2735// err := req.Send() 2736// if err == nil { // resp is now filled 2737// fmt.Println(resp) 2738// } 2739// 2740// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetImport 2741func (c *LexModelBuildingService) GetImportRequest(input *GetImportInput) (req *request.Request, output *GetImportOutput) { 2742 op := &request.Operation{ 2743 Name: opGetImport, 2744 HTTPMethod: "GET", 2745 HTTPPath: "/imports/{importId}", 2746 } 2747 2748 if input == nil { 2749 input = &GetImportInput{} 2750 } 2751 2752 output = &GetImportOutput{} 2753 req = c.newRequest(op, input, output) 2754 return 2755} 2756 2757// GetImport API operation for Amazon Lex Model Building Service. 2758// 2759// Gets information about an import job started with the StartImport operation. 2760// 2761// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2762// with awserr.Error's Code and Message methods to get detailed information about 2763// the error. 2764// 2765// See the AWS API reference guide for Amazon Lex Model Building Service's 2766// API operation GetImport for usage and error information. 2767// 2768// Returned Error Types: 2769// * NotFoundException 2770// The resource specified in the request was not found. Check the resource and 2771// try again. 2772// 2773// * LimitExceededException 2774// The request exceeded a limit. Try your request again. 2775// 2776// * InternalFailureException 2777// An internal Amazon Lex error occurred. Try your request again. 2778// 2779// * BadRequestException 2780// The request is not well formed. For example, a value is invalid or a required 2781// field is missing. Check the field values, and try again. 2782// 2783// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetImport 2784func (c *LexModelBuildingService) GetImport(input *GetImportInput) (*GetImportOutput, error) { 2785 req, out := c.GetImportRequest(input) 2786 return out, req.Send() 2787} 2788 2789// GetImportWithContext is the same as GetImport with the addition of 2790// the ability to pass a context and additional request options. 2791// 2792// See GetImport for details on how to use this API operation. 2793// 2794// The context must be non-nil and will be used for request cancellation. If 2795// the context is nil a panic will occur. In the future the SDK may create 2796// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2797// for more information on using Contexts. 2798func (c *LexModelBuildingService) GetImportWithContext(ctx aws.Context, input *GetImportInput, opts ...request.Option) (*GetImportOutput, error) { 2799 req, out := c.GetImportRequest(input) 2800 req.SetContext(ctx) 2801 req.ApplyOptions(opts...) 2802 return out, req.Send() 2803} 2804 2805const opGetIntent = "GetIntent" 2806 2807// GetIntentRequest generates a "aws/request.Request" representing the 2808// client's request for the GetIntent operation. The "output" return 2809// value will be populated with the request's response once the request completes 2810// successfully. 2811// 2812// Use "Send" method on the returned Request to send the API call to the service. 2813// the "output" return value is not valid until after Send returns without error. 2814// 2815// See GetIntent for more information on using the GetIntent 2816// API call, and error handling. 2817// 2818// This method is useful when you want to inject custom logic or configuration 2819// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2820// 2821// 2822// // Example sending a request using the GetIntentRequest method. 2823// req, resp := client.GetIntentRequest(params) 2824// 2825// err := req.Send() 2826// if err == nil { // resp is now filled 2827// fmt.Println(resp) 2828// } 2829// 2830// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetIntent 2831func (c *LexModelBuildingService) GetIntentRequest(input *GetIntentInput) (req *request.Request, output *GetIntentOutput) { 2832 op := &request.Operation{ 2833 Name: opGetIntent, 2834 HTTPMethod: "GET", 2835 HTTPPath: "/intents/{name}/versions/{version}", 2836 } 2837 2838 if input == nil { 2839 input = &GetIntentInput{} 2840 } 2841 2842 output = &GetIntentOutput{} 2843 req = c.newRequest(op, input, output) 2844 return 2845} 2846 2847// GetIntent API operation for Amazon Lex Model Building Service. 2848// 2849// Returns information about an intent. In addition to the intent name, you 2850// must specify the intent version. 2851// 2852// This operation requires permissions to perform the lex:GetIntent action. 2853// 2854// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2855// with awserr.Error's Code and Message methods to get detailed information about 2856// the error. 2857// 2858// See the AWS API reference guide for Amazon Lex Model Building Service's 2859// API operation GetIntent for usage and error information. 2860// 2861// Returned Error Types: 2862// * NotFoundException 2863// The resource specified in the request was not found. Check the resource and 2864// try again. 2865// 2866// * LimitExceededException 2867// The request exceeded a limit. Try your request again. 2868// 2869// * InternalFailureException 2870// An internal Amazon Lex error occurred. Try your request again. 2871// 2872// * BadRequestException 2873// The request is not well formed. For example, a value is invalid or a required 2874// field is missing. Check the field values, and try again. 2875// 2876// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetIntent 2877func (c *LexModelBuildingService) GetIntent(input *GetIntentInput) (*GetIntentOutput, error) { 2878 req, out := c.GetIntentRequest(input) 2879 return out, req.Send() 2880} 2881 2882// GetIntentWithContext is the same as GetIntent with the addition of 2883// the ability to pass a context and additional request options. 2884// 2885// See GetIntent for details on how to use this API operation. 2886// 2887// The context must be non-nil and will be used for request cancellation. If 2888// the context is nil a panic will occur. In the future the SDK may create 2889// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2890// for more information on using Contexts. 2891func (c *LexModelBuildingService) GetIntentWithContext(ctx aws.Context, input *GetIntentInput, opts ...request.Option) (*GetIntentOutput, error) { 2892 req, out := c.GetIntentRequest(input) 2893 req.SetContext(ctx) 2894 req.ApplyOptions(opts...) 2895 return out, req.Send() 2896} 2897 2898const opGetIntentVersions = "GetIntentVersions" 2899 2900// GetIntentVersionsRequest generates a "aws/request.Request" representing the 2901// client's request for the GetIntentVersions operation. The "output" return 2902// value will be populated with the request's response once the request completes 2903// successfully. 2904// 2905// Use "Send" method on the returned Request to send the API call to the service. 2906// the "output" return value is not valid until after Send returns without error. 2907// 2908// See GetIntentVersions for more information on using the GetIntentVersions 2909// API call, and error handling. 2910// 2911// This method is useful when you want to inject custom logic or configuration 2912// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2913// 2914// 2915// // Example sending a request using the GetIntentVersionsRequest method. 2916// req, resp := client.GetIntentVersionsRequest(params) 2917// 2918// err := req.Send() 2919// if err == nil { // resp is now filled 2920// fmt.Println(resp) 2921// } 2922// 2923// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetIntentVersions 2924func (c *LexModelBuildingService) GetIntentVersionsRequest(input *GetIntentVersionsInput) (req *request.Request, output *GetIntentVersionsOutput) { 2925 op := &request.Operation{ 2926 Name: opGetIntentVersions, 2927 HTTPMethod: "GET", 2928 HTTPPath: "/intents/{name}/versions/", 2929 Paginator: &request.Paginator{ 2930 InputTokens: []string{"nextToken"}, 2931 OutputTokens: []string{"nextToken"}, 2932 LimitToken: "maxResults", 2933 TruncationToken: "", 2934 }, 2935 } 2936 2937 if input == nil { 2938 input = &GetIntentVersionsInput{} 2939 } 2940 2941 output = &GetIntentVersionsOutput{} 2942 req = c.newRequest(op, input, output) 2943 return 2944} 2945 2946// GetIntentVersions API operation for Amazon Lex Model Building Service. 2947// 2948// Gets information about all of the versions of an intent. 2949// 2950// The GetIntentVersions operation returns an IntentMetadata object for each 2951// version of an intent. For example, if an intent has three numbered versions, 2952// the GetIntentVersions operation returns four IntentMetadata objects in the 2953// response, one for each numbered version and one for the $LATEST version. 2954// 2955// The GetIntentVersions operation always returns at least one version, the 2956// $LATEST version. 2957// 2958// This operation requires permissions for the lex:GetIntentVersions action. 2959// 2960// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2961// with awserr.Error's Code and Message methods to get detailed information about 2962// the error. 2963// 2964// See the AWS API reference guide for Amazon Lex Model Building Service's 2965// API operation GetIntentVersions for usage and error information. 2966// 2967// Returned Error Types: 2968// * NotFoundException 2969// The resource specified in the request was not found. Check the resource and 2970// try again. 2971// 2972// * LimitExceededException 2973// The request exceeded a limit. Try your request again. 2974// 2975// * InternalFailureException 2976// An internal Amazon Lex error occurred. Try your request again. 2977// 2978// * BadRequestException 2979// The request is not well formed. For example, a value is invalid or a required 2980// field is missing. Check the field values, and try again. 2981// 2982// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetIntentVersions 2983func (c *LexModelBuildingService) GetIntentVersions(input *GetIntentVersionsInput) (*GetIntentVersionsOutput, error) { 2984 req, out := c.GetIntentVersionsRequest(input) 2985 return out, req.Send() 2986} 2987 2988// GetIntentVersionsWithContext is the same as GetIntentVersions with the addition of 2989// the ability to pass a context and additional request options. 2990// 2991// See GetIntentVersions for details on how to use this API operation. 2992// 2993// The context must be non-nil and will be used for request cancellation. If 2994// the context is nil a panic will occur. In the future the SDK may create 2995// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2996// for more information on using Contexts. 2997func (c *LexModelBuildingService) GetIntentVersionsWithContext(ctx aws.Context, input *GetIntentVersionsInput, opts ...request.Option) (*GetIntentVersionsOutput, error) { 2998 req, out := c.GetIntentVersionsRequest(input) 2999 req.SetContext(ctx) 3000 req.ApplyOptions(opts...) 3001 return out, req.Send() 3002} 3003 3004// GetIntentVersionsPages iterates over the pages of a GetIntentVersions operation, 3005// calling the "fn" function with the response data for each page. To stop 3006// iterating, return false from the fn function. 3007// 3008// See GetIntentVersions method for more information on how to use this operation. 3009// 3010// Note: This operation can generate multiple requests to a service. 3011// 3012// // Example iterating over at most 3 pages of a GetIntentVersions operation. 3013// pageNum := 0 3014// err := client.GetIntentVersionsPages(params, 3015// func(page *lexmodelbuildingservice.GetIntentVersionsOutput, lastPage bool) bool { 3016// pageNum++ 3017// fmt.Println(page) 3018// return pageNum <= 3 3019// }) 3020// 3021func (c *LexModelBuildingService) GetIntentVersionsPages(input *GetIntentVersionsInput, fn func(*GetIntentVersionsOutput, bool) bool) error { 3022 return c.GetIntentVersionsPagesWithContext(aws.BackgroundContext(), input, fn) 3023} 3024 3025// GetIntentVersionsPagesWithContext same as GetIntentVersionsPages except 3026// it takes a Context and allows setting request options on the pages. 3027// 3028// The context must be non-nil and will be used for request cancellation. If 3029// the context is nil a panic will occur. In the future the SDK may create 3030// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3031// for more information on using Contexts. 3032func (c *LexModelBuildingService) GetIntentVersionsPagesWithContext(ctx aws.Context, input *GetIntentVersionsInput, fn func(*GetIntentVersionsOutput, bool) bool, opts ...request.Option) error { 3033 p := request.Pagination{ 3034 NewRequest: func() (*request.Request, error) { 3035 var inCpy *GetIntentVersionsInput 3036 if input != nil { 3037 tmp := *input 3038 inCpy = &tmp 3039 } 3040 req, _ := c.GetIntentVersionsRequest(inCpy) 3041 req.SetContext(ctx) 3042 req.ApplyOptions(opts...) 3043 return req, nil 3044 }, 3045 } 3046 3047 for p.Next() { 3048 if !fn(p.Page().(*GetIntentVersionsOutput), !p.HasNextPage()) { 3049 break 3050 } 3051 } 3052 3053 return p.Err() 3054} 3055 3056const opGetIntents = "GetIntents" 3057 3058// GetIntentsRequest generates a "aws/request.Request" representing the 3059// client's request for the GetIntents operation. The "output" return 3060// value will be populated with the request's response once the request completes 3061// successfully. 3062// 3063// Use "Send" method on the returned Request to send the API call to the service. 3064// the "output" return value is not valid until after Send returns without error. 3065// 3066// See GetIntents for more information on using the GetIntents 3067// API call, and error handling. 3068// 3069// This method is useful when you want to inject custom logic or configuration 3070// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3071// 3072// 3073// // Example sending a request using the GetIntentsRequest method. 3074// req, resp := client.GetIntentsRequest(params) 3075// 3076// err := req.Send() 3077// if err == nil { // resp is now filled 3078// fmt.Println(resp) 3079// } 3080// 3081// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetIntents 3082func (c *LexModelBuildingService) GetIntentsRequest(input *GetIntentsInput) (req *request.Request, output *GetIntentsOutput) { 3083 op := &request.Operation{ 3084 Name: opGetIntents, 3085 HTTPMethod: "GET", 3086 HTTPPath: "/intents/", 3087 Paginator: &request.Paginator{ 3088 InputTokens: []string{"nextToken"}, 3089 OutputTokens: []string{"nextToken"}, 3090 LimitToken: "maxResults", 3091 TruncationToken: "", 3092 }, 3093 } 3094 3095 if input == nil { 3096 input = &GetIntentsInput{} 3097 } 3098 3099 output = &GetIntentsOutput{} 3100 req = c.newRequest(op, input, output) 3101 return 3102} 3103 3104// GetIntents API operation for Amazon Lex Model Building Service. 3105// 3106// Returns intent information as follows: 3107// 3108// * If you specify the nameContains field, returns the $LATEST version of 3109// all intents that contain the specified string. 3110// 3111// * If you don't specify the nameContains field, returns information about 3112// the $LATEST version of all intents. 3113// 3114// The operation requires permission for the lex:GetIntents action. 3115// 3116// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3117// with awserr.Error's Code and Message methods to get detailed information about 3118// the error. 3119// 3120// See the AWS API reference guide for Amazon Lex Model Building Service's 3121// API operation GetIntents for usage and error information. 3122// 3123// Returned Error Types: 3124// * NotFoundException 3125// The resource specified in the request was not found. Check the resource and 3126// try again. 3127// 3128// * LimitExceededException 3129// The request exceeded a limit. Try your request again. 3130// 3131// * InternalFailureException 3132// An internal Amazon Lex error occurred. Try your request again. 3133// 3134// * BadRequestException 3135// The request is not well formed. For example, a value is invalid or a required 3136// field is missing. Check the field values, and try again. 3137// 3138// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetIntents 3139func (c *LexModelBuildingService) GetIntents(input *GetIntentsInput) (*GetIntentsOutput, error) { 3140 req, out := c.GetIntentsRequest(input) 3141 return out, req.Send() 3142} 3143 3144// GetIntentsWithContext is the same as GetIntents with the addition of 3145// the ability to pass a context and additional request options. 3146// 3147// See GetIntents for details on how to use this API operation. 3148// 3149// The context must be non-nil and will be used for request cancellation. If 3150// the context is nil a panic will occur. In the future the SDK may create 3151// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3152// for more information on using Contexts. 3153func (c *LexModelBuildingService) GetIntentsWithContext(ctx aws.Context, input *GetIntentsInput, opts ...request.Option) (*GetIntentsOutput, error) { 3154 req, out := c.GetIntentsRequest(input) 3155 req.SetContext(ctx) 3156 req.ApplyOptions(opts...) 3157 return out, req.Send() 3158} 3159 3160// GetIntentsPages iterates over the pages of a GetIntents operation, 3161// calling the "fn" function with the response data for each page. To stop 3162// iterating, return false from the fn function. 3163// 3164// See GetIntents method for more information on how to use this operation. 3165// 3166// Note: This operation can generate multiple requests to a service. 3167// 3168// // Example iterating over at most 3 pages of a GetIntents operation. 3169// pageNum := 0 3170// err := client.GetIntentsPages(params, 3171// func(page *lexmodelbuildingservice.GetIntentsOutput, lastPage bool) bool { 3172// pageNum++ 3173// fmt.Println(page) 3174// return pageNum <= 3 3175// }) 3176// 3177func (c *LexModelBuildingService) GetIntentsPages(input *GetIntentsInput, fn func(*GetIntentsOutput, bool) bool) error { 3178 return c.GetIntentsPagesWithContext(aws.BackgroundContext(), input, fn) 3179} 3180 3181// GetIntentsPagesWithContext same as GetIntentsPages except 3182// it takes a Context and allows setting request options on the pages. 3183// 3184// The context must be non-nil and will be used for request cancellation. If 3185// the context is nil a panic will occur. In the future the SDK may create 3186// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3187// for more information on using Contexts. 3188func (c *LexModelBuildingService) GetIntentsPagesWithContext(ctx aws.Context, input *GetIntentsInput, fn func(*GetIntentsOutput, bool) bool, opts ...request.Option) error { 3189 p := request.Pagination{ 3190 NewRequest: func() (*request.Request, error) { 3191 var inCpy *GetIntentsInput 3192 if input != nil { 3193 tmp := *input 3194 inCpy = &tmp 3195 } 3196 req, _ := c.GetIntentsRequest(inCpy) 3197 req.SetContext(ctx) 3198 req.ApplyOptions(opts...) 3199 return req, nil 3200 }, 3201 } 3202 3203 for p.Next() { 3204 if !fn(p.Page().(*GetIntentsOutput), !p.HasNextPage()) { 3205 break 3206 } 3207 } 3208 3209 return p.Err() 3210} 3211 3212const opGetSlotType = "GetSlotType" 3213 3214// GetSlotTypeRequest generates a "aws/request.Request" representing the 3215// client's request for the GetSlotType operation. The "output" return 3216// value will be populated with the request's response once the request completes 3217// successfully. 3218// 3219// Use "Send" method on the returned Request to send the API call to the service. 3220// the "output" return value is not valid until after Send returns without error. 3221// 3222// See GetSlotType for more information on using the GetSlotType 3223// API call, and error handling. 3224// 3225// This method is useful when you want to inject custom logic or configuration 3226// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3227// 3228// 3229// // Example sending a request using the GetSlotTypeRequest method. 3230// req, resp := client.GetSlotTypeRequest(params) 3231// 3232// err := req.Send() 3233// if err == nil { // resp is now filled 3234// fmt.Println(resp) 3235// } 3236// 3237// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotType 3238func (c *LexModelBuildingService) GetSlotTypeRequest(input *GetSlotTypeInput) (req *request.Request, output *GetSlotTypeOutput) { 3239 op := &request.Operation{ 3240 Name: opGetSlotType, 3241 HTTPMethod: "GET", 3242 HTTPPath: "/slottypes/{name}/versions/{version}", 3243 } 3244 3245 if input == nil { 3246 input = &GetSlotTypeInput{} 3247 } 3248 3249 output = &GetSlotTypeOutput{} 3250 req = c.newRequest(op, input, output) 3251 return 3252} 3253 3254// GetSlotType API operation for Amazon Lex Model Building Service. 3255// 3256// Returns information about a specific version of a slot type. In addition 3257// to specifying the slot type name, you must specify the slot type version. 3258// 3259// This operation requires permissions for the lex:GetSlotType action. 3260// 3261// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3262// with awserr.Error's Code and Message methods to get detailed information about 3263// the error. 3264// 3265// See the AWS API reference guide for Amazon Lex Model Building Service's 3266// API operation GetSlotType for usage and error information. 3267// 3268// Returned Error Types: 3269// * NotFoundException 3270// The resource specified in the request was not found. Check the resource and 3271// try again. 3272// 3273// * LimitExceededException 3274// The request exceeded a limit. Try your request again. 3275// 3276// * InternalFailureException 3277// An internal Amazon Lex error occurred. Try your request again. 3278// 3279// * BadRequestException 3280// The request is not well formed. For example, a value is invalid or a required 3281// field is missing. Check the field values, and try again. 3282// 3283// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotType 3284func (c *LexModelBuildingService) GetSlotType(input *GetSlotTypeInput) (*GetSlotTypeOutput, error) { 3285 req, out := c.GetSlotTypeRequest(input) 3286 return out, req.Send() 3287} 3288 3289// GetSlotTypeWithContext is the same as GetSlotType with the addition of 3290// the ability to pass a context and additional request options. 3291// 3292// See GetSlotType for details on how to use this API operation. 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. 3298func (c *LexModelBuildingService) GetSlotTypeWithContext(ctx aws.Context, input *GetSlotTypeInput, opts ...request.Option) (*GetSlotTypeOutput, error) { 3299 req, out := c.GetSlotTypeRequest(input) 3300 req.SetContext(ctx) 3301 req.ApplyOptions(opts...) 3302 return out, req.Send() 3303} 3304 3305const opGetSlotTypeVersions = "GetSlotTypeVersions" 3306 3307// GetSlotTypeVersionsRequest generates a "aws/request.Request" representing the 3308// client's request for the GetSlotTypeVersions operation. The "output" return 3309// value will be populated with the request's response once the request completes 3310// successfully. 3311// 3312// Use "Send" method on the returned Request to send the API call to the service. 3313// the "output" return value is not valid until after Send returns without error. 3314// 3315// See GetSlotTypeVersions for more information on using the GetSlotTypeVersions 3316// API call, and error handling. 3317// 3318// This method is useful when you want to inject custom logic or configuration 3319// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3320// 3321// 3322// // Example sending a request using the GetSlotTypeVersionsRequest method. 3323// req, resp := client.GetSlotTypeVersionsRequest(params) 3324// 3325// err := req.Send() 3326// if err == nil { // resp is now filled 3327// fmt.Println(resp) 3328// } 3329// 3330// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypeVersions 3331func (c *LexModelBuildingService) GetSlotTypeVersionsRequest(input *GetSlotTypeVersionsInput) (req *request.Request, output *GetSlotTypeVersionsOutput) { 3332 op := &request.Operation{ 3333 Name: opGetSlotTypeVersions, 3334 HTTPMethod: "GET", 3335 HTTPPath: "/slottypes/{name}/versions/", 3336 Paginator: &request.Paginator{ 3337 InputTokens: []string{"nextToken"}, 3338 OutputTokens: []string{"nextToken"}, 3339 LimitToken: "maxResults", 3340 TruncationToken: "", 3341 }, 3342 } 3343 3344 if input == nil { 3345 input = &GetSlotTypeVersionsInput{} 3346 } 3347 3348 output = &GetSlotTypeVersionsOutput{} 3349 req = c.newRequest(op, input, output) 3350 return 3351} 3352 3353// GetSlotTypeVersions API operation for Amazon Lex Model Building Service. 3354// 3355// Gets information about all versions of a slot type. 3356// 3357// The GetSlotTypeVersions operation returns a SlotTypeMetadata object for each 3358// version of a slot type. For example, if a slot type has three numbered versions, 3359// the GetSlotTypeVersions operation returns four SlotTypeMetadata objects in 3360// the response, one for each numbered version and one for the $LATEST version. 3361// 3362// The GetSlotTypeVersions operation always returns at least one version, the 3363// $LATEST version. 3364// 3365// This operation requires permissions for the lex:GetSlotTypeVersions action. 3366// 3367// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3368// with awserr.Error's Code and Message methods to get detailed information about 3369// the error. 3370// 3371// See the AWS API reference guide for Amazon Lex Model Building Service's 3372// API operation GetSlotTypeVersions for usage and error information. 3373// 3374// Returned Error Types: 3375// * NotFoundException 3376// The resource specified in the request was not found. Check the resource and 3377// try again. 3378// 3379// * LimitExceededException 3380// The request exceeded a limit. Try your request again. 3381// 3382// * InternalFailureException 3383// An internal Amazon Lex error occurred. Try your request again. 3384// 3385// * BadRequestException 3386// The request is not well formed. For example, a value is invalid or a required 3387// field is missing. Check the field values, and try again. 3388// 3389// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypeVersions 3390func (c *LexModelBuildingService) GetSlotTypeVersions(input *GetSlotTypeVersionsInput) (*GetSlotTypeVersionsOutput, error) { 3391 req, out := c.GetSlotTypeVersionsRequest(input) 3392 return out, req.Send() 3393} 3394 3395// GetSlotTypeVersionsWithContext is the same as GetSlotTypeVersions with the addition of 3396// the ability to pass a context and additional request options. 3397// 3398// See GetSlotTypeVersions for details on how to use this API operation. 3399// 3400// The context must be non-nil and will be used for request cancellation. If 3401// the context is nil a panic will occur. In the future the SDK may create 3402// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3403// for more information on using Contexts. 3404func (c *LexModelBuildingService) GetSlotTypeVersionsWithContext(ctx aws.Context, input *GetSlotTypeVersionsInput, opts ...request.Option) (*GetSlotTypeVersionsOutput, error) { 3405 req, out := c.GetSlotTypeVersionsRequest(input) 3406 req.SetContext(ctx) 3407 req.ApplyOptions(opts...) 3408 return out, req.Send() 3409} 3410 3411// GetSlotTypeVersionsPages iterates over the pages of a GetSlotTypeVersions operation, 3412// calling the "fn" function with the response data for each page. To stop 3413// iterating, return false from the fn function. 3414// 3415// See GetSlotTypeVersions method for more information on how to use this operation. 3416// 3417// Note: This operation can generate multiple requests to a service. 3418// 3419// // Example iterating over at most 3 pages of a GetSlotTypeVersions operation. 3420// pageNum := 0 3421// err := client.GetSlotTypeVersionsPages(params, 3422// func(page *lexmodelbuildingservice.GetSlotTypeVersionsOutput, lastPage bool) bool { 3423// pageNum++ 3424// fmt.Println(page) 3425// return pageNum <= 3 3426// }) 3427// 3428func (c *LexModelBuildingService) GetSlotTypeVersionsPages(input *GetSlotTypeVersionsInput, fn func(*GetSlotTypeVersionsOutput, bool) bool) error { 3429 return c.GetSlotTypeVersionsPagesWithContext(aws.BackgroundContext(), input, fn) 3430} 3431 3432// GetSlotTypeVersionsPagesWithContext same as GetSlotTypeVersionsPages except 3433// it takes a Context and allows setting request options on the pages. 3434// 3435// The context must be non-nil and will be used for request cancellation. If 3436// the context is nil a panic will occur. In the future the SDK may create 3437// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3438// for more information on using Contexts. 3439func (c *LexModelBuildingService) GetSlotTypeVersionsPagesWithContext(ctx aws.Context, input *GetSlotTypeVersionsInput, fn func(*GetSlotTypeVersionsOutput, bool) bool, opts ...request.Option) error { 3440 p := request.Pagination{ 3441 NewRequest: func() (*request.Request, error) { 3442 var inCpy *GetSlotTypeVersionsInput 3443 if input != nil { 3444 tmp := *input 3445 inCpy = &tmp 3446 } 3447 req, _ := c.GetSlotTypeVersionsRequest(inCpy) 3448 req.SetContext(ctx) 3449 req.ApplyOptions(opts...) 3450 return req, nil 3451 }, 3452 } 3453 3454 for p.Next() { 3455 if !fn(p.Page().(*GetSlotTypeVersionsOutput), !p.HasNextPage()) { 3456 break 3457 } 3458 } 3459 3460 return p.Err() 3461} 3462 3463const opGetSlotTypes = "GetSlotTypes" 3464 3465// GetSlotTypesRequest generates a "aws/request.Request" representing the 3466// client's request for the GetSlotTypes operation. The "output" return 3467// value will be populated with the request's response once the request completes 3468// successfully. 3469// 3470// Use "Send" method on the returned Request to send the API call to the service. 3471// the "output" return value is not valid until after Send returns without error. 3472// 3473// See GetSlotTypes for more information on using the GetSlotTypes 3474// API call, and error handling. 3475// 3476// This method is useful when you want to inject custom logic or configuration 3477// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3478// 3479// 3480// // Example sending a request using the GetSlotTypesRequest method. 3481// req, resp := client.GetSlotTypesRequest(params) 3482// 3483// err := req.Send() 3484// if err == nil { // resp is now filled 3485// fmt.Println(resp) 3486// } 3487// 3488// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypes 3489func (c *LexModelBuildingService) GetSlotTypesRequest(input *GetSlotTypesInput) (req *request.Request, output *GetSlotTypesOutput) { 3490 op := &request.Operation{ 3491 Name: opGetSlotTypes, 3492 HTTPMethod: "GET", 3493 HTTPPath: "/slottypes/", 3494 Paginator: &request.Paginator{ 3495 InputTokens: []string{"nextToken"}, 3496 OutputTokens: []string{"nextToken"}, 3497 LimitToken: "maxResults", 3498 TruncationToken: "", 3499 }, 3500 } 3501 3502 if input == nil { 3503 input = &GetSlotTypesInput{} 3504 } 3505 3506 output = &GetSlotTypesOutput{} 3507 req = c.newRequest(op, input, output) 3508 return 3509} 3510 3511// GetSlotTypes API operation for Amazon Lex Model Building Service. 3512// 3513// Returns slot type information as follows: 3514// 3515// * If you specify the nameContains field, returns the $LATEST version of 3516// all slot types that contain the specified string. 3517// 3518// * If you don't specify the nameContains field, returns information about 3519// the $LATEST version of all slot types. 3520// 3521// The operation requires permission for the lex:GetSlotTypes action. 3522// 3523// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3524// with awserr.Error's Code and Message methods to get detailed information about 3525// the error. 3526// 3527// See the AWS API reference guide for Amazon Lex Model Building Service's 3528// API operation GetSlotTypes for usage and error information. 3529// 3530// Returned Error Types: 3531// * NotFoundException 3532// The resource specified in the request was not found. Check the resource and 3533// try again. 3534// 3535// * LimitExceededException 3536// The request exceeded a limit. Try your request again. 3537// 3538// * InternalFailureException 3539// An internal Amazon Lex error occurred. Try your request again. 3540// 3541// * BadRequestException 3542// The request is not well formed. For example, a value is invalid or a required 3543// field is missing. Check the field values, and try again. 3544// 3545// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypes 3546func (c *LexModelBuildingService) GetSlotTypes(input *GetSlotTypesInput) (*GetSlotTypesOutput, error) { 3547 req, out := c.GetSlotTypesRequest(input) 3548 return out, req.Send() 3549} 3550 3551// GetSlotTypesWithContext is the same as GetSlotTypes with the addition of 3552// the ability to pass a context and additional request options. 3553// 3554// See GetSlotTypes for details on how to use this API operation. 3555// 3556// The context must be non-nil and will be used for request cancellation. If 3557// the context is nil a panic will occur. In the future the SDK may create 3558// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3559// for more information on using Contexts. 3560func (c *LexModelBuildingService) GetSlotTypesWithContext(ctx aws.Context, input *GetSlotTypesInput, opts ...request.Option) (*GetSlotTypesOutput, error) { 3561 req, out := c.GetSlotTypesRequest(input) 3562 req.SetContext(ctx) 3563 req.ApplyOptions(opts...) 3564 return out, req.Send() 3565} 3566 3567// GetSlotTypesPages iterates over the pages of a GetSlotTypes operation, 3568// calling the "fn" function with the response data for each page. To stop 3569// iterating, return false from the fn function. 3570// 3571// See GetSlotTypes method for more information on how to use this operation. 3572// 3573// Note: This operation can generate multiple requests to a service. 3574// 3575// // Example iterating over at most 3 pages of a GetSlotTypes operation. 3576// pageNum := 0 3577// err := client.GetSlotTypesPages(params, 3578// func(page *lexmodelbuildingservice.GetSlotTypesOutput, lastPage bool) bool { 3579// pageNum++ 3580// fmt.Println(page) 3581// return pageNum <= 3 3582// }) 3583// 3584func (c *LexModelBuildingService) GetSlotTypesPages(input *GetSlotTypesInput, fn func(*GetSlotTypesOutput, bool) bool) error { 3585 return c.GetSlotTypesPagesWithContext(aws.BackgroundContext(), input, fn) 3586} 3587 3588// GetSlotTypesPagesWithContext same as GetSlotTypesPages except 3589// it takes a Context and allows setting request options on the pages. 3590// 3591// The context must be non-nil and will be used for request cancellation. If 3592// the context is nil a panic will occur. In the future the SDK may create 3593// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3594// for more information on using Contexts. 3595func (c *LexModelBuildingService) GetSlotTypesPagesWithContext(ctx aws.Context, input *GetSlotTypesInput, fn func(*GetSlotTypesOutput, bool) bool, opts ...request.Option) error { 3596 p := request.Pagination{ 3597 NewRequest: func() (*request.Request, error) { 3598 var inCpy *GetSlotTypesInput 3599 if input != nil { 3600 tmp := *input 3601 inCpy = &tmp 3602 } 3603 req, _ := c.GetSlotTypesRequest(inCpy) 3604 req.SetContext(ctx) 3605 req.ApplyOptions(opts...) 3606 return req, nil 3607 }, 3608 } 3609 3610 for p.Next() { 3611 if !fn(p.Page().(*GetSlotTypesOutput), !p.HasNextPage()) { 3612 break 3613 } 3614 } 3615 3616 return p.Err() 3617} 3618 3619const opGetUtterancesView = "GetUtterancesView" 3620 3621// GetUtterancesViewRequest generates a "aws/request.Request" representing the 3622// client's request for the GetUtterancesView operation. The "output" return 3623// value will be populated with the request's response once the request completes 3624// successfully. 3625// 3626// Use "Send" method on the returned Request to send the API call to the service. 3627// the "output" return value is not valid until after Send returns without error. 3628// 3629// See GetUtterancesView for more information on using the GetUtterancesView 3630// API call, and error handling. 3631// 3632// This method is useful when you want to inject custom logic or configuration 3633// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3634// 3635// 3636// // Example sending a request using the GetUtterancesViewRequest method. 3637// req, resp := client.GetUtterancesViewRequest(params) 3638// 3639// err := req.Send() 3640// if err == nil { // resp is now filled 3641// fmt.Println(resp) 3642// } 3643// 3644// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetUtterancesView 3645func (c *LexModelBuildingService) GetUtterancesViewRequest(input *GetUtterancesViewInput) (req *request.Request, output *GetUtterancesViewOutput) { 3646 op := &request.Operation{ 3647 Name: opGetUtterancesView, 3648 HTTPMethod: "GET", 3649 HTTPPath: "/bots/{botname}/utterances?view=aggregation", 3650 } 3651 3652 if input == nil { 3653 input = &GetUtterancesViewInput{} 3654 } 3655 3656 output = &GetUtterancesViewOutput{} 3657 req = c.newRequest(op, input, output) 3658 return 3659} 3660 3661// GetUtterancesView API operation for Amazon Lex Model Building Service. 3662// 3663// Use the GetUtterancesView operation to get information about the utterances 3664// that your users have made to your bot. You can use this list to tune the 3665// utterances that your bot responds to. 3666// 3667// For example, say that you have created a bot to order flowers. After your 3668// users have used your bot for a while, use the GetUtterancesView operation 3669// to see the requests that they have made and whether they have been successful. 3670// You might find that the utterance "I want flowers" is not being recognized. 3671// You could add this utterance to the OrderFlowers intent so that your bot 3672// recognizes that utterance. 3673// 3674// After you publish a new version of a bot, you can get information about the 3675// old version and the new so that you can compare the performance across the 3676// two versions. 3677// 3678// Utterance statistics are generated once a day. Data is available for the 3679// last 15 days. You can request information for up to 5 versions of your bot 3680// in each request. Amazon Lex returns the most frequent utterances received 3681// by the bot in the last 15 days. The response contains information about a 3682// maximum of 100 utterances for each version. 3683// 3684// If you set childDirected field to true when you created your bot, or if you 3685// opted out of participating in improving Amazon Lex, utterances are not available. 3686// 3687// This operation requires permissions for the lex:GetUtterancesView action. 3688// 3689// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3690// with awserr.Error's Code and Message methods to get detailed information about 3691// the error. 3692// 3693// See the AWS API reference guide for Amazon Lex Model Building Service's 3694// API operation GetUtterancesView for usage and error information. 3695// 3696// Returned Error Types: 3697// * LimitExceededException 3698// The request exceeded a limit. Try your request again. 3699// 3700// * InternalFailureException 3701// An internal Amazon Lex error occurred. Try your request again. 3702// 3703// * BadRequestException 3704// The request is not well formed. For example, a value is invalid or a required 3705// field is missing. Check the field values, and try again. 3706// 3707// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetUtterancesView 3708func (c *LexModelBuildingService) GetUtterancesView(input *GetUtterancesViewInput) (*GetUtterancesViewOutput, error) { 3709 req, out := c.GetUtterancesViewRequest(input) 3710 return out, req.Send() 3711} 3712 3713// GetUtterancesViewWithContext is the same as GetUtterancesView with the addition of 3714// the ability to pass a context and additional request options. 3715// 3716// See GetUtterancesView for details on how to use this API operation. 3717// 3718// The context must be non-nil and will be used for request cancellation. If 3719// the context is nil a panic will occur. In the future the SDK may create 3720// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3721// for more information on using Contexts. 3722func (c *LexModelBuildingService) GetUtterancesViewWithContext(ctx aws.Context, input *GetUtterancesViewInput, opts ...request.Option) (*GetUtterancesViewOutput, error) { 3723 req, out := c.GetUtterancesViewRequest(input) 3724 req.SetContext(ctx) 3725 req.ApplyOptions(opts...) 3726 return out, req.Send() 3727} 3728 3729const opListTagsForResource = "ListTagsForResource" 3730 3731// ListTagsForResourceRequest generates a "aws/request.Request" representing the 3732// client's request for the ListTagsForResource operation. The "output" return 3733// value will be populated with the request's response once the request completes 3734// successfully. 3735// 3736// Use "Send" method on the returned Request to send the API call to the service. 3737// the "output" return value is not valid until after Send returns without error. 3738// 3739// See ListTagsForResource for more information on using the ListTagsForResource 3740// API call, and error handling. 3741// 3742// This method is useful when you want to inject custom logic or configuration 3743// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3744// 3745// 3746// // Example sending a request using the ListTagsForResourceRequest method. 3747// req, resp := client.ListTagsForResourceRequest(params) 3748// 3749// err := req.Send() 3750// if err == nil { // resp is now filled 3751// fmt.Println(resp) 3752// } 3753// 3754// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/ListTagsForResource 3755func (c *LexModelBuildingService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 3756 op := &request.Operation{ 3757 Name: opListTagsForResource, 3758 HTTPMethod: "GET", 3759 HTTPPath: "/tags/{resourceArn}", 3760 } 3761 3762 if input == nil { 3763 input = &ListTagsForResourceInput{} 3764 } 3765 3766 output = &ListTagsForResourceOutput{} 3767 req = c.newRequest(op, input, output) 3768 return 3769} 3770 3771// ListTagsForResource API operation for Amazon Lex Model Building Service. 3772// 3773// Gets a list of tags associated with the specified resource. Only bots, bot 3774// aliases, and bot channels can have tags associated with them. 3775// 3776// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3777// with awserr.Error's Code and Message methods to get detailed information about 3778// the error. 3779// 3780// See the AWS API reference guide for Amazon Lex Model Building Service's 3781// API operation ListTagsForResource for usage and error information. 3782// 3783// Returned Error Types: 3784// * NotFoundException 3785// The resource specified in the request was not found. Check the resource and 3786// try again. 3787// 3788// * BadRequestException 3789// The request is not well formed. For example, a value is invalid or a required 3790// field is missing. Check the field values, and try again. 3791// 3792// * InternalFailureException 3793// An internal Amazon Lex error occurred. Try your request again. 3794// 3795// * LimitExceededException 3796// The request exceeded a limit. Try your request again. 3797// 3798// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/ListTagsForResource 3799func (c *LexModelBuildingService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 3800 req, out := c.ListTagsForResourceRequest(input) 3801 return out, req.Send() 3802} 3803 3804// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 3805// the ability to pass a context and additional request options. 3806// 3807// See ListTagsForResource for details on how to use this API operation. 3808// 3809// The context must be non-nil and will be used for request cancellation. If 3810// the context is nil a panic will occur. In the future the SDK may create 3811// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3812// for more information on using Contexts. 3813func (c *LexModelBuildingService) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 3814 req, out := c.ListTagsForResourceRequest(input) 3815 req.SetContext(ctx) 3816 req.ApplyOptions(opts...) 3817 return out, req.Send() 3818} 3819 3820const opPutBot = "PutBot" 3821 3822// PutBotRequest generates a "aws/request.Request" representing the 3823// client's request for the PutBot operation. The "output" return 3824// value will be populated with the request's response once the request completes 3825// successfully. 3826// 3827// Use "Send" method on the returned Request to send the API call to the service. 3828// the "output" return value is not valid until after Send returns without error. 3829// 3830// See PutBot for more information on using the PutBot 3831// API call, and error handling. 3832// 3833// This method is useful when you want to inject custom logic or configuration 3834// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3835// 3836// 3837// // Example sending a request using the PutBotRequest method. 3838// req, resp := client.PutBotRequest(params) 3839// 3840// err := req.Send() 3841// if err == nil { // resp is now filled 3842// fmt.Println(resp) 3843// } 3844// 3845// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBot 3846func (c *LexModelBuildingService) PutBotRequest(input *PutBotInput) (req *request.Request, output *PutBotOutput) { 3847 op := &request.Operation{ 3848 Name: opPutBot, 3849 HTTPMethod: "PUT", 3850 HTTPPath: "/bots/{name}/versions/$LATEST", 3851 } 3852 3853 if input == nil { 3854 input = &PutBotInput{} 3855 } 3856 3857 output = &PutBotOutput{} 3858 req = c.newRequest(op, input, output) 3859 return 3860} 3861 3862// PutBot API operation for Amazon Lex Model Building Service. 3863// 3864// Creates an Amazon Lex conversational bot or replaces an existing bot. When 3865// you create or update a bot you are only required to specify a name, a locale, 3866// and whether the bot is directed toward children under age 13. You can use 3867// this to add intents later, or to remove intents from an existing bot. When 3868// you create a bot with the minimum information, the bot is created or updated 3869// but Amazon Lex returns the response FAILED. You can build the bot after you 3870// add one or more intents. For more information about Amazon Lex bots, see 3871// how-it-works. 3872// 3873// If you specify the name of an existing bot, the fields in the request replace 3874// the existing values in the $LATEST version of the bot. Amazon Lex removes 3875// any fields that you don't provide values for in the request, except for the 3876// idleTTLInSeconds and privacySettings fields, which are set to their default 3877// values. If you don't specify values for required fields, Amazon Lex throws 3878// an exception. 3879// 3880// This operation requires permissions for the lex:PutBot action. For more information, 3881// see security-iam. 3882// 3883// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3884// with awserr.Error's Code and Message methods to get detailed information about 3885// the error. 3886// 3887// See the AWS API reference guide for Amazon Lex Model Building Service's 3888// API operation PutBot for usage and error information. 3889// 3890// Returned Error Types: 3891// * ConflictException 3892// There was a conflict processing the request. Try your request again. 3893// 3894// * LimitExceededException 3895// The request exceeded a limit. Try your request again. 3896// 3897// * InternalFailureException 3898// An internal Amazon Lex error occurred. Try your request again. 3899// 3900// * BadRequestException 3901// The request is not well formed. For example, a value is invalid or a required 3902// field is missing. Check the field values, and try again. 3903// 3904// * PreconditionFailedException 3905// The checksum of the resource that you are trying to change does not match 3906// the checksum in the request. Check the resource's checksum and try again. 3907// 3908// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBot 3909func (c *LexModelBuildingService) PutBot(input *PutBotInput) (*PutBotOutput, error) { 3910 req, out := c.PutBotRequest(input) 3911 return out, req.Send() 3912} 3913 3914// PutBotWithContext is the same as PutBot with the addition of 3915// the ability to pass a context and additional request options. 3916// 3917// See PutBot for details on how to use this API operation. 3918// 3919// The context must be non-nil and will be used for request cancellation. If 3920// the context is nil a panic will occur. In the future the SDK may create 3921// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3922// for more information on using Contexts. 3923func (c *LexModelBuildingService) PutBotWithContext(ctx aws.Context, input *PutBotInput, opts ...request.Option) (*PutBotOutput, error) { 3924 req, out := c.PutBotRequest(input) 3925 req.SetContext(ctx) 3926 req.ApplyOptions(opts...) 3927 return out, req.Send() 3928} 3929 3930const opPutBotAlias = "PutBotAlias" 3931 3932// PutBotAliasRequest generates a "aws/request.Request" representing the 3933// client's request for the PutBotAlias operation. The "output" return 3934// value will be populated with the request's response once the request completes 3935// successfully. 3936// 3937// Use "Send" method on the returned Request to send the API call to the service. 3938// the "output" return value is not valid until after Send returns without error. 3939// 3940// See PutBotAlias for more information on using the PutBotAlias 3941// API call, and error handling. 3942// 3943// This method is useful when you want to inject custom logic or configuration 3944// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3945// 3946// 3947// // Example sending a request using the PutBotAliasRequest method. 3948// req, resp := client.PutBotAliasRequest(params) 3949// 3950// err := req.Send() 3951// if err == nil { // resp is now filled 3952// fmt.Println(resp) 3953// } 3954// 3955// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotAlias 3956func (c *LexModelBuildingService) PutBotAliasRequest(input *PutBotAliasInput) (req *request.Request, output *PutBotAliasOutput) { 3957 op := &request.Operation{ 3958 Name: opPutBotAlias, 3959 HTTPMethod: "PUT", 3960 HTTPPath: "/bots/{botName}/aliases/{name}", 3961 } 3962 3963 if input == nil { 3964 input = &PutBotAliasInput{} 3965 } 3966 3967 output = &PutBotAliasOutput{} 3968 req = c.newRequest(op, input, output) 3969 return 3970} 3971 3972// PutBotAlias API operation for Amazon Lex Model Building Service. 3973// 3974// Creates an alias for the specified version of the bot or replaces an alias 3975// for the specified bot. To change the version of the bot that the alias points 3976// to, replace the alias. For more information about aliases, see versioning-aliases. 3977// 3978// This operation requires permissions for the lex:PutBotAlias action. 3979// 3980// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3981// with awserr.Error's Code and Message methods to get detailed information about 3982// the error. 3983// 3984// See the AWS API reference guide for Amazon Lex Model Building Service's 3985// API operation PutBotAlias for usage and error information. 3986// 3987// Returned Error Types: 3988// * ConflictException 3989// There was a conflict processing the request. Try your request again. 3990// 3991// * LimitExceededException 3992// The request exceeded a limit. Try your request again. 3993// 3994// * InternalFailureException 3995// An internal Amazon Lex error occurred. Try your request again. 3996// 3997// * BadRequestException 3998// The request is not well formed. For example, a value is invalid or a required 3999// field is missing. Check the field values, and try again. 4000// 4001// * PreconditionFailedException 4002// The checksum of the resource that you are trying to change does not match 4003// the checksum in the request. Check the resource's checksum and try again. 4004// 4005// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotAlias 4006func (c *LexModelBuildingService) PutBotAlias(input *PutBotAliasInput) (*PutBotAliasOutput, error) { 4007 req, out := c.PutBotAliasRequest(input) 4008 return out, req.Send() 4009} 4010 4011// PutBotAliasWithContext is the same as PutBotAlias with the addition of 4012// the ability to pass a context and additional request options. 4013// 4014// See PutBotAlias for details on how to use this API operation. 4015// 4016// The context must be non-nil and will be used for request cancellation. If 4017// the context is nil a panic will occur. In the future the SDK may create 4018// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4019// for more information on using Contexts. 4020func (c *LexModelBuildingService) PutBotAliasWithContext(ctx aws.Context, input *PutBotAliasInput, opts ...request.Option) (*PutBotAliasOutput, error) { 4021 req, out := c.PutBotAliasRequest(input) 4022 req.SetContext(ctx) 4023 req.ApplyOptions(opts...) 4024 return out, req.Send() 4025} 4026 4027const opPutIntent = "PutIntent" 4028 4029// PutIntentRequest generates a "aws/request.Request" representing the 4030// client's request for the PutIntent operation. The "output" return 4031// value will be populated with the request's response once the request completes 4032// successfully. 4033// 4034// Use "Send" method on the returned Request to send the API call to the service. 4035// the "output" return value is not valid until after Send returns without error. 4036// 4037// See PutIntent for more information on using the PutIntent 4038// API call, and error handling. 4039// 4040// This method is useful when you want to inject custom logic or configuration 4041// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4042// 4043// 4044// // Example sending a request using the PutIntentRequest method. 4045// req, resp := client.PutIntentRequest(params) 4046// 4047// err := req.Send() 4048// if err == nil { // resp is now filled 4049// fmt.Println(resp) 4050// } 4051// 4052// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutIntent 4053func (c *LexModelBuildingService) PutIntentRequest(input *PutIntentInput) (req *request.Request, output *PutIntentOutput) { 4054 op := &request.Operation{ 4055 Name: opPutIntent, 4056 HTTPMethod: "PUT", 4057 HTTPPath: "/intents/{name}/versions/$LATEST", 4058 } 4059 4060 if input == nil { 4061 input = &PutIntentInput{} 4062 } 4063 4064 output = &PutIntentOutput{} 4065 req = c.newRequest(op, input, output) 4066 return 4067} 4068 4069// PutIntent API operation for Amazon Lex Model Building Service. 4070// 4071// Creates an intent or replaces an existing intent. 4072// 4073// To define the interaction between the user and your bot, you use one or more 4074// intents. For a pizza ordering bot, for example, you would create an OrderPizza 4075// intent. 4076// 4077// To create an intent or replace an existing intent, you must provide the following: 4078// 4079// * Intent name. For example, OrderPizza. 4080// 4081// * Sample utterances. For example, "Can I order a pizza, please." and "I 4082// want to order a pizza." 4083// 4084// * Information to be gathered. You specify slot types for the information 4085// that your bot will request from the user. You can specify standard slot 4086// types, such as a date or a time, or custom slot types such as the size 4087// and crust of a pizza. 4088// 4089// * How the intent will be fulfilled. You can provide a Lambda function 4090// or configure the intent to return the intent information to the client 4091// application. If you use a Lambda function, when all of the intent information 4092// is available, Amazon Lex invokes your Lambda function. If you configure 4093// your intent to return the intent information to the client application. 4094// 4095// You can specify other optional information in the request, such as: 4096// 4097// * A confirmation prompt to ask the user to confirm an intent. For example, 4098// "Shall I order your pizza?" 4099// 4100// * A conclusion statement to send to the user after the intent has been 4101// fulfilled. For example, "I placed your pizza order." 4102// 4103// * A follow-up prompt that asks the user for additional activity. For example, 4104// asking "Do you want to order a drink with your pizza?" 4105// 4106// If you specify an existing intent name to update the intent, Amazon Lex replaces 4107// the values in the $LATEST version of the intent with the values in the request. 4108// Amazon Lex removes fields that you don't provide in the request. If you don't 4109// specify the required fields, Amazon Lex throws an exception. When you update 4110// the $LATEST version of an intent, the status field of any bot that uses the 4111// $LATEST version of the intent is set to NOT_BUILT. 4112// 4113// For more information, see how-it-works. 4114// 4115// This operation requires permissions for the lex:PutIntent action. 4116// 4117// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4118// with awserr.Error's Code and Message methods to get detailed information about 4119// the error. 4120// 4121// See the AWS API reference guide for Amazon Lex Model Building Service's 4122// API operation PutIntent for usage and error information. 4123// 4124// Returned Error Types: 4125// * ConflictException 4126// There was a conflict processing the request. Try your request again. 4127// 4128// * LimitExceededException 4129// The request exceeded a limit. Try your request again. 4130// 4131// * InternalFailureException 4132// An internal Amazon Lex error occurred. Try your request again. 4133// 4134// * BadRequestException 4135// The request is not well formed. For example, a value is invalid or a required 4136// field is missing. Check the field values, and try again. 4137// 4138// * PreconditionFailedException 4139// The checksum of the resource that you are trying to change does not match 4140// the checksum in the request. Check the resource's checksum and try again. 4141// 4142// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutIntent 4143func (c *LexModelBuildingService) PutIntent(input *PutIntentInput) (*PutIntentOutput, error) { 4144 req, out := c.PutIntentRequest(input) 4145 return out, req.Send() 4146} 4147 4148// PutIntentWithContext is the same as PutIntent with the addition of 4149// the ability to pass a context and additional request options. 4150// 4151// See PutIntent for details on how to use this API operation. 4152// 4153// The context must be non-nil and will be used for request cancellation. If 4154// the context is nil a panic will occur. In the future the SDK may create 4155// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4156// for more information on using Contexts. 4157func (c *LexModelBuildingService) PutIntentWithContext(ctx aws.Context, input *PutIntentInput, opts ...request.Option) (*PutIntentOutput, error) { 4158 req, out := c.PutIntentRequest(input) 4159 req.SetContext(ctx) 4160 req.ApplyOptions(opts...) 4161 return out, req.Send() 4162} 4163 4164const opPutSlotType = "PutSlotType" 4165 4166// PutSlotTypeRequest generates a "aws/request.Request" representing the 4167// client's request for the PutSlotType operation. The "output" return 4168// value will be populated with the request's response once the request completes 4169// successfully. 4170// 4171// Use "Send" method on the returned Request to send the API call to the service. 4172// the "output" return value is not valid until after Send returns without error. 4173// 4174// See PutSlotType for more information on using the PutSlotType 4175// API call, and error handling. 4176// 4177// This method is useful when you want to inject custom logic or configuration 4178// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4179// 4180// 4181// // Example sending a request using the PutSlotTypeRequest method. 4182// req, resp := client.PutSlotTypeRequest(params) 4183// 4184// err := req.Send() 4185// if err == nil { // resp is now filled 4186// fmt.Println(resp) 4187// } 4188// 4189// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutSlotType 4190func (c *LexModelBuildingService) PutSlotTypeRequest(input *PutSlotTypeInput) (req *request.Request, output *PutSlotTypeOutput) { 4191 op := &request.Operation{ 4192 Name: opPutSlotType, 4193 HTTPMethod: "PUT", 4194 HTTPPath: "/slottypes/{name}/versions/$LATEST", 4195 } 4196 4197 if input == nil { 4198 input = &PutSlotTypeInput{} 4199 } 4200 4201 output = &PutSlotTypeOutput{} 4202 req = c.newRequest(op, input, output) 4203 return 4204} 4205 4206// PutSlotType API operation for Amazon Lex Model Building Service. 4207// 4208// Creates a custom slot type or replaces an existing custom slot type. 4209// 4210// To create a custom slot type, specify a name for the slot type and a set 4211// of enumeration values, which are the values that a slot of this type can 4212// assume. For more information, see how-it-works. 4213// 4214// If you specify the name of an existing slot type, the fields in the request 4215// replace the existing values in the $LATEST version of the slot type. Amazon 4216// Lex removes the fields that you don't provide in the request. If you don't 4217// specify required fields, Amazon Lex throws an exception. When you update 4218// the $LATEST version of a slot type, if a bot uses the $LATEST version of 4219// an intent that contains the slot type, the bot's status field is set to NOT_BUILT. 4220// 4221// This operation requires permissions for the lex:PutSlotType action. 4222// 4223// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4224// with awserr.Error's Code and Message methods to get detailed information about 4225// the error. 4226// 4227// See the AWS API reference guide for Amazon Lex Model Building Service's 4228// API operation PutSlotType for usage and error information. 4229// 4230// Returned Error Types: 4231// * ConflictException 4232// There was a conflict processing the request. Try your request again. 4233// 4234// * LimitExceededException 4235// The request exceeded a limit. Try your request again. 4236// 4237// * InternalFailureException 4238// An internal Amazon Lex error occurred. Try your request again. 4239// 4240// * BadRequestException 4241// The request is not well formed. For example, a value is invalid or a required 4242// field is missing. Check the field values, and try again. 4243// 4244// * PreconditionFailedException 4245// The checksum of the resource that you are trying to change does not match 4246// the checksum in the request. Check the resource's checksum and try again. 4247// 4248// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutSlotType 4249func (c *LexModelBuildingService) PutSlotType(input *PutSlotTypeInput) (*PutSlotTypeOutput, error) { 4250 req, out := c.PutSlotTypeRequest(input) 4251 return out, req.Send() 4252} 4253 4254// PutSlotTypeWithContext is the same as PutSlotType with the addition of 4255// the ability to pass a context and additional request options. 4256// 4257// See PutSlotType for details on how to use this API operation. 4258// 4259// The context must be non-nil and will be used for request cancellation. If 4260// the context is nil a panic will occur. In the future the SDK may create 4261// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4262// for more information on using Contexts. 4263func (c *LexModelBuildingService) PutSlotTypeWithContext(ctx aws.Context, input *PutSlotTypeInput, opts ...request.Option) (*PutSlotTypeOutput, error) { 4264 req, out := c.PutSlotTypeRequest(input) 4265 req.SetContext(ctx) 4266 req.ApplyOptions(opts...) 4267 return out, req.Send() 4268} 4269 4270const opStartImport = "StartImport" 4271 4272// StartImportRequest generates a "aws/request.Request" representing the 4273// client's request for the StartImport operation. The "output" return 4274// value will be populated with the request's response once the request completes 4275// successfully. 4276// 4277// Use "Send" method on the returned Request to send the API call to the service. 4278// the "output" return value is not valid until after Send returns without error. 4279// 4280// See StartImport for more information on using the StartImport 4281// API call, and error handling. 4282// 4283// This method is useful when you want to inject custom logic or configuration 4284// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4285// 4286// 4287// // Example sending a request using the StartImportRequest method. 4288// req, resp := client.StartImportRequest(params) 4289// 4290// err := req.Send() 4291// if err == nil { // resp is now filled 4292// fmt.Println(resp) 4293// } 4294// 4295// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartImport 4296func (c *LexModelBuildingService) StartImportRequest(input *StartImportInput) (req *request.Request, output *StartImportOutput) { 4297 op := &request.Operation{ 4298 Name: opStartImport, 4299 HTTPMethod: "POST", 4300 HTTPPath: "/imports/", 4301 } 4302 4303 if input == nil { 4304 input = &StartImportInput{} 4305 } 4306 4307 output = &StartImportOutput{} 4308 req = c.newRequest(op, input, output) 4309 return 4310} 4311 4312// StartImport API operation for Amazon Lex Model Building Service. 4313// 4314// Starts a job to import a resource to Amazon Lex. 4315// 4316// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4317// with awserr.Error's Code and Message methods to get detailed information about 4318// the error. 4319// 4320// See the AWS API reference guide for Amazon Lex Model Building Service's 4321// API operation StartImport for usage and error information. 4322// 4323// Returned Error Types: 4324// * LimitExceededException 4325// The request exceeded a limit. Try your request again. 4326// 4327// * InternalFailureException 4328// An internal Amazon Lex error occurred. Try your request again. 4329// 4330// * BadRequestException 4331// The request is not well formed. For example, a value is invalid or a required 4332// field is missing. Check the field values, and try again. 4333// 4334// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartImport 4335func (c *LexModelBuildingService) StartImport(input *StartImportInput) (*StartImportOutput, error) { 4336 req, out := c.StartImportRequest(input) 4337 return out, req.Send() 4338} 4339 4340// StartImportWithContext is the same as StartImport with the addition of 4341// the ability to pass a context and additional request options. 4342// 4343// See StartImport for details on how to use this API operation. 4344// 4345// The context must be non-nil and will be used for request cancellation. If 4346// the context is nil a panic will occur. In the future the SDK may create 4347// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4348// for more information on using Contexts. 4349func (c *LexModelBuildingService) StartImportWithContext(ctx aws.Context, input *StartImportInput, opts ...request.Option) (*StartImportOutput, error) { 4350 req, out := c.StartImportRequest(input) 4351 req.SetContext(ctx) 4352 req.ApplyOptions(opts...) 4353 return out, req.Send() 4354} 4355 4356const opTagResource = "TagResource" 4357 4358// TagResourceRequest generates a "aws/request.Request" representing the 4359// client's request for the TagResource operation. The "output" return 4360// value will be populated with the request's response once the request completes 4361// successfully. 4362// 4363// Use "Send" method on the returned Request to send the API call to the service. 4364// the "output" return value is not valid until after Send returns without error. 4365// 4366// See TagResource for more information on using the TagResource 4367// API call, and error handling. 4368// 4369// This method is useful when you want to inject custom logic or configuration 4370// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4371// 4372// 4373// // Example sending a request using the TagResourceRequest method. 4374// req, resp := client.TagResourceRequest(params) 4375// 4376// err := req.Send() 4377// if err == nil { // resp is now filled 4378// fmt.Println(resp) 4379// } 4380// 4381// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/TagResource 4382func (c *LexModelBuildingService) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 4383 op := &request.Operation{ 4384 Name: opTagResource, 4385 HTTPMethod: "POST", 4386 HTTPPath: "/tags/{resourceArn}", 4387 } 4388 4389 if input == nil { 4390 input = &TagResourceInput{} 4391 } 4392 4393 output = &TagResourceOutput{} 4394 req = c.newRequest(op, input, output) 4395 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4396 return 4397} 4398 4399// TagResource API operation for Amazon Lex Model Building Service. 4400// 4401// Adds the specified tags to the specified resource. If a tag key already exists, 4402// the existing value is replaced with the new value. 4403// 4404// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4405// with awserr.Error's Code and Message methods to get detailed information about 4406// the error. 4407// 4408// See the AWS API reference guide for Amazon Lex Model Building Service's 4409// API operation TagResource for usage and error information. 4410// 4411// Returned Error Types: 4412// * NotFoundException 4413// The resource specified in the request was not found. Check the resource and 4414// try again. 4415// 4416// * BadRequestException 4417// The request is not well formed. For example, a value is invalid or a required 4418// field is missing. Check the field values, and try again. 4419// 4420// * ConflictException 4421// There was a conflict processing the request. Try your request again. 4422// 4423// * InternalFailureException 4424// An internal Amazon Lex error occurred. Try your request again. 4425// 4426// * LimitExceededException 4427// The request exceeded a limit. Try your request again. 4428// 4429// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/TagResource 4430func (c *LexModelBuildingService) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 4431 req, out := c.TagResourceRequest(input) 4432 return out, req.Send() 4433} 4434 4435// TagResourceWithContext is the same as TagResource with the addition of 4436// the ability to pass a context and additional request options. 4437// 4438// See TagResource for details on how to use this API operation. 4439// 4440// The context must be non-nil and will be used for request cancellation. If 4441// the context is nil a panic will occur. In the future the SDK may create 4442// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4443// for more information on using Contexts. 4444func (c *LexModelBuildingService) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 4445 req, out := c.TagResourceRequest(input) 4446 req.SetContext(ctx) 4447 req.ApplyOptions(opts...) 4448 return out, req.Send() 4449} 4450 4451const opUntagResource = "UntagResource" 4452 4453// UntagResourceRequest generates a "aws/request.Request" representing the 4454// client's request for the UntagResource operation. The "output" return 4455// value will be populated with the request's response once the request completes 4456// successfully. 4457// 4458// Use "Send" method on the returned Request to send the API call to the service. 4459// the "output" return value is not valid until after Send returns without error. 4460// 4461// See UntagResource for more information on using the UntagResource 4462// API call, and error handling. 4463// 4464// This method is useful when you want to inject custom logic or configuration 4465// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4466// 4467// 4468// // Example sending a request using the UntagResourceRequest method. 4469// req, resp := client.UntagResourceRequest(params) 4470// 4471// err := req.Send() 4472// if err == nil { // resp is now filled 4473// fmt.Println(resp) 4474// } 4475// 4476// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/UntagResource 4477func (c *LexModelBuildingService) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 4478 op := &request.Operation{ 4479 Name: opUntagResource, 4480 HTTPMethod: "DELETE", 4481 HTTPPath: "/tags/{resourceArn}", 4482 } 4483 4484 if input == nil { 4485 input = &UntagResourceInput{} 4486 } 4487 4488 output = &UntagResourceOutput{} 4489 req = c.newRequest(op, input, output) 4490 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4491 return 4492} 4493 4494// UntagResource API operation for Amazon Lex Model Building Service. 4495// 4496// Removes tags from a bot, bot alias or bot channel. 4497// 4498// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4499// with awserr.Error's Code and Message methods to get detailed information about 4500// the error. 4501// 4502// See the AWS API reference guide for Amazon Lex Model Building Service's 4503// API operation UntagResource for usage and error information. 4504// 4505// Returned Error Types: 4506// * NotFoundException 4507// The resource specified in the request was not found. Check the resource and 4508// try again. 4509// 4510// * BadRequestException 4511// The request is not well formed. For example, a value is invalid or a required 4512// field is missing. Check the field values, and try again. 4513// 4514// * ConflictException 4515// There was a conflict processing the request. Try your request again. 4516// 4517// * InternalFailureException 4518// An internal Amazon Lex error occurred. Try your request again. 4519// 4520// * LimitExceededException 4521// The request exceeded a limit. Try your request again. 4522// 4523// See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/UntagResource 4524func (c *LexModelBuildingService) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 4525 req, out := c.UntagResourceRequest(input) 4526 return out, req.Send() 4527} 4528 4529// UntagResourceWithContext is the same as UntagResource with the addition of 4530// the ability to pass a context and additional request options. 4531// 4532// See UntagResource for details on how to use this API operation. 4533// 4534// The context must be non-nil and will be used for request cancellation. If 4535// the context is nil a panic will occur. In the future the SDK may create 4536// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4537// for more information on using Contexts. 4538func (c *LexModelBuildingService) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 4539 req, out := c.UntagResourceRequest(input) 4540 req.SetContext(ctx) 4541 req.ApplyOptions(opts...) 4542 return out, req.Send() 4543} 4544 4545// The request is not well formed. For example, a value is invalid or a required 4546// field is missing. Check the field values, and try again. 4547type BadRequestException struct { 4548 _ struct{} `type:"structure"` 4549 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4550 4551 Message_ *string `locationName:"message" type:"string"` 4552} 4553 4554// String returns the string representation 4555func (s BadRequestException) String() string { 4556 return awsutil.Prettify(s) 4557} 4558 4559// GoString returns the string representation 4560func (s BadRequestException) GoString() string { 4561 return s.String() 4562} 4563 4564func newErrorBadRequestException(v protocol.ResponseMetadata) error { 4565 return &BadRequestException{ 4566 RespMetadata: v, 4567 } 4568} 4569 4570// Code returns the exception type name. 4571func (s *BadRequestException) Code() string { 4572 return "BadRequestException" 4573} 4574 4575// Message returns the exception's message. 4576func (s *BadRequestException) Message() string { 4577 if s.Message_ != nil { 4578 return *s.Message_ 4579 } 4580 return "" 4581} 4582 4583// OrigErr always returns nil, satisfies awserr.Error interface. 4584func (s *BadRequestException) OrigErr() error { 4585 return nil 4586} 4587 4588func (s *BadRequestException) Error() string { 4589 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4590} 4591 4592// Status code returns the HTTP status code for the request's response error. 4593func (s *BadRequestException) StatusCode() int { 4594 return s.RespMetadata.StatusCode 4595} 4596 4597// RequestID returns the service's response RequestID for request. 4598func (s *BadRequestException) RequestID() string { 4599 return s.RespMetadata.RequestID 4600} 4601 4602// Provides information about a bot alias. 4603type BotAliasMetadata struct { 4604 _ struct{} `type:"structure"` 4605 4606 // The name of the bot to which the alias points. 4607 BotName *string `locationName:"botName" min:"2" type:"string"` 4608 4609 // The version of the Amazon Lex bot to which the alias points. 4610 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 4611 4612 // Checksum of the bot alias. 4613 Checksum *string `locationName:"checksum" type:"string"` 4614 4615 // Settings that determine how Amazon Lex uses conversation logs for the alias. 4616 ConversationLogs *ConversationLogsResponse `locationName:"conversationLogs" type:"structure"` 4617 4618 // The date that the bot alias was created. 4619 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 4620 4621 // A description of the bot alias. 4622 Description *string `locationName:"description" type:"string"` 4623 4624 // The date that the bot alias was updated. When you create a resource, the 4625 // creation date and last updated date are the same. 4626 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 4627 4628 // The name of the bot alias. 4629 Name *string `locationName:"name" min:"1" type:"string"` 4630} 4631 4632// String returns the string representation 4633func (s BotAliasMetadata) String() string { 4634 return awsutil.Prettify(s) 4635} 4636 4637// GoString returns the string representation 4638func (s BotAliasMetadata) GoString() string { 4639 return s.String() 4640} 4641 4642// SetBotName sets the BotName field's value. 4643func (s *BotAliasMetadata) SetBotName(v string) *BotAliasMetadata { 4644 s.BotName = &v 4645 return s 4646} 4647 4648// SetBotVersion sets the BotVersion field's value. 4649func (s *BotAliasMetadata) SetBotVersion(v string) *BotAliasMetadata { 4650 s.BotVersion = &v 4651 return s 4652} 4653 4654// SetChecksum sets the Checksum field's value. 4655func (s *BotAliasMetadata) SetChecksum(v string) *BotAliasMetadata { 4656 s.Checksum = &v 4657 return s 4658} 4659 4660// SetConversationLogs sets the ConversationLogs field's value. 4661func (s *BotAliasMetadata) SetConversationLogs(v *ConversationLogsResponse) *BotAliasMetadata { 4662 s.ConversationLogs = v 4663 return s 4664} 4665 4666// SetCreatedDate sets the CreatedDate field's value. 4667func (s *BotAliasMetadata) SetCreatedDate(v time.Time) *BotAliasMetadata { 4668 s.CreatedDate = &v 4669 return s 4670} 4671 4672// SetDescription sets the Description field's value. 4673func (s *BotAliasMetadata) SetDescription(v string) *BotAliasMetadata { 4674 s.Description = &v 4675 return s 4676} 4677 4678// SetLastUpdatedDate sets the LastUpdatedDate field's value. 4679func (s *BotAliasMetadata) SetLastUpdatedDate(v time.Time) *BotAliasMetadata { 4680 s.LastUpdatedDate = &v 4681 return s 4682} 4683 4684// SetName sets the Name field's value. 4685func (s *BotAliasMetadata) SetName(v string) *BotAliasMetadata { 4686 s.Name = &v 4687 return s 4688} 4689 4690// Represents an association between an Amazon Lex bot and an external messaging 4691// platform. 4692type BotChannelAssociation struct { 4693 _ struct{} `type:"structure"` 4694 4695 // An alias pointing to the specific version of the Amazon Lex bot to which 4696 // this association is being made. 4697 BotAlias *string `locationName:"botAlias" min:"1" type:"string"` 4698 4699 // Provides information necessary to communicate with the messaging platform. 4700 BotConfiguration map[string]*string `locationName:"botConfiguration" min:"1" type:"map" sensitive:"true"` 4701 4702 // The name of the Amazon Lex bot to which this association is being made. 4703 // 4704 // Currently, Amazon Lex supports associations with Facebook and Slack, and 4705 // Twilio. 4706 BotName *string `locationName:"botName" min:"2" type:"string"` 4707 4708 // The date that the association between the Amazon Lex bot and the channel 4709 // was created. 4710 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 4711 4712 // A text description of the association you are creating. 4713 Description *string `locationName:"description" type:"string"` 4714 4715 // If status is FAILED, Amazon Lex provides the reason that it failed to create 4716 // the association. 4717 FailureReason *string `locationName:"failureReason" type:"string"` 4718 4719 // The name of the association between the bot and the channel. 4720 Name *string `locationName:"name" min:"1" type:"string"` 4721 4722 // The status of the bot channel. 4723 // 4724 // * CREATED - The channel has been created and is ready for use. 4725 // 4726 // * IN_PROGRESS - Channel creation is in progress. 4727 // 4728 // * FAILED - There was an error creating the channel. For information about 4729 // the reason for the failure, see the failureReason field. 4730 Status *string `locationName:"status" type:"string" enum:"ChannelStatus"` 4731 4732 // Specifies the type of association by indicating the type of channel being 4733 // established between the Amazon Lex bot and the external messaging platform. 4734 Type *string `locationName:"type" type:"string" enum:"ChannelType"` 4735} 4736 4737// String returns the string representation 4738func (s BotChannelAssociation) String() string { 4739 return awsutil.Prettify(s) 4740} 4741 4742// GoString returns the string representation 4743func (s BotChannelAssociation) GoString() string { 4744 return s.String() 4745} 4746 4747// SetBotAlias sets the BotAlias field's value. 4748func (s *BotChannelAssociation) SetBotAlias(v string) *BotChannelAssociation { 4749 s.BotAlias = &v 4750 return s 4751} 4752 4753// SetBotConfiguration sets the BotConfiguration field's value. 4754func (s *BotChannelAssociation) SetBotConfiguration(v map[string]*string) *BotChannelAssociation { 4755 s.BotConfiguration = v 4756 return s 4757} 4758 4759// SetBotName sets the BotName field's value. 4760func (s *BotChannelAssociation) SetBotName(v string) *BotChannelAssociation { 4761 s.BotName = &v 4762 return s 4763} 4764 4765// SetCreatedDate sets the CreatedDate field's value. 4766func (s *BotChannelAssociation) SetCreatedDate(v time.Time) *BotChannelAssociation { 4767 s.CreatedDate = &v 4768 return s 4769} 4770 4771// SetDescription sets the Description field's value. 4772func (s *BotChannelAssociation) SetDescription(v string) *BotChannelAssociation { 4773 s.Description = &v 4774 return s 4775} 4776 4777// SetFailureReason sets the FailureReason field's value. 4778func (s *BotChannelAssociation) SetFailureReason(v string) *BotChannelAssociation { 4779 s.FailureReason = &v 4780 return s 4781} 4782 4783// SetName sets the Name field's value. 4784func (s *BotChannelAssociation) SetName(v string) *BotChannelAssociation { 4785 s.Name = &v 4786 return s 4787} 4788 4789// SetStatus sets the Status field's value. 4790func (s *BotChannelAssociation) SetStatus(v string) *BotChannelAssociation { 4791 s.Status = &v 4792 return s 4793} 4794 4795// SetType sets the Type field's value. 4796func (s *BotChannelAssociation) SetType(v string) *BotChannelAssociation { 4797 s.Type = &v 4798 return s 4799} 4800 4801// Provides information about a bot. . 4802type BotMetadata struct { 4803 _ struct{} `type:"structure"` 4804 4805 // The date that the bot was created. 4806 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 4807 4808 // A description of the bot. 4809 Description *string `locationName:"description" type:"string"` 4810 4811 // The date that the bot was updated. When you create a bot, the creation date 4812 // and last updated date are the same. 4813 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 4814 4815 // The name of the bot. 4816 Name *string `locationName:"name" min:"2" type:"string"` 4817 4818 // The status of the bot. 4819 Status *string `locationName:"status" type:"string" enum:"Status"` 4820 4821 // The version of the bot. For a new bot, the version is always $LATEST. 4822 Version *string `locationName:"version" min:"1" type:"string"` 4823} 4824 4825// String returns the string representation 4826func (s BotMetadata) String() string { 4827 return awsutil.Prettify(s) 4828} 4829 4830// GoString returns the string representation 4831func (s BotMetadata) GoString() string { 4832 return s.String() 4833} 4834 4835// SetCreatedDate sets the CreatedDate field's value. 4836func (s *BotMetadata) SetCreatedDate(v time.Time) *BotMetadata { 4837 s.CreatedDate = &v 4838 return s 4839} 4840 4841// SetDescription sets the Description field's value. 4842func (s *BotMetadata) SetDescription(v string) *BotMetadata { 4843 s.Description = &v 4844 return s 4845} 4846 4847// SetLastUpdatedDate sets the LastUpdatedDate field's value. 4848func (s *BotMetadata) SetLastUpdatedDate(v time.Time) *BotMetadata { 4849 s.LastUpdatedDate = &v 4850 return s 4851} 4852 4853// SetName sets the Name field's value. 4854func (s *BotMetadata) SetName(v string) *BotMetadata { 4855 s.Name = &v 4856 return s 4857} 4858 4859// SetStatus sets the Status field's value. 4860func (s *BotMetadata) SetStatus(v string) *BotMetadata { 4861 s.Status = &v 4862 return s 4863} 4864 4865// SetVersion sets the Version field's value. 4866func (s *BotMetadata) SetVersion(v string) *BotMetadata { 4867 s.Version = &v 4868 return s 4869} 4870 4871// Provides metadata for a built-in intent. 4872type BuiltinIntentMetadata struct { 4873 _ struct{} `type:"structure"` 4874 4875 // A unique identifier for the built-in intent. To find the signature for an 4876 // intent, see Standard Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 4877 // in the Alexa Skills Kit. 4878 Signature *string `locationName:"signature" type:"string"` 4879 4880 // A list of identifiers for the locales that the intent supports. 4881 SupportedLocales []*string `locationName:"supportedLocales" type:"list"` 4882} 4883 4884// String returns the string representation 4885func (s BuiltinIntentMetadata) String() string { 4886 return awsutil.Prettify(s) 4887} 4888 4889// GoString returns the string representation 4890func (s BuiltinIntentMetadata) GoString() string { 4891 return s.String() 4892} 4893 4894// SetSignature sets the Signature field's value. 4895func (s *BuiltinIntentMetadata) SetSignature(v string) *BuiltinIntentMetadata { 4896 s.Signature = &v 4897 return s 4898} 4899 4900// SetSupportedLocales sets the SupportedLocales field's value. 4901func (s *BuiltinIntentMetadata) SetSupportedLocales(v []*string) *BuiltinIntentMetadata { 4902 s.SupportedLocales = v 4903 return s 4904} 4905 4906// Provides information about a slot used in a built-in intent. 4907type BuiltinIntentSlot struct { 4908 _ struct{} `type:"structure"` 4909 4910 // A list of the slots defined for the intent. 4911 Name *string `locationName:"name" type:"string"` 4912} 4913 4914// String returns the string representation 4915func (s BuiltinIntentSlot) String() string { 4916 return awsutil.Prettify(s) 4917} 4918 4919// GoString returns the string representation 4920func (s BuiltinIntentSlot) GoString() string { 4921 return s.String() 4922} 4923 4924// SetName sets the Name field's value. 4925func (s *BuiltinIntentSlot) SetName(v string) *BuiltinIntentSlot { 4926 s.Name = &v 4927 return s 4928} 4929 4930// Provides information about a built in slot type. 4931type BuiltinSlotTypeMetadata struct { 4932 _ struct{} `type:"structure"` 4933 4934 // A unique identifier for the built-in slot type. To find the signature for 4935 // a slot type, see Slot Type Reference (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/slot-type-reference) 4936 // in the Alexa Skills Kit. 4937 Signature *string `locationName:"signature" type:"string"` 4938 4939 // A list of target locales for the slot. 4940 SupportedLocales []*string `locationName:"supportedLocales" type:"list"` 4941} 4942 4943// String returns the string representation 4944func (s BuiltinSlotTypeMetadata) String() string { 4945 return awsutil.Prettify(s) 4946} 4947 4948// GoString returns the string representation 4949func (s BuiltinSlotTypeMetadata) GoString() string { 4950 return s.String() 4951} 4952 4953// SetSignature sets the Signature field's value. 4954func (s *BuiltinSlotTypeMetadata) SetSignature(v string) *BuiltinSlotTypeMetadata { 4955 s.Signature = &v 4956 return s 4957} 4958 4959// SetSupportedLocales sets the SupportedLocales field's value. 4960func (s *BuiltinSlotTypeMetadata) SetSupportedLocales(v []*string) *BuiltinSlotTypeMetadata { 4961 s.SupportedLocales = v 4962 return s 4963} 4964 4965// Specifies a Lambda function that verifies requests to a bot or fulfills the 4966// user's request to a bot.. 4967type CodeHook struct { 4968 _ struct{} `type:"structure"` 4969 4970 // The version of the request-response that you want Amazon Lex to use to invoke 4971 // your Lambda function. For more information, see using-lambda. 4972 // 4973 // MessageVersion is a required field 4974 MessageVersion *string `locationName:"messageVersion" min:"1" type:"string" required:"true"` 4975 4976 // The Amazon Resource Name (ARN) of the Lambda function. 4977 // 4978 // Uri is a required field 4979 Uri *string `locationName:"uri" min:"20" type:"string" required:"true"` 4980} 4981 4982// String returns the string representation 4983func (s CodeHook) String() string { 4984 return awsutil.Prettify(s) 4985} 4986 4987// GoString returns the string representation 4988func (s CodeHook) GoString() string { 4989 return s.String() 4990} 4991 4992// Validate inspects the fields of the type to determine if they are valid. 4993func (s *CodeHook) Validate() error { 4994 invalidParams := request.ErrInvalidParams{Context: "CodeHook"} 4995 if s.MessageVersion == nil { 4996 invalidParams.Add(request.NewErrParamRequired("MessageVersion")) 4997 } 4998 if s.MessageVersion != nil && len(*s.MessageVersion) < 1 { 4999 invalidParams.Add(request.NewErrParamMinLen("MessageVersion", 1)) 5000 } 5001 if s.Uri == nil { 5002 invalidParams.Add(request.NewErrParamRequired("Uri")) 5003 } 5004 if s.Uri != nil && len(*s.Uri) < 20 { 5005 invalidParams.Add(request.NewErrParamMinLen("Uri", 20)) 5006 } 5007 5008 if invalidParams.Len() > 0 { 5009 return invalidParams 5010 } 5011 return nil 5012} 5013 5014// SetMessageVersion sets the MessageVersion field's value. 5015func (s *CodeHook) SetMessageVersion(v string) *CodeHook { 5016 s.MessageVersion = &v 5017 return s 5018} 5019 5020// SetUri sets the Uri field's value. 5021func (s *CodeHook) SetUri(v string) *CodeHook { 5022 s.Uri = &v 5023 return s 5024} 5025 5026// There was a conflict processing the request. Try your request again. 5027type ConflictException struct { 5028 _ struct{} `type:"structure"` 5029 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 5030 5031 Message_ *string `locationName:"message" type:"string"` 5032} 5033 5034// String returns the string representation 5035func (s ConflictException) String() string { 5036 return awsutil.Prettify(s) 5037} 5038 5039// GoString returns the string representation 5040func (s ConflictException) GoString() string { 5041 return s.String() 5042} 5043 5044func newErrorConflictException(v protocol.ResponseMetadata) error { 5045 return &ConflictException{ 5046 RespMetadata: v, 5047 } 5048} 5049 5050// Code returns the exception type name. 5051func (s *ConflictException) Code() string { 5052 return "ConflictException" 5053} 5054 5055// Message returns the exception's message. 5056func (s *ConflictException) Message() string { 5057 if s.Message_ != nil { 5058 return *s.Message_ 5059 } 5060 return "" 5061} 5062 5063// OrigErr always returns nil, satisfies awserr.Error interface. 5064func (s *ConflictException) OrigErr() error { 5065 return nil 5066} 5067 5068func (s *ConflictException) Error() string { 5069 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 5070} 5071 5072// Status code returns the HTTP status code for the request's response error. 5073func (s *ConflictException) StatusCode() int { 5074 return s.RespMetadata.StatusCode 5075} 5076 5077// RequestID returns the service's response RequestID for request. 5078func (s *ConflictException) RequestID() string { 5079 return s.RespMetadata.RequestID 5080} 5081 5082// Provides the settings needed for conversation logs. 5083type ConversationLogsRequest struct { 5084 _ struct{} `type:"structure"` 5085 5086 // The Amazon Resource Name (ARN) of an IAM role with permission to write to 5087 // your CloudWatch Logs for text logs and your S3 bucket for audio logs. If 5088 // audio encryption is enabled, this role also provides access permission for 5089 // the AWS KMS key used for encrypting audio logs. For more information, see 5090 // Creating an IAM Role and Policy for Conversation Logs (https://docs.aws.amazon.com/lex/latest/dg/conversation-logs-role-and-policy.html). 5091 // 5092 // IamRoleArn is a required field 5093 IamRoleArn *string `locationName:"iamRoleArn" min:"20" type:"string" required:"true"` 5094 5095 // The settings for your conversation logs. You can log the conversation text, 5096 // conversation audio, or both. 5097 // 5098 // LogSettings is a required field 5099 LogSettings []*LogSettingsRequest `locationName:"logSettings" type:"list" required:"true"` 5100} 5101 5102// String returns the string representation 5103func (s ConversationLogsRequest) String() string { 5104 return awsutil.Prettify(s) 5105} 5106 5107// GoString returns the string representation 5108func (s ConversationLogsRequest) GoString() string { 5109 return s.String() 5110} 5111 5112// Validate inspects the fields of the type to determine if they are valid. 5113func (s *ConversationLogsRequest) Validate() error { 5114 invalidParams := request.ErrInvalidParams{Context: "ConversationLogsRequest"} 5115 if s.IamRoleArn == nil { 5116 invalidParams.Add(request.NewErrParamRequired("IamRoleArn")) 5117 } 5118 if s.IamRoleArn != nil && len(*s.IamRoleArn) < 20 { 5119 invalidParams.Add(request.NewErrParamMinLen("IamRoleArn", 20)) 5120 } 5121 if s.LogSettings == nil { 5122 invalidParams.Add(request.NewErrParamRequired("LogSettings")) 5123 } 5124 if s.LogSettings != nil { 5125 for i, v := range s.LogSettings { 5126 if v == nil { 5127 continue 5128 } 5129 if err := v.Validate(); err != nil { 5130 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LogSettings", i), err.(request.ErrInvalidParams)) 5131 } 5132 } 5133 } 5134 5135 if invalidParams.Len() > 0 { 5136 return invalidParams 5137 } 5138 return nil 5139} 5140 5141// SetIamRoleArn sets the IamRoleArn field's value. 5142func (s *ConversationLogsRequest) SetIamRoleArn(v string) *ConversationLogsRequest { 5143 s.IamRoleArn = &v 5144 return s 5145} 5146 5147// SetLogSettings sets the LogSettings field's value. 5148func (s *ConversationLogsRequest) SetLogSettings(v []*LogSettingsRequest) *ConversationLogsRequest { 5149 s.LogSettings = v 5150 return s 5151} 5152 5153// Contains information about conversation log settings. 5154type ConversationLogsResponse struct { 5155 _ struct{} `type:"structure"` 5156 5157 // The Amazon Resource Name (ARN) of the IAM role used to write your logs to 5158 // CloudWatch Logs or an S3 bucket. 5159 IamRoleArn *string `locationName:"iamRoleArn" min:"20" type:"string"` 5160 5161 // The settings for your conversation logs. You can log text, audio, or both. 5162 LogSettings []*LogSettingsResponse `locationName:"logSettings" type:"list"` 5163} 5164 5165// String returns the string representation 5166func (s ConversationLogsResponse) String() string { 5167 return awsutil.Prettify(s) 5168} 5169 5170// GoString returns the string representation 5171func (s ConversationLogsResponse) GoString() string { 5172 return s.String() 5173} 5174 5175// SetIamRoleArn sets the IamRoleArn field's value. 5176func (s *ConversationLogsResponse) SetIamRoleArn(v string) *ConversationLogsResponse { 5177 s.IamRoleArn = &v 5178 return s 5179} 5180 5181// SetLogSettings sets the LogSettings field's value. 5182func (s *ConversationLogsResponse) SetLogSettings(v []*LogSettingsResponse) *ConversationLogsResponse { 5183 s.LogSettings = v 5184 return s 5185} 5186 5187type CreateBotVersionInput struct { 5188 _ struct{} `type:"structure"` 5189 5190 // Identifies a specific revision of the $LATEST version of the bot. If you 5191 // specify a checksum and the $LATEST version of the bot has a different checksum, 5192 // a PreconditionFailedException exception is returned and Amazon Lex doesn't 5193 // publish a new version. If you don't specify a checksum, Amazon Lex publishes 5194 // the $LATEST version. 5195 Checksum *string `locationName:"checksum" type:"string"` 5196 5197 // The name of the bot that you want to create a new version of. The name is 5198 // case sensitive. 5199 // 5200 // Name is a required field 5201 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 5202} 5203 5204// String returns the string representation 5205func (s CreateBotVersionInput) String() string { 5206 return awsutil.Prettify(s) 5207} 5208 5209// GoString returns the string representation 5210func (s CreateBotVersionInput) GoString() string { 5211 return s.String() 5212} 5213 5214// Validate inspects the fields of the type to determine if they are valid. 5215func (s *CreateBotVersionInput) Validate() error { 5216 invalidParams := request.ErrInvalidParams{Context: "CreateBotVersionInput"} 5217 if s.Name == nil { 5218 invalidParams.Add(request.NewErrParamRequired("Name")) 5219 } 5220 if s.Name != nil && len(*s.Name) < 2 { 5221 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 5222 } 5223 5224 if invalidParams.Len() > 0 { 5225 return invalidParams 5226 } 5227 return nil 5228} 5229 5230// SetChecksum sets the Checksum field's value. 5231func (s *CreateBotVersionInput) SetChecksum(v string) *CreateBotVersionInput { 5232 s.Checksum = &v 5233 return s 5234} 5235 5236// SetName sets the Name field's value. 5237func (s *CreateBotVersionInput) SetName(v string) *CreateBotVersionInput { 5238 s.Name = &v 5239 return s 5240} 5241 5242type CreateBotVersionOutput struct { 5243 _ struct{} `type:"structure"` 5244 5245 // The message that Amazon Lex uses to cancel a conversation. For more information, 5246 // see PutBot. 5247 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 5248 5249 // Checksum identifying the version of the bot that was created. 5250 Checksum *string `locationName:"checksum" type:"string"` 5251 5252 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 5253 // you must specify whether your use of Amazon Lex is related to a website, 5254 // program, or other application that is directed or targeted, in whole or in 5255 // part, to children under age 13 and subject to the Children's Online Privacy 5256 // Protection Act (COPPA) by specifying true or false in the childDirected field. 5257 // By specifying true in the childDirected field, you confirm that your use 5258 // of Amazon Lex is related to a website, program, or other application that 5259 // is directed or targeted, in whole or in part, to children under age 13 and 5260 // subject to COPPA. By specifying false in the childDirected field, you confirm 5261 // that your use of Amazon Lex is not related to a website, program, or other 5262 // application that is directed or targeted, in whole or in part, to children 5263 // under age 13 and subject to COPPA. You may not specify a default value for 5264 // the childDirected field that does not accurately reflect whether your use 5265 // of Amazon Lex is related to a website, program, or other application that 5266 // is directed or targeted, in whole or in part, to children under age 13 and 5267 // subject to COPPA. 5268 // 5269 // If your use of Amazon Lex relates to a website, program, or other application 5270 // that is directed in whole or in part, to children under age 13, you must 5271 // obtain any required verifiable parental consent under COPPA. For information 5272 // regarding the use of Amazon Lex in connection with websites, programs, or 5273 // other applications that are directed or targeted, in whole or in part, to 5274 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 5275 ChildDirected *bool `locationName:"childDirected" type:"boolean"` 5276 5277 // The message that Amazon Lex uses when it doesn't understand the user's request. 5278 // For more information, see PutBot. 5279 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 5280 5281 // The date when the bot version was created. 5282 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 5283 5284 // A description of the bot. 5285 Description *string `locationName:"description" type:"string"` 5286 5287 // Indicates whether utterances entered by the user should be sent to Amazon 5288 // Comprehend for sentiment analysis. 5289 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 5290 5291 // Indicates whether the bot uses accuracy improvements. true indicates that 5292 // the bot is using the improvements, otherwise, false. 5293 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 5294 5295 // If status is FAILED, Amazon Lex provides the reason that it failed to build 5296 // the bot. 5297 FailureReason *string `locationName:"failureReason" type:"string"` 5298 5299 // The maximum time in seconds that Amazon Lex retains the data gathered in 5300 // a conversation. For more information, see PutBot. 5301 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 5302 5303 // An array of Intent objects. For more information, see PutBot. 5304 Intents []*Intent `locationName:"intents" type:"list"` 5305 5306 // The date when the $LATEST version of this bot was updated. 5307 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 5308 5309 // Specifies the target locale for the bot. 5310 Locale *string `locationName:"locale" type:"string" enum:"Locale"` 5311 5312 // The name of the bot. 5313 Name *string `locationName:"name" min:"2" type:"string"` 5314 5315 // When you send a request to create or update a bot, Amazon Lex sets the status 5316 // response element to BUILDING. After Amazon Lex builds the bot, it sets status 5317 // to READY. If Amazon Lex can't build the bot, it sets status to FAILED. Amazon 5318 // Lex returns the reason for the failure in the failureReason response element. 5319 Status *string `locationName:"status" type:"string" enum:"Status"` 5320 5321 // The version of the bot. 5322 Version *string `locationName:"version" min:"1" type:"string"` 5323 5324 // The Amazon Polly voice ID that Amazon Lex uses for voice interactions with 5325 // the user. 5326 VoiceId *string `locationName:"voiceId" type:"string"` 5327} 5328 5329// String returns the string representation 5330func (s CreateBotVersionOutput) String() string { 5331 return awsutil.Prettify(s) 5332} 5333 5334// GoString returns the string representation 5335func (s CreateBotVersionOutput) GoString() string { 5336 return s.String() 5337} 5338 5339// SetAbortStatement sets the AbortStatement field's value. 5340func (s *CreateBotVersionOutput) SetAbortStatement(v *Statement) *CreateBotVersionOutput { 5341 s.AbortStatement = v 5342 return s 5343} 5344 5345// SetChecksum sets the Checksum field's value. 5346func (s *CreateBotVersionOutput) SetChecksum(v string) *CreateBotVersionOutput { 5347 s.Checksum = &v 5348 return s 5349} 5350 5351// SetChildDirected sets the ChildDirected field's value. 5352func (s *CreateBotVersionOutput) SetChildDirected(v bool) *CreateBotVersionOutput { 5353 s.ChildDirected = &v 5354 return s 5355} 5356 5357// SetClarificationPrompt sets the ClarificationPrompt field's value. 5358func (s *CreateBotVersionOutput) SetClarificationPrompt(v *Prompt) *CreateBotVersionOutput { 5359 s.ClarificationPrompt = v 5360 return s 5361} 5362 5363// SetCreatedDate sets the CreatedDate field's value. 5364func (s *CreateBotVersionOutput) SetCreatedDate(v time.Time) *CreateBotVersionOutput { 5365 s.CreatedDate = &v 5366 return s 5367} 5368 5369// SetDescription sets the Description field's value. 5370func (s *CreateBotVersionOutput) SetDescription(v string) *CreateBotVersionOutput { 5371 s.Description = &v 5372 return s 5373} 5374 5375// SetDetectSentiment sets the DetectSentiment field's value. 5376func (s *CreateBotVersionOutput) SetDetectSentiment(v bool) *CreateBotVersionOutput { 5377 s.DetectSentiment = &v 5378 return s 5379} 5380 5381// SetEnableModelImprovements sets the EnableModelImprovements field's value. 5382func (s *CreateBotVersionOutput) SetEnableModelImprovements(v bool) *CreateBotVersionOutput { 5383 s.EnableModelImprovements = &v 5384 return s 5385} 5386 5387// SetFailureReason sets the FailureReason field's value. 5388func (s *CreateBotVersionOutput) SetFailureReason(v string) *CreateBotVersionOutput { 5389 s.FailureReason = &v 5390 return s 5391} 5392 5393// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 5394func (s *CreateBotVersionOutput) SetIdleSessionTTLInSeconds(v int64) *CreateBotVersionOutput { 5395 s.IdleSessionTTLInSeconds = &v 5396 return s 5397} 5398 5399// SetIntents sets the Intents field's value. 5400func (s *CreateBotVersionOutput) SetIntents(v []*Intent) *CreateBotVersionOutput { 5401 s.Intents = v 5402 return s 5403} 5404 5405// SetLastUpdatedDate sets the LastUpdatedDate field's value. 5406func (s *CreateBotVersionOutput) SetLastUpdatedDate(v time.Time) *CreateBotVersionOutput { 5407 s.LastUpdatedDate = &v 5408 return s 5409} 5410 5411// SetLocale sets the Locale field's value. 5412func (s *CreateBotVersionOutput) SetLocale(v string) *CreateBotVersionOutput { 5413 s.Locale = &v 5414 return s 5415} 5416 5417// SetName sets the Name field's value. 5418func (s *CreateBotVersionOutput) SetName(v string) *CreateBotVersionOutput { 5419 s.Name = &v 5420 return s 5421} 5422 5423// SetStatus sets the Status field's value. 5424func (s *CreateBotVersionOutput) SetStatus(v string) *CreateBotVersionOutput { 5425 s.Status = &v 5426 return s 5427} 5428 5429// SetVersion sets the Version field's value. 5430func (s *CreateBotVersionOutput) SetVersion(v string) *CreateBotVersionOutput { 5431 s.Version = &v 5432 return s 5433} 5434 5435// SetVoiceId sets the VoiceId field's value. 5436func (s *CreateBotVersionOutput) SetVoiceId(v string) *CreateBotVersionOutput { 5437 s.VoiceId = &v 5438 return s 5439} 5440 5441type CreateIntentVersionInput struct { 5442 _ struct{} `type:"structure"` 5443 5444 // Checksum of the $LATEST version of the intent that should be used to create 5445 // the new version. If you specify a checksum and the $LATEST version of the 5446 // intent has a different checksum, Amazon Lex returns a PreconditionFailedException 5447 // exception and doesn't publish a new version. If you don't specify a checksum, 5448 // Amazon Lex publishes the $LATEST version. 5449 Checksum *string `locationName:"checksum" type:"string"` 5450 5451 // The name of the intent that you want to create a new version of. The name 5452 // is case sensitive. 5453 // 5454 // Name is a required field 5455 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 5456} 5457 5458// String returns the string representation 5459func (s CreateIntentVersionInput) String() string { 5460 return awsutil.Prettify(s) 5461} 5462 5463// GoString returns the string representation 5464func (s CreateIntentVersionInput) GoString() string { 5465 return s.String() 5466} 5467 5468// Validate inspects the fields of the type to determine if they are valid. 5469func (s *CreateIntentVersionInput) Validate() error { 5470 invalidParams := request.ErrInvalidParams{Context: "CreateIntentVersionInput"} 5471 if s.Name == nil { 5472 invalidParams.Add(request.NewErrParamRequired("Name")) 5473 } 5474 if s.Name != nil && len(*s.Name) < 1 { 5475 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5476 } 5477 5478 if invalidParams.Len() > 0 { 5479 return invalidParams 5480 } 5481 return nil 5482} 5483 5484// SetChecksum sets the Checksum field's value. 5485func (s *CreateIntentVersionInput) SetChecksum(v string) *CreateIntentVersionInput { 5486 s.Checksum = &v 5487 return s 5488} 5489 5490// SetName sets the Name field's value. 5491func (s *CreateIntentVersionInput) SetName(v string) *CreateIntentVersionInput { 5492 s.Name = &v 5493 return s 5494} 5495 5496type CreateIntentVersionOutput struct { 5497 _ struct{} `type:"structure"` 5498 5499 // Checksum of the intent version created. 5500 Checksum *string `locationName:"checksum" type:"string"` 5501 5502 // After the Lambda function specified in the fulfillmentActivity field fulfills 5503 // the intent, Amazon Lex conveys this statement to the user. 5504 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 5505 5506 // If defined, the prompt that Amazon Lex uses to confirm the user's intent 5507 // before fulfilling it. 5508 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 5509 5510 // The date that the intent was created. 5511 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 5512 5513 // A description of the intent. 5514 Description *string `locationName:"description" type:"string"` 5515 5516 // If defined, Amazon Lex invokes this Lambda function for each user input. 5517 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 5518 5519 // If defined, Amazon Lex uses this prompt to solicit additional user activity 5520 // after the intent is fulfilled. 5521 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 5522 5523 // Describes how the intent is fulfilled. 5524 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 5525 5526 // An array of InputContext objects that lists the contexts that must be active 5527 // for Amazon Lex to choose the intent in a conversation with the user. 5528 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 5529 5530 // Configuration information, if any, for connecting an Amazon Kendra index 5531 // with the AMAZON.KendraSearchIntent intent. 5532 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 5533 5534 // The date that the intent was updated. 5535 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 5536 5537 // The name of the intent. 5538 Name *string `locationName:"name" min:"1" type:"string"` 5539 5540 // An array of OutputContext objects that lists the contexts that the intent 5541 // activates when the intent is fulfilled. 5542 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 5543 5544 // A unique identifier for a built-in intent. 5545 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 5546 5547 // If the user answers "no" to the question defined in confirmationPrompt, Amazon 5548 // Lex responds with this statement to acknowledge that the intent was canceled. 5549 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 5550 5551 // An array of sample utterances configured for the intent. 5552 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 5553 5554 // An array of slot types that defines the information required to fulfill the 5555 // intent. 5556 Slots []*Slot `locationName:"slots" type:"list"` 5557 5558 // The version number assigned to the new version of the intent. 5559 Version *string `locationName:"version" min:"1" type:"string"` 5560} 5561 5562// String returns the string representation 5563func (s CreateIntentVersionOutput) String() string { 5564 return awsutil.Prettify(s) 5565} 5566 5567// GoString returns the string representation 5568func (s CreateIntentVersionOutput) GoString() string { 5569 return s.String() 5570} 5571 5572// SetChecksum sets the Checksum field's value. 5573func (s *CreateIntentVersionOutput) SetChecksum(v string) *CreateIntentVersionOutput { 5574 s.Checksum = &v 5575 return s 5576} 5577 5578// SetConclusionStatement sets the ConclusionStatement field's value. 5579func (s *CreateIntentVersionOutput) SetConclusionStatement(v *Statement) *CreateIntentVersionOutput { 5580 s.ConclusionStatement = v 5581 return s 5582} 5583 5584// SetConfirmationPrompt sets the ConfirmationPrompt field's value. 5585func (s *CreateIntentVersionOutput) SetConfirmationPrompt(v *Prompt) *CreateIntentVersionOutput { 5586 s.ConfirmationPrompt = v 5587 return s 5588} 5589 5590// SetCreatedDate sets the CreatedDate field's value. 5591func (s *CreateIntentVersionOutput) SetCreatedDate(v time.Time) *CreateIntentVersionOutput { 5592 s.CreatedDate = &v 5593 return s 5594} 5595 5596// SetDescription sets the Description field's value. 5597func (s *CreateIntentVersionOutput) SetDescription(v string) *CreateIntentVersionOutput { 5598 s.Description = &v 5599 return s 5600} 5601 5602// SetDialogCodeHook sets the DialogCodeHook field's value. 5603func (s *CreateIntentVersionOutput) SetDialogCodeHook(v *CodeHook) *CreateIntentVersionOutput { 5604 s.DialogCodeHook = v 5605 return s 5606} 5607 5608// SetFollowUpPrompt sets the FollowUpPrompt field's value. 5609func (s *CreateIntentVersionOutput) SetFollowUpPrompt(v *FollowUpPrompt) *CreateIntentVersionOutput { 5610 s.FollowUpPrompt = v 5611 return s 5612} 5613 5614// SetFulfillmentActivity sets the FulfillmentActivity field's value. 5615func (s *CreateIntentVersionOutput) SetFulfillmentActivity(v *FulfillmentActivity) *CreateIntentVersionOutput { 5616 s.FulfillmentActivity = v 5617 return s 5618} 5619 5620// SetInputContexts sets the InputContexts field's value. 5621func (s *CreateIntentVersionOutput) SetInputContexts(v []*InputContext) *CreateIntentVersionOutput { 5622 s.InputContexts = v 5623 return s 5624} 5625 5626// SetKendraConfiguration sets the KendraConfiguration field's value. 5627func (s *CreateIntentVersionOutput) SetKendraConfiguration(v *KendraConfiguration) *CreateIntentVersionOutput { 5628 s.KendraConfiguration = v 5629 return s 5630} 5631 5632// SetLastUpdatedDate sets the LastUpdatedDate field's value. 5633func (s *CreateIntentVersionOutput) SetLastUpdatedDate(v time.Time) *CreateIntentVersionOutput { 5634 s.LastUpdatedDate = &v 5635 return s 5636} 5637 5638// SetName sets the Name field's value. 5639func (s *CreateIntentVersionOutput) SetName(v string) *CreateIntentVersionOutput { 5640 s.Name = &v 5641 return s 5642} 5643 5644// SetOutputContexts sets the OutputContexts field's value. 5645func (s *CreateIntentVersionOutput) SetOutputContexts(v []*OutputContext) *CreateIntentVersionOutput { 5646 s.OutputContexts = v 5647 return s 5648} 5649 5650// SetParentIntentSignature sets the ParentIntentSignature field's value. 5651func (s *CreateIntentVersionOutput) SetParentIntentSignature(v string) *CreateIntentVersionOutput { 5652 s.ParentIntentSignature = &v 5653 return s 5654} 5655 5656// SetRejectionStatement sets the RejectionStatement field's value. 5657func (s *CreateIntentVersionOutput) SetRejectionStatement(v *Statement) *CreateIntentVersionOutput { 5658 s.RejectionStatement = v 5659 return s 5660} 5661 5662// SetSampleUtterances sets the SampleUtterances field's value. 5663func (s *CreateIntentVersionOutput) SetSampleUtterances(v []*string) *CreateIntentVersionOutput { 5664 s.SampleUtterances = v 5665 return s 5666} 5667 5668// SetSlots sets the Slots field's value. 5669func (s *CreateIntentVersionOutput) SetSlots(v []*Slot) *CreateIntentVersionOutput { 5670 s.Slots = v 5671 return s 5672} 5673 5674// SetVersion sets the Version field's value. 5675func (s *CreateIntentVersionOutput) SetVersion(v string) *CreateIntentVersionOutput { 5676 s.Version = &v 5677 return s 5678} 5679 5680type CreateSlotTypeVersionInput struct { 5681 _ struct{} `type:"structure"` 5682 5683 // Checksum for the $LATEST version of the slot type that you want to publish. 5684 // If you specify a checksum and the $LATEST version of the slot type has a 5685 // different checksum, Amazon Lex returns a PreconditionFailedException exception 5686 // and doesn't publish the new version. If you don't specify a checksum, Amazon 5687 // Lex publishes the $LATEST version. 5688 Checksum *string `locationName:"checksum" type:"string"` 5689 5690 // The name of the slot type that you want to create a new version for. The 5691 // name is case sensitive. 5692 // 5693 // Name is a required field 5694 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 5695} 5696 5697// String returns the string representation 5698func (s CreateSlotTypeVersionInput) String() string { 5699 return awsutil.Prettify(s) 5700} 5701 5702// GoString returns the string representation 5703func (s CreateSlotTypeVersionInput) GoString() string { 5704 return s.String() 5705} 5706 5707// Validate inspects the fields of the type to determine if they are valid. 5708func (s *CreateSlotTypeVersionInput) Validate() error { 5709 invalidParams := request.ErrInvalidParams{Context: "CreateSlotTypeVersionInput"} 5710 if s.Name == nil { 5711 invalidParams.Add(request.NewErrParamRequired("Name")) 5712 } 5713 if s.Name != nil && len(*s.Name) < 1 { 5714 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5715 } 5716 5717 if invalidParams.Len() > 0 { 5718 return invalidParams 5719 } 5720 return nil 5721} 5722 5723// SetChecksum sets the Checksum field's value. 5724func (s *CreateSlotTypeVersionInput) SetChecksum(v string) *CreateSlotTypeVersionInput { 5725 s.Checksum = &v 5726 return s 5727} 5728 5729// SetName sets the Name field's value. 5730func (s *CreateSlotTypeVersionInput) SetName(v string) *CreateSlotTypeVersionInput { 5731 s.Name = &v 5732 return s 5733} 5734 5735type CreateSlotTypeVersionOutput struct { 5736 _ struct{} `type:"structure"` 5737 5738 // Checksum of the $LATEST version of the slot type. 5739 Checksum *string `locationName:"checksum" type:"string"` 5740 5741 // The date that the slot type was created. 5742 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 5743 5744 // A description of the slot type. 5745 Description *string `locationName:"description" type:"string"` 5746 5747 // A list of EnumerationValue objects that defines the values that the slot 5748 // type can take. 5749 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 5750 5751 // The date that the slot type was updated. When you create a resource, the 5752 // creation date and last update date are the same. 5753 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 5754 5755 // The name of the slot type. 5756 Name *string `locationName:"name" min:"1" type:"string"` 5757 5758 // The built-in slot type used a the parent of the slot type. 5759 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 5760 5761 // Configuration information that extends the parent built-in slot type. 5762 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 5763 5764 // The strategy that Amazon Lex uses to determine the value of the slot. For 5765 // more information, see PutSlotType. 5766 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 5767 5768 // The version assigned to the new slot type version. 5769 Version *string `locationName:"version" min:"1" type:"string"` 5770} 5771 5772// String returns the string representation 5773func (s CreateSlotTypeVersionOutput) String() string { 5774 return awsutil.Prettify(s) 5775} 5776 5777// GoString returns the string representation 5778func (s CreateSlotTypeVersionOutput) GoString() string { 5779 return s.String() 5780} 5781 5782// SetChecksum sets the Checksum field's value. 5783func (s *CreateSlotTypeVersionOutput) SetChecksum(v string) *CreateSlotTypeVersionOutput { 5784 s.Checksum = &v 5785 return s 5786} 5787 5788// SetCreatedDate sets the CreatedDate field's value. 5789func (s *CreateSlotTypeVersionOutput) SetCreatedDate(v time.Time) *CreateSlotTypeVersionOutput { 5790 s.CreatedDate = &v 5791 return s 5792} 5793 5794// SetDescription sets the Description field's value. 5795func (s *CreateSlotTypeVersionOutput) SetDescription(v string) *CreateSlotTypeVersionOutput { 5796 s.Description = &v 5797 return s 5798} 5799 5800// SetEnumerationValues sets the EnumerationValues field's value. 5801func (s *CreateSlotTypeVersionOutput) SetEnumerationValues(v []*EnumerationValue) *CreateSlotTypeVersionOutput { 5802 s.EnumerationValues = v 5803 return s 5804} 5805 5806// SetLastUpdatedDate sets the LastUpdatedDate field's value. 5807func (s *CreateSlotTypeVersionOutput) SetLastUpdatedDate(v time.Time) *CreateSlotTypeVersionOutput { 5808 s.LastUpdatedDate = &v 5809 return s 5810} 5811 5812// SetName sets the Name field's value. 5813func (s *CreateSlotTypeVersionOutput) SetName(v string) *CreateSlotTypeVersionOutput { 5814 s.Name = &v 5815 return s 5816} 5817 5818// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 5819func (s *CreateSlotTypeVersionOutput) SetParentSlotTypeSignature(v string) *CreateSlotTypeVersionOutput { 5820 s.ParentSlotTypeSignature = &v 5821 return s 5822} 5823 5824// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 5825func (s *CreateSlotTypeVersionOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *CreateSlotTypeVersionOutput { 5826 s.SlotTypeConfigurations = v 5827 return s 5828} 5829 5830// SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 5831func (s *CreateSlotTypeVersionOutput) SetValueSelectionStrategy(v string) *CreateSlotTypeVersionOutput { 5832 s.ValueSelectionStrategy = &v 5833 return s 5834} 5835 5836// SetVersion sets the Version field's value. 5837func (s *CreateSlotTypeVersionOutput) SetVersion(v string) *CreateSlotTypeVersionOutput { 5838 s.Version = &v 5839 return s 5840} 5841 5842type DeleteBotAliasInput struct { 5843 _ struct{} `type:"structure"` 5844 5845 // The name of the bot that the alias points to. 5846 // 5847 // BotName is a required field 5848 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 5849 5850 // The name of the alias to delete. The name is case sensitive. 5851 // 5852 // Name is a required field 5853 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 5854} 5855 5856// String returns the string representation 5857func (s DeleteBotAliasInput) String() string { 5858 return awsutil.Prettify(s) 5859} 5860 5861// GoString returns the string representation 5862func (s DeleteBotAliasInput) GoString() string { 5863 return s.String() 5864} 5865 5866// Validate inspects the fields of the type to determine if they are valid. 5867func (s *DeleteBotAliasInput) Validate() error { 5868 invalidParams := request.ErrInvalidParams{Context: "DeleteBotAliasInput"} 5869 if s.BotName == nil { 5870 invalidParams.Add(request.NewErrParamRequired("BotName")) 5871 } 5872 if s.BotName != nil && len(*s.BotName) < 2 { 5873 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 5874 } 5875 if s.Name == nil { 5876 invalidParams.Add(request.NewErrParamRequired("Name")) 5877 } 5878 if s.Name != nil && len(*s.Name) < 1 { 5879 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5880 } 5881 5882 if invalidParams.Len() > 0 { 5883 return invalidParams 5884 } 5885 return nil 5886} 5887 5888// SetBotName sets the BotName field's value. 5889func (s *DeleteBotAliasInput) SetBotName(v string) *DeleteBotAliasInput { 5890 s.BotName = &v 5891 return s 5892} 5893 5894// SetName sets the Name field's value. 5895func (s *DeleteBotAliasInput) SetName(v string) *DeleteBotAliasInput { 5896 s.Name = &v 5897 return s 5898} 5899 5900type DeleteBotAliasOutput struct { 5901 _ struct{} `type:"structure"` 5902} 5903 5904// String returns the string representation 5905func (s DeleteBotAliasOutput) String() string { 5906 return awsutil.Prettify(s) 5907} 5908 5909// GoString returns the string representation 5910func (s DeleteBotAliasOutput) GoString() string { 5911 return s.String() 5912} 5913 5914type DeleteBotChannelAssociationInput struct { 5915 _ struct{} `type:"structure"` 5916 5917 // An alias that points to the specific version of the Amazon Lex bot to which 5918 // this association is being made. 5919 // 5920 // BotAlias is a required field 5921 BotAlias *string `location:"uri" locationName:"aliasName" min:"1" type:"string" required:"true"` 5922 5923 // The name of the Amazon Lex bot. 5924 // 5925 // BotName is a required field 5926 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 5927 5928 // The name of the association. The name is case sensitive. 5929 // 5930 // Name is a required field 5931 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 5932} 5933 5934// String returns the string representation 5935func (s DeleteBotChannelAssociationInput) String() string { 5936 return awsutil.Prettify(s) 5937} 5938 5939// GoString returns the string representation 5940func (s DeleteBotChannelAssociationInput) GoString() string { 5941 return s.String() 5942} 5943 5944// Validate inspects the fields of the type to determine if they are valid. 5945func (s *DeleteBotChannelAssociationInput) Validate() error { 5946 invalidParams := request.ErrInvalidParams{Context: "DeleteBotChannelAssociationInput"} 5947 if s.BotAlias == nil { 5948 invalidParams.Add(request.NewErrParamRequired("BotAlias")) 5949 } 5950 if s.BotAlias != nil && len(*s.BotAlias) < 1 { 5951 invalidParams.Add(request.NewErrParamMinLen("BotAlias", 1)) 5952 } 5953 if s.BotName == nil { 5954 invalidParams.Add(request.NewErrParamRequired("BotName")) 5955 } 5956 if s.BotName != nil && len(*s.BotName) < 2 { 5957 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 5958 } 5959 if s.Name == nil { 5960 invalidParams.Add(request.NewErrParamRequired("Name")) 5961 } 5962 if s.Name != nil && len(*s.Name) < 1 { 5963 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5964 } 5965 5966 if invalidParams.Len() > 0 { 5967 return invalidParams 5968 } 5969 return nil 5970} 5971 5972// SetBotAlias sets the BotAlias field's value. 5973func (s *DeleteBotChannelAssociationInput) SetBotAlias(v string) *DeleteBotChannelAssociationInput { 5974 s.BotAlias = &v 5975 return s 5976} 5977 5978// SetBotName sets the BotName field's value. 5979func (s *DeleteBotChannelAssociationInput) SetBotName(v string) *DeleteBotChannelAssociationInput { 5980 s.BotName = &v 5981 return s 5982} 5983 5984// SetName sets the Name field's value. 5985func (s *DeleteBotChannelAssociationInput) SetName(v string) *DeleteBotChannelAssociationInput { 5986 s.Name = &v 5987 return s 5988} 5989 5990type DeleteBotChannelAssociationOutput struct { 5991 _ struct{} `type:"structure"` 5992} 5993 5994// String returns the string representation 5995func (s DeleteBotChannelAssociationOutput) String() string { 5996 return awsutil.Prettify(s) 5997} 5998 5999// GoString returns the string representation 6000func (s DeleteBotChannelAssociationOutput) GoString() string { 6001 return s.String() 6002} 6003 6004type DeleteBotInput struct { 6005 _ struct{} `type:"structure"` 6006 6007 // The name of the bot. The name is case sensitive. 6008 // 6009 // Name is a required field 6010 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 6011} 6012 6013// String returns the string representation 6014func (s DeleteBotInput) String() string { 6015 return awsutil.Prettify(s) 6016} 6017 6018// GoString returns the string representation 6019func (s DeleteBotInput) GoString() string { 6020 return s.String() 6021} 6022 6023// Validate inspects the fields of the type to determine if they are valid. 6024func (s *DeleteBotInput) Validate() error { 6025 invalidParams := request.ErrInvalidParams{Context: "DeleteBotInput"} 6026 if s.Name == nil { 6027 invalidParams.Add(request.NewErrParamRequired("Name")) 6028 } 6029 if s.Name != nil && len(*s.Name) < 2 { 6030 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 6031 } 6032 6033 if invalidParams.Len() > 0 { 6034 return invalidParams 6035 } 6036 return nil 6037} 6038 6039// SetName sets the Name field's value. 6040func (s *DeleteBotInput) SetName(v string) *DeleteBotInput { 6041 s.Name = &v 6042 return s 6043} 6044 6045type DeleteBotOutput struct { 6046 _ struct{} `type:"structure"` 6047} 6048 6049// String returns the string representation 6050func (s DeleteBotOutput) String() string { 6051 return awsutil.Prettify(s) 6052} 6053 6054// GoString returns the string representation 6055func (s DeleteBotOutput) GoString() string { 6056 return s.String() 6057} 6058 6059type DeleteBotVersionInput struct { 6060 _ struct{} `type:"structure"` 6061 6062 // The name of the bot. 6063 // 6064 // Name is a required field 6065 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 6066 6067 // The version of the bot to delete. You cannot delete the $LATEST version of 6068 // the bot. To delete the $LATEST version, use the DeleteBot operation. 6069 // 6070 // Version is a required field 6071 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 6072} 6073 6074// String returns the string representation 6075func (s DeleteBotVersionInput) String() string { 6076 return awsutil.Prettify(s) 6077} 6078 6079// GoString returns the string representation 6080func (s DeleteBotVersionInput) GoString() string { 6081 return s.String() 6082} 6083 6084// Validate inspects the fields of the type to determine if they are valid. 6085func (s *DeleteBotVersionInput) Validate() error { 6086 invalidParams := request.ErrInvalidParams{Context: "DeleteBotVersionInput"} 6087 if s.Name == nil { 6088 invalidParams.Add(request.NewErrParamRequired("Name")) 6089 } 6090 if s.Name != nil && len(*s.Name) < 2 { 6091 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 6092 } 6093 if s.Version == nil { 6094 invalidParams.Add(request.NewErrParamRequired("Version")) 6095 } 6096 if s.Version != nil && len(*s.Version) < 1 { 6097 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 6098 } 6099 6100 if invalidParams.Len() > 0 { 6101 return invalidParams 6102 } 6103 return nil 6104} 6105 6106// SetName sets the Name field's value. 6107func (s *DeleteBotVersionInput) SetName(v string) *DeleteBotVersionInput { 6108 s.Name = &v 6109 return s 6110} 6111 6112// SetVersion sets the Version field's value. 6113func (s *DeleteBotVersionInput) SetVersion(v string) *DeleteBotVersionInput { 6114 s.Version = &v 6115 return s 6116} 6117 6118type DeleteBotVersionOutput struct { 6119 _ struct{} `type:"structure"` 6120} 6121 6122// String returns the string representation 6123func (s DeleteBotVersionOutput) String() string { 6124 return awsutil.Prettify(s) 6125} 6126 6127// GoString returns the string representation 6128func (s DeleteBotVersionOutput) GoString() string { 6129 return s.String() 6130} 6131 6132type DeleteIntentInput struct { 6133 _ struct{} `type:"structure"` 6134 6135 // The name of the intent. The name is case sensitive. 6136 // 6137 // Name is a required field 6138 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6139} 6140 6141// String returns the string representation 6142func (s DeleteIntentInput) String() string { 6143 return awsutil.Prettify(s) 6144} 6145 6146// GoString returns the string representation 6147func (s DeleteIntentInput) GoString() string { 6148 return s.String() 6149} 6150 6151// Validate inspects the fields of the type to determine if they are valid. 6152func (s *DeleteIntentInput) Validate() error { 6153 invalidParams := request.ErrInvalidParams{Context: "DeleteIntentInput"} 6154 if s.Name == nil { 6155 invalidParams.Add(request.NewErrParamRequired("Name")) 6156 } 6157 if s.Name != nil && len(*s.Name) < 1 { 6158 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6159 } 6160 6161 if invalidParams.Len() > 0 { 6162 return invalidParams 6163 } 6164 return nil 6165} 6166 6167// SetName sets the Name field's value. 6168func (s *DeleteIntentInput) SetName(v string) *DeleteIntentInput { 6169 s.Name = &v 6170 return s 6171} 6172 6173type DeleteIntentOutput struct { 6174 _ struct{} `type:"structure"` 6175} 6176 6177// String returns the string representation 6178func (s DeleteIntentOutput) String() string { 6179 return awsutil.Prettify(s) 6180} 6181 6182// GoString returns the string representation 6183func (s DeleteIntentOutput) GoString() string { 6184 return s.String() 6185} 6186 6187type DeleteIntentVersionInput struct { 6188 _ struct{} `type:"structure"` 6189 6190 // The name of the intent. 6191 // 6192 // Name is a required field 6193 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6194 6195 // The version of the intent to delete. You cannot delete the $LATEST version 6196 // of the intent. To delete the $LATEST version, use the DeleteIntent operation. 6197 // 6198 // Version is a required field 6199 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 6200} 6201 6202// String returns the string representation 6203func (s DeleteIntentVersionInput) String() string { 6204 return awsutil.Prettify(s) 6205} 6206 6207// GoString returns the string representation 6208func (s DeleteIntentVersionInput) GoString() string { 6209 return s.String() 6210} 6211 6212// Validate inspects the fields of the type to determine if they are valid. 6213func (s *DeleteIntentVersionInput) Validate() error { 6214 invalidParams := request.ErrInvalidParams{Context: "DeleteIntentVersionInput"} 6215 if s.Name == nil { 6216 invalidParams.Add(request.NewErrParamRequired("Name")) 6217 } 6218 if s.Name != nil && len(*s.Name) < 1 { 6219 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6220 } 6221 if s.Version == nil { 6222 invalidParams.Add(request.NewErrParamRequired("Version")) 6223 } 6224 if s.Version != nil && len(*s.Version) < 1 { 6225 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 6226 } 6227 6228 if invalidParams.Len() > 0 { 6229 return invalidParams 6230 } 6231 return nil 6232} 6233 6234// SetName sets the Name field's value. 6235func (s *DeleteIntentVersionInput) SetName(v string) *DeleteIntentVersionInput { 6236 s.Name = &v 6237 return s 6238} 6239 6240// SetVersion sets the Version field's value. 6241func (s *DeleteIntentVersionInput) SetVersion(v string) *DeleteIntentVersionInput { 6242 s.Version = &v 6243 return s 6244} 6245 6246type DeleteIntentVersionOutput struct { 6247 _ struct{} `type:"structure"` 6248} 6249 6250// String returns the string representation 6251func (s DeleteIntentVersionOutput) String() string { 6252 return awsutil.Prettify(s) 6253} 6254 6255// GoString returns the string representation 6256func (s DeleteIntentVersionOutput) GoString() string { 6257 return s.String() 6258} 6259 6260type DeleteSlotTypeInput struct { 6261 _ struct{} `type:"structure"` 6262 6263 // The name of the slot type. The name is case sensitive. 6264 // 6265 // Name is a required field 6266 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6267} 6268 6269// String returns the string representation 6270func (s DeleteSlotTypeInput) String() string { 6271 return awsutil.Prettify(s) 6272} 6273 6274// GoString returns the string representation 6275func (s DeleteSlotTypeInput) GoString() string { 6276 return s.String() 6277} 6278 6279// Validate inspects the fields of the type to determine if they are valid. 6280func (s *DeleteSlotTypeInput) Validate() error { 6281 invalidParams := request.ErrInvalidParams{Context: "DeleteSlotTypeInput"} 6282 if s.Name == nil { 6283 invalidParams.Add(request.NewErrParamRequired("Name")) 6284 } 6285 if s.Name != nil && len(*s.Name) < 1 { 6286 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6287 } 6288 6289 if invalidParams.Len() > 0 { 6290 return invalidParams 6291 } 6292 return nil 6293} 6294 6295// SetName sets the Name field's value. 6296func (s *DeleteSlotTypeInput) SetName(v string) *DeleteSlotTypeInput { 6297 s.Name = &v 6298 return s 6299} 6300 6301type DeleteSlotTypeOutput struct { 6302 _ struct{} `type:"structure"` 6303} 6304 6305// String returns the string representation 6306func (s DeleteSlotTypeOutput) String() string { 6307 return awsutil.Prettify(s) 6308} 6309 6310// GoString returns the string representation 6311func (s DeleteSlotTypeOutput) GoString() string { 6312 return s.String() 6313} 6314 6315type DeleteSlotTypeVersionInput struct { 6316 _ struct{} `type:"structure"` 6317 6318 // The name of the slot type. 6319 // 6320 // Name is a required field 6321 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6322 6323 // The version of the slot type to delete. You cannot delete the $LATEST version 6324 // of the slot type. To delete the $LATEST version, use the DeleteSlotType operation. 6325 // 6326 // Version is a required field 6327 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 6328} 6329 6330// String returns the string representation 6331func (s DeleteSlotTypeVersionInput) String() string { 6332 return awsutil.Prettify(s) 6333} 6334 6335// GoString returns the string representation 6336func (s DeleteSlotTypeVersionInput) GoString() string { 6337 return s.String() 6338} 6339 6340// Validate inspects the fields of the type to determine if they are valid. 6341func (s *DeleteSlotTypeVersionInput) Validate() error { 6342 invalidParams := request.ErrInvalidParams{Context: "DeleteSlotTypeVersionInput"} 6343 if s.Name == nil { 6344 invalidParams.Add(request.NewErrParamRequired("Name")) 6345 } 6346 if s.Name != nil && len(*s.Name) < 1 { 6347 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6348 } 6349 if s.Version == nil { 6350 invalidParams.Add(request.NewErrParamRequired("Version")) 6351 } 6352 if s.Version != nil && len(*s.Version) < 1 { 6353 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 6354 } 6355 6356 if invalidParams.Len() > 0 { 6357 return invalidParams 6358 } 6359 return nil 6360} 6361 6362// SetName sets the Name field's value. 6363func (s *DeleteSlotTypeVersionInput) SetName(v string) *DeleteSlotTypeVersionInput { 6364 s.Name = &v 6365 return s 6366} 6367 6368// SetVersion sets the Version field's value. 6369func (s *DeleteSlotTypeVersionInput) SetVersion(v string) *DeleteSlotTypeVersionInput { 6370 s.Version = &v 6371 return s 6372} 6373 6374type DeleteSlotTypeVersionOutput struct { 6375 _ struct{} `type:"structure"` 6376} 6377 6378// String returns the string representation 6379func (s DeleteSlotTypeVersionOutput) String() string { 6380 return awsutil.Prettify(s) 6381} 6382 6383// GoString returns the string representation 6384func (s DeleteSlotTypeVersionOutput) GoString() string { 6385 return s.String() 6386} 6387 6388type DeleteUtterancesInput struct { 6389 _ struct{} `type:"structure"` 6390 6391 // The name of the bot that stored the utterances. 6392 // 6393 // BotName is a required field 6394 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 6395 6396 // The unique identifier for the user that made the utterances. This is the 6397 // user ID that was sent in the PostContent (http://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 6398 // or PostText (http://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 6399 // operation request that contained the utterance. 6400 // 6401 // UserId is a required field 6402 UserId *string `location:"uri" locationName:"userId" min:"2" type:"string" required:"true"` 6403} 6404 6405// String returns the string representation 6406func (s DeleteUtterancesInput) String() string { 6407 return awsutil.Prettify(s) 6408} 6409 6410// GoString returns the string representation 6411func (s DeleteUtterancesInput) GoString() string { 6412 return s.String() 6413} 6414 6415// Validate inspects the fields of the type to determine if they are valid. 6416func (s *DeleteUtterancesInput) Validate() error { 6417 invalidParams := request.ErrInvalidParams{Context: "DeleteUtterancesInput"} 6418 if s.BotName == nil { 6419 invalidParams.Add(request.NewErrParamRequired("BotName")) 6420 } 6421 if s.BotName != nil && len(*s.BotName) < 2 { 6422 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 6423 } 6424 if s.UserId == nil { 6425 invalidParams.Add(request.NewErrParamRequired("UserId")) 6426 } 6427 if s.UserId != nil && len(*s.UserId) < 2 { 6428 invalidParams.Add(request.NewErrParamMinLen("UserId", 2)) 6429 } 6430 6431 if invalidParams.Len() > 0 { 6432 return invalidParams 6433 } 6434 return nil 6435} 6436 6437// SetBotName sets the BotName field's value. 6438func (s *DeleteUtterancesInput) SetBotName(v string) *DeleteUtterancesInput { 6439 s.BotName = &v 6440 return s 6441} 6442 6443// SetUserId sets the UserId field's value. 6444func (s *DeleteUtterancesInput) SetUserId(v string) *DeleteUtterancesInput { 6445 s.UserId = &v 6446 return s 6447} 6448 6449type DeleteUtterancesOutput struct { 6450 _ struct{} `type:"structure"` 6451} 6452 6453// String returns the string representation 6454func (s DeleteUtterancesOutput) String() string { 6455 return awsutil.Prettify(s) 6456} 6457 6458// GoString returns the string representation 6459func (s DeleteUtterancesOutput) GoString() string { 6460 return s.String() 6461} 6462 6463// Each slot type can have a set of values. Each enumeration value represents 6464// a value the slot type can take. 6465// 6466// For example, a pizza ordering bot could have a slot type that specifies the 6467// type of crust that the pizza should have. The slot type could include the 6468// values 6469// 6470// * thick 6471// 6472// * thin 6473// 6474// * stuffed 6475type EnumerationValue struct { 6476 _ struct{} `type:"structure"` 6477 6478 // Additional values related to the slot type value. 6479 Synonyms []*string `locationName:"synonyms" type:"list"` 6480 6481 // The value of the slot type. 6482 // 6483 // Value is a required field 6484 Value *string `locationName:"value" min:"1" type:"string" required:"true"` 6485} 6486 6487// String returns the string representation 6488func (s EnumerationValue) String() string { 6489 return awsutil.Prettify(s) 6490} 6491 6492// GoString returns the string representation 6493func (s EnumerationValue) GoString() string { 6494 return s.String() 6495} 6496 6497// Validate inspects the fields of the type to determine if they are valid. 6498func (s *EnumerationValue) Validate() error { 6499 invalidParams := request.ErrInvalidParams{Context: "EnumerationValue"} 6500 if s.Value == nil { 6501 invalidParams.Add(request.NewErrParamRequired("Value")) 6502 } 6503 if s.Value != nil && len(*s.Value) < 1 { 6504 invalidParams.Add(request.NewErrParamMinLen("Value", 1)) 6505 } 6506 6507 if invalidParams.Len() > 0 { 6508 return invalidParams 6509 } 6510 return nil 6511} 6512 6513// SetSynonyms sets the Synonyms field's value. 6514func (s *EnumerationValue) SetSynonyms(v []*string) *EnumerationValue { 6515 s.Synonyms = v 6516 return s 6517} 6518 6519// SetValue sets the Value field's value. 6520func (s *EnumerationValue) SetValue(v string) *EnumerationValue { 6521 s.Value = &v 6522 return s 6523} 6524 6525// A prompt for additional activity after an intent is fulfilled. For example, 6526// after the OrderPizza intent is fulfilled, you might prompt the user to find 6527// out whether the user wants to order drinks. 6528type FollowUpPrompt struct { 6529 _ struct{} `type:"structure"` 6530 6531 // Prompts for information from the user. 6532 // 6533 // Prompt is a required field 6534 Prompt *Prompt `locationName:"prompt" type:"structure" required:"true"` 6535 6536 // If the user answers "no" to the question defined in the prompt field, Amazon 6537 // Lex responds with this statement to acknowledge that the intent was canceled. 6538 // 6539 // RejectionStatement is a required field 6540 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure" required:"true"` 6541} 6542 6543// String returns the string representation 6544func (s FollowUpPrompt) String() string { 6545 return awsutil.Prettify(s) 6546} 6547 6548// GoString returns the string representation 6549func (s FollowUpPrompt) GoString() string { 6550 return s.String() 6551} 6552 6553// Validate inspects the fields of the type to determine if they are valid. 6554func (s *FollowUpPrompt) Validate() error { 6555 invalidParams := request.ErrInvalidParams{Context: "FollowUpPrompt"} 6556 if s.Prompt == nil { 6557 invalidParams.Add(request.NewErrParamRequired("Prompt")) 6558 } 6559 if s.RejectionStatement == nil { 6560 invalidParams.Add(request.NewErrParamRequired("RejectionStatement")) 6561 } 6562 if s.Prompt != nil { 6563 if err := s.Prompt.Validate(); err != nil { 6564 invalidParams.AddNested("Prompt", err.(request.ErrInvalidParams)) 6565 } 6566 } 6567 if s.RejectionStatement != nil { 6568 if err := s.RejectionStatement.Validate(); err != nil { 6569 invalidParams.AddNested("RejectionStatement", err.(request.ErrInvalidParams)) 6570 } 6571 } 6572 6573 if invalidParams.Len() > 0 { 6574 return invalidParams 6575 } 6576 return nil 6577} 6578 6579// SetPrompt sets the Prompt field's value. 6580func (s *FollowUpPrompt) SetPrompt(v *Prompt) *FollowUpPrompt { 6581 s.Prompt = v 6582 return s 6583} 6584 6585// SetRejectionStatement sets the RejectionStatement field's value. 6586func (s *FollowUpPrompt) SetRejectionStatement(v *Statement) *FollowUpPrompt { 6587 s.RejectionStatement = v 6588 return s 6589} 6590 6591// Describes how the intent is fulfilled after the user provides all of the 6592// information required for the intent. You can provide a Lambda function to 6593// process the intent, or you can return the intent information to the client 6594// application. We recommend that you use a Lambda function so that the relevant 6595// logic lives in the Cloud and limit the client-side code primarily to presentation. 6596// If you need to update the logic, you only update the Lambda function; you 6597// don't need to upgrade your client application. 6598// 6599// Consider the following examples: 6600// 6601// * In a pizza ordering application, after the user provides all of the 6602// information for placing an order, you use a Lambda function to place an 6603// order with a pizzeria. 6604// 6605// * In a gaming application, when a user says "pick up a rock," this information 6606// must go back to the client application so that it can perform the operation 6607// and update the graphics. In this case, you want Amazon Lex to return the 6608// intent data to the client. 6609type FulfillmentActivity struct { 6610 _ struct{} `type:"structure"` 6611 6612 // A description of the Lambda function that is run to fulfill the intent. 6613 CodeHook *CodeHook `locationName:"codeHook" type:"structure"` 6614 6615 // How the intent should be fulfilled, either by running a Lambda function or 6616 // by returning the slot data to the client application. 6617 // 6618 // Type is a required field 6619 Type *string `locationName:"type" type:"string" required:"true" enum:"FulfillmentActivityType"` 6620} 6621 6622// String returns the string representation 6623func (s FulfillmentActivity) String() string { 6624 return awsutil.Prettify(s) 6625} 6626 6627// GoString returns the string representation 6628func (s FulfillmentActivity) GoString() string { 6629 return s.String() 6630} 6631 6632// Validate inspects the fields of the type to determine if they are valid. 6633func (s *FulfillmentActivity) Validate() error { 6634 invalidParams := request.ErrInvalidParams{Context: "FulfillmentActivity"} 6635 if s.Type == nil { 6636 invalidParams.Add(request.NewErrParamRequired("Type")) 6637 } 6638 if s.CodeHook != nil { 6639 if err := s.CodeHook.Validate(); err != nil { 6640 invalidParams.AddNested("CodeHook", err.(request.ErrInvalidParams)) 6641 } 6642 } 6643 6644 if invalidParams.Len() > 0 { 6645 return invalidParams 6646 } 6647 return nil 6648} 6649 6650// SetCodeHook sets the CodeHook field's value. 6651func (s *FulfillmentActivity) SetCodeHook(v *CodeHook) *FulfillmentActivity { 6652 s.CodeHook = v 6653 return s 6654} 6655 6656// SetType sets the Type field's value. 6657func (s *FulfillmentActivity) SetType(v string) *FulfillmentActivity { 6658 s.Type = &v 6659 return s 6660} 6661 6662type GetBotAliasInput struct { 6663 _ struct{} `type:"structure"` 6664 6665 // The name of the bot. 6666 // 6667 // BotName is a required field 6668 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 6669 6670 // The name of the bot alias. The name is case sensitive. 6671 // 6672 // Name is a required field 6673 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6674} 6675 6676// String returns the string representation 6677func (s GetBotAliasInput) String() string { 6678 return awsutil.Prettify(s) 6679} 6680 6681// GoString returns the string representation 6682func (s GetBotAliasInput) GoString() string { 6683 return s.String() 6684} 6685 6686// Validate inspects the fields of the type to determine if they are valid. 6687func (s *GetBotAliasInput) Validate() error { 6688 invalidParams := request.ErrInvalidParams{Context: "GetBotAliasInput"} 6689 if s.BotName == nil { 6690 invalidParams.Add(request.NewErrParamRequired("BotName")) 6691 } 6692 if s.BotName != nil && len(*s.BotName) < 2 { 6693 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 6694 } 6695 if s.Name == nil { 6696 invalidParams.Add(request.NewErrParamRequired("Name")) 6697 } 6698 if s.Name != nil && len(*s.Name) < 1 { 6699 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6700 } 6701 6702 if invalidParams.Len() > 0 { 6703 return invalidParams 6704 } 6705 return nil 6706} 6707 6708// SetBotName sets the BotName field's value. 6709func (s *GetBotAliasInput) SetBotName(v string) *GetBotAliasInput { 6710 s.BotName = &v 6711 return s 6712} 6713 6714// SetName sets the Name field's value. 6715func (s *GetBotAliasInput) SetName(v string) *GetBotAliasInput { 6716 s.Name = &v 6717 return s 6718} 6719 6720type GetBotAliasOutput struct { 6721 _ struct{} `type:"structure"` 6722 6723 // The name of the bot that the alias points to. 6724 BotName *string `locationName:"botName" min:"2" type:"string"` 6725 6726 // The version of the bot that the alias points to. 6727 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 6728 6729 // Checksum of the bot alias. 6730 Checksum *string `locationName:"checksum" type:"string"` 6731 6732 // The settings that determine how Amazon Lex uses conversation logs for the 6733 // alias. 6734 ConversationLogs *ConversationLogsResponse `locationName:"conversationLogs" type:"structure"` 6735 6736 // The date that the bot alias was created. 6737 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 6738 6739 // A description of the bot alias. 6740 Description *string `locationName:"description" type:"string"` 6741 6742 // The date that the bot alias was updated. When you create a resource, the 6743 // creation date and the last updated date are the same. 6744 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 6745 6746 // The name of the bot alias. 6747 Name *string `locationName:"name" min:"1" type:"string"` 6748} 6749 6750// String returns the string representation 6751func (s GetBotAliasOutput) String() string { 6752 return awsutil.Prettify(s) 6753} 6754 6755// GoString returns the string representation 6756func (s GetBotAliasOutput) GoString() string { 6757 return s.String() 6758} 6759 6760// SetBotName sets the BotName field's value. 6761func (s *GetBotAliasOutput) SetBotName(v string) *GetBotAliasOutput { 6762 s.BotName = &v 6763 return s 6764} 6765 6766// SetBotVersion sets the BotVersion field's value. 6767func (s *GetBotAliasOutput) SetBotVersion(v string) *GetBotAliasOutput { 6768 s.BotVersion = &v 6769 return s 6770} 6771 6772// SetChecksum sets the Checksum field's value. 6773func (s *GetBotAliasOutput) SetChecksum(v string) *GetBotAliasOutput { 6774 s.Checksum = &v 6775 return s 6776} 6777 6778// SetConversationLogs sets the ConversationLogs field's value. 6779func (s *GetBotAliasOutput) SetConversationLogs(v *ConversationLogsResponse) *GetBotAliasOutput { 6780 s.ConversationLogs = v 6781 return s 6782} 6783 6784// SetCreatedDate sets the CreatedDate field's value. 6785func (s *GetBotAliasOutput) SetCreatedDate(v time.Time) *GetBotAliasOutput { 6786 s.CreatedDate = &v 6787 return s 6788} 6789 6790// SetDescription sets the Description field's value. 6791func (s *GetBotAliasOutput) SetDescription(v string) *GetBotAliasOutput { 6792 s.Description = &v 6793 return s 6794} 6795 6796// SetLastUpdatedDate sets the LastUpdatedDate field's value. 6797func (s *GetBotAliasOutput) SetLastUpdatedDate(v time.Time) *GetBotAliasOutput { 6798 s.LastUpdatedDate = &v 6799 return s 6800} 6801 6802// SetName sets the Name field's value. 6803func (s *GetBotAliasOutput) SetName(v string) *GetBotAliasOutput { 6804 s.Name = &v 6805 return s 6806} 6807 6808type GetBotAliasesInput struct { 6809 _ struct{} `type:"structure"` 6810 6811 // The name of the bot. 6812 // 6813 // BotName is a required field 6814 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 6815 6816 // The maximum number of aliases to return in the response. The default is 50. . 6817 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 6818 6819 // Substring to match in bot alias names. An alias will be returned if any part 6820 // of its name matches the substring. For example, "xyz" matches both "xyzabc" 6821 // and "abcxyz." 6822 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 6823 6824 // A pagination token for fetching the next page of aliases. If the response 6825 // to this call is truncated, Amazon Lex returns a pagination token in the response. 6826 // To fetch the next page of aliases, specify the pagination token in the next 6827 // request. 6828 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 6829} 6830 6831// String returns the string representation 6832func (s GetBotAliasesInput) String() string { 6833 return awsutil.Prettify(s) 6834} 6835 6836// GoString returns the string representation 6837func (s GetBotAliasesInput) GoString() string { 6838 return s.String() 6839} 6840 6841// Validate inspects the fields of the type to determine if they are valid. 6842func (s *GetBotAliasesInput) Validate() error { 6843 invalidParams := request.ErrInvalidParams{Context: "GetBotAliasesInput"} 6844 if s.BotName == nil { 6845 invalidParams.Add(request.NewErrParamRequired("BotName")) 6846 } 6847 if s.BotName != nil && len(*s.BotName) < 2 { 6848 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 6849 } 6850 if s.MaxResults != nil && *s.MaxResults < 1 { 6851 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 6852 } 6853 if s.NameContains != nil && len(*s.NameContains) < 1 { 6854 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 6855 } 6856 6857 if invalidParams.Len() > 0 { 6858 return invalidParams 6859 } 6860 return nil 6861} 6862 6863// SetBotName sets the BotName field's value. 6864func (s *GetBotAliasesInput) SetBotName(v string) *GetBotAliasesInput { 6865 s.BotName = &v 6866 return s 6867} 6868 6869// SetMaxResults sets the MaxResults field's value. 6870func (s *GetBotAliasesInput) SetMaxResults(v int64) *GetBotAliasesInput { 6871 s.MaxResults = &v 6872 return s 6873} 6874 6875// SetNameContains sets the NameContains field's value. 6876func (s *GetBotAliasesInput) SetNameContains(v string) *GetBotAliasesInput { 6877 s.NameContains = &v 6878 return s 6879} 6880 6881// SetNextToken sets the NextToken field's value. 6882func (s *GetBotAliasesInput) SetNextToken(v string) *GetBotAliasesInput { 6883 s.NextToken = &v 6884 return s 6885} 6886 6887type GetBotAliasesOutput struct { 6888 _ struct{} `type:"structure"` 6889 6890 // An array of BotAliasMetadata objects, each describing a bot alias. 6891 BotAliases []*BotAliasMetadata `type:"list"` 6892 6893 // A pagination token for fetching next page of aliases. If the response to 6894 // this call is truncated, Amazon Lex returns a pagination token in the response. 6895 // To fetch the next page of aliases, specify the pagination token in the next 6896 // request. 6897 NextToken *string `locationName:"nextToken" type:"string"` 6898} 6899 6900// String returns the string representation 6901func (s GetBotAliasesOutput) String() string { 6902 return awsutil.Prettify(s) 6903} 6904 6905// GoString returns the string representation 6906func (s GetBotAliasesOutput) GoString() string { 6907 return s.String() 6908} 6909 6910// SetBotAliases sets the BotAliases field's value. 6911func (s *GetBotAliasesOutput) SetBotAliases(v []*BotAliasMetadata) *GetBotAliasesOutput { 6912 s.BotAliases = v 6913 return s 6914} 6915 6916// SetNextToken sets the NextToken field's value. 6917func (s *GetBotAliasesOutput) SetNextToken(v string) *GetBotAliasesOutput { 6918 s.NextToken = &v 6919 return s 6920} 6921 6922type GetBotChannelAssociationInput struct { 6923 _ struct{} `type:"structure"` 6924 6925 // An alias pointing to the specific version of the Amazon Lex bot to which 6926 // this association is being made. 6927 // 6928 // BotAlias is a required field 6929 BotAlias *string `location:"uri" locationName:"aliasName" min:"1" type:"string" required:"true"` 6930 6931 // The name of the Amazon Lex bot. 6932 // 6933 // BotName is a required field 6934 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 6935 6936 // The name of the association between the bot and the channel. The name is 6937 // case sensitive. 6938 // 6939 // Name is a required field 6940 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6941} 6942 6943// String returns the string representation 6944func (s GetBotChannelAssociationInput) String() string { 6945 return awsutil.Prettify(s) 6946} 6947 6948// GoString returns the string representation 6949func (s GetBotChannelAssociationInput) GoString() string { 6950 return s.String() 6951} 6952 6953// Validate inspects the fields of the type to determine if they are valid. 6954func (s *GetBotChannelAssociationInput) Validate() error { 6955 invalidParams := request.ErrInvalidParams{Context: "GetBotChannelAssociationInput"} 6956 if s.BotAlias == nil { 6957 invalidParams.Add(request.NewErrParamRequired("BotAlias")) 6958 } 6959 if s.BotAlias != nil && len(*s.BotAlias) < 1 { 6960 invalidParams.Add(request.NewErrParamMinLen("BotAlias", 1)) 6961 } 6962 if s.BotName == nil { 6963 invalidParams.Add(request.NewErrParamRequired("BotName")) 6964 } 6965 if s.BotName != nil && len(*s.BotName) < 2 { 6966 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 6967 } 6968 if s.Name == nil { 6969 invalidParams.Add(request.NewErrParamRequired("Name")) 6970 } 6971 if s.Name != nil && len(*s.Name) < 1 { 6972 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6973 } 6974 6975 if invalidParams.Len() > 0 { 6976 return invalidParams 6977 } 6978 return nil 6979} 6980 6981// SetBotAlias sets the BotAlias field's value. 6982func (s *GetBotChannelAssociationInput) SetBotAlias(v string) *GetBotChannelAssociationInput { 6983 s.BotAlias = &v 6984 return s 6985} 6986 6987// SetBotName sets the BotName field's value. 6988func (s *GetBotChannelAssociationInput) SetBotName(v string) *GetBotChannelAssociationInput { 6989 s.BotName = &v 6990 return s 6991} 6992 6993// SetName sets the Name field's value. 6994func (s *GetBotChannelAssociationInput) SetName(v string) *GetBotChannelAssociationInput { 6995 s.Name = &v 6996 return s 6997} 6998 6999type GetBotChannelAssociationOutput struct { 7000 _ struct{} `type:"structure"` 7001 7002 // An alias pointing to the specific version of the Amazon Lex bot to which 7003 // this association is being made. 7004 BotAlias *string `locationName:"botAlias" min:"1" type:"string"` 7005 7006 // Provides information that the messaging platform needs to communicate with 7007 // the Amazon Lex bot. 7008 BotConfiguration map[string]*string `locationName:"botConfiguration" min:"1" type:"map" sensitive:"true"` 7009 7010 // The name of the Amazon Lex bot. 7011 BotName *string `locationName:"botName" min:"2" type:"string"` 7012 7013 // The date that the association between the bot and the channel was created. 7014 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 7015 7016 // A description of the association between the bot and the channel. 7017 Description *string `locationName:"description" type:"string"` 7018 7019 // If status is FAILED, Amazon Lex provides the reason that it failed to create 7020 // the association. 7021 FailureReason *string `locationName:"failureReason" type:"string"` 7022 7023 // The name of the association between the bot and the channel. 7024 Name *string `locationName:"name" min:"1" type:"string"` 7025 7026 // The status of the bot channel. 7027 // 7028 // * CREATED - The channel has been created and is ready for use. 7029 // 7030 // * IN_PROGRESS - Channel creation is in progress. 7031 // 7032 // * FAILED - There was an error creating the channel. For information about 7033 // the reason for the failure, see the failureReason field. 7034 Status *string `locationName:"status" type:"string" enum:"ChannelStatus"` 7035 7036 // The type of the messaging platform. 7037 Type *string `locationName:"type" type:"string" enum:"ChannelType"` 7038} 7039 7040// String returns the string representation 7041func (s GetBotChannelAssociationOutput) String() string { 7042 return awsutil.Prettify(s) 7043} 7044 7045// GoString returns the string representation 7046func (s GetBotChannelAssociationOutput) GoString() string { 7047 return s.String() 7048} 7049 7050// SetBotAlias sets the BotAlias field's value. 7051func (s *GetBotChannelAssociationOutput) SetBotAlias(v string) *GetBotChannelAssociationOutput { 7052 s.BotAlias = &v 7053 return s 7054} 7055 7056// SetBotConfiguration sets the BotConfiguration field's value. 7057func (s *GetBotChannelAssociationOutput) SetBotConfiguration(v map[string]*string) *GetBotChannelAssociationOutput { 7058 s.BotConfiguration = v 7059 return s 7060} 7061 7062// SetBotName sets the BotName field's value. 7063func (s *GetBotChannelAssociationOutput) SetBotName(v string) *GetBotChannelAssociationOutput { 7064 s.BotName = &v 7065 return s 7066} 7067 7068// SetCreatedDate sets the CreatedDate field's value. 7069func (s *GetBotChannelAssociationOutput) SetCreatedDate(v time.Time) *GetBotChannelAssociationOutput { 7070 s.CreatedDate = &v 7071 return s 7072} 7073 7074// SetDescription sets the Description field's value. 7075func (s *GetBotChannelAssociationOutput) SetDescription(v string) *GetBotChannelAssociationOutput { 7076 s.Description = &v 7077 return s 7078} 7079 7080// SetFailureReason sets the FailureReason field's value. 7081func (s *GetBotChannelAssociationOutput) SetFailureReason(v string) *GetBotChannelAssociationOutput { 7082 s.FailureReason = &v 7083 return s 7084} 7085 7086// SetName sets the Name field's value. 7087func (s *GetBotChannelAssociationOutput) SetName(v string) *GetBotChannelAssociationOutput { 7088 s.Name = &v 7089 return s 7090} 7091 7092// SetStatus sets the Status field's value. 7093func (s *GetBotChannelAssociationOutput) SetStatus(v string) *GetBotChannelAssociationOutput { 7094 s.Status = &v 7095 return s 7096} 7097 7098// SetType sets the Type field's value. 7099func (s *GetBotChannelAssociationOutput) SetType(v string) *GetBotChannelAssociationOutput { 7100 s.Type = &v 7101 return s 7102} 7103 7104type GetBotChannelAssociationsInput struct { 7105 _ struct{} `type:"structure"` 7106 7107 // An alias pointing to the specific version of the Amazon Lex bot to which 7108 // this association is being made. 7109 // 7110 // BotAlias is a required field 7111 BotAlias *string `location:"uri" locationName:"aliasName" min:"1" type:"string" required:"true"` 7112 7113 // The name of the Amazon Lex bot in the association. 7114 // 7115 // BotName is a required field 7116 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 7117 7118 // The maximum number of associations to return in the response. The default 7119 // is 50. 7120 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7121 7122 // Substring to match in channel association names. An association will be returned 7123 // if any part of its name matches the substring. For example, "xyz" matches 7124 // both "xyzabc" and "abcxyz." To return all bot channel associations, use a 7125 // hyphen ("-") as the nameContains parameter. 7126 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 7127 7128 // A pagination token for fetching the next page of associations. If the response 7129 // to this call is truncated, Amazon Lex returns a pagination token in the response. 7130 // To fetch the next page of associations, specify the pagination token in the 7131 // next request. 7132 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7133} 7134 7135// String returns the string representation 7136func (s GetBotChannelAssociationsInput) String() string { 7137 return awsutil.Prettify(s) 7138} 7139 7140// GoString returns the string representation 7141func (s GetBotChannelAssociationsInput) GoString() string { 7142 return s.String() 7143} 7144 7145// Validate inspects the fields of the type to determine if they are valid. 7146func (s *GetBotChannelAssociationsInput) Validate() error { 7147 invalidParams := request.ErrInvalidParams{Context: "GetBotChannelAssociationsInput"} 7148 if s.BotAlias == nil { 7149 invalidParams.Add(request.NewErrParamRequired("BotAlias")) 7150 } 7151 if s.BotAlias != nil && len(*s.BotAlias) < 1 { 7152 invalidParams.Add(request.NewErrParamMinLen("BotAlias", 1)) 7153 } 7154 if s.BotName == nil { 7155 invalidParams.Add(request.NewErrParamRequired("BotName")) 7156 } 7157 if s.BotName != nil && len(*s.BotName) < 2 { 7158 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 7159 } 7160 if s.MaxResults != nil && *s.MaxResults < 1 { 7161 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7162 } 7163 if s.NameContains != nil && len(*s.NameContains) < 1 { 7164 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 7165 } 7166 7167 if invalidParams.Len() > 0 { 7168 return invalidParams 7169 } 7170 return nil 7171} 7172 7173// SetBotAlias sets the BotAlias field's value. 7174func (s *GetBotChannelAssociationsInput) SetBotAlias(v string) *GetBotChannelAssociationsInput { 7175 s.BotAlias = &v 7176 return s 7177} 7178 7179// SetBotName sets the BotName field's value. 7180func (s *GetBotChannelAssociationsInput) SetBotName(v string) *GetBotChannelAssociationsInput { 7181 s.BotName = &v 7182 return s 7183} 7184 7185// SetMaxResults sets the MaxResults field's value. 7186func (s *GetBotChannelAssociationsInput) SetMaxResults(v int64) *GetBotChannelAssociationsInput { 7187 s.MaxResults = &v 7188 return s 7189} 7190 7191// SetNameContains sets the NameContains field's value. 7192func (s *GetBotChannelAssociationsInput) SetNameContains(v string) *GetBotChannelAssociationsInput { 7193 s.NameContains = &v 7194 return s 7195} 7196 7197// SetNextToken sets the NextToken field's value. 7198func (s *GetBotChannelAssociationsInput) SetNextToken(v string) *GetBotChannelAssociationsInput { 7199 s.NextToken = &v 7200 return s 7201} 7202 7203type GetBotChannelAssociationsOutput struct { 7204 _ struct{} `type:"structure"` 7205 7206 // An array of objects, one for each association, that provides information 7207 // about the Amazon Lex bot and its association with the channel. 7208 BotChannelAssociations []*BotChannelAssociation `locationName:"botChannelAssociations" type:"list"` 7209 7210 // A pagination token that fetches the next page of associations. If the response 7211 // to this call is truncated, Amazon Lex returns a pagination token in the response. 7212 // To fetch the next page of associations, specify the pagination token in the 7213 // next request. 7214 NextToken *string `locationName:"nextToken" type:"string"` 7215} 7216 7217// String returns the string representation 7218func (s GetBotChannelAssociationsOutput) String() string { 7219 return awsutil.Prettify(s) 7220} 7221 7222// GoString returns the string representation 7223func (s GetBotChannelAssociationsOutput) GoString() string { 7224 return s.String() 7225} 7226 7227// SetBotChannelAssociations sets the BotChannelAssociations field's value. 7228func (s *GetBotChannelAssociationsOutput) SetBotChannelAssociations(v []*BotChannelAssociation) *GetBotChannelAssociationsOutput { 7229 s.BotChannelAssociations = v 7230 return s 7231} 7232 7233// SetNextToken sets the NextToken field's value. 7234func (s *GetBotChannelAssociationsOutput) SetNextToken(v string) *GetBotChannelAssociationsOutput { 7235 s.NextToken = &v 7236 return s 7237} 7238 7239type GetBotInput struct { 7240 _ struct{} `type:"structure"` 7241 7242 // The name of the bot. The name is case sensitive. 7243 // 7244 // Name is a required field 7245 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 7246 7247 // The version or alias of the bot. 7248 // 7249 // VersionOrAlias is a required field 7250 VersionOrAlias *string `location:"uri" locationName:"versionoralias" type:"string" required:"true"` 7251} 7252 7253// String returns the string representation 7254func (s GetBotInput) String() string { 7255 return awsutil.Prettify(s) 7256} 7257 7258// GoString returns the string representation 7259func (s GetBotInput) GoString() string { 7260 return s.String() 7261} 7262 7263// Validate inspects the fields of the type to determine if they are valid. 7264func (s *GetBotInput) Validate() error { 7265 invalidParams := request.ErrInvalidParams{Context: "GetBotInput"} 7266 if s.Name == nil { 7267 invalidParams.Add(request.NewErrParamRequired("Name")) 7268 } 7269 if s.Name != nil && len(*s.Name) < 2 { 7270 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 7271 } 7272 if s.VersionOrAlias == nil { 7273 invalidParams.Add(request.NewErrParamRequired("VersionOrAlias")) 7274 } 7275 if s.VersionOrAlias != nil && len(*s.VersionOrAlias) < 1 { 7276 invalidParams.Add(request.NewErrParamMinLen("VersionOrAlias", 1)) 7277 } 7278 7279 if invalidParams.Len() > 0 { 7280 return invalidParams 7281 } 7282 return nil 7283} 7284 7285// SetName sets the Name field's value. 7286func (s *GetBotInput) SetName(v string) *GetBotInput { 7287 s.Name = &v 7288 return s 7289} 7290 7291// SetVersionOrAlias sets the VersionOrAlias field's value. 7292func (s *GetBotInput) SetVersionOrAlias(v string) *GetBotInput { 7293 s.VersionOrAlias = &v 7294 return s 7295} 7296 7297type GetBotOutput struct { 7298 _ struct{} `type:"structure"` 7299 7300 // The message that Amazon Lex returns when the user elects to end the conversation 7301 // without completing it. For more information, see PutBot. 7302 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 7303 7304 // Checksum of the bot used to identify a specific revision of the bot's $LATEST 7305 // version. 7306 Checksum *string `locationName:"checksum" type:"string"` 7307 7308 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 7309 // you must specify whether your use of Amazon Lex is related to a website, 7310 // program, or other application that is directed or targeted, in whole or in 7311 // part, to children under age 13 and subject to the Children's Online Privacy 7312 // Protection Act (COPPA) by specifying true or false in the childDirected field. 7313 // By specifying true in the childDirected field, you confirm that your use 7314 // of Amazon Lex is related to a website, program, or other application that 7315 // is directed or targeted, in whole or in part, to children under age 13 and 7316 // subject to COPPA. By specifying false in the childDirected field, you confirm 7317 // that your use of Amazon Lex is not related to a website, program, or other 7318 // application that is directed or targeted, in whole or in part, to children 7319 // under age 13 and subject to COPPA. You may not specify a default value for 7320 // the childDirected field that does not accurately reflect whether your use 7321 // of Amazon Lex is related to a website, program, or other application that 7322 // is directed or targeted, in whole or in part, to children under age 13 and 7323 // subject to COPPA. 7324 // 7325 // If your use of Amazon Lex relates to a website, program, or other application 7326 // that is directed in whole or in part, to children under age 13, you must 7327 // obtain any required verifiable parental consent under COPPA. For information 7328 // regarding the use of Amazon Lex in connection with websites, programs, or 7329 // other applications that are directed or targeted, in whole or in part, to 7330 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 7331 ChildDirected *bool `locationName:"childDirected" type:"boolean"` 7332 7333 // The message Amazon Lex uses when it doesn't understand the user's request. 7334 // For more information, see PutBot. 7335 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 7336 7337 // The date that the bot was created. 7338 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 7339 7340 // A description of the bot. 7341 Description *string `locationName:"description" type:"string"` 7342 7343 // Indicates whether user utterances should be sent to Amazon Comprehend for 7344 // sentiment analysis. 7345 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 7346 7347 // Indicates whether the bot uses accuracy improvements. true indicates that 7348 // the bot is using the improvements, otherwise, false. 7349 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 7350 7351 // If status is FAILED, Amazon Lex explains why it failed to build the bot. 7352 FailureReason *string `locationName:"failureReason" type:"string"` 7353 7354 // The maximum time in seconds that Amazon Lex retains the data gathered in 7355 // a conversation. For more information, see PutBot. 7356 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 7357 7358 // An array of intent objects. For more information, see PutBot. 7359 Intents []*Intent `locationName:"intents" type:"list"` 7360 7361 // The date that the bot was updated. When you create a resource, the creation 7362 // date and last updated date are the same. 7363 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 7364 7365 // The target locale for the bot. 7366 Locale *string `locationName:"locale" type:"string" enum:"Locale"` 7367 7368 // The name of the bot. 7369 Name *string `locationName:"name" min:"2" type:"string"` 7370 7371 // The score that determines where Amazon Lex inserts the AMAZON.FallbackIntent, 7372 // AMAZON.KendraSearchIntent, or both when returning alternative intents in 7373 // a PostContent (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 7374 // or PostText (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 7375 // response. AMAZON.FallbackIntent is inserted if the confidence score for all 7376 // intents is below this value. AMAZON.KendraSearchIntent is only inserted if 7377 // it is configured for the bot. 7378 NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` 7379 7380 // The status of the bot. 7381 // 7382 // When the status is BUILDING Amazon Lex is building the bot for testing and 7383 // use. 7384 // 7385 // If the status of the bot is READY_BASIC_TESTING, you can test the bot using 7386 // the exact utterances specified in the bot's intents. When the bot is ready 7387 // for full testing or to run, the status is READY. 7388 // 7389 // If there was a problem with building the bot, the status is FAILED and the 7390 // failureReason field explains why the bot did not build. 7391 // 7392 // If the bot was saved but not built, the status is NOT_BUILT. 7393 Status *string `locationName:"status" type:"string" enum:"Status"` 7394 7395 // The version of the bot. For a new bot, the version is always $LATEST. 7396 Version *string `locationName:"version" min:"1" type:"string"` 7397 7398 // The Amazon Polly voice ID that Amazon Lex uses for voice interaction with 7399 // the user. For more information, see PutBot. 7400 VoiceId *string `locationName:"voiceId" type:"string"` 7401} 7402 7403// String returns the string representation 7404func (s GetBotOutput) String() string { 7405 return awsutil.Prettify(s) 7406} 7407 7408// GoString returns the string representation 7409func (s GetBotOutput) GoString() string { 7410 return s.String() 7411} 7412 7413// SetAbortStatement sets the AbortStatement field's value. 7414func (s *GetBotOutput) SetAbortStatement(v *Statement) *GetBotOutput { 7415 s.AbortStatement = v 7416 return s 7417} 7418 7419// SetChecksum sets the Checksum field's value. 7420func (s *GetBotOutput) SetChecksum(v string) *GetBotOutput { 7421 s.Checksum = &v 7422 return s 7423} 7424 7425// SetChildDirected sets the ChildDirected field's value. 7426func (s *GetBotOutput) SetChildDirected(v bool) *GetBotOutput { 7427 s.ChildDirected = &v 7428 return s 7429} 7430 7431// SetClarificationPrompt sets the ClarificationPrompt field's value. 7432func (s *GetBotOutput) SetClarificationPrompt(v *Prompt) *GetBotOutput { 7433 s.ClarificationPrompt = v 7434 return s 7435} 7436 7437// SetCreatedDate sets the CreatedDate field's value. 7438func (s *GetBotOutput) SetCreatedDate(v time.Time) *GetBotOutput { 7439 s.CreatedDate = &v 7440 return s 7441} 7442 7443// SetDescription sets the Description field's value. 7444func (s *GetBotOutput) SetDescription(v string) *GetBotOutput { 7445 s.Description = &v 7446 return s 7447} 7448 7449// SetDetectSentiment sets the DetectSentiment field's value. 7450func (s *GetBotOutput) SetDetectSentiment(v bool) *GetBotOutput { 7451 s.DetectSentiment = &v 7452 return s 7453} 7454 7455// SetEnableModelImprovements sets the EnableModelImprovements field's value. 7456func (s *GetBotOutput) SetEnableModelImprovements(v bool) *GetBotOutput { 7457 s.EnableModelImprovements = &v 7458 return s 7459} 7460 7461// SetFailureReason sets the FailureReason field's value. 7462func (s *GetBotOutput) SetFailureReason(v string) *GetBotOutput { 7463 s.FailureReason = &v 7464 return s 7465} 7466 7467// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 7468func (s *GetBotOutput) SetIdleSessionTTLInSeconds(v int64) *GetBotOutput { 7469 s.IdleSessionTTLInSeconds = &v 7470 return s 7471} 7472 7473// SetIntents sets the Intents field's value. 7474func (s *GetBotOutput) SetIntents(v []*Intent) *GetBotOutput { 7475 s.Intents = v 7476 return s 7477} 7478 7479// SetLastUpdatedDate sets the LastUpdatedDate field's value. 7480func (s *GetBotOutput) SetLastUpdatedDate(v time.Time) *GetBotOutput { 7481 s.LastUpdatedDate = &v 7482 return s 7483} 7484 7485// SetLocale sets the Locale field's value. 7486func (s *GetBotOutput) SetLocale(v string) *GetBotOutput { 7487 s.Locale = &v 7488 return s 7489} 7490 7491// SetName sets the Name field's value. 7492func (s *GetBotOutput) SetName(v string) *GetBotOutput { 7493 s.Name = &v 7494 return s 7495} 7496 7497// SetNluIntentConfidenceThreshold sets the NluIntentConfidenceThreshold field's value. 7498func (s *GetBotOutput) SetNluIntentConfidenceThreshold(v float64) *GetBotOutput { 7499 s.NluIntentConfidenceThreshold = &v 7500 return s 7501} 7502 7503// SetStatus sets the Status field's value. 7504func (s *GetBotOutput) SetStatus(v string) *GetBotOutput { 7505 s.Status = &v 7506 return s 7507} 7508 7509// SetVersion sets the Version field's value. 7510func (s *GetBotOutput) SetVersion(v string) *GetBotOutput { 7511 s.Version = &v 7512 return s 7513} 7514 7515// SetVoiceId sets the VoiceId field's value. 7516func (s *GetBotOutput) SetVoiceId(v string) *GetBotOutput { 7517 s.VoiceId = &v 7518 return s 7519} 7520 7521type GetBotVersionsInput struct { 7522 _ struct{} `type:"structure"` 7523 7524 // The maximum number of bot versions to return in the response. The default 7525 // is 10. 7526 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7527 7528 // The name of the bot for which versions should be returned. 7529 // 7530 // Name is a required field 7531 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 7532 7533 // A pagination token for fetching the next page of bot versions. If the response 7534 // to this call is truncated, Amazon Lex returns a pagination token in the response. 7535 // To fetch the next page of versions, specify the pagination token in the next 7536 // request. 7537 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7538} 7539 7540// String returns the string representation 7541func (s GetBotVersionsInput) String() string { 7542 return awsutil.Prettify(s) 7543} 7544 7545// GoString returns the string representation 7546func (s GetBotVersionsInput) GoString() string { 7547 return s.String() 7548} 7549 7550// Validate inspects the fields of the type to determine if they are valid. 7551func (s *GetBotVersionsInput) Validate() error { 7552 invalidParams := request.ErrInvalidParams{Context: "GetBotVersionsInput"} 7553 if s.MaxResults != nil && *s.MaxResults < 1 { 7554 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7555 } 7556 if s.Name == nil { 7557 invalidParams.Add(request.NewErrParamRequired("Name")) 7558 } 7559 if s.Name != nil && len(*s.Name) < 2 { 7560 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 7561 } 7562 7563 if invalidParams.Len() > 0 { 7564 return invalidParams 7565 } 7566 return nil 7567} 7568 7569// SetMaxResults sets the MaxResults field's value. 7570func (s *GetBotVersionsInput) SetMaxResults(v int64) *GetBotVersionsInput { 7571 s.MaxResults = &v 7572 return s 7573} 7574 7575// SetName sets the Name field's value. 7576func (s *GetBotVersionsInput) SetName(v string) *GetBotVersionsInput { 7577 s.Name = &v 7578 return s 7579} 7580 7581// SetNextToken sets the NextToken field's value. 7582func (s *GetBotVersionsInput) SetNextToken(v string) *GetBotVersionsInput { 7583 s.NextToken = &v 7584 return s 7585} 7586 7587type GetBotVersionsOutput struct { 7588 _ struct{} `type:"structure"` 7589 7590 // An array of BotMetadata objects, one for each numbered version of the bot 7591 // plus one for the $LATEST version. 7592 Bots []*BotMetadata `locationName:"bots" type:"list"` 7593 7594 // A pagination token for fetching the next page of bot versions. If the response 7595 // to this call is truncated, Amazon Lex returns a pagination token in the response. 7596 // To fetch the next page of versions, specify the pagination token in the next 7597 // request. 7598 NextToken *string `locationName:"nextToken" type:"string"` 7599} 7600 7601// String returns the string representation 7602func (s GetBotVersionsOutput) String() string { 7603 return awsutil.Prettify(s) 7604} 7605 7606// GoString returns the string representation 7607func (s GetBotVersionsOutput) GoString() string { 7608 return s.String() 7609} 7610 7611// SetBots sets the Bots field's value. 7612func (s *GetBotVersionsOutput) SetBots(v []*BotMetadata) *GetBotVersionsOutput { 7613 s.Bots = v 7614 return s 7615} 7616 7617// SetNextToken sets the NextToken field's value. 7618func (s *GetBotVersionsOutput) SetNextToken(v string) *GetBotVersionsOutput { 7619 s.NextToken = &v 7620 return s 7621} 7622 7623type GetBotsInput struct { 7624 _ struct{} `type:"structure"` 7625 7626 // The maximum number of bots to return in the response that the request will 7627 // return. The default is 10. 7628 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7629 7630 // Substring to match in bot names. A bot will be returned if any part of its 7631 // name matches the substring. For example, "xyz" matches both "xyzabc" and 7632 // "abcxyz." 7633 NameContains *string `location:"querystring" locationName:"nameContains" min:"2" type:"string"` 7634 7635 // A pagination token that fetches the next page of bots. If the response to 7636 // this call is truncated, Amazon Lex returns a pagination token in the response. 7637 // To fetch the next page of bots, specify the pagination token in the next 7638 // request. 7639 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7640} 7641 7642// String returns the string representation 7643func (s GetBotsInput) String() string { 7644 return awsutil.Prettify(s) 7645} 7646 7647// GoString returns the string representation 7648func (s GetBotsInput) GoString() string { 7649 return s.String() 7650} 7651 7652// Validate inspects the fields of the type to determine if they are valid. 7653func (s *GetBotsInput) Validate() error { 7654 invalidParams := request.ErrInvalidParams{Context: "GetBotsInput"} 7655 if s.MaxResults != nil && *s.MaxResults < 1 { 7656 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7657 } 7658 if s.NameContains != nil && len(*s.NameContains) < 2 { 7659 invalidParams.Add(request.NewErrParamMinLen("NameContains", 2)) 7660 } 7661 7662 if invalidParams.Len() > 0 { 7663 return invalidParams 7664 } 7665 return nil 7666} 7667 7668// SetMaxResults sets the MaxResults field's value. 7669func (s *GetBotsInput) SetMaxResults(v int64) *GetBotsInput { 7670 s.MaxResults = &v 7671 return s 7672} 7673 7674// SetNameContains sets the NameContains field's value. 7675func (s *GetBotsInput) SetNameContains(v string) *GetBotsInput { 7676 s.NameContains = &v 7677 return s 7678} 7679 7680// SetNextToken sets the NextToken field's value. 7681func (s *GetBotsInput) SetNextToken(v string) *GetBotsInput { 7682 s.NextToken = &v 7683 return s 7684} 7685 7686type GetBotsOutput struct { 7687 _ struct{} `type:"structure"` 7688 7689 // An array of botMetadata objects, with one entry for each bot. 7690 Bots []*BotMetadata `locationName:"bots" type:"list"` 7691 7692 // If the response is truncated, it includes a pagination token that you can 7693 // specify in your next request to fetch the next page of bots. 7694 NextToken *string `locationName:"nextToken" type:"string"` 7695} 7696 7697// String returns the string representation 7698func (s GetBotsOutput) String() string { 7699 return awsutil.Prettify(s) 7700} 7701 7702// GoString returns the string representation 7703func (s GetBotsOutput) GoString() string { 7704 return s.String() 7705} 7706 7707// SetBots sets the Bots field's value. 7708func (s *GetBotsOutput) SetBots(v []*BotMetadata) *GetBotsOutput { 7709 s.Bots = v 7710 return s 7711} 7712 7713// SetNextToken sets the NextToken field's value. 7714func (s *GetBotsOutput) SetNextToken(v string) *GetBotsOutput { 7715 s.NextToken = &v 7716 return s 7717} 7718 7719type GetBuiltinIntentInput struct { 7720 _ struct{} `type:"structure"` 7721 7722 // The unique identifier for a built-in intent. To find the signature for an 7723 // intent, see Standard Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 7724 // in the Alexa Skills Kit. 7725 // 7726 // Signature is a required field 7727 Signature *string `location:"uri" locationName:"signature" type:"string" required:"true"` 7728} 7729 7730// String returns the string representation 7731func (s GetBuiltinIntentInput) String() string { 7732 return awsutil.Prettify(s) 7733} 7734 7735// GoString returns the string representation 7736func (s GetBuiltinIntentInput) GoString() string { 7737 return s.String() 7738} 7739 7740// Validate inspects the fields of the type to determine if they are valid. 7741func (s *GetBuiltinIntentInput) Validate() error { 7742 invalidParams := request.ErrInvalidParams{Context: "GetBuiltinIntentInput"} 7743 if s.Signature == nil { 7744 invalidParams.Add(request.NewErrParamRequired("Signature")) 7745 } 7746 if s.Signature != nil && len(*s.Signature) < 1 { 7747 invalidParams.Add(request.NewErrParamMinLen("Signature", 1)) 7748 } 7749 7750 if invalidParams.Len() > 0 { 7751 return invalidParams 7752 } 7753 return nil 7754} 7755 7756// SetSignature sets the Signature field's value. 7757func (s *GetBuiltinIntentInput) SetSignature(v string) *GetBuiltinIntentInput { 7758 s.Signature = &v 7759 return s 7760} 7761 7762type GetBuiltinIntentOutput struct { 7763 _ struct{} `type:"structure"` 7764 7765 // The unique identifier for a built-in intent. 7766 Signature *string `locationName:"signature" type:"string"` 7767 7768 // An array of BuiltinIntentSlot objects, one entry for each slot type in the 7769 // intent. 7770 Slots []*BuiltinIntentSlot `locationName:"slots" type:"list"` 7771 7772 // A list of locales that the intent supports. 7773 SupportedLocales []*string `locationName:"supportedLocales" type:"list"` 7774} 7775 7776// String returns the string representation 7777func (s GetBuiltinIntentOutput) String() string { 7778 return awsutil.Prettify(s) 7779} 7780 7781// GoString returns the string representation 7782func (s GetBuiltinIntentOutput) GoString() string { 7783 return s.String() 7784} 7785 7786// SetSignature sets the Signature field's value. 7787func (s *GetBuiltinIntentOutput) SetSignature(v string) *GetBuiltinIntentOutput { 7788 s.Signature = &v 7789 return s 7790} 7791 7792// SetSlots sets the Slots field's value. 7793func (s *GetBuiltinIntentOutput) SetSlots(v []*BuiltinIntentSlot) *GetBuiltinIntentOutput { 7794 s.Slots = v 7795 return s 7796} 7797 7798// SetSupportedLocales sets the SupportedLocales field's value. 7799func (s *GetBuiltinIntentOutput) SetSupportedLocales(v []*string) *GetBuiltinIntentOutput { 7800 s.SupportedLocales = v 7801 return s 7802} 7803 7804type GetBuiltinIntentsInput struct { 7805 _ struct{} `type:"structure"` 7806 7807 // A list of locales that the intent supports. 7808 Locale *string `location:"querystring" locationName:"locale" type:"string" enum:"Locale"` 7809 7810 // The maximum number of intents to return in the response. The default is 10. 7811 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7812 7813 // A pagination token that fetches the next page of intents. If this API call 7814 // is truncated, Amazon Lex returns a pagination token in the response. To fetch 7815 // the next page of intents, use the pagination token in the next request. 7816 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7817 7818 // Substring to match in built-in intent signatures. An intent will be returned 7819 // if any part of its signature matches the substring. For example, "xyz" matches 7820 // both "xyzabc" and "abcxyz." To find the signature for an intent, see Standard 7821 // Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 7822 // in the Alexa Skills Kit. 7823 SignatureContains *string `location:"querystring" locationName:"signatureContains" type:"string"` 7824} 7825 7826// String returns the string representation 7827func (s GetBuiltinIntentsInput) String() string { 7828 return awsutil.Prettify(s) 7829} 7830 7831// GoString returns the string representation 7832func (s GetBuiltinIntentsInput) GoString() string { 7833 return s.String() 7834} 7835 7836// Validate inspects the fields of the type to determine if they are valid. 7837func (s *GetBuiltinIntentsInput) Validate() error { 7838 invalidParams := request.ErrInvalidParams{Context: "GetBuiltinIntentsInput"} 7839 if s.MaxResults != nil && *s.MaxResults < 1 { 7840 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7841 } 7842 7843 if invalidParams.Len() > 0 { 7844 return invalidParams 7845 } 7846 return nil 7847} 7848 7849// SetLocale sets the Locale field's value. 7850func (s *GetBuiltinIntentsInput) SetLocale(v string) *GetBuiltinIntentsInput { 7851 s.Locale = &v 7852 return s 7853} 7854 7855// SetMaxResults sets the MaxResults field's value. 7856func (s *GetBuiltinIntentsInput) SetMaxResults(v int64) *GetBuiltinIntentsInput { 7857 s.MaxResults = &v 7858 return s 7859} 7860 7861// SetNextToken sets the NextToken field's value. 7862func (s *GetBuiltinIntentsInput) SetNextToken(v string) *GetBuiltinIntentsInput { 7863 s.NextToken = &v 7864 return s 7865} 7866 7867// SetSignatureContains sets the SignatureContains field's value. 7868func (s *GetBuiltinIntentsInput) SetSignatureContains(v string) *GetBuiltinIntentsInput { 7869 s.SignatureContains = &v 7870 return s 7871} 7872 7873type GetBuiltinIntentsOutput struct { 7874 _ struct{} `type:"structure"` 7875 7876 // An array of builtinIntentMetadata objects, one for each intent in the response. 7877 Intents []*BuiltinIntentMetadata `locationName:"intents" type:"list"` 7878 7879 // A pagination token that fetches the next page of intents. If the response 7880 // to this API call is truncated, Amazon Lex returns a pagination token in the 7881 // response. To fetch the next page of intents, specify the pagination token 7882 // in the next request. 7883 NextToken *string `locationName:"nextToken" type:"string"` 7884} 7885 7886// String returns the string representation 7887func (s GetBuiltinIntentsOutput) String() string { 7888 return awsutil.Prettify(s) 7889} 7890 7891// GoString returns the string representation 7892func (s GetBuiltinIntentsOutput) GoString() string { 7893 return s.String() 7894} 7895 7896// SetIntents sets the Intents field's value. 7897func (s *GetBuiltinIntentsOutput) SetIntents(v []*BuiltinIntentMetadata) *GetBuiltinIntentsOutput { 7898 s.Intents = v 7899 return s 7900} 7901 7902// SetNextToken sets the NextToken field's value. 7903func (s *GetBuiltinIntentsOutput) SetNextToken(v string) *GetBuiltinIntentsOutput { 7904 s.NextToken = &v 7905 return s 7906} 7907 7908type GetBuiltinSlotTypesInput struct { 7909 _ struct{} `type:"structure"` 7910 7911 // A list of locales that the slot type supports. 7912 Locale *string `location:"querystring" locationName:"locale" type:"string" enum:"Locale"` 7913 7914 // The maximum number of slot types to return in the response. The default is 7915 // 10. 7916 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7917 7918 // A pagination token that fetches the next page of slot types. If the response 7919 // to this API call is truncated, Amazon Lex returns a pagination token in the 7920 // response. To fetch the next page of slot types, specify the pagination token 7921 // in the next request. 7922 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7923 7924 // Substring to match in built-in slot type signatures. A slot type will be 7925 // returned if any part of its signature matches the substring. For example, 7926 // "xyz" matches both "xyzabc" and "abcxyz." 7927 SignatureContains *string `location:"querystring" locationName:"signatureContains" type:"string"` 7928} 7929 7930// String returns the string representation 7931func (s GetBuiltinSlotTypesInput) String() string { 7932 return awsutil.Prettify(s) 7933} 7934 7935// GoString returns the string representation 7936func (s GetBuiltinSlotTypesInput) GoString() string { 7937 return s.String() 7938} 7939 7940// Validate inspects the fields of the type to determine if they are valid. 7941func (s *GetBuiltinSlotTypesInput) Validate() error { 7942 invalidParams := request.ErrInvalidParams{Context: "GetBuiltinSlotTypesInput"} 7943 if s.MaxResults != nil && *s.MaxResults < 1 { 7944 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7945 } 7946 7947 if invalidParams.Len() > 0 { 7948 return invalidParams 7949 } 7950 return nil 7951} 7952 7953// SetLocale sets the Locale field's value. 7954func (s *GetBuiltinSlotTypesInput) SetLocale(v string) *GetBuiltinSlotTypesInput { 7955 s.Locale = &v 7956 return s 7957} 7958 7959// SetMaxResults sets the MaxResults field's value. 7960func (s *GetBuiltinSlotTypesInput) SetMaxResults(v int64) *GetBuiltinSlotTypesInput { 7961 s.MaxResults = &v 7962 return s 7963} 7964 7965// SetNextToken sets the NextToken field's value. 7966func (s *GetBuiltinSlotTypesInput) SetNextToken(v string) *GetBuiltinSlotTypesInput { 7967 s.NextToken = &v 7968 return s 7969} 7970 7971// SetSignatureContains sets the SignatureContains field's value. 7972func (s *GetBuiltinSlotTypesInput) SetSignatureContains(v string) *GetBuiltinSlotTypesInput { 7973 s.SignatureContains = &v 7974 return s 7975} 7976 7977type GetBuiltinSlotTypesOutput struct { 7978 _ struct{} `type:"structure"` 7979 7980 // If the response is truncated, the response includes a pagination token that 7981 // you can use in your next request to fetch the next page of slot types. 7982 NextToken *string `locationName:"nextToken" type:"string"` 7983 7984 // An array of BuiltInSlotTypeMetadata objects, one entry for each slot type 7985 // returned. 7986 SlotTypes []*BuiltinSlotTypeMetadata `locationName:"slotTypes" type:"list"` 7987} 7988 7989// String returns the string representation 7990func (s GetBuiltinSlotTypesOutput) String() string { 7991 return awsutil.Prettify(s) 7992} 7993 7994// GoString returns the string representation 7995func (s GetBuiltinSlotTypesOutput) GoString() string { 7996 return s.String() 7997} 7998 7999// SetNextToken sets the NextToken field's value. 8000func (s *GetBuiltinSlotTypesOutput) SetNextToken(v string) *GetBuiltinSlotTypesOutput { 8001 s.NextToken = &v 8002 return s 8003} 8004 8005// SetSlotTypes sets the SlotTypes field's value. 8006func (s *GetBuiltinSlotTypesOutput) SetSlotTypes(v []*BuiltinSlotTypeMetadata) *GetBuiltinSlotTypesOutput { 8007 s.SlotTypes = v 8008 return s 8009} 8010 8011type GetExportInput struct { 8012 _ struct{} `type:"structure"` 8013 8014 // The format of the exported data. 8015 // 8016 // ExportType is a required field 8017 ExportType *string `location:"querystring" locationName:"exportType" type:"string" required:"true" enum:"ExportType"` 8018 8019 // The name of the bot to export. 8020 // 8021 // Name is a required field 8022 Name *string `location:"querystring" locationName:"name" min:"1" type:"string" required:"true"` 8023 8024 // The type of resource to export. 8025 // 8026 // ResourceType is a required field 8027 ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` 8028 8029 // The version of the bot to export. 8030 // 8031 // Version is a required field 8032 Version *string `location:"querystring" locationName:"version" min:"1" type:"string" required:"true"` 8033} 8034 8035// String returns the string representation 8036func (s GetExportInput) String() string { 8037 return awsutil.Prettify(s) 8038} 8039 8040// GoString returns the string representation 8041func (s GetExportInput) GoString() string { 8042 return s.String() 8043} 8044 8045// Validate inspects the fields of the type to determine if they are valid. 8046func (s *GetExportInput) Validate() error { 8047 invalidParams := request.ErrInvalidParams{Context: "GetExportInput"} 8048 if s.ExportType == nil { 8049 invalidParams.Add(request.NewErrParamRequired("ExportType")) 8050 } 8051 if s.Name == nil { 8052 invalidParams.Add(request.NewErrParamRequired("Name")) 8053 } 8054 if s.Name != nil && len(*s.Name) < 1 { 8055 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 8056 } 8057 if s.ResourceType == nil { 8058 invalidParams.Add(request.NewErrParamRequired("ResourceType")) 8059 } 8060 if s.Version == nil { 8061 invalidParams.Add(request.NewErrParamRequired("Version")) 8062 } 8063 if s.Version != nil && len(*s.Version) < 1 { 8064 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 8065 } 8066 8067 if invalidParams.Len() > 0 { 8068 return invalidParams 8069 } 8070 return nil 8071} 8072 8073// SetExportType sets the ExportType field's value. 8074func (s *GetExportInput) SetExportType(v string) *GetExportInput { 8075 s.ExportType = &v 8076 return s 8077} 8078 8079// SetName sets the Name field's value. 8080func (s *GetExportInput) SetName(v string) *GetExportInput { 8081 s.Name = &v 8082 return s 8083} 8084 8085// SetResourceType sets the ResourceType field's value. 8086func (s *GetExportInput) SetResourceType(v string) *GetExportInput { 8087 s.ResourceType = &v 8088 return s 8089} 8090 8091// SetVersion sets the Version field's value. 8092func (s *GetExportInput) SetVersion(v string) *GetExportInput { 8093 s.Version = &v 8094 return s 8095} 8096 8097type GetExportOutput struct { 8098 _ struct{} `type:"structure"` 8099 8100 // The status of the export. 8101 // 8102 // * IN_PROGRESS - The export is in progress. 8103 // 8104 // * READY - The export is complete. 8105 // 8106 // * FAILED - The export could not be completed. 8107 ExportStatus *string `locationName:"exportStatus" type:"string" enum:"ExportStatus"` 8108 8109 // The format of the exported data. 8110 ExportType *string `locationName:"exportType" type:"string" enum:"ExportType"` 8111 8112 // If status is FAILED, Amazon Lex provides the reason that it failed to export 8113 // the resource. 8114 FailureReason *string `locationName:"failureReason" type:"string"` 8115 8116 // The name of the bot being exported. 8117 Name *string `locationName:"name" min:"1" type:"string"` 8118 8119 // The type of the exported resource. 8120 ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` 8121 8122 // An S3 pre-signed URL that provides the location of the exported resource. 8123 // The exported resource is a ZIP archive that contains the exported resource 8124 // in JSON format. The structure of the archive may change. Your code should 8125 // not rely on the archive structure. 8126 Url *string `locationName:"url" type:"string"` 8127 8128 // The version of the bot being exported. 8129 Version *string `locationName:"version" min:"1" type:"string"` 8130} 8131 8132// String returns the string representation 8133func (s GetExportOutput) String() string { 8134 return awsutil.Prettify(s) 8135} 8136 8137// GoString returns the string representation 8138func (s GetExportOutput) GoString() string { 8139 return s.String() 8140} 8141 8142// SetExportStatus sets the ExportStatus field's value. 8143func (s *GetExportOutput) SetExportStatus(v string) *GetExportOutput { 8144 s.ExportStatus = &v 8145 return s 8146} 8147 8148// SetExportType sets the ExportType field's value. 8149func (s *GetExportOutput) SetExportType(v string) *GetExportOutput { 8150 s.ExportType = &v 8151 return s 8152} 8153 8154// SetFailureReason sets the FailureReason field's value. 8155func (s *GetExportOutput) SetFailureReason(v string) *GetExportOutput { 8156 s.FailureReason = &v 8157 return s 8158} 8159 8160// SetName sets the Name field's value. 8161func (s *GetExportOutput) SetName(v string) *GetExportOutput { 8162 s.Name = &v 8163 return s 8164} 8165 8166// SetResourceType sets the ResourceType field's value. 8167func (s *GetExportOutput) SetResourceType(v string) *GetExportOutput { 8168 s.ResourceType = &v 8169 return s 8170} 8171 8172// SetUrl sets the Url field's value. 8173func (s *GetExportOutput) SetUrl(v string) *GetExportOutput { 8174 s.Url = &v 8175 return s 8176} 8177 8178// SetVersion sets the Version field's value. 8179func (s *GetExportOutput) SetVersion(v string) *GetExportOutput { 8180 s.Version = &v 8181 return s 8182} 8183 8184type GetImportInput struct { 8185 _ struct{} `type:"structure"` 8186 8187 // The identifier of the import job information to return. 8188 // 8189 // ImportId is a required field 8190 ImportId *string `location:"uri" locationName:"importId" type:"string" required:"true"` 8191} 8192 8193// String returns the string representation 8194func (s GetImportInput) String() string { 8195 return awsutil.Prettify(s) 8196} 8197 8198// GoString returns the string representation 8199func (s GetImportInput) GoString() string { 8200 return s.String() 8201} 8202 8203// Validate inspects the fields of the type to determine if they are valid. 8204func (s *GetImportInput) Validate() error { 8205 invalidParams := request.ErrInvalidParams{Context: "GetImportInput"} 8206 if s.ImportId == nil { 8207 invalidParams.Add(request.NewErrParamRequired("ImportId")) 8208 } 8209 if s.ImportId != nil && len(*s.ImportId) < 1 { 8210 invalidParams.Add(request.NewErrParamMinLen("ImportId", 1)) 8211 } 8212 8213 if invalidParams.Len() > 0 { 8214 return invalidParams 8215 } 8216 return nil 8217} 8218 8219// SetImportId sets the ImportId field's value. 8220func (s *GetImportInput) SetImportId(v string) *GetImportInput { 8221 s.ImportId = &v 8222 return s 8223} 8224 8225type GetImportOutput struct { 8226 _ struct{} `type:"structure"` 8227 8228 // A timestamp for the date and time that the import job was created. 8229 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 8230 8231 // A string that describes why an import job failed to complete. 8232 FailureReason []*string `locationName:"failureReason" type:"list"` 8233 8234 // The identifier for the specific import job. 8235 ImportId *string `locationName:"importId" type:"string"` 8236 8237 // The status of the import job. If the status is FAILED, you can get the reason 8238 // for the failure from the failureReason field. 8239 ImportStatus *string `locationName:"importStatus" type:"string" enum:"ImportStatus"` 8240 8241 // The action taken when there was a conflict between an existing resource and 8242 // a resource in the import file. 8243 MergeStrategy *string `locationName:"mergeStrategy" type:"string" enum:"MergeStrategy"` 8244 8245 // The name given to the import job. 8246 Name *string `locationName:"name" min:"1" type:"string"` 8247 8248 // The type of resource imported. 8249 ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` 8250} 8251 8252// String returns the string representation 8253func (s GetImportOutput) String() string { 8254 return awsutil.Prettify(s) 8255} 8256 8257// GoString returns the string representation 8258func (s GetImportOutput) GoString() string { 8259 return s.String() 8260} 8261 8262// SetCreatedDate sets the CreatedDate field's value. 8263func (s *GetImportOutput) SetCreatedDate(v time.Time) *GetImportOutput { 8264 s.CreatedDate = &v 8265 return s 8266} 8267 8268// SetFailureReason sets the FailureReason field's value. 8269func (s *GetImportOutput) SetFailureReason(v []*string) *GetImportOutput { 8270 s.FailureReason = v 8271 return s 8272} 8273 8274// SetImportId sets the ImportId field's value. 8275func (s *GetImportOutput) SetImportId(v string) *GetImportOutput { 8276 s.ImportId = &v 8277 return s 8278} 8279 8280// SetImportStatus sets the ImportStatus field's value. 8281func (s *GetImportOutput) SetImportStatus(v string) *GetImportOutput { 8282 s.ImportStatus = &v 8283 return s 8284} 8285 8286// SetMergeStrategy sets the MergeStrategy field's value. 8287func (s *GetImportOutput) SetMergeStrategy(v string) *GetImportOutput { 8288 s.MergeStrategy = &v 8289 return s 8290} 8291 8292// SetName sets the Name field's value. 8293func (s *GetImportOutput) SetName(v string) *GetImportOutput { 8294 s.Name = &v 8295 return s 8296} 8297 8298// SetResourceType sets the ResourceType field's value. 8299func (s *GetImportOutput) SetResourceType(v string) *GetImportOutput { 8300 s.ResourceType = &v 8301 return s 8302} 8303 8304type GetIntentInput struct { 8305 _ struct{} `type:"structure"` 8306 8307 // The name of the intent. The name is case sensitive. 8308 // 8309 // Name is a required field 8310 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 8311 8312 // The version of the intent. 8313 // 8314 // Version is a required field 8315 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 8316} 8317 8318// String returns the string representation 8319func (s GetIntentInput) String() string { 8320 return awsutil.Prettify(s) 8321} 8322 8323// GoString returns the string representation 8324func (s GetIntentInput) GoString() string { 8325 return s.String() 8326} 8327 8328// Validate inspects the fields of the type to determine if they are valid. 8329func (s *GetIntentInput) Validate() error { 8330 invalidParams := request.ErrInvalidParams{Context: "GetIntentInput"} 8331 if s.Name == nil { 8332 invalidParams.Add(request.NewErrParamRequired("Name")) 8333 } 8334 if s.Name != nil && len(*s.Name) < 1 { 8335 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 8336 } 8337 if s.Version == nil { 8338 invalidParams.Add(request.NewErrParamRequired("Version")) 8339 } 8340 if s.Version != nil && len(*s.Version) < 1 { 8341 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 8342 } 8343 8344 if invalidParams.Len() > 0 { 8345 return invalidParams 8346 } 8347 return nil 8348} 8349 8350// SetName sets the Name field's value. 8351func (s *GetIntentInput) SetName(v string) *GetIntentInput { 8352 s.Name = &v 8353 return s 8354} 8355 8356// SetVersion sets the Version field's value. 8357func (s *GetIntentInput) SetVersion(v string) *GetIntentInput { 8358 s.Version = &v 8359 return s 8360} 8361 8362type GetIntentOutput struct { 8363 _ struct{} `type:"structure"` 8364 8365 // Checksum of the intent. 8366 Checksum *string `locationName:"checksum" type:"string"` 8367 8368 // After the Lambda function specified in the fulfillmentActivity element fulfills 8369 // the intent, Amazon Lex conveys this statement to the user. 8370 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 8371 8372 // If defined in the bot, Amazon Lex uses prompt to confirm the intent before 8373 // fulfilling the user's request. For more information, see PutIntent. 8374 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 8375 8376 // The date that the intent was created. 8377 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 8378 8379 // A description of the intent. 8380 Description *string `locationName:"description" type:"string"` 8381 8382 // If defined in the bot, Amazon Amazon Lex invokes this Lambda function for 8383 // each user input. For more information, see PutIntent. 8384 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 8385 8386 // If defined in the bot, Amazon Lex uses this prompt to solicit additional 8387 // user activity after the intent is fulfilled. For more information, see PutIntent. 8388 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 8389 8390 // Describes how the intent is fulfilled. For more information, see PutIntent. 8391 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 8392 8393 // An array of InputContext objects that lists the contexts that must be active 8394 // for Amazon Lex to choose the intent in a conversation with the user. 8395 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 8396 8397 // Configuration information, if any, to connect to an Amazon Kendra index with 8398 // the AMAZON.KendraSearchIntent intent. 8399 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 8400 8401 // The date that the intent was updated. When you create a resource, the creation 8402 // date and the last updated date are the same. 8403 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 8404 8405 // The name of the intent. 8406 Name *string `locationName:"name" min:"1" type:"string"` 8407 8408 // An array of OutputContext objects that lists the contexts that the intent 8409 // activates when the intent is fulfilled. 8410 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 8411 8412 // A unique identifier for a built-in intent. 8413 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 8414 8415 // If the user answers "no" to the question defined in confirmationPrompt, Amazon 8416 // Lex responds with this statement to acknowledge that the intent was canceled. 8417 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 8418 8419 // An array of sample utterances configured for the intent. 8420 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 8421 8422 // An array of intent slots configured for the intent. 8423 Slots []*Slot `locationName:"slots" type:"list"` 8424 8425 // The version of the intent. 8426 Version *string `locationName:"version" min:"1" type:"string"` 8427} 8428 8429// String returns the string representation 8430func (s GetIntentOutput) String() string { 8431 return awsutil.Prettify(s) 8432} 8433 8434// GoString returns the string representation 8435func (s GetIntentOutput) GoString() string { 8436 return s.String() 8437} 8438 8439// SetChecksum sets the Checksum field's value. 8440func (s *GetIntentOutput) SetChecksum(v string) *GetIntentOutput { 8441 s.Checksum = &v 8442 return s 8443} 8444 8445// SetConclusionStatement sets the ConclusionStatement field's value. 8446func (s *GetIntentOutput) SetConclusionStatement(v *Statement) *GetIntentOutput { 8447 s.ConclusionStatement = v 8448 return s 8449} 8450 8451// SetConfirmationPrompt sets the ConfirmationPrompt field's value. 8452func (s *GetIntentOutput) SetConfirmationPrompt(v *Prompt) *GetIntentOutput { 8453 s.ConfirmationPrompt = v 8454 return s 8455} 8456 8457// SetCreatedDate sets the CreatedDate field's value. 8458func (s *GetIntentOutput) SetCreatedDate(v time.Time) *GetIntentOutput { 8459 s.CreatedDate = &v 8460 return s 8461} 8462 8463// SetDescription sets the Description field's value. 8464func (s *GetIntentOutput) SetDescription(v string) *GetIntentOutput { 8465 s.Description = &v 8466 return s 8467} 8468 8469// SetDialogCodeHook sets the DialogCodeHook field's value. 8470func (s *GetIntentOutput) SetDialogCodeHook(v *CodeHook) *GetIntentOutput { 8471 s.DialogCodeHook = v 8472 return s 8473} 8474 8475// SetFollowUpPrompt sets the FollowUpPrompt field's value. 8476func (s *GetIntentOutput) SetFollowUpPrompt(v *FollowUpPrompt) *GetIntentOutput { 8477 s.FollowUpPrompt = v 8478 return s 8479} 8480 8481// SetFulfillmentActivity sets the FulfillmentActivity field's value. 8482func (s *GetIntentOutput) SetFulfillmentActivity(v *FulfillmentActivity) *GetIntentOutput { 8483 s.FulfillmentActivity = v 8484 return s 8485} 8486 8487// SetInputContexts sets the InputContexts field's value. 8488func (s *GetIntentOutput) SetInputContexts(v []*InputContext) *GetIntentOutput { 8489 s.InputContexts = v 8490 return s 8491} 8492 8493// SetKendraConfiguration sets the KendraConfiguration field's value. 8494func (s *GetIntentOutput) SetKendraConfiguration(v *KendraConfiguration) *GetIntentOutput { 8495 s.KendraConfiguration = v 8496 return s 8497} 8498 8499// SetLastUpdatedDate sets the LastUpdatedDate field's value. 8500func (s *GetIntentOutput) SetLastUpdatedDate(v time.Time) *GetIntentOutput { 8501 s.LastUpdatedDate = &v 8502 return s 8503} 8504 8505// SetName sets the Name field's value. 8506func (s *GetIntentOutput) SetName(v string) *GetIntentOutput { 8507 s.Name = &v 8508 return s 8509} 8510 8511// SetOutputContexts sets the OutputContexts field's value. 8512func (s *GetIntentOutput) SetOutputContexts(v []*OutputContext) *GetIntentOutput { 8513 s.OutputContexts = v 8514 return s 8515} 8516 8517// SetParentIntentSignature sets the ParentIntentSignature field's value. 8518func (s *GetIntentOutput) SetParentIntentSignature(v string) *GetIntentOutput { 8519 s.ParentIntentSignature = &v 8520 return s 8521} 8522 8523// SetRejectionStatement sets the RejectionStatement field's value. 8524func (s *GetIntentOutput) SetRejectionStatement(v *Statement) *GetIntentOutput { 8525 s.RejectionStatement = v 8526 return s 8527} 8528 8529// SetSampleUtterances sets the SampleUtterances field's value. 8530func (s *GetIntentOutput) SetSampleUtterances(v []*string) *GetIntentOutput { 8531 s.SampleUtterances = v 8532 return s 8533} 8534 8535// SetSlots sets the Slots field's value. 8536func (s *GetIntentOutput) SetSlots(v []*Slot) *GetIntentOutput { 8537 s.Slots = v 8538 return s 8539} 8540 8541// SetVersion sets the Version field's value. 8542func (s *GetIntentOutput) SetVersion(v string) *GetIntentOutput { 8543 s.Version = &v 8544 return s 8545} 8546 8547type GetIntentVersionsInput struct { 8548 _ struct{} `type:"structure"` 8549 8550 // The maximum number of intent versions to return in the response. The default 8551 // is 10. 8552 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8553 8554 // The name of the intent for which versions should be returned. 8555 // 8556 // Name is a required field 8557 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 8558 8559 // A pagination token for fetching the next page of intent versions. If the 8560 // response to this call is truncated, Amazon Lex returns a pagination token 8561 // in the response. To fetch the next page of versions, specify the pagination 8562 // token in the next request. 8563 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8564} 8565 8566// String returns the string representation 8567func (s GetIntentVersionsInput) String() string { 8568 return awsutil.Prettify(s) 8569} 8570 8571// GoString returns the string representation 8572func (s GetIntentVersionsInput) GoString() string { 8573 return s.String() 8574} 8575 8576// Validate inspects the fields of the type to determine if they are valid. 8577func (s *GetIntentVersionsInput) Validate() error { 8578 invalidParams := request.ErrInvalidParams{Context: "GetIntentVersionsInput"} 8579 if s.MaxResults != nil && *s.MaxResults < 1 { 8580 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8581 } 8582 if s.Name == nil { 8583 invalidParams.Add(request.NewErrParamRequired("Name")) 8584 } 8585 if s.Name != nil && len(*s.Name) < 1 { 8586 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 8587 } 8588 8589 if invalidParams.Len() > 0 { 8590 return invalidParams 8591 } 8592 return nil 8593} 8594 8595// SetMaxResults sets the MaxResults field's value. 8596func (s *GetIntentVersionsInput) SetMaxResults(v int64) *GetIntentVersionsInput { 8597 s.MaxResults = &v 8598 return s 8599} 8600 8601// SetName sets the Name field's value. 8602func (s *GetIntentVersionsInput) SetName(v string) *GetIntentVersionsInput { 8603 s.Name = &v 8604 return s 8605} 8606 8607// SetNextToken sets the NextToken field's value. 8608func (s *GetIntentVersionsInput) SetNextToken(v string) *GetIntentVersionsInput { 8609 s.NextToken = &v 8610 return s 8611} 8612 8613type GetIntentVersionsOutput struct { 8614 _ struct{} `type:"structure"` 8615 8616 // An array of IntentMetadata objects, one for each numbered version of the 8617 // intent plus one for the $LATEST version. 8618 Intents []*IntentMetadata `locationName:"intents" type:"list"` 8619 8620 // A pagination token for fetching the next page of intent versions. If the 8621 // response to this call is truncated, Amazon Lex returns a pagination token 8622 // in the response. To fetch the next page of versions, specify the pagination 8623 // token in the next request. 8624 NextToken *string `locationName:"nextToken" type:"string"` 8625} 8626 8627// String returns the string representation 8628func (s GetIntentVersionsOutput) String() string { 8629 return awsutil.Prettify(s) 8630} 8631 8632// GoString returns the string representation 8633func (s GetIntentVersionsOutput) GoString() string { 8634 return s.String() 8635} 8636 8637// SetIntents sets the Intents field's value. 8638func (s *GetIntentVersionsOutput) SetIntents(v []*IntentMetadata) *GetIntentVersionsOutput { 8639 s.Intents = v 8640 return s 8641} 8642 8643// SetNextToken sets the NextToken field's value. 8644func (s *GetIntentVersionsOutput) SetNextToken(v string) *GetIntentVersionsOutput { 8645 s.NextToken = &v 8646 return s 8647} 8648 8649type GetIntentsInput struct { 8650 _ struct{} `type:"structure"` 8651 8652 // The maximum number of intents to return in the response. The default is 10. 8653 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8654 8655 // Substring to match in intent names. An intent will be returned if any part 8656 // of its name matches the substring. For example, "xyz" matches both "xyzabc" 8657 // and "abcxyz." 8658 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 8659 8660 // A pagination token that fetches the next page of intents. If the response 8661 // to this API call is truncated, Amazon Lex returns a pagination token in the 8662 // response. To fetch the next page of intents, specify the pagination token 8663 // in the next request. 8664 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8665} 8666 8667// String returns the string representation 8668func (s GetIntentsInput) String() string { 8669 return awsutil.Prettify(s) 8670} 8671 8672// GoString returns the string representation 8673func (s GetIntentsInput) GoString() string { 8674 return s.String() 8675} 8676 8677// Validate inspects the fields of the type to determine if they are valid. 8678func (s *GetIntentsInput) Validate() error { 8679 invalidParams := request.ErrInvalidParams{Context: "GetIntentsInput"} 8680 if s.MaxResults != nil && *s.MaxResults < 1 { 8681 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8682 } 8683 if s.NameContains != nil && len(*s.NameContains) < 1 { 8684 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 8685 } 8686 8687 if invalidParams.Len() > 0 { 8688 return invalidParams 8689 } 8690 return nil 8691} 8692 8693// SetMaxResults sets the MaxResults field's value. 8694func (s *GetIntentsInput) SetMaxResults(v int64) *GetIntentsInput { 8695 s.MaxResults = &v 8696 return s 8697} 8698 8699// SetNameContains sets the NameContains field's value. 8700func (s *GetIntentsInput) SetNameContains(v string) *GetIntentsInput { 8701 s.NameContains = &v 8702 return s 8703} 8704 8705// SetNextToken sets the NextToken field's value. 8706func (s *GetIntentsInput) SetNextToken(v string) *GetIntentsInput { 8707 s.NextToken = &v 8708 return s 8709} 8710 8711type GetIntentsOutput struct { 8712 _ struct{} `type:"structure"` 8713 8714 // An array of Intent objects. For more information, see PutBot. 8715 Intents []*IntentMetadata `locationName:"intents" type:"list"` 8716 8717 // If the response is truncated, the response includes a pagination token that 8718 // you can specify in your next request to fetch the next page of intents. 8719 NextToken *string `locationName:"nextToken" type:"string"` 8720} 8721 8722// String returns the string representation 8723func (s GetIntentsOutput) String() string { 8724 return awsutil.Prettify(s) 8725} 8726 8727// GoString returns the string representation 8728func (s GetIntentsOutput) GoString() string { 8729 return s.String() 8730} 8731 8732// SetIntents sets the Intents field's value. 8733func (s *GetIntentsOutput) SetIntents(v []*IntentMetadata) *GetIntentsOutput { 8734 s.Intents = v 8735 return s 8736} 8737 8738// SetNextToken sets the NextToken field's value. 8739func (s *GetIntentsOutput) SetNextToken(v string) *GetIntentsOutput { 8740 s.NextToken = &v 8741 return s 8742} 8743 8744type GetSlotTypeInput struct { 8745 _ struct{} `type:"structure"` 8746 8747 // The name of the slot type. The name is case sensitive. 8748 // 8749 // Name is a required field 8750 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 8751 8752 // The version of the slot type. 8753 // 8754 // Version is a required field 8755 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 8756} 8757 8758// String returns the string representation 8759func (s GetSlotTypeInput) String() string { 8760 return awsutil.Prettify(s) 8761} 8762 8763// GoString returns the string representation 8764func (s GetSlotTypeInput) GoString() string { 8765 return s.String() 8766} 8767 8768// Validate inspects the fields of the type to determine if they are valid. 8769func (s *GetSlotTypeInput) Validate() error { 8770 invalidParams := request.ErrInvalidParams{Context: "GetSlotTypeInput"} 8771 if s.Name == nil { 8772 invalidParams.Add(request.NewErrParamRequired("Name")) 8773 } 8774 if s.Name != nil && len(*s.Name) < 1 { 8775 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 8776 } 8777 if s.Version == nil { 8778 invalidParams.Add(request.NewErrParamRequired("Version")) 8779 } 8780 if s.Version != nil && len(*s.Version) < 1 { 8781 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 8782 } 8783 8784 if invalidParams.Len() > 0 { 8785 return invalidParams 8786 } 8787 return nil 8788} 8789 8790// SetName sets the Name field's value. 8791func (s *GetSlotTypeInput) SetName(v string) *GetSlotTypeInput { 8792 s.Name = &v 8793 return s 8794} 8795 8796// SetVersion sets the Version field's value. 8797func (s *GetSlotTypeInput) SetVersion(v string) *GetSlotTypeInput { 8798 s.Version = &v 8799 return s 8800} 8801 8802type GetSlotTypeOutput struct { 8803 _ struct{} `type:"structure"` 8804 8805 // Checksum of the $LATEST version of the slot type. 8806 Checksum *string `locationName:"checksum" type:"string"` 8807 8808 // The date that the slot type was created. 8809 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 8810 8811 // A description of the slot type. 8812 Description *string `locationName:"description" type:"string"` 8813 8814 // A list of EnumerationValue objects that defines the values that the slot 8815 // type can take. 8816 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 8817 8818 // The date that the slot type was updated. When you create a resource, the 8819 // creation date and last update date are the same. 8820 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 8821 8822 // The name of the slot type. 8823 Name *string `locationName:"name" min:"1" type:"string"` 8824 8825 // The built-in slot type used as a parent for the slot type. 8826 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 8827 8828 // Configuration information that extends the parent built-in slot type. 8829 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 8830 8831 // The strategy that Amazon Lex uses to determine the value of the slot. For 8832 // more information, see PutSlotType. 8833 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 8834 8835 // The version of the slot type. 8836 Version *string `locationName:"version" min:"1" type:"string"` 8837} 8838 8839// String returns the string representation 8840func (s GetSlotTypeOutput) String() string { 8841 return awsutil.Prettify(s) 8842} 8843 8844// GoString returns the string representation 8845func (s GetSlotTypeOutput) GoString() string { 8846 return s.String() 8847} 8848 8849// SetChecksum sets the Checksum field's value. 8850func (s *GetSlotTypeOutput) SetChecksum(v string) *GetSlotTypeOutput { 8851 s.Checksum = &v 8852 return s 8853} 8854 8855// SetCreatedDate sets the CreatedDate field's value. 8856func (s *GetSlotTypeOutput) SetCreatedDate(v time.Time) *GetSlotTypeOutput { 8857 s.CreatedDate = &v 8858 return s 8859} 8860 8861// SetDescription sets the Description field's value. 8862func (s *GetSlotTypeOutput) SetDescription(v string) *GetSlotTypeOutput { 8863 s.Description = &v 8864 return s 8865} 8866 8867// SetEnumerationValues sets the EnumerationValues field's value. 8868func (s *GetSlotTypeOutput) SetEnumerationValues(v []*EnumerationValue) *GetSlotTypeOutput { 8869 s.EnumerationValues = v 8870 return s 8871} 8872 8873// SetLastUpdatedDate sets the LastUpdatedDate field's value. 8874func (s *GetSlotTypeOutput) SetLastUpdatedDate(v time.Time) *GetSlotTypeOutput { 8875 s.LastUpdatedDate = &v 8876 return s 8877} 8878 8879// SetName sets the Name field's value. 8880func (s *GetSlotTypeOutput) SetName(v string) *GetSlotTypeOutput { 8881 s.Name = &v 8882 return s 8883} 8884 8885// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 8886func (s *GetSlotTypeOutput) SetParentSlotTypeSignature(v string) *GetSlotTypeOutput { 8887 s.ParentSlotTypeSignature = &v 8888 return s 8889} 8890 8891// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 8892func (s *GetSlotTypeOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *GetSlotTypeOutput { 8893 s.SlotTypeConfigurations = v 8894 return s 8895} 8896 8897// SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 8898func (s *GetSlotTypeOutput) SetValueSelectionStrategy(v string) *GetSlotTypeOutput { 8899 s.ValueSelectionStrategy = &v 8900 return s 8901} 8902 8903// SetVersion sets the Version field's value. 8904func (s *GetSlotTypeOutput) SetVersion(v string) *GetSlotTypeOutput { 8905 s.Version = &v 8906 return s 8907} 8908 8909type GetSlotTypeVersionsInput struct { 8910 _ struct{} `type:"structure"` 8911 8912 // The maximum number of slot type versions to return in the response. The default 8913 // is 10. 8914 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8915 8916 // The name of the slot type for which versions should be returned. 8917 // 8918 // Name is a required field 8919 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 8920 8921 // A pagination token for fetching the next page of slot type versions. If the 8922 // response to this call is truncated, Amazon Lex returns a pagination token 8923 // in the response. To fetch the next page of versions, specify the pagination 8924 // token in the next request. 8925 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8926} 8927 8928// String returns the string representation 8929func (s GetSlotTypeVersionsInput) String() string { 8930 return awsutil.Prettify(s) 8931} 8932 8933// GoString returns the string representation 8934func (s GetSlotTypeVersionsInput) GoString() string { 8935 return s.String() 8936} 8937 8938// Validate inspects the fields of the type to determine if they are valid. 8939func (s *GetSlotTypeVersionsInput) Validate() error { 8940 invalidParams := request.ErrInvalidParams{Context: "GetSlotTypeVersionsInput"} 8941 if s.MaxResults != nil && *s.MaxResults < 1 { 8942 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8943 } 8944 if s.Name == nil { 8945 invalidParams.Add(request.NewErrParamRequired("Name")) 8946 } 8947 if s.Name != nil && len(*s.Name) < 1 { 8948 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 8949 } 8950 8951 if invalidParams.Len() > 0 { 8952 return invalidParams 8953 } 8954 return nil 8955} 8956 8957// SetMaxResults sets the MaxResults field's value. 8958func (s *GetSlotTypeVersionsInput) SetMaxResults(v int64) *GetSlotTypeVersionsInput { 8959 s.MaxResults = &v 8960 return s 8961} 8962 8963// SetName sets the Name field's value. 8964func (s *GetSlotTypeVersionsInput) SetName(v string) *GetSlotTypeVersionsInput { 8965 s.Name = &v 8966 return s 8967} 8968 8969// SetNextToken sets the NextToken field's value. 8970func (s *GetSlotTypeVersionsInput) SetNextToken(v string) *GetSlotTypeVersionsInput { 8971 s.NextToken = &v 8972 return s 8973} 8974 8975type GetSlotTypeVersionsOutput struct { 8976 _ struct{} `type:"structure"` 8977 8978 // A pagination token for fetching the next page of slot type versions. If the 8979 // response to this call is truncated, Amazon Lex returns a pagination token 8980 // in the response. To fetch the next page of versions, specify the pagination 8981 // token in the next request. 8982 NextToken *string `locationName:"nextToken" type:"string"` 8983 8984 // An array of SlotTypeMetadata objects, one for each numbered version of the 8985 // slot type plus one for the $LATEST version. 8986 SlotTypes []*SlotTypeMetadata `locationName:"slotTypes" type:"list"` 8987} 8988 8989// String returns the string representation 8990func (s GetSlotTypeVersionsOutput) String() string { 8991 return awsutil.Prettify(s) 8992} 8993 8994// GoString returns the string representation 8995func (s GetSlotTypeVersionsOutput) GoString() string { 8996 return s.String() 8997} 8998 8999// SetNextToken sets the NextToken field's value. 9000func (s *GetSlotTypeVersionsOutput) SetNextToken(v string) *GetSlotTypeVersionsOutput { 9001 s.NextToken = &v 9002 return s 9003} 9004 9005// SetSlotTypes sets the SlotTypes field's value. 9006func (s *GetSlotTypeVersionsOutput) SetSlotTypes(v []*SlotTypeMetadata) *GetSlotTypeVersionsOutput { 9007 s.SlotTypes = v 9008 return s 9009} 9010 9011type GetSlotTypesInput struct { 9012 _ struct{} `type:"structure"` 9013 9014 // The maximum number of slot types to return in the response. The default is 9015 // 10. 9016 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 9017 9018 // Substring to match in slot type names. A slot type will be returned if any 9019 // part of its name matches the substring. For example, "xyz" matches both "xyzabc" 9020 // and "abcxyz." 9021 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 9022 9023 // A pagination token that fetches the next page of slot types. If the response 9024 // to this API call is truncated, Amazon Lex returns a pagination token in the 9025 // response. To fetch next page of slot types, specify the pagination token 9026 // in the next request. 9027 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 9028} 9029 9030// String returns the string representation 9031func (s GetSlotTypesInput) String() string { 9032 return awsutil.Prettify(s) 9033} 9034 9035// GoString returns the string representation 9036func (s GetSlotTypesInput) GoString() string { 9037 return s.String() 9038} 9039 9040// Validate inspects the fields of the type to determine if they are valid. 9041func (s *GetSlotTypesInput) Validate() error { 9042 invalidParams := request.ErrInvalidParams{Context: "GetSlotTypesInput"} 9043 if s.MaxResults != nil && *s.MaxResults < 1 { 9044 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 9045 } 9046 if s.NameContains != nil && len(*s.NameContains) < 1 { 9047 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 9048 } 9049 9050 if invalidParams.Len() > 0 { 9051 return invalidParams 9052 } 9053 return nil 9054} 9055 9056// SetMaxResults sets the MaxResults field's value. 9057func (s *GetSlotTypesInput) SetMaxResults(v int64) *GetSlotTypesInput { 9058 s.MaxResults = &v 9059 return s 9060} 9061 9062// SetNameContains sets the NameContains field's value. 9063func (s *GetSlotTypesInput) SetNameContains(v string) *GetSlotTypesInput { 9064 s.NameContains = &v 9065 return s 9066} 9067 9068// SetNextToken sets the NextToken field's value. 9069func (s *GetSlotTypesInput) SetNextToken(v string) *GetSlotTypesInput { 9070 s.NextToken = &v 9071 return s 9072} 9073 9074type GetSlotTypesOutput struct { 9075 _ struct{} `type:"structure"` 9076 9077 // If the response is truncated, it includes a pagination token that you can 9078 // specify in your next request to fetch the next page of slot types. 9079 NextToken *string `locationName:"nextToken" type:"string"` 9080 9081 // An array of objects, one for each slot type, that provides information such 9082 // as the name of the slot type, the version, and a description. 9083 SlotTypes []*SlotTypeMetadata `locationName:"slotTypes" type:"list"` 9084} 9085 9086// String returns the string representation 9087func (s GetSlotTypesOutput) String() string { 9088 return awsutil.Prettify(s) 9089} 9090 9091// GoString returns the string representation 9092func (s GetSlotTypesOutput) GoString() string { 9093 return s.String() 9094} 9095 9096// SetNextToken sets the NextToken field's value. 9097func (s *GetSlotTypesOutput) SetNextToken(v string) *GetSlotTypesOutput { 9098 s.NextToken = &v 9099 return s 9100} 9101 9102// SetSlotTypes sets the SlotTypes field's value. 9103func (s *GetSlotTypesOutput) SetSlotTypes(v []*SlotTypeMetadata) *GetSlotTypesOutput { 9104 s.SlotTypes = v 9105 return s 9106} 9107 9108type GetUtterancesViewInput struct { 9109 _ struct{} `type:"structure"` 9110 9111 // The name of the bot for which utterance information should be returned. 9112 // 9113 // BotName is a required field 9114 BotName *string `location:"uri" locationName:"botname" min:"2" type:"string" required:"true"` 9115 9116 // An array of bot versions for which utterance information should be returned. 9117 // The limit is 5 versions per request. 9118 // 9119 // BotVersions is a required field 9120 BotVersions []*string `location:"querystring" locationName:"bot_versions" min:"1" type:"list" required:"true"` 9121 9122 // To return utterances that were recognized and handled, use Detected. To return 9123 // utterances that were not recognized, use Missed. 9124 // 9125 // StatusType is a required field 9126 StatusType *string `location:"querystring" locationName:"status_type" type:"string" required:"true" enum:"StatusType"` 9127} 9128 9129// String returns the string representation 9130func (s GetUtterancesViewInput) String() string { 9131 return awsutil.Prettify(s) 9132} 9133 9134// GoString returns the string representation 9135func (s GetUtterancesViewInput) GoString() string { 9136 return s.String() 9137} 9138 9139// Validate inspects the fields of the type to determine if they are valid. 9140func (s *GetUtterancesViewInput) Validate() error { 9141 invalidParams := request.ErrInvalidParams{Context: "GetUtterancesViewInput"} 9142 if s.BotName == nil { 9143 invalidParams.Add(request.NewErrParamRequired("BotName")) 9144 } 9145 if s.BotName != nil && len(*s.BotName) < 2 { 9146 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 9147 } 9148 if s.BotVersions == nil { 9149 invalidParams.Add(request.NewErrParamRequired("BotVersions")) 9150 } 9151 if s.BotVersions != nil && len(s.BotVersions) < 1 { 9152 invalidParams.Add(request.NewErrParamMinLen("BotVersions", 1)) 9153 } 9154 if s.StatusType == nil { 9155 invalidParams.Add(request.NewErrParamRequired("StatusType")) 9156 } 9157 9158 if invalidParams.Len() > 0 { 9159 return invalidParams 9160 } 9161 return nil 9162} 9163 9164// SetBotName sets the BotName field's value. 9165func (s *GetUtterancesViewInput) SetBotName(v string) *GetUtterancesViewInput { 9166 s.BotName = &v 9167 return s 9168} 9169 9170// SetBotVersions sets the BotVersions field's value. 9171func (s *GetUtterancesViewInput) SetBotVersions(v []*string) *GetUtterancesViewInput { 9172 s.BotVersions = v 9173 return s 9174} 9175 9176// SetStatusType sets the StatusType field's value. 9177func (s *GetUtterancesViewInput) SetStatusType(v string) *GetUtterancesViewInput { 9178 s.StatusType = &v 9179 return s 9180} 9181 9182type GetUtterancesViewOutput struct { 9183 _ struct{} `type:"structure"` 9184 9185 // The name of the bot for which utterance information was returned. 9186 BotName *string `locationName:"botName" min:"2" type:"string"` 9187 9188 // An array of UtteranceList objects, each containing a list of UtteranceData 9189 // objects describing the utterances that were processed by your bot. The response 9190 // contains a maximum of 100 UtteranceData objects for each version. Amazon 9191 // Lex returns the most frequent utterances received by the bot in the last 9192 // 15 days. 9193 Utterances []*UtteranceList `locationName:"utterances" type:"list"` 9194} 9195 9196// String returns the string representation 9197func (s GetUtterancesViewOutput) String() string { 9198 return awsutil.Prettify(s) 9199} 9200 9201// GoString returns the string representation 9202func (s GetUtterancesViewOutput) GoString() string { 9203 return s.String() 9204} 9205 9206// SetBotName sets the BotName field's value. 9207func (s *GetUtterancesViewOutput) SetBotName(v string) *GetUtterancesViewOutput { 9208 s.BotName = &v 9209 return s 9210} 9211 9212// SetUtterances sets the Utterances field's value. 9213func (s *GetUtterancesViewOutput) SetUtterances(v []*UtteranceList) *GetUtterancesViewOutput { 9214 s.Utterances = v 9215 return s 9216} 9217 9218// The name of a context that must be active for an intent to be selected by 9219// Amazon Lex. 9220type InputContext struct { 9221 _ struct{} `type:"structure"` 9222 9223 // The name of the context. 9224 // 9225 // Name is a required field 9226 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 9227} 9228 9229// String returns the string representation 9230func (s InputContext) String() string { 9231 return awsutil.Prettify(s) 9232} 9233 9234// GoString returns the string representation 9235func (s InputContext) GoString() string { 9236 return s.String() 9237} 9238 9239// Validate inspects the fields of the type to determine if they are valid. 9240func (s *InputContext) Validate() error { 9241 invalidParams := request.ErrInvalidParams{Context: "InputContext"} 9242 if s.Name == nil { 9243 invalidParams.Add(request.NewErrParamRequired("Name")) 9244 } 9245 if s.Name != nil && len(*s.Name) < 1 { 9246 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 9247 } 9248 9249 if invalidParams.Len() > 0 { 9250 return invalidParams 9251 } 9252 return nil 9253} 9254 9255// SetName sets the Name field's value. 9256func (s *InputContext) SetName(v string) *InputContext { 9257 s.Name = &v 9258 return s 9259} 9260 9261// Identifies the specific version of an intent. 9262type Intent struct { 9263 _ struct{} `type:"structure"` 9264 9265 // The name of the intent. 9266 // 9267 // IntentName is a required field 9268 IntentName *string `locationName:"intentName" min:"1" type:"string" required:"true"` 9269 9270 // The version of the intent. 9271 // 9272 // IntentVersion is a required field 9273 IntentVersion *string `locationName:"intentVersion" min:"1" type:"string" required:"true"` 9274} 9275 9276// String returns the string representation 9277func (s Intent) String() string { 9278 return awsutil.Prettify(s) 9279} 9280 9281// GoString returns the string representation 9282func (s Intent) GoString() string { 9283 return s.String() 9284} 9285 9286// Validate inspects the fields of the type to determine if they are valid. 9287func (s *Intent) Validate() error { 9288 invalidParams := request.ErrInvalidParams{Context: "Intent"} 9289 if s.IntentName == nil { 9290 invalidParams.Add(request.NewErrParamRequired("IntentName")) 9291 } 9292 if s.IntentName != nil && len(*s.IntentName) < 1 { 9293 invalidParams.Add(request.NewErrParamMinLen("IntentName", 1)) 9294 } 9295 if s.IntentVersion == nil { 9296 invalidParams.Add(request.NewErrParamRequired("IntentVersion")) 9297 } 9298 if s.IntentVersion != nil && len(*s.IntentVersion) < 1 { 9299 invalidParams.Add(request.NewErrParamMinLen("IntentVersion", 1)) 9300 } 9301 9302 if invalidParams.Len() > 0 { 9303 return invalidParams 9304 } 9305 return nil 9306} 9307 9308// SetIntentName sets the IntentName field's value. 9309func (s *Intent) SetIntentName(v string) *Intent { 9310 s.IntentName = &v 9311 return s 9312} 9313 9314// SetIntentVersion sets the IntentVersion field's value. 9315func (s *Intent) SetIntentVersion(v string) *Intent { 9316 s.IntentVersion = &v 9317 return s 9318} 9319 9320// Provides information about an intent. 9321type IntentMetadata struct { 9322 _ struct{} `type:"structure"` 9323 9324 // The date that the intent was created. 9325 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 9326 9327 // A description of the intent. 9328 Description *string `locationName:"description" type:"string"` 9329 9330 // The date that the intent was updated. When you create an intent, the creation 9331 // date and last updated date are the same. 9332 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 9333 9334 // The name of the intent. 9335 Name *string `locationName:"name" min:"1" type:"string"` 9336 9337 // The version of the intent. 9338 Version *string `locationName:"version" min:"1" type:"string"` 9339} 9340 9341// String returns the string representation 9342func (s IntentMetadata) String() string { 9343 return awsutil.Prettify(s) 9344} 9345 9346// GoString returns the string representation 9347func (s IntentMetadata) GoString() string { 9348 return s.String() 9349} 9350 9351// SetCreatedDate sets the CreatedDate field's value. 9352func (s *IntentMetadata) SetCreatedDate(v time.Time) *IntentMetadata { 9353 s.CreatedDate = &v 9354 return s 9355} 9356 9357// SetDescription sets the Description field's value. 9358func (s *IntentMetadata) SetDescription(v string) *IntentMetadata { 9359 s.Description = &v 9360 return s 9361} 9362 9363// SetLastUpdatedDate sets the LastUpdatedDate field's value. 9364func (s *IntentMetadata) SetLastUpdatedDate(v time.Time) *IntentMetadata { 9365 s.LastUpdatedDate = &v 9366 return s 9367} 9368 9369// SetName sets the Name field's value. 9370func (s *IntentMetadata) SetName(v string) *IntentMetadata { 9371 s.Name = &v 9372 return s 9373} 9374 9375// SetVersion sets the Version field's value. 9376func (s *IntentMetadata) SetVersion(v string) *IntentMetadata { 9377 s.Version = &v 9378 return s 9379} 9380 9381// An internal Amazon Lex error occurred. Try your request again. 9382type InternalFailureException struct { 9383 _ struct{} `type:"structure"` 9384 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9385 9386 Message_ *string `locationName:"message" type:"string"` 9387} 9388 9389// String returns the string representation 9390func (s InternalFailureException) String() string { 9391 return awsutil.Prettify(s) 9392} 9393 9394// GoString returns the string representation 9395func (s InternalFailureException) GoString() string { 9396 return s.String() 9397} 9398 9399func newErrorInternalFailureException(v protocol.ResponseMetadata) error { 9400 return &InternalFailureException{ 9401 RespMetadata: v, 9402 } 9403} 9404 9405// Code returns the exception type name. 9406func (s *InternalFailureException) Code() string { 9407 return "InternalFailureException" 9408} 9409 9410// Message returns the exception's message. 9411func (s *InternalFailureException) Message() string { 9412 if s.Message_ != nil { 9413 return *s.Message_ 9414 } 9415 return "" 9416} 9417 9418// OrigErr always returns nil, satisfies awserr.Error interface. 9419func (s *InternalFailureException) OrigErr() error { 9420 return nil 9421} 9422 9423func (s *InternalFailureException) Error() string { 9424 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 9425} 9426 9427// Status code returns the HTTP status code for the request's response error. 9428func (s *InternalFailureException) StatusCode() int { 9429 return s.RespMetadata.StatusCode 9430} 9431 9432// RequestID returns the service's response RequestID for request. 9433func (s *InternalFailureException) RequestID() string { 9434 return s.RespMetadata.RequestID 9435} 9436 9437// Provides configuration information for the AMAZON.KendraSearchIntent intent. 9438// When you use this intent, Amazon Lex searches the specified Amazon Kendra 9439// index and returns documents from the index that match the user's utterance. 9440// For more information, see AMAZON.KendraSearchIntent (http://docs.aws.amazon.com/lex/latest/dg/built-in-intent-kendra-search.html). 9441type KendraConfiguration struct { 9442 _ struct{} `type:"structure"` 9443 9444 // The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the 9445 // AMAZON.KendraSearchIntent intent to search. The index must be in the same 9446 // account and Region as the Amazon Lex bot. If the Amazon Kendra index does 9447 // not exist, you get an exception when you call the PutIntent operation. 9448 // 9449 // KendraIndex is a required field 9450 KendraIndex *string `locationName:"kendraIndex" min:"20" type:"string" required:"true"` 9451 9452 // A query filter that Amazon Lex sends to Amazon Kendra to filter the response 9453 // from the query. The filter is in the format defined by Amazon Kendra. For 9454 // more information, see Filtering queries (http://docs.aws.amazon.com/kendra/latest/dg/filtering.html). 9455 // 9456 // You can override this filter string with a new filter string at runtime. 9457 QueryFilterString *string `locationName:"queryFilterString" type:"string"` 9458 9459 // The Amazon Resource Name (ARN) of an IAM role that has permission to search 9460 // the Amazon Kendra index. The role must be in the same account and Region 9461 // as the Amazon Lex bot. If the role does not exist, you get an exception when 9462 // you call the PutIntent operation. 9463 // 9464 // Role is a required field 9465 Role *string `locationName:"role" min:"20" type:"string" required:"true"` 9466} 9467 9468// String returns the string representation 9469func (s KendraConfiguration) String() string { 9470 return awsutil.Prettify(s) 9471} 9472 9473// GoString returns the string representation 9474func (s KendraConfiguration) GoString() string { 9475 return s.String() 9476} 9477 9478// Validate inspects the fields of the type to determine if they are valid. 9479func (s *KendraConfiguration) Validate() error { 9480 invalidParams := request.ErrInvalidParams{Context: "KendraConfiguration"} 9481 if s.KendraIndex == nil { 9482 invalidParams.Add(request.NewErrParamRequired("KendraIndex")) 9483 } 9484 if s.KendraIndex != nil && len(*s.KendraIndex) < 20 { 9485 invalidParams.Add(request.NewErrParamMinLen("KendraIndex", 20)) 9486 } 9487 if s.Role == nil { 9488 invalidParams.Add(request.NewErrParamRequired("Role")) 9489 } 9490 if s.Role != nil && len(*s.Role) < 20 { 9491 invalidParams.Add(request.NewErrParamMinLen("Role", 20)) 9492 } 9493 9494 if invalidParams.Len() > 0 { 9495 return invalidParams 9496 } 9497 return nil 9498} 9499 9500// SetKendraIndex sets the KendraIndex field's value. 9501func (s *KendraConfiguration) SetKendraIndex(v string) *KendraConfiguration { 9502 s.KendraIndex = &v 9503 return s 9504} 9505 9506// SetQueryFilterString sets the QueryFilterString field's value. 9507func (s *KendraConfiguration) SetQueryFilterString(v string) *KendraConfiguration { 9508 s.QueryFilterString = &v 9509 return s 9510} 9511 9512// SetRole sets the Role field's value. 9513func (s *KendraConfiguration) SetRole(v string) *KendraConfiguration { 9514 s.Role = &v 9515 return s 9516} 9517 9518// The request exceeded a limit. Try your request again. 9519type LimitExceededException struct { 9520 _ struct{} `type:"structure"` 9521 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9522 9523 Message_ *string `locationName:"message" type:"string"` 9524 9525 RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"` 9526} 9527 9528// String returns the string representation 9529func (s LimitExceededException) String() string { 9530 return awsutil.Prettify(s) 9531} 9532 9533// GoString returns the string representation 9534func (s LimitExceededException) GoString() string { 9535 return s.String() 9536} 9537 9538func newErrorLimitExceededException(v protocol.ResponseMetadata) error { 9539 return &LimitExceededException{ 9540 RespMetadata: v, 9541 } 9542} 9543 9544// Code returns the exception type name. 9545func (s *LimitExceededException) Code() string { 9546 return "LimitExceededException" 9547} 9548 9549// Message returns the exception's message. 9550func (s *LimitExceededException) Message() string { 9551 if s.Message_ != nil { 9552 return *s.Message_ 9553 } 9554 return "" 9555} 9556 9557// OrigErr always returns nil, satisfies awserr.Error interface. 9558func (s *LimitExceededException) OrigErr() error { 9559 return nil 9560} 9561 9562func (s *LimitExceededException) Error() string { 9563 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 9564} 9565 9566// Status code returns the HTTP status code for the request's response error. 9567func (s *LimitExceededException) StatusCode() int { 9568 return s.RespMetadata.StatusCode 9569} 9570 9571// RequestID returns the service's response RequestID for request. 9572func (s *LimitExceededException) RequestID() string { 9573 return s.RespMetadata.RequestID 9574} 9575 9576type ListTagsForResourceInput struct { 9577 _ struct{} `type:"structure"` 9578 9579 // The Amazon Resource Name (ARN) of the resource to get a list of tags for. 9580 // 9581 // ResourceArn is a required field 9582 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` 9583} 9584 9585// String returns the string representation 9586func (s ListTagsForResourceInput) String() string { 9587 return awsutil.Prettify(s) 9588} 9589 9590// GoString returns the string representation 9591func (s ListTagsForResourceInput) GoString() string { 9592 return s.String() 9593} 9594 9595// Validate inspects the fields of the type to determine if they are valid. 9596func (s *ListTagsForResourceInput) Validate() error { 9597 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 9598 if s.ResourceArn == nil { 9599 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 9600 } 9601 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 9602 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 9603 } 9604 9605 if invalidParams.Len() > 0 { 9606 return invalidParams 9607 } 9608 return nil 9609} 9610 9611// SetResourceArn sets the ResourceArn field's value. 9612func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { 9613 s.ResourceArn = &v 9614 return s 9615} 9616 9617type ListTagsForResourceOutput struct { 9618 _ struct{} `type:"structure"` 9619 9620 // The tags associated with a resource. 9621 Tags []*Tag `locationName:"tags" type:"list"` 9622} 9623 9624// String returns the string representation 9625func (s ListTagsForResourceOutput) String() string { 9626 return awsutil.Prettify(s) 9627} 9628 9629// GoString returns the string representation 9630func (s ListTagsForResourceOutput) GoString() string { 9631 return s.String() 9632} 9633 9634// SetTags sets the Tags field's value. 9635func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { 9636 s.Tags = v 9637 return s 9638} 9639 9640// Settings used to configure delivery mode and destination for conversation 9641// logs. 9642type LogSettingsRequest struct { 9643 _ struct{} `type:"structure"` 9644 9645 // Where the logs will be delivered. Text logs are delivered to a CloudWatch 9646 // Logs log group. Audio logs are delivered to an S3 bucket. 9647 // 9648 // Destination is a required field 9649 Destination *string `locationName:"destination" type:"string" required:"true" enum:"Destination"` 9650 9651 // The Amazon Resource Name (ARN) of the AWS KMS customer managed key for encrypting 9652 // audio logs delivered to an S3 bucket. The key does not apply to CloudWatch 9653 // Logs and is optional for S3 buckets. 9654 KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` 9655 9656 // The type of logging to enable. Text logs are delivered to a CloudWatch Logs 9657 // log group. Audio logs are delivered to an S3 bucket. 9658 // 9659 // LogType is a required field 9660 LogType *string `locationName:"logType" type:"string" required:"true" enum:"LogType"` 9661 9662 // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket 9663 // where the logs should be delivered. 9664 // 9665 // ResourceArn is a required field 9666 ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` 9667} 9668 9669// String returns the string representation 9670func (s LogSettingsRequest) String() string { 9671 return awsutil.Prettify(s) 9672} 9673 9674// GoString returns the string representation 9675func (s LogSettingsRequest) GoString() string { 9676 return s.String() 9677} 9678 9679// Validate inspects the fields of the type to determine if they are valid. 9680func (s *LogSettingsRequest) Validate() error { 9681 invalidParams := request.ErrInvalidParams{Context: "LogSettingsRequest"} 9682 if s.Destination == nil { 9683 invalidParams.Add(request.NewErrParamRequired("Destination")) 9684 } 9685 if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 20 { 9686 invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 20)) 9687 } 9688 if s.LogType == nil { 9689 invalidParams.Add(request.NewErrParamRequired("LogType")) 9690 } 9691 if s.ResourceArn == nil { 9692 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 9693 } 9694 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 9695 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 9696 } 9697 9698 if invalidParams.Len() > 0 { 9699 return invalidParams 9700 } 9701 return nil 9702} 9703 9704// SetDestination sets the Destination field's value. 9705func (s *LogSettingsRequest) SetDestination(v string) *LogSettingsRequest { 9706 s.Destination = &v 9707 return s 9708} 9709 9710// SetKmsKeyArn sets the KmsKeyArn field's value. 9711func (s *LogSettingsRequest) SetKmsKeyArn(v string) *LogSettingsRequest { 9712 s.KmsKeyArn = &v 9713 return s 9714} 9715 9716// SetLogType sets the LogType field's value. 9717func (s *LogSettingsRequest) SetLogType(v string) *LogSettingsRequest { 9718 s.LogType = &v 9719 return s 9720} 9721 9722// SetResourceArn sets the ResourceArn field's value. 9723func (s *LogSettingsRequest) SetResourceArn(v string) *LogSettingsRequest { 9724 s.ResourceArn = &v 9725 return s 9726} 9727 9728// The settings for conversation logs. 9729type LogSettingsResponse struct { 9730 _ struct{} `type:"structure"` 9731 9732 // The destination where logs are delivered. 9733 Destination *string `locationName:"destination" type:"string" enum:"Destination"` 9734 9735 // The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an 9736 // S3 bucket. 9737 KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` 9738 9739 // The type of logging that is enabled. 9740 LogType *string `locationName:"logType" type:"string" enum:"LogType"` 9741 9742 // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket 9743 // where the logs are delivered. 9744 ResourceArn *string `locationName:"resourceArn" min:"1" type:"string"` 9745 9746 // The resource prefix is the first part of the S3 object key within the S3 9747 // bucket that you specified to contain audio logs. For CloudWatch Logs it is 9748 // the prefix of the log stream name within the log group that you specified. 9749 ResourcePrefix *string `locationName:"resourcePrefix" type:"string"` 9750} 9751 9752// String returns the string representation 9753func (s LogSettingsResponse) String() string { 9754 return awsutil.Prettify(s) 9755} 9756 9757// GoString returns the string representation 9758func (s LogSettingsResponse) GoString() string { 9759 return s.String() 9760} 9761 9762// SetDestination sets the Destination field's value. 9763func (s *LogSettingsResponse) SetDestination(v string) *LogSettingsResponse { 9764 s.Destination = &v 9765 return s 9766} 9767 9768// SetKmsKeyArn sets the KmsKeyArn field's value. 9769func (s *LogSettingsResponse) SetKmsKeyArn(v string) *LogSettingsResponse { 9770 s.KmsKeyArn = &v 9771 return s 9772} 9773 9774// SetLogType sets the LogType field's value. 9775func (s *LogSettingsResponse) SetLogType(v string) *LogSettingsResponse { 9776 s.LogType = &v 9777 return s 9778} 9779 9780// SetResourceArn sets the ResourceArn field's value. 9781func (s *LogSettingsResponse) SetResourceArn(v string) *LogSettingsResponse { 9782 s.ResourceArn = &v 9783 return s 9784} 9785 9786// SetResourcePrefix sets the ResourcePrefix field's value. 9787func (s *LogSettingsResponse) SetResourcePrefix(v string) *LogSettingsResponse { 9788 s.ResourcePrefix = &v 9789 return s 9790} 9791 9792// The message object that provides the message text and its type. 9793type Message struct { 9794 _ struct{} `type:"structure"` 9795 9796 // The text of the message. 9797 // 9798 // Content is a required field 9799 Content *string `locationName:"content" min:"1" type:"string" required:"true"` 9800 9801 // The content type of the message string. 9802 // 9803 // ContentType is a required field 9804 ContentType *string `locationName:"contentType" type:"string" required:"true" enum:"ContentType"` 9805 9806 // Identifies the message group that the message belongs to. When a group is 9807 // assigned to a message, Amazon Lex returns one message from each group in 9808 // the response. 9809 GroupNumber *int64 `locationName:"groupNumber" min:"1" type:"integer"` 9810} 9811 9812// String returns the string representation 9813func (s Message) String() string { 9814 return awsutil.Prettify(s) 9815} 9816 9817// GoString returns the string representation 9818func (s Message) GoString() string { 9819 return s.String() 9820} 9821 9822// Validate inspects the fields of the type to determine if they are valid. 9823func (s *Message) Validate() error { 9824 invalidParams := request.ErrInvalidParams{Context: "Message"} 9825 if s.Content == nil { 9826 invalidParams.Add(request.NewErrParamRequired("Content")) 9827 } 9828 if s.Content != nil && len(*s.Content) < 1 { 9829 invalidParams.Add(request.NewErrParamMinLen("Content", 1)) 9830 } 9831 if s.ContentType == nil { 9832 invalidParams.Add(request.NewErrParamRequired("ContentType")) 9833 } 9834 if s.GroupNumber != nil && *s.GroupNumber < 1 { 9835 invalidParams.Add(request.NewErrParamMinValue("GroupNumber", 1)) 9836 } 9837 9838 if invalidParams.Len() > 0 { 9839 return invalidParams 9840 } 9841 return nil 9842} 9843 9844// SetContent sets the Content field's value. 9845func (s *Message) SetContent(v string) *Message { 9846 s.Content = &v 9847 return s 9848} 9849 9850// SetContentType sets the ContentType field's value. 9851func (s *Message) SetContentType(v string) *Message { 9852 s.ContentType = &v 9853 return s 9854} 9855 9856// SetGroupNumber sets the GroupNumber field's value. 9857func (s *Message) SetGroupNumber(v int64) *Message { 9858 s.GroupNumber = &v 9859 return s 9860} 9861 9862// The resource specified in the request was not found. Check the resource and 9863// try again. 9864type NotFoundException struct { 9865 _ struct{} `type:"structure"` 9866 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9867 9868 Message_ *string `locationName:"message" type:"string"` 9869} 9870 9871// String returns the string representation 9872func (s NotFoundException) String() string { 9873 return awsutil.Prettify(s) 9874} 9875 9876// GoString returns the string representation 9877func (s NotFoundException) GoString() string { 9878 return s.String() 9879} 9880 9881func newErrorNotFoundException(v protocol.ResponseMetadata) error { 9882 return &NotFoundException{ 9883 RespMetadata: v, 9884 } 9885} 9886 9887// Code returns the exception type name. 9888func (s *NotFoundException) Code() string { 9889 return "NotFoundException" 9890} 9891 9892// Message returns the exception's message. 9893func (s *NotFoundException) Message() string { 9894 if s.Message_ != nil { 9895 return *s.Message_ 9896 } 9897 return "" 9898} 9899 9900// OrigErr always returns nil, satisfies awserr.Error interface. 9901func (s *NotFoundException) OrigErr() error { 9902 return nil 9903} 9904 9905func (s *NotFoundException) Error() string { 9906 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 9907} 9908 9909// Status code returns the HTTP status code for the request's response error. 9910func (s *NotFoundException) StatusCode() int { 9911 return s.RespMetadata.StatusCode 9912} 9913 9914// RequestID returns the service's response RequestID for request. 9915func (s *NotFoundException) RequestID() string { 9916 return s.RespMetadata.RequestID 9917} 9918 9919// The specification of an output context that is set when an intent is fulfilled. 9920type OutputContext struct { 9921 _ struct{} `type:"structure"` 9922 9923 // The name of the context. 9924 // 9925 // Name is a required field 9926 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 9927 9928 // The number of seconds that the context should be active after it is first 9929 // sent in a PostContent or PostText response. You can set the value between 9930 // 5 and 86,400 seconds (24 hours). 9931 // 9932 // TimeToLiveInSeconds is a required field 9933 TimeToLiveInSeconds *int64 `locationName:"timeToLiveInSeconds" min:"5" type:"integer" required:"true"` 9934 9935 // The number of conversation turns that the context should be active. A conversation 9936 // turn is one PostContent or PostText request and the corresponding response 9937 // from Amazon Lex. 9938 // 9939 // TurnsToLive is a required field 9940 TurnsToLive *int64 `locationName:"turnsToLive" min:"1" type:"integer" required:"true"` 9941} 9942 9943// String returns the string representation 9944func (s OutputContext) String() string { 9945 return awsutil.Prettify(s) 9946} 9947 9948// GoString returns the string representation 9949func (s OutputContext) GoString() string { 9950 return s.String() 9951} 9952 9953// Validate inspects the fields of the type to determine if they are valid. 9954func (s *OutputContext) Validate() error { 9955 invalidParams := request.ErrInvalidParams{Context: "OutputContext"} 9956 if s.Name == nil { 9957 invalidParams.Add(request.NewErrParamRequired("Name")) 9958 } 9959 if s.Name != nil && len(*s.Name) < 1 { 9960 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 9961 } 9962 if s.TimeToLiveInSeconds == nil { 9963 invalidParams.Add(request.NewErrParamRequired("TimeToLiveInSeconds")) 9964 } 9965 if s.TimeToLiveInSeconds != nil && *s.TimeToLiveInSeconds < 5 { 9966 invalidParams.Add(request.NewErrParamMinValue("TimeToLiveInSeconds", 5)) 9967 } 9968 if s.TurnsToLive == nil { 9969 invalidParams.Add(request.NewErrParamRequired("TurnsToLive")) 9970 } 9971 if s.TurnsToLive != nil && *s.TurnsToLive < 1 { 9972 invalidParams.Add(request.NewErrParamMinValue("TurnsToLive", 1)) 9973 } 9974 9975 if invalidParams.Len() > 0 { 9976 return invalidParams 9977 } 9978 return nil 9979} 9980 9981// SetName sets the Name field's value. 9982func (s *OutputContext) SetName(v string) *OutputContext { 9983 s.Name = &v 9984 return s 9985} 9986 9987// SetTimeToLiveInSeconds sets the TimeToLiveInSeconds field's value. 9988func (s *OutputContext) SetTimeToLiveInSeconds(v int64) *OutputContext { 9989 s.TimeToLiveInSeconds = &v 9990 return s 9991} 9992 9993// SetTurnsToLive sets the TurnsToLive field's value. 9994func (s *OutputContext) SetTurnsToLive(v int64) *OutputContext { 9995 s.TurnsToLive = &v 9996 return s 9997} 9998 9999// The checksum of the resource that you are trying to change does not match 10000// the checksum in the request. Check the resource's checksum and try again. 10001type PreconditionFailedException struct { 10002 _ struct{} `type:"structure"` 10003 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10004 10005 Message_ *string `locationName:"message" type:"string"` 10006} 10007 10008// String returns the string representation 10009func (s PreconditionFailedException) String() string { 10010 return awsutil.Prettify(s) 10011} 10012 10013// GoString returns the string representation 10014func (s PreconditionFailedException) GoString() string { 10015 return s.String() 10016} 10017 10018func newErrorPreconditionFailedException(v protocol.ResponseMetadata) error { 10019 return &PreconditionFailedException{ 10020 RespMetadata: v, 10021 } 10022} 10023 10024// Code returns the exception type name. 10025func (s *PreconditionFailedException) Code() string { 10026 return "PreconditionFailedException" 10027} 10028 10029// Message returns the exception's message. 10030func (s *PreconditionFailedException) Message() string { 10031 if s.Message_ != nil { 10032 return *s.Message_ 10033 } 10034 return "" 10035} 10036 10037// OrigErr always returns nil, satisfies awserr.Error interface. 10038func (s *PreconditionFailedException) OrigErr() error { 10039 return nil 10040} 10041 10042func (s *PreconditionFailedException) Error() string { 10043 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 10044} 10045 10046// Status code returns the HTTP status code for the request's response error. 10047func (s *PreconditionFailedException) StatusCode() int { 10048 return s.RespMetadata.StatusCode 10049} 10050 10051// RequestID returns the service's response RequestID for request. 10052func (s *PreconditionFailedException) RequestID() string { 10053 return s.RespMetadata.RequestID 10054} 10055 10056// Obtains information from the user. To define a prompt, provide one or more 10057// messages and specify the number of attempts to get information from the user. 10058// If you provide more than one message, Amazon Lex chooses one of the messages 10059// to use to prompt the user. For more information, see how-it-works. 10060type Prompt struct { 10061 _ struct{} `type:"structure"` 10062 10063 // The number of times to prompt the user for information. 10064 // 10065 // MaxAttempts is a required field 10066 MaxAttempts *int64 `locationName:"maxAttempts" min:"1" type:"integer" required:"true"` 10067 10068 // An array of objects, each of which provides a message string and its type. 10069 // You can specify the message string in plain text or in Speech Synthesis Markup 10070 // Language (SSML). 10071 // 10072 // Messages is a required field 10073 Messages []*Message `locationName:"messages" min:"1" type:"list" required:"true"` 10074 10075 // A response card. Amazon Lex uses this prompt at runtime, in the PostText 10076 // API response. It substitutes session attributes and slot values for placeholders 10077 // in the response card. For more information, see ex-resp-card. 10078 ResponseCard *string `locationName:"responseCard" min:"1" type:"string"` 10079} 10080 10081// String returns the string representation 10082func (s Prompt) String() string { 10083 return awsutil.Prettify(s) 10084} 10085 10086// GoString returns the string representation 10087func (s Prompt) GoString() string { 10088 return s.String() 10089} 10090 10091// Validate inspects the fields of the type to determine if they are valid. 10092func (s *Prompt) Validate() error { 10093 invalidParams := request.ErrInvalidParams{Context: "Prompt"} 10094 if s.MaxAttempts == nil { 10095 invalidParams.Add(request.NewErrParamRequired("MaxAttempts")) 10096 } 10097 if s.MaxAttempts != nil && *s.MaxAttempts < 1 { 10098 invalidParams.Add(request.NewErrParamMinValue("MaxAttempts", 1)) 10099 } 10100 if s.Messages == nil { 10101 invalidParams.Add(request.NewErrParamRequired("Messages")) 10102 } 10103 if s.Messages != nil && len(s.Messages) < 1 { 10104 invalidParams.Add(request.NewErrParamMinLen("Messages", 1)) 10105 } 10106 if s.ResponseCard != nil && len(*s.ResponseCard) < 1 { 10107 invalidParams.Add(request.NewErrParamMinLen("ResponseCard", 1)) 10108 } 10109 if s.Messages != nil { 10110 for i, v := range s.Messages { 10111 if v == nil { 10112 continue 10113 } 10114 if err := v.Validate(); err != nil { 10115 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Messages", i), err.(request.ErrInvalidParams)) 10116 } 10117 } 10118 } 10119 10120 if invalidParams.Len() > 0 { 10121 return invalidParams 10122 } 10123 return nil 10124} 10125 10126// SetMaxAttempts sets the MaxAttempts field's value. 10127func (s *Prompt) SetMaxAttempts(v int64) *Prompt { 10128 s.MaxAttempts = &v 10129 return s 10130} 10131 10132// SetMessages sets the Messages field's value. 10133func (s *Prompt) SetMessages(v []*Message) *Prompt { 10134 s.Messages = v 10135 return s 10136} 10137 10138// SetResponseCard sets the ResponseCard field's value. 10139func (s *Prompt) SetResponseCard(v string) *Prompt { 10140 s.ResponseCard = &v 10141 return s 10142} 10143 10144type PutBotAliasInput struct { 10145 _ struct{} `type:"structure"` 10146 10147 // The name of the bot. 10148 // 10149 // BotName is a required field 10150 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 10151 10152 // The version of the bot. 10153 // 10154 // BotVersion is a required field 10155 BotVersion *string `locationName:"botVersion" min:"1" type:"string" required:"true"` 10156 10157 // Identifies a specific revision of the $LATEST version. 10158 // 10159 // When you create a new bot alias, leave the checksum field blank. If you specify 10160 // a checksum you get a BadRequestException exception. 10161 // 10162 // When you want to update a bot alias, set the checksum field to the checksum 10163 // of the most recent revision of the $LATEST version. If you don't specify 10164 // the checksum field, or if the checksum does not match the $LATEST version, 10165 // you get a PreconditionFailedException exception. 10166 Checksum *string `locationName:"checksum" type:"string"` 10167 10168 // Settings for conversation logs for the alias. 10169 ConversationLogs *ConversationLogsRequest `locationName:"conversationLogs" type:"structure"` 10170 10171 // A description of the alias. 10172 Description *string `locationName:"description" type:"string"` 10173 10174 // The name of the alias. The name is not case sensitive. 10175 // 10176 // Name is a required field 10177 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 10178 10179 // A list of tags to add to the bot alias. You can only add tags when you create 10180 // an alias, you can't use the PutBotAlias operation to update the tags on a 10181 // bot alias. To update tags, use the TagResource operation. 10182 Tags []*Tag `locationName:"tags" type:"list"` 10183} 10184 10185// String returns the string representation 10186func (s PutBotAliasInput) String() string { 10187 return awsutil.Prettify(s) 10188} 10189 10190// GoString returns the string representation 10191func (s PutBotAliasInput) GoString() string { 10192 return s.String() 10193} 10194 10195// Validate inspects the fields of the type to determine if they are valid. 10196func (s *PutBotAliasInput) Validate() error { 10197 invalidParams := request.ErrInvalidParams{Context: "PutBotAliasInput"} 10198 if s.BotName == nil { 10199 invalidParams.Add(request.NewErrParamRequired("BotName")) 10200 } 10201 if s.BotName != nil && len(*s.BotName) < 2 { 10202 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 10203 } 10204 if s.BotVersion == nil { 10205 invalidParams.Add(request.NewErrParamRequired("BotVersion")) 10206 } 10207 if s.BotVersion != nil && len(*s.BotVersion) < 1 { 10208 invalidParams.Add(request.NewErrParamMinLen("BotVersion", 1)) 10209 } 10210 if s.Name == nil { 10211 invalidParams.Add(request.NewErrParamRequired("Name")) 10212 } 10213 if s.Name != nil && len(*s.Name) < 1 { 10214 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 10215 } 10216 if s.ConversationLogs != nil { 10217 if err := s.ConversationLogs.Validate(); err != nil { 10218 invalidParams.AddNested("ConversationLogs", err.(request.ErrInvalidParams)) 10219 } 10220 } 10221 if s.Tags != nil { 10222 for i, v := range s.Tags { 10223 if v == nil { 10224 continue 10225 } 10226 if err := v.Validate(); err != nil { 10227 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 10228 } 10229 } 10230 } 10231 10232 if invalidParams.Len() > 0 { 10233 return invalidParams 10234 } 10235 return nil 10236} 10237 10238// SetBotName sets the BotName field's value. 10239func (s *PutBotAliasInput) SetBotName(v string) *PutBotAliasInput { 10240 s.BotName = &v 10241 return s 10242} 10243 10244// SetBotVersion sets the BotVersion field's value. 10245func (s *PutBotAliasInput) SetBotVersion(v string) *PutBotAliasInput { 10246 s.BotVersion = &v 10247 return s 10248} 10249 10250// SetChecksum sets the Checksum field's value. 10251func (s *PutBotAliasInput) SetChecksum(v string) *PutBotAliasInput { 10252 s.Checksum = &v 10253 return s 10254} 10255 10256// SetConversationLogs sets the ConversationLogs field's value. 10257func (s *PutBotAliasInput) SetConversationLogs(v *ConversationLogsRequest) *PutBotAliasInput { 10258 s.ConversationLogs = v 10259 return s 10260} 10261 10262// SetDescription sets the Description field's value. 10263func (s *PutBotAliasInput) SetDescription(v string) *PutBotAliasInput { 10264 s.Description = &v 10265 return s 10266} 10267 10268// SetName sets the Name field's value. 10269func (s *PutBotAliasInput) SetName(v string) *PutBotAliasInput { 10270 s.Name = &v 10271 return s 10272} 10273 10274// SetTags sets the Tags field's value. 10275func (s *PutBotAliasInput) SetTags(v []*Tag) *PutBotAliasInput { 10276 s.Tags = v 10277 return s 10278} 10279 10280type PutBotAliasOutput struct { 10281 _ struct{} `type:"structure"` 10282 10283 // The name of the bot that the alias points to. 10284 BotName *string `locationName:"botName" min:"2" type:"string"` 10285 10286 // The version of the bot that the alias points to. 10287 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 10288 10289 // The checksum for the current version of the alias. 10290 Checksum *string `locationName:"checksum" type:"string"` 10291 10292 // The settings that determine how Amazon Lex uses conversation logs for the 10293 // alias. 10294 ConversationLogs *ConversationLogsResponse `locationName:"conversationLogs" type:"structure"` 10295 10296 // The date that the bot alias was created. 10297 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 10298 10299 // A description of the alias. 10300 Description *string `locationName:"description" type:"string"` 10301 10302 // The date that the bot alias was updated. When you create a resource, the 10303 // creation date and the last updated date are the same. 10304 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 10305 10306 // The name of the alias. 10307 Name *string `locationName:"name" min:"1" type:"string"` 10308 10309 // A list of tags associated with a bot. 10310 Tags []*Tag `locationName:"tags" type:"list"` 10311} 10312 10313// String returns the string representation 10314func (s PutBotAliasOutput) String() string { 10315 return awsutil.Prettify(s) 10316} 10317 10318// GoString returns the string representation 10319func (s PutBotAliasOutput) GoString() string { 10320 return s.String() 10321} 10322 10323// SetBotName sets the BotName field's value. 10324func (s *PutBotAliasOutput) SetBotName(v string) *PutBotAliasOutput { 10325 s.BotName = &v 10326 return s 10327} 10328 10329// SetBotVersion sets the BotVersion field's value. 10330func (s *PutBotAliasOutput) SetBotVersion(v string) *PutBotAliasOutput { 10331 s.BotVersion = &v 10332 return s 10333} 10334 10335// SetChecksum sets the Checksum field's value. 10336func (s *PutBotAliasOutput) SetChecksum(v string) *PutBotAliasOutput { 10337 s.Checksum = &v 10338 return s 10339} 10340 10341// SetConversationLogs sets the ConversationLogs field's value. 10342func (s *PutBotAliasOutput) SetConversationLogs(v *ConversationLogsResponse) *PutBotAliasOutput { 10343 s.ConversationLogs = v 10344 return s 10345} 10346 10347// SetCreatedDate sets the CreatedDate field's value. 10348func (s *PutBotAliasOutput) SetCreatedDate(v time.Time) *PutBotAliasOutput { 10349 s.CreatedDate = &v 10350 return s 10351} 10352 10353// SetDescription sets the Description field's value. 10354func (s *PutBotAliasOutput) SetDescription(v string) *PutBotAliasOutput { 10355 s.Description = &v 10356 return s 10357} 10358 10359// SetLastUpdatedDate sets the LastUpdatedDate field's value. 10360func (s *PutBotAliasOutput) SetLastUpdatedDate(v time.Time) *PutBotAliasOutput { 10361 s.LastUpdatedDate = &v 10362 return s 10363} 10364 10365// SetName sets the Name field's value. 10366func (s *PutBotAliasOutput) SetName(v string) *PutBotAliasOutput { 10367 s.Name = &v 10368 return s 10369} 10370 10371// SetTags sets the Tags field's value. 10372func (s *PutBotAliasOutput) SetTags(v []*Tag) *PutBotAliasOutput { 10373 s.Tags = v 10374 return s 10375} 10376 10377type PutBotInput struct { 10378 _ struct{} `type:"structure"` 10379 10380 // When Amazon Lex can't understand the user's input in context, it tries to 10381 // elicit the information a few times. After that, Amazon Lex sends the message 10382 // defined in abortStatement to the user, and then cancels the conversation. 10383 // To set the number of retries, use the valueElicitationPrompt field for the 10384 // slot type. 10385 // 10386 // For example, in a pizza ordering bot, Amazon Lex might ask a user "What type 10387 // of crust would you like?" If the user's response is not one of the expected 10388 // responses (for example, "thin crust, "deep dish," etc.), Amazon Lex tries 10389 // to elicit a correct response a few more times. 10390 // 10391 // For example, in a pizza ordering application, OrderPizza might be one of 10392 // the intents. This intent might require the CrustType slot. You specify the 10393 // valueElicitationPrompt field when you create the CrustType slot. 10394 // 10395 // If you have defined a fallback intent the cancel statement will not be sent 10396 // to the user, the fallback intent is used instead. For more information, see 10397 // AMAZON.FallbackIntent (https://docs.aws.amazon.com/lex/latest/dg/built-in-intent-fallback.html). 10398 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 10399 10400 // Identifies a specific revision of the $LATEST version. 10401 // 10402 // When you create a new bot, leave the checksum field blank. If you specify 10403 // a checksum you get a BadRequestException exception. 10404 // 10405 // When you want to update a bot, set the checksum field to the checksum of 10406 // the most recent revision of the $LATEST version. If you don't specify the 10407 // checksum field, or if the checksum does not match the $LATEST version, you 10408 // get a PreconditionFailedException exception. 10409 Checksum *string `locationName:"checksum" type:"string"` 10410 10411 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 10412 // you must specify whether your use of Amazon Lex is related to a website, 10413 // program, or other application that is directed or targeted, in whole or in 10414 // part, to children under age 13 and subject to the Children's Online Privacy 10415 // Protection Act (COPPA) by specifying true or false in the childDirected field. 10416 // By specifying true in the childDirected field, you confirm that your use 10417 // of Amazon Lex is related to a website, program, or other application that 10418 // is directed or targeted, in whole or in part, to children under age 13 and 10419 // subject to COPPA. By specifying false in the childDirected field, you confirm 10420 // that your use of Amazon Lex is not related to a website, program, or other 10421 // application that is directed or targeted, in whole or in part, to children 10422 // under age 13 and subject to COPPA. You may not specify a default value for 10423 // the childDirected field that does not accurately reflect whether your use 10424 // of Amazon Lex is related to a website, program, or other application that 10425 // is directed or targeted, in whole or in part, to children under age 13 and 10426 // subject to COPPA. 10427 // 10428 // If your use of Amazon Lex relates to a website, program, or other application 10429 // that is directed in whole or in part, to children under age 13, you must 10430 // obtain any required verifiable parental consent under COPPA. For information 10431 // regarding the use of Amazon Lex in connection with websites, programs, or 10432 // other applications that are directed or targeted, in whole or in part, to 10433 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 10434 // 10435 // ChildDirected is a required field 10436 ChildDirected *bool `locationName:"childDirected" type:"boolean" required:"true"` 10437 10438 // When Amazon Lex doesn't understand the user's intent, it uses this message 10439 // to get clarification. To specify how many times Amazon Lex should repeat 10440 // the clarification prompt, use the maxAttempts field. If Amazon Lex still 10441 // doesn't understand, it sends the message in the abortStatement field. 10442 // 10443 // When you create a clarification prompt, make sure that it suggests the correct 10444 // response from the user. for example, for a bot that orders pizza and drinks, 10445 // you might create this clarification prompt: "What would you like to do? You 10446 // can say 'Order a pizza' or 'Order a drink.'" 10447 // 10448 // If you have defined a fallback intent, it will be invoked if the clarification 10449 // prompt is repeated the number of times defined in the maxAttempts field. 10450 // For more information, see AMAZON.FallbackIntent (https://docs.aws.amazon.com/lex/latest/dg/built-in-intent-fallback.html). 10451 // 10452 // If you don't define a clarification prompt, at runtime Amazon Lex will return 10453 // a 400 Bad Request exception in three cases: 10454 // 10455 // * Follow-up prompt - When the user responds to a follow-up prompt but 10456 // does not provide an intent. For example, in response to a follow-up prompt 10457 // that says "Would you like anything else today?" the user says "Yes." Amazon 10458 // Lex will return a 400 Bad Request exception because it does not have a 10459 // clarification prompt to send to the user to get an intent. 10460 // 10461 // * Lambda function - When using a Lambda function, you return an ElicitIntent 10462 // dialog type. Since Amazon Lex does not have a clarification prompt to 10463 // get an intent from the user, it returns a 400 Bad Request exception. 10464 // 10465 // * PutSession operation - When using the PutSession operation, you send 10466 // an ElicitIntent dialog type. Since Amazon Lex does not have a clarification 10467 // prompt to get an intent from the user, it returns a 400 Bad Request exception. 10468 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 10469 10470 // When set to true a new numbered version of the bot is created. This is the 10471 // same as calling the CreateBotVersion operation. If you don't specify createVersion, 10472 // the default is false. 10473 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 10474 10475 // A description of the bot. 10476 Description *string `locationName:"description" type:"string"` 10477 10478 // When set to true user utterances are sent to Amazon Comprehend for sentiment 10479 // analysis. If you don't specify detectSentiment, the default is false. 10480 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 10481 10482 // Set to true to enable access to natural language understanding improvements. 10483 // 10484 // When you set the enableModelImprovements parameter to true you can use the 10485 // nluIntentConfidenceThreshold parameter to configure confidence scores. For 10486 // more information, see Confidence Scores (https://docs.aws.amazon.com/lex/latest/dg/confidence-scores.html). 10487 // 10488 // You can only set the enableModelImprovements parameter in certain Regions. 10489 // If you set the parameter to true, your bot has access to accuracy improvements. 10490 // 10491 // The Regions where you can set the enableModelImprovements parameter to true 10492 // are: 10493 // 10494 // * US East (N. Virginia) (us-east-1) 10495 // 10496 // * US West (Oregon) (us-west-2) 10497 // 10498 // * Asia Pacific (Sydney) (ap-southeast-2) 10499 // 10500 // * EU (Ireland) (eu-west-1) 10501 // 10502 // In other Regions, the enableModelImprovements parameter is set to true by 10503 // default. In these Regions setting the parameter to false throws a ValidationException 10504 // exception. 10505 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 10506 10507 // The maximum time in seconds that Amazon Lex retains the data gathered in 10508 // a conversation. 10509 // 10510 // A user interaction session remains active for the amount of time specified. 10511 // If no conversation occurs during this time, the session expires and Amazon 10512 // Lex deletes any data provided before the timeout. 10513 // 10514 // For example, suppose that a user chooses the OrderPizza intent, but gets 10515 // sidetracked halfway through placing an order. If the user doesn't complete 10516 // the order within the specified time, Amazon Lex discards the slot information 10517 // that it gathered, and the user must start over. 10518 // 10519 // If you don't include the idleSessionTTLInSeconds element in a PutBot operation 10520 // request, Amazon Lex uses the default value. This is also true if the request 10521 // replaces an existing bot. 10522 // 10523 // The default is 300 seconds (5 minutes). 10524 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 10525 10526 // An array of Intent objects. Each intent represents a command that a user 10527 // can express. For example, a pizza ordering bot might support an OrderPizza 10528 // intent. For more information, see how-it-works. 10529 Intents []*Intent `locationName:"intents" type:"list"` 10530 10531 // Specifies the target locale for the bot. Any intent used in the bot must 10532 // be compatible with the locale of the bot. 10533 // 10534 // The default is en-US. 10535 // 10536 // Locale is a required field 10537 Locale *string `locationName:"locale" type:"string" required:"true" enum:"Locale"` 10538 10539 // The name of the bot. The name is not case sensitive. 10540 // 10541 // Name is a required field 10542 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 10543 10544 // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, 10545 // AMAZON.KendraSearchIntent, or both when returning alternative intents in 10546 // a PostContent (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 10547 // or PostText (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 10548 // response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted 10549 // if they are configured for the bot. 10550 // 10551 // You must set the enableModelImprovements parameter to true to use confidence 10552 // scores in the following regions. 10553 // 10554 // * US East (N. Virginia) (us-east-1) 10555 // 10556 // * US West (Oregon) (us-west-2) 10557 // 10558 // * Asia Pacific (Sydney) (ap-southeast-2) 10559 // 10560 // * EU (Ireland) (eu-west-1) 10561 // 10562 // In other Regions, the enableModelImprovements parameter is set to true by 10563 // default. 10564 // 10565 // For example, suppose a bot is configured with the confidence threshold of 10566 // 0.80 and the AMAZON.FallbackIntent. Amazon Lex returns three alternative 10567 // intents with the following confidence scores: IntentA (0.70), IntentB (0.60), 10568 // IntentC (0.50). The response from the PostText operation would be: 10569 // 10570 // * AMAZON.FallbackIntent 10571 // 10572 // * IntentA 10573 // 10574 // * IntentB 10575 // 10576 // * IntentC 10577 NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` 10578 10579 // If you set the processBehavior element to BUILD, Amazon Lex builds the bot 10580 // so that it can be run. If you set the element to SAVE Amazon Lex saves the 10581 // bot, but doesn't build it. 10582 // 10583 // If you don't specify this value, the default value is BUILD. 10584 ProcessBehavior *string `locationName:"processBehavior" type:"string" enum:"ProcessBehavior"` 10585 10586 // A list of tags to add to the bot. You can only add tags when you create a 10587 // bot, you can't use the PutBot operation to update the tags on a bot. To update 10588 // tags, use the TagResource operation. 10589 Tags []*Tag `locationName:"tags" type:"list"` 10590 10591 // The Amazon Polly voice ID that you want Amazon Lex to use for voice interactions 10592 // with the user. The locale configured for the voice must match the locale 10593 // of the bot. For more information, see Voices in Amazon Polly (https://docs.aws.amazon.com/polly/latest/dg/voicelist.html) 10594 // in the Amazon Polly Developer Guide. 10595 VoiceId *string `locationName:"voiceId" type:"string"` 10596} 10597 10598// String returns the string representation 10599func (s PutBotInput) String() string { 10600 return awsutil.Prettify(s) 10601} 10602 10603// GoString returns the string representation 10604func (s PutBotInput) GoString() string { 10605 return s.String() 10606} 10607 10608// Validate inspects the fields of the type to determine if they are valid. 10609func (s *PutBotInput) Validate() error { 10610 invalidParams := request.ErrInvalidParams{Context: "PutBotInput"} 10611 if s.ChildDirected == nil { 10612 invalidParams.Add(request.NewErrParamRequired("ChildDirected")) 10613 } 10614 if s.IdleSessionTTLInSeconds != nil && *s.IdleSessionTTLInSeconds < 60 { 10615 invalidParams.Add(request.NewErrParamMinValue("IdleSessionTTLInSeconds", 60)) 10616 } 10617 if s.Locale == nil { 10618 invalidParams.Add(request.NewErrParamRequired("Locale")) 10619 } 10620 if s.Name == nil { 10621 invalidParams.Add(request.NewErrParamRequired("Name")) 10622 } 10623 if s.Name != nil && len(*s.Name) < 2 { 10624 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 10625 } 10626 if s.AbortStatement != nil { 10627 if err := s.AbortStatement.Validate(); err != nil { 10628 invalidParams.AddNested("AbortStatement", err.(request.ErrInvalidParams)) 10629 } 10630 } 10631 if s.ClarificationPrompt != nil { 10632 if err := s.ClarificationPrompt.Validate(); err != nil { 10633 invalidParams.AddNested("ClarificationPrompt", err.(request.ErrInvalidParams)) 10634 } 10635 } 10636 if s.Intents != nil { 10637 for i, v := range s.Intents { 10638 if v == nil { 10639 continue 10640 } 10641 if err := v.Validate(); err != nil { 10642 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Intents", i), err.(request.ErrInvalidParams)) 10643 } 10644 } 10645 } 10646 if s.Tags != nil { 10647 for i, v := range s.Tags { 10648 if v == nil { 10649 continue 10650 } 10651 if err := v.Validate(); err != nil { 10652 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 10653 } 10654 } 10655 } 10656 10657 if invalidParams.Len() > 0 { 10658 return invalidParams 10659 } 10660 return nil 10661} 10662 10663// SetAbortStatement sets the AbortStatement field's value. 10664func (s *PutBotInput) SetAbortStatement(v *Statement) *PutBotInput { 10665 s.AbortStatement = v 10666 return s 10667} 10668 10669// SetChecksum sets the Checksum field's value. 10670func (s *PutBotInput) SetChecksum(v string) *PutBotInput { 10671 s.Checksum = &v 10672 return s 10673} 10674 10675// SetChildDirected sets the ChildDirected field's value. 10676func (s *PutBotInput) SetChildDirected(v bool) *PutBotInput { 10677 s.ChildDirected = &v 10678 return s 10679} 10680 10681// SetClarificationPrompt sets the ClarificationPrompt field's value. 10682func (s *PutBotInput) SetClarificationPrompt(v *Prompt) *PutBotInput { 10683 s.ClarificationPrompt = v 10684 return s 10685} 10686 10687// SetCreateVersion sets the CreateVersion field's value. 10688func (s *PutBotInput) SetCreateVersion(v bool) *PutBotInput { 10689 s.CreateVersion = &v 10690 return s 10691} 10692 10693// SetDescription sets the Description field's value. 10694func (s *PutBotInput) SetDescription(v string) *PutBotInput { 10695 s.Description = &v 10696 return s 10697} 10698 10699// SetDetectSentiment sets the DetectSentiment field's value. 10700func (s *PutBotInput) SetDetectSentiment(v bool) *PutBotInput { 10701 s.DetectSentiment = &v 10702 return s 10703} 10704 10705// SetEnableModelImprovements sets the EnableModelImprovements field's value. 10706func (s *PutBotInput) SetEnableModelImprovements(v bool) *PutBotInput { 10707 s.EnableModelImprovements = &v 10708 return s 10709} 10710 10711// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 10712func (s *PutBotInput) SetIdleSessionTTLInSeconds(v int64) *PutBotInput { 10713 s.IdleSessionTTLInSeconds = &v 10714 return s 10715} 10716 10717// SetIntents sets the Intents field's value. 10718func (s *PutBotInput) SetIntents(v []*Intent) *PutBotInput { 10719 s.Intents = v 10720 return s 10721} 10722 10723// SetLocale sets the Locale field's value. 10724func (s *PutBotInput) SetLocale(v string) *PutBotInput { 10725 s.Locale = &v 10726 return s 10727} 10728 10729// SetName sets the Name field's value. 10730func (s *PutBotInput) SetName(v string) *PutBotInput { 10731 s.Name = &v 10732 return s 10733} 10734 10735// SetNluIntentConfidenceThreshold sets the NluIntentConfidenceThreshold field's value. 10736func (s *PutBotInput) SetNluIntentConfidenceThreshold(v float64) *PutBotInput { 10737 s.NluIntentConfidenceThreshold = &v 10738 return s 10739} 10740 10741// SetProcessBehavior sets the ProcessBehavior field's value. 10742func (s *PutBotInput) SetProcessBehavior(v string) *PutBotInput { 10743 s.ProcessBehavior = &v 10744 return s 10745} 10746 10747// SetTags sets the Tags field's value. 10748func (s *PutBotInput) SetTags(v []*Tag) *PutBotInput { 10749 s.Tags = v 10750 return s 10751} 10752 10753// SetVoiceId sets the VoiceId field's value. 10754func (s *PutBotInput) SetVoiceId(v string) *PutBotInput { 10755 s.VoiceId = &v 10756 return s 10757} 10758 10759type PutBotOutput struct { 10760 _ struct{} `type:"structure"` 10761 10762 // The message that Amazon Lex uses to cancel a conversation. For more information, 10763 // see PutBot. 10764 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 10765 10766 // Checksum of the bot that you created. 10767 Checksum *string `locationName:"checksum" type:"string"` 10768 10769 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 10770 // you must specify whether your use of Amazon Lex is related to a website, 10771 // program, or other application that is directed or targeted, in whole or in 10772 // part, to children under age 13 and subject to the Children's Online Privacy 10773 // Protection Act (COPPA) by specifying true or false in the childDirected field. 10774 // By specifying true in the childDirected field, you confirm that your use 10775 // of Amazon Lex is related to a website, program, or other application that 10776 // is directed or targeted, in whole or in part, to children under age 13 and 10777 // subject to COPPA. By specifying false in the childDirected field, you confirm 10778 // that your use of Amazon Lex is not related to a website, program, or other 10779 // application that is directed or targeted, in whole or in part, to children 10780 // under age 13 and subject to COPPA. You may not specify a default value for 10781 // the childDirected field that does not accurately reflect whether your use 10782 // of Amazon Lex is related to a website, program, or other application that 10783 // is directed or targeted, in whole or in part, to children under age 13 and 10784 // subject to COPPA. 10785 // 10786 // If your use of Amazon Lex relates to a website, program, or other application 10787 // that is directed in whole or in part, to children under age 13, you must 10788 // obtain any required verifiable parental consent under COPPA. For information 10789 // regarding the use of Amazon Lex in connection with websites, programs, or 10790 // other applications that are directed or targeted, in whole or in part, to 10791 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 10792 ChildDirected *bool `locationName:"childDirected" type:"boolean"` 10793 10794 // The prompts that Amazon Lex uses when it doesn't understand the user's intent. 10795 // For more information, see PutBot. 10796 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 10797 10798 // True if a new version of the bot was created. If the createVersion field 10799 // was not specified in the request, the createVersion field is set to false 10800 // in the response. 10801 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 10802 10803 // The date that the bot was created. 10804 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 10805 10806 // A description of the bot. 10807 Description *string `locationName:"description" type:"string"` 10808 10809 // true if the bot is configured to send user utterances to Amazon Comprehend 10810 // for sentiment analysis. If the detectSentiment field was not specified in 10811 // the request, the detectSentiment field is false in the response. 10812 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 10813 10814 // Indicates whether the bot uses accuracy improvements. true indicates that 10815 // the bot is using the improvements, otherwise, false. 10816 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 10817 10818 // If status is FAILED, Amazon Lex provides the reason that it failed to build 10819 // the bot. 10820 FailureReason *string `locationName:"failureReason" type:"string"` 10821 10822 // The maximum length of time that Amazon Lex retains the data gathered in a 10823 // conversation. For more information, see PutBot. 10824 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 10825 10826 // An array of Intent objects. For more information, see PutBot. 10827 Intents []*Intent `locationName:"intents" type:"list"` 10828 10829 // The date that the bot was updated. When you create a resource, the creation 10830 // date and last updated date are the same. 10831 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 10832 10833 // The target locale for the bot. 10834 Locale *string `locationName:"locale" type:"string" enum:"Locale"` 10835 10836 // The name of the bot. 10837 Name *string `locationName:"name" min:"2" type:"string"` 10838 10839 // The score that determines where Amazon Lex inserts the AMAZON.FallbackIntent, 10840 // AMAZON.KendraSearchIntent, or both when returning alternative intents in 10841 // a PostContent (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 10842 // or PostText (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 10843 // response. AMAZON.FallbackIntent is inserted if the confidence score for all 10844 // intents is below this value. AMAZON.KendraSearchIntent is only inserted if 10845 // it is configured for the bot. 10846 NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` 10847 10848 // When you send a request to create a bot with processBehavior set to BUILD, 10849 // Amazon Lex sets the status response element to BUILDING. 10850 // 10851 // In the READY_BASIC_TESTING state you can test the bot with user inputs that 10852 // exactly match the utterances configured for the bot's intents and values 10853 // in the slot types. 10854 // 10855 // If Amazon Lex can't build the bot, Amazon Lex sets status to FAILED. Amazon 10856 // Lex returns the reason for the failure in the failureReason response element. 10857 // 10858 // When you set processBehavior to SAVE, Amazon Lex sets the status code to 10859 // NOT BUILT. 10860 // 10861 // When the bot is in the READY state you can test and publish the bot. 10862 Status *string `locationName:"status" type:"string" enum:"Status"` 10863 10864 // A list of tags associated with the bot. 10865 Tags []*Tag `locationName:"tags" type:"list"` 10866 10867 // The version of the bot. For a new bot, the version is always $LATEST. 10868 Version *string `locationName:"version" min:"1" type:"string"` 10869 10870 // The Amazon Polly voice ID that Amazon Lex uses for voice interaction with 10871 // the user. For more information, see PutBot. 10872 VoiceId *string `locationName:"voiceId" type:"string"` 10873} 10874 10875// String returns the string representation 10876func (s PutBotOutput) String() string { 10877 return awsutil.Prettify(s) 10878} 10879 10880// GoString returns the string representation 10881func (s PutBotOutput) GoString() string { 10882 return s.String() 10883} 10884 10885// SetAbortStatement sets the AbortStatement field's value. 10886func (s *PutBotOutput) SetAbortStatement(v *Statement) *PutBotOutput { 10887 s.AbortStatement = v 10888 return s 10889} 10890 10891// SetChecksum sets the Checksum field's value. 10892func (s *PutBotOutput) SetChecksum(v string) *PutBotOutput { 10893 s.Checksum = &v 10894 return s 10895} 10896 10897// SetChildDirected sets the ChildDirected field's value. 10898func (s *PutBotOutput) SetChildDirected(v bool) *PutBotOutput { 10899 s.ChildDirected = &v 10900 return s 10901} 10902 10903// SetClarificationPrompt sets the ClarificationPrompt field's value. 10904func (s *PutBotOutput) SetClarificationPrompt(v *Prompt) *PutBotOutput { 10905 s.ClarificationPrompt = v 10906 return s 10907} 10908 10909// SetCreateVersion sets the CreateVersion field's value. 10910func (s *PutBotOutput) SetCreateVersion(v bool) *PutBotOutput { 10911 s.CreateVersion = &v 10912 return s 10913} 10914 10915// SetCreatedDate sets the CreatedDate field's value. 10916func (s *PutBotOutput) SetCreatedDate(v time.Time) *PutBotOutput { 10917 s.CreatedDate = &v 10918 return s 10919} 10920 10921// SetDescription sets the Description field's value. 10922func (s *PutBotOutput) SetDescription(v string) *PutBotOutput { 10923 s.Description = &v 10924 return s 10925} 10926 10927// SetDetectSentiment sets the DetectSentiment field's value. 10928func (s *PutBotOutput) SetDetectSentiment(v bool) *PutBotOutput { 10929 s.DetectSentiment = &v 10930 return s 10931} 10932 10933// SetEnableModelImprovements sets the EnableModelImprovements field's value. 10934func (s *PutBotOutput) SetEnableModelImprovements(v bool) *PutBotOutput { 10935 s.EnableModelImprovements = &v 10936 return s 10937} 10938 10939// SetFailureReason sets the FailureReason field's value. 10940func (s *PutBotOutput) SetFailureReason(v string) *PutBotOutput { 10941 s.FailureReason = &v 10942 return s 10943} 10944 10945// SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 10946func (s *PutBotOutput) SetIdleSessionTTLInSeconds(v int64) *PutBotOutput { 10947 s.IdleSessionTTLInSeconds = &v 10948 return s 10949} 10950 10951// SetIntents sets the Intents field's value. 10952func (s *PutBotOutput) SetIntents(v []*Intent) *PutBotOutput { 10953 s.Intents = v 10954 return s 10955} 10956 10957// SetLastUpdatedDate sets the LastUpdatedDate field's value. 10958func (s *PutBotOutput) SetLastUpdatedDate(v time.Time) *PutBotOutput { 10959 s.LastUpdatedDate = &v 10960 return s 10961} 10962 10963// SetLocale sets the Locale field's value. 10964func (s *PutBotOutput) SetLocale(v string) *PutBotOutput { 10965 s.Locale = &v 10966 return s 10967} 10968 10969// SetName sets the Name field's value. 10970func (s *PutBotOutput) SetName(v string) *PutBotOutput { 10971 s.Name = &v 10972 return s 10973} 10974 10975// SetNluIntentConfidenceThreshold sets the NluIntentConfidenceThreshold field's value. 10976func (s *PutBotOutput) SetNluIntentConfidenceThreshold(v float64) *PutBotOutput { 10977 s.NluIntentConfidenceThreshold = &v 10978 return s 10979} 10980 10981// SetStatus sets the Status field's value. 10982func (s *PutBotOutput) SetStatus(v string) *PutBotOutput { 10983 s.Status = &v 10984 return s 10985} 10986 10987// SetTags sets the Tags field's value. 10988func (s *PutBotOutput) SetTags(v []*Tag) *PutBotOutput { 10989 s.Tags = v 10990 return s 10991} 10992 10993// SetVersion sets the Version field's value. 10994func (s *PutBotOutput) SetVersion(v string) *PutBotOutput { 10995 s.Version = &v 10996 return s 10997} 10998 10999// SetVoiceId sets the VoiceId field's value. 11000func (s *PutBotOutput) SetVoiceId(v string) *PutBotOutput { 11001 s.VoiceId = &v 11002 return s 11003} 11004 11005type PutIntentInput struct { 11006 _ struct{} `type:"structure"` 11007 11008 // Identifies a specific revision of the $LATEST version. 11009 // 11010 // When you create a new intent, leave the checksum field blank. If you specify 11011 // a checksum you get a BadRequestException exception. 11012 // 11013 // When you want to update a intent, set the checksum field to the checksum 11014 // of the most recent revision of the $LATEST version. If you don't specify 11015 // the checksum field, or if the checksum does not match the $LATEST version, 11016 // you get a PreconditionFailedException exception. 11017 Checksum *string `locationName:"checksum" type:"string"` 11018 11019 // The statement that you want Amazon Lex to convey to the user after the intent 11020 // is successfully fulfilled by the Lambda function. 11021 // 11022 // This element is relevant only if you provide a Lambda function in the fulfillmentActivity. 11023 // If you return the intent to the client application, you can't specify this 11024 // element. 11025 // 11026 // The followUpPrompt and conclusionStatement are mutually exclusive. You can 11027 // specify only one. 11028 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 11029 11030 // Prompts the user to confirm the intent. This question should have a yes or 11031 // no answer. 11032 // 11033 // Amazon Lex uses this prompt to ensure that the user acknowledges that the 11034 // intent is ready for fulfillment. For example, with the OrderPizza intent, 11035 // you might want to confirm that the order is correct before placing it. For 11036 // other intents, such as intents that simply respond to user questions, you 11037 // might not need to ask the user for confirmation before providing the information. 11038 // 11039 // You you must provide both the rejectionStatement and the confirmationPrompt, 11040 // or neither. 11041 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 11042 11043 // When set to true a new numbered version of the intent is created. This is 11044 // the same as calling the CreateIntentVersion operation. If you do not specify 11045 // createVersion, the default is false. 11046 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 11047 11048 // A description of the intent. 11049 Description *string `locationName:"description" type:"string"` 11050 11051 // Specifies a Lambda function to invoke for each user input. You can invoke 11052 // this Lambda function to personalize user interaction. 11053 // 11054 // For example, suppose your bot determines that the user is John. Your Lambda 11055 // function might retrieve John's information from a backend database and prepopulate 11056 // some of the values. For example, if you find that John is gluten intolerant, 11057 // you might set the corresponding intent slot, GlutenIntolerant, to true. You 11058 // might find John's phone number and set the corresponding session attribute. 11059 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 11060 11061 // Amazon Lex uses this prompt to solicit additional activity after fulfilling 11062 // an intent. For example, after the OrderPizza intent is fulfilled, you might 11063 // prompt the user to order a drink. 11064 // 11065 // The action that Amazon Lex takes depends on the user's response, as follows: 11066 // 11067 // * If the user says "Yes" it responds with the clarification prompt that 11068 // is configured for the bot. 11069 // 11070 // * if the user says "Yes" and continues with an utterance that triggers 11071 // an intent it starts a conversation for the intent. 11072 // 11073 // * If the user says "No" it responds with the rejection statement configured 11074 // for the the follow-up prompt. 11075 // 11076 // * If it doesn't recognize the utterance it repeats the follow-up prompt 11077 // again. 11078 // 11079 // The followUpPrompt field and the conclusionStatement field are mutually exclusive. 11080 // You can specify only one. 11081 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 11082 11083 // Required. Describes how the intent is fulfilled. For example, after a user 11084 // provides all of the information for a pizza order, fulfillmentActivity defines 11085 // how the bot places an order with a local pizza store. 11086 // 11087 // You might configure Amazon Lex to return all of the intent information to 11088 // the client application, or direct it to invoke a Lambda function that can 11089 // process the intent (for example, place an order with a pizzeria). 11090 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 11091 11092 // An array of InputContext objects that lists the contexts that must be active 11093 // for Amazon Lex to choose the intent in a conversation with the user. 11094 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 11095 11096 // Configuration information required to use the AMAZON.KendraSearchIntent intent 11097 // to connect to an Amazon Kendra index. For more information, see AMAZON.KendraSearchIntent 11098 // (http://docs.aws.amazon.com/lex/latest/dg/built-in-intent-kendra-search.html). 11099 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 11100 11101 // The name of the intent. The name is not case sensitive. 11102 // 11103 // The name can't match a built-in intent name, or a built-in intent name with 11104 // "AMAZON." removed. For example, because there is a built-in intent called 11105 // AMAZON.HelpIntent, you can't create a custom intent called HelpIntent. 11106 // 11107 // For a list of built-in intents, see Standard Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 11108 // in the Alexa Skills Kit. 11109 // 11110 // Name is a required field 11111 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 11112 11113 // An array of OutputContext objects that lists the contexts that the intent 11114 // activates when the intent is fulfilled. 11115 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 11116 11117 // A unique identifier for the built-in intent to base this intent on. To find 11118 // the signature for an intent, see Standard Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 11119 // in the Alexa Skills Kit. 11120 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 11121 11122 // When the user answers "no" to the question defined in confirmationPrompt, 11123 // Amazon Lex responds with this statement to acknowledge that the intent was 11124 // canceled. 11125 // 11126 // You must provide both the rejectionStatement and the confirmationPrompt, 11127 // or neither. 11128 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 11129 11130 // An array of utterances (strings) that a user might say to signal the intent. 11131 // For example, "I want {PizzaSize} pizza", "Order {Quantity} {PizzaSize} pizzas". 11132 // 11133 // In each utterance, a slot name is enclosed in curly braces. 11134 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 11135 11136 // An array of intent slots. At runtime, Amazon Lex elicits required slot values 11137 // from the user using prompts defined in the slots. For more information, see 11138 // how-it-works. 11139 Slots []*Slot `locationName:"slots" type:"list"` 11140} 11141 11142// String returns the string representation 11143func (s PutIntentInput) String() string { 11144 return awsutil.Prettify(s) 11145} 11146 11147// GoString returns the string representation 11148func (s PutIntentInput) GoString() string { 11149 return s.String() 11150} 11151 11152// Validate inspects the fields of the type to determine if they are valid. 11153func (s *PutIntentInput) Validate() error { 11154 invalidParams := request.ErrInvalidParams{Context: "PutIntentInput"} 11155 if s.Name == nil { 11156 invalidParams.Add(request.NewErrParamRequired("Name")) 11157 } 11158 if s.Name != nil && len(*s.Name) < 1 { 11159 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 11160 } 11161 if s.ConclusionStatement != nil { 11162 if err := s.ConclusionStatement.Validate(); err != nil { 11163 invalidParams.AddNested("ConclusionStatement", err.(request.ErrInvalidParams)) 11164 } 11165 } 11166 if s.ConfirmationPrompt != nil { 11167 if err := s.ConfirmationPrompt.Validate(); err != nil { 11168 invalidParams.AddNested("ConfirmationPrompt", err.(request.ErrInvalidParams)) 11169 } 11170 } 11171 if s.DialogCodeHook != nil { 11172 if err := s.DialogCodeHook.Validate(); err != nil { 11173 invalidParams.AddNested("DialogCodeHook", err.(request.ErrInvalidParams)) 11174 } 11175 } 11176 if s.FollowUpPrompt != nil { 11177 if err := s.FollowUpPrompt.Validate(); err != nil { 11178 invalidParams.AddNested("FollowUpPrompt", err.(request.ErrInvalidParams)) 11179 } 11180 } 11181 if s.FulfillmentActivity != nil { 11182 if err := s.FulfillmentActivity.Validate(); err != nil { 11183 invalidParams.AddNested("FulfillmentActivity", err.(request.ErrInvalidParams)) 11184 } 11185 } 11186 if s.InputContexts != nil { 11187 for i, v := range s.InputContexts { 11188 if v == nil { 11189 continue 11190 } 11191 if err := v.Validate(); err != nil { 11192 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputContexts", i), err.(request.ErrInvalidParams)) 11193 } 11194 } 11195 } 11196 if s.KendraConfiguration != nil { 11197 if err := s.KendraConfiguration.Validate(); err != nil { 11198 invalidParams.AddNested("KendraConfiguration", err.(request.ErrInvalidParams)) 11199 } 11200 } 11201 if s.OutputContexts != nil { 11202 for i, v := range s.OutputContexts { 11203 if v == nil { 11204 continue 11205 } 11206 if err := v.Validate(); err != nil { 11207 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputContexts", i), err.(request.ErrInvalidParams)) 11208 } 11209 } 11210 } 11211 if s.RejectionStatement != nil { 11212 if err := s.RejectionStatement.Validate(); err != nil { 11213 invalidParams.AddNested("RejectionStatement", err.(request.ErrInvalidParams)) 11214 } 11215 } 11216 if s.Slots != nil { 11217 for i, v := range s.Slots { 11218 if v == nil { 11219 continue 11220 } 11221 if err := v.Validate(); err != nil { 11222 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Slots", i), err.(request.ErrInvalidParams)) 11223 } 11224 } 11225 } 11226 11227 if invalidParams.Len() > 0 { 11228 return invalidParams 11229 } 11230 return nil 11231} 11232 11233// SetChecksum sets the Checksum field's value. 11234func (s *PutIntentInput) SetChecksum(v string) *PutIntentInput { 11235 s.Checksum = &v 11236 return s 11237} 11238 11239// SetConclusionStatement sets the ConclusionStatement field's value. 11240func (s *PutIntentInput) SetConclusionStatement(v *Statement) *PutIntentInput { 11241 s.ConclusionStatement = v 11242 return s 11243} 11244 11245// SetConfirmationPrompt sets the ConfirmationPrompt field's value. 11246func (s *PutIntentInput) SetConfirmationPrompt(v *Prompt) *PutIntentInput { 11247 s.ConfirmationPrompt = v 11248 return s 11249} 11250 11251// SetCreateVersion sets the CreateVersion field's value. 11252func (s *PutIntentInput) SetCreateVersion(v bool) *PutIntentInput { 11253 s.CreateVersion = &v 11254 return s 11255} 11256 11257// SetDescription sets the Description field's value. 11258func (s *PutIntentInput) SetDescription(v string) *PutIntentInput { 11259 s.Description = &v 11260 return s 11261} 11262 11263// SetDialogCodeHook sets the DialogCodeHook field's value. 11264func (s *PutIntentInput) SetDialogCodeHook(v *CodeHook) *PutIntentInput { 11265 s.DialogCodeHook = v 11266 return s 11267} 11268 11269// SetFollowUpPrompt sets the FollowUpPrompt field's value. 11270func (s *PutIntentInput) SetFollowUpPrompt(v *FollowUpPrompt) *PutIntentInput { 11271 s.FollowUpPrompt = v 11272 return s 11273} 11274 11275// SetFulfillmentActivity sets the FulfillmentActivity field's value. 11276func (s *PutIntentInput) SetFulfillmentActivity(v *FulfillmentActivity) *PutIntentInput { 11277 s.FulfillmentActivity = v 11278 return s 11279} 11280 11281// SetInputContexts sets the InputContexts field's value. 11282func (s *PutIntentInput) SetInputContexts(v []*InputContext) *PutIntentInput { 11283 s.InputContexts = v 11284 return s 11285} 11286 11287// SetKendraConfiguration sets the KendraConfiguration field's value. 11288func (s *PutIntentInput) SetKendraConfiguration(v *KendraConfiguration) *PutIntentInput { 11289 s.KendraConfiguration = v 11290 return s 11291} 11292 11293// SetName sets the Name field's value. 11294func (s *PutIntentInput) SetName(v string) *PutIntentInput { 11295 s.Name = &v 11296 return s 11297} 11298 11299// SetOutputContexts sets the OutputContexts field's value. 11300func (s *PutIntentInput) SetOutputContexts(v []*OutputContext) *PutIntentInput { 11301 s.OutputContexts = v 11302 return s 11303} 11304 11305// SetParentIntentSignature sets the ParentIntentSignature field's value. 11306func (s *PutIntentInput) SetParentIntentSignature(v string) *PutIntentInput { 11307 s.ParentIntentSignature = &v 11308 return s 11309} 11310 11311// SetRejectionStatement sets the RejectionStatement field's value. 11312func (s *PutIntentInput) SetRejectionStatement(v *Statement) *PutIntentInput { 11313 s.RejectionStatement = v 11314 return s 11315} 11316 11317// SetSampleUtterances sets the SampleUtterances field's value. 11318func (s *PutIntentInput) SetSampleUtterances(v []*string) *PutIntentInput { 11319 s.SampleUtterances = v 11320 return s 11321} 11322 11323// SetSlots sets the Slots field's value. 11324func (s *PutIntentInput) SetSlots(v []*Slot) *PutIntentInput { 11325 s.Slots = v 11326 return s 11327} 11328 11329type PutIntentOutput struct { 11330 _ struct{} `type:"structure"` 11331 11332 // Checksum of the $LATESTversion of the intent created or updated. 11333 Checksum *string `locationName:"checksum" type:"string"` 11334 11335 // After the Lambda function specified in thefulfillmentActivityintent fulfills 11336 // the intent, Amazon Lex conveys this statement to the user. 11337 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 11338 11339 // If defined in the intent, Amazon Lex prompts the user to confirm the intent 11340 // before fulfilling it. 11341 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 11342 11343 // True if a new version of the intent was created. If the createVersion field 11344 // was not specified in the request, the createVersion field is set to false 11345 // in the response. 11346 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 11347 11348 // The date that the intent was created. 11349 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 11350 11351 // A description of the intent. 11352 Description *string `locationName:"description" type:"string"` 11353 11354 // If defined in the intent, Amazon Lex invokes this Lambda function for each 11355 // user input. 11356 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 11357 11358 // If defined in the intent, Amazon Lex uses this prompt to solicit additional 11359 // user activity after the intent is fulfilled. 11360 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 11361 11362 // If defined in the intent, Amazon Lex invokes this Lambda function to fulfill 11363 // the intent after the user provides all of the information required by the 11364 // intent. 11365 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 11366 11367 // An array of InputContext objects that lists the contexts that must be active 11368 // for Amazon Lex to choose the intent in a conversation with the user. 11369 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 11370 11371 // Configuration information, if any, required to connect to an Amazon Kendra 11372 // index and use the AMAZON.KendraSearchIntent intent. 11373 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 11374 11375 // The date that the intent was updated. When you create a resource, the creation 11376 // date and last update dates are the same. 11377 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 11378 11379 // The name of the intent. 11380 Name *string `locationName:"name" min:"1" type:"string"` 11381 11382 // An array of OutputContext objects that lists the contexts that the intent 11383 // activates when the intent is fulfilled. 11384 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 11385 11386 // A unique identifier for the built-in intent that this intent is based on. 11387 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 11388 11389 // If the user answers "no" to the question defined in confirmationPrompt Amazon 11390 // Lex responds with this statement to acknowledge that the intent was canceled. 11391 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 11392 11393 // An array of sample utterances that are configured for the intent. 11394 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 11395 11396 // An array of intent slots that are configured for the intent. 11397 Slots []*Slot `locationName:"slots" type:"list"` 11398 11399 // The version of the intent. For a new intent, the version is always $LATEST. 11400 Version *string `locationName:"version" min:"1" type:"string"` 11401} 11402 11403// String returns the string representation 11404func (s PutIntentOutput) String() string { 11405 return awsutil.Prettify(s) 11406} 11407 11408// GoString returns the string representation 11409func (s PutIntentOutput) GoString() string { 11410 return s.String() 11411} 11412 11413// SetChecksum sets the Checksum field's value. 11414func (s *PutIntentOutput) SetChecksum(v string) *PutIntentOutput { 11415 s.Checksum = &v 11416 return s 11417} 11418 11419// SetConclusionStatement sets the ConclusionStatement field's value. 11420func (s *PutIntentOutput) SetConclusionStatement(v *Statement) *PutIntentOutput { 11421 s.ConclusionStatement = v 11422 return s 11423} 11424 11425// SetConfirmationPrompt sets the ConfirmationPrompt field's value. 11426func (s *PutIntentOutput) SetConfirmationPrompt(v *Prompt) *PutIntentOutput { 11427 s.ConfirmationPrompt = v 11428 return s 11429} 11430 11431// SetCreateVersion sets the CreateVersion field's value. 11432func (s *PutIntentOutput) SetCreateVersion(v bool) *PutIntentOutput { 11433 s.CreateVersion = &v 11434 return s 11435} 11436 11437// SetCreatedDate sets the CreatedDate field's value. 11438func (s *PutIntentOutput) SetCreatedDate(v time.Time) *PutIntentOutput { 11439 s.CreatedDate = &v 11440 return s 11441} 11442 11443// SetDescription sets the Description field's value. 11444func (s *PutIntentOutput) SetDescription(v string) *PutIntentOutput { 11445 s.Description = &v 11446 return s 11447} 11448 11449// SetDialogCodeHook sets the DialogCodeHook field's value. 11450func (s *PutIntentOutput) SetDialogCodeHook(v *CodeHook) *PutIntentOutput { 11451 s.DialogCodeHook = v 11452 return s 11453} 11454 11455// SetFollowUpPrompt sets the FollowUpPrompt field's value. 11456func (s *PutIntentOutput) SetFollowUpPrompt(v *FollowUpPrompt) *PutIntentOutput { 11457 s.FollowUpPrompt = v 11458 return s 11459} 11460 11461// SetFulfillmentActivity sets the FulfillmentActivity field's value. 11462func (s *PutIntentOutput) SetFulfillmentActivity(v *FulfillmentActivity) *PutIntentOutput { 11463 s.FulfillmentActivity = v 11464 return s 11465} 11466 11467// SetInputContexts sets the InputContexts field's value. 11468func (s *PutIntentOutput) SetInputContexts(v []*InputContext) *PutIntentOutput { 11469 s.InputContexts = v 11470 return s 11471} 11472 11473// SetKendraConfiguration sets the KendraConfiguration field's value. 11474func (s *PutIntentOutput) SetKendraConfiguration(v *KendraConfiguration) *PutIntentOutput { 11475 s.KendraConfiguration = v 11476 return s 11477} 11478 11479// SetLastUpdatedDate sets the LastUpdatedDate field's value. 11480func (s *PutIntentOutput) SetLastUpdatedDate(v time.Time) *PutIntentOutput { 11481 s.LastUpdatedDate = &v 11482 return s 11483} 11484 11485// SetName sets the Name field's value. 11486func (s *PutIntentOutput) SetName(v string) *PutIntentOutput { 11487 s.Name = &v 11488 return s 11489} 11490 11491// SetOutputContexts sets the OutputContexts field's value. 11492func (s *PutIntentOutput) SetOutputContexts(v []*OutputContext) *PutIntentOutput { 11493 s.OutputContexts = v 11494 return s 11495} 11496 11497// SetParentIntentSignature sets the ParentIntentSignature field's value. 11498func (s *PutIntentOutput) SetParentIntentSignature(v string) *PutIntentOutput { 11499 s.ParentIntentSignature = &v 11500 return s 11501} 11502 11503// SetRejectionStatement sets the RejectionStatement field's value. 11504func (s *PutIntentOutput) SetRejectionStatement(v *Statement) *PutIntentOutput { 11505 s.RejectionStatement = v 11506 return s 11507} 11508 11509// SetSampleUtterances sets the SampleUtterances field's value. 11510func (s *PutIntentOutput) SetSampleUtterances(v []*string) *PutIntentOutput { 11511 s.SampleUtterances = v 11512 return s 11513} 11514 11515// SetSlots sets the Slots field's value. 11516func (s *PutIntentOutput) SetSlots(v []*Slot) *PutIntentOutput { 11517 s.Slots = v 11518 return s 11519} 11520 11521// SetVersion sets the Version field's value. 11522func (s *PutIntentOutput) SetVersion(v string) *PutIntentOutput { 11523 s.Version = &v 11524 return s 11525} 11526 11527type PutSlotTypeInput struct { 11528 _ struct{} `type:"structure"` 11529 11530 // Identifies a specific revision of the $LATEST version. 11531 // 11532 // When you create a new slot type, leave the checksum field blank. If you specify 11533 // a checksum you get a BadRequestException exception. 11534 // 11535 // When you want to update a slot type, set the checksum field to the checksum 11536 // of the most recent revision of the $LATEST version. If you don't specify 11537 // the checksum field, or if the checksum does not match the $LATEST version, 11538 // you get a PreconditionFailedException exception. 11539 Checksum *string `locationName:"checksum" type:"string"` 11540 11541 // When set to true a new numbered version of the slot type is created. This 11542 // is the same as calling the CreateSlotTypeVersion operation. If you do not 11543 // specify createVersion, the default is false. 11544 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 11545 11546 // A description of the slot type. 11547 Description *string `locationName:"description" type:"string"` 11548 11549 // A list of EnumerationValue objects that defines the values that the slot 11550 // type can take. Each value can have a list of synonyms, which are additional 11551 // values that help train the machine learning model about the values that it 11552 // resolves for a slot. 11553 // 11554 // A regular expression slot type doesn't require enumeration values. All other 11555 // slot types require a list of enumeration values. 11556 // 11557 // When Amazon Lex resolves a slot value, it generates a resolution list that 11558 // contains up to five possible values for the slot. If you are using a Lambda 11559 // function, this resolution list is passed to the function. If you are not 11560 // using a Lambda function you can choose to return the value that the user 11561 // entered or the first value in the resolution list as the slot value. The 11562 // valueSelectionStrategy field indicates the option to use. 11563 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 11564 11565 // The name of the slot type. The name is not case sensitive. 11566 // 11567 // The name can't match a built-in slot type name, or a built-in slot type name 11568 // with "AMAZON." removed. For example, because there is a built-in slot type 11569 // called AMAZON.DATE, you can't create a custom slot type called DATE. 11570 // 11571 // For a list of built-in slot types, see Slot Type Reference (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/slot-type-reference) 11572 // in the Alexa Skills Kit. 11573 // 11574 // Name is a required field 11575 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 11576 11577 // The built-in slot type used as the parent of the slot type. When you define 11578 // a parent slot type, the new slot type has all of the same configuration as 11579 // the parent. 11580 // 11581 // Only AMAZON.AlphaNumeric is supported. 11582 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 11583 11584 // Configuration information that extends the parent built-in slot type. The 11585 // configuration is added to the settings for the parent slot type. 11586 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 11587 11588 // Determines the slot resolution strategy that Amazon Lex uses to return slot 11589 // type values. The field can be set to one of the following values: 11590 // 11591 // * ORIGINAL_VALUE - Returns the value entered by the user, if the user 11592 // value is similar to the slot value. 11593 // 11594 // * TOP_RESOLUTION - If there is a resolution list for the slot, return 11595 // the first value in the resolution list as the slot type value. If there 11596 // is no resolution list, null is returned. 11597 // 11598 // If you don't specify the valueSelectionStrategy, the default is ORIGINAL_VALUE. 11599 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 11600} 11601 11602// String returns the string representation 11603func (s PutSlotTypeInput) String() string { 11604 return awsutil.Prettify(s) 11605} 11606 11607// GoString returns the string representation 11608func (s PutSlotTypeInput) GoString() string { 11609 return s.String() 11610} 11611 11612// Validate inspects the fields of the type to determine if they are valid. 11613func (s *PutSlotTypeInput) Validate() error { 11614 invalidParams := request.ErrInvalidParams{Context: "PutSlotTypeInput"} 11615 if s.Name == nil { 11616 invalidParams.Add(request.NewErrParamRequired("Name")) 11617 } 11618 if s.Name != nil && len(*s.Name) < 1 { 11619 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 11620 } 11621 if s.ParentSlotTypeSignature != nil && len(*s.ParentSlotTypeSignature) < 1 { 11622 invalidParams.Add(request.NewErrParamMinLen("ParentSlotTypeSignature", 1)) 11623 } 11624 if s.EnumerationValues != nil { 11625 for i, v := range s.EnumerationValues { 11626 if v == nil { 11627 continue 11628 } 11629 if err := v.Validate(); err != nil { 11630 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EnumerationValues", i), err.(request.ErrInvalidParams)) 11631 } 11632 } 11633 } 11634 if s.SlotTypeConfigurations != nil { 11635 for i, v := range s.SlotTypeConfigurations { 11636 if v == nil { 11637 continue 11638 } 11639 if err := v.Validate(); err != nil { 11640 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SlotTypeConfigurations", i), err.(request.ErrInvalidParams)) 11641 } 11642 } 11643 } 11644 11645 if invalidParams.Len() > 0 { 11646 return invalidParams 11647 } 11648 return nil 11649} 11650 11651// SetChecksum sets the Checksum field's value. 11652func (s *PutSlotTypeInput) SetChecksum(v string) *PutSlotTypeInput { 11653 s.Checksum = &v 11654 return s 11655} 11656 11657// SetCreateVersion sets the CreateVersion field's value. 11658func (s *PutSlotTypeInput) SetCreateVersion(v bool) *PutSlotTypeInput { 11659 s.CreateVersion = &v 11660 return s 11661} 11662 11663// SetDescription sets the Description field's value. 11664func (s *PutSlotTypeInput) SetDescription(v string) *PutSlotTypeInput { 11665 s.Description = &v 11666 return s 11667} 11668 11669// SetEnumerationValues sets the EnumerationValues field's value. 11670func (s *PutSlotTypeInput) SetEnumerationValues(v []*EnumerationValue) *PutSlotTypeInput { 11671 s.EnumerationValues = v 11672 return s 11673} 11674 11675// SetName sets the Name field's value. 11676func (s *PutSlotTypeInput) SetName(v string) *PutSlotTypeInput { 11677 s.Name = &v 11678 return s 11679} 11680 11681// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 11682func (s *PutSlotTypeInput) SetParentSlotTypeSignature(v string) *PutSlotTypeInput { 11683 s.ParentSlotTypeSignature = &v 11684 return s 11685} 11686 11687// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 11688func (s *PutSlotTypeInput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *PutSlotTypeInput { 11689 s.SlotTypeConfigurations = v 11690 return s 11691} 11692 11693// SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 11694func (s *PutSlotTypeInput) SetValueSelectionStrategy(v string) *PutSlotTypeInput { 11695 s.ValueSelectionStrategy = &v 11696 return s 11697} 11698 11699type PutSlotTypeOutput struct { 11700 _ struct{} `type:"structure"` 11701 11702 // Checksum of the $LATEST version of the slot type. 11703 Checksum *string `locationName:"checksum" type:"string"` 11704 11705 // True if a new version of the slot type was created. If the createVersion 11706 // field was not specified in the request, the createVersion field is set to 11707 // false in the response. 11708 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 11709 11710 // The date that the slot type was created. 11711 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 11712 11713 // A description of the slot type. 11714 Description *string `locationName:"description" type:"string"` 11715 11716 // A list of EnumerationValue objects that defines the values that the slot 11717 // type can take. 11718 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 11719 11720 // The date that the slot type was updated. When you create a slot type, the 11721 // creation date and last update date are the same. 11722 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 11723 11724 // The name of the slot type. 11725 Name *string `locationName:"name" min:"1" type:"string"` 11726 11727 // The built-in slot type used as the parent of the slot type. 11728 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 11729 11730 // Configuration information that extends the parent built-in slot type. 11731 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 11732 11733 // The slot resolution strategy that Amazon Lex uses to determine the value 11734 // of the slot. For more information, see PutSlotType. 11735 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 11736 11737 // The version of the slot type. For a new slot type, the version is always 11738 // $LATEST. 11739 Version *string `locationName:"version" min:"1" type:"string"` 11740} 11741 11742// String returns the string representation 11743func (s PutSlotTypeOutput) String() string { 11744 return awsutil.Prettify(s) 11745} 11746 11747// GoString returns the string representation 11748func (s PutSlotTypeOutput) GoString() string { 11749 return s.String() 11750} 11751 11752// SetChecksum sets the Checksum field's value. 11753func (s *PutSlotTypeOutput) SetChecksum(v string) *PutSlotTypeOutput { 11754 s.Checksum = &v 11755 return s 11756} 11757 11758// SetCreateVersion sets the CreateVersion field's value. 11759func (s *PutSlotTypeOutput) SetCreateVersion(v bool) *PutSlotTypeOutput { 11760 s.CreateVersion = &v 11761 return s 11762} 11763 11764// SetCreatedDate sets the CreatedDate field's value. 11765func (s *PutSlotTypeOutput) SetCreatedDate(v time.Time) *PutSlotTypeOutput { 11766 s.CreatedDate = &v 11767 return s 11768} 11769 11770// SetDescription sets the Description field's value. 11771func (s *PutSlotTypeOutput) SetDescription(v string) *PutSlotTypeOutput { 11772 s.Description = &v 11773 return s 11774} 11775 11776// SetEnumerationValues sets the EnumerationValues field's value. 11777func (s *PutSlotTypeOutput) SetEnumerationValues(v []*EnumerationValue) *PutSlotTypeOutput { 11778 s.EnumerationValues = v 11779 return s 11780} 11781 11782// SetLastUpdatedDate sets the LastUpdatedDate field's value. 11783func (s *PutSlotTypeOutput) SetLastUpdatedDate(v time.Time) *PutSlotTypeOutput { 11784 s.LastUpdatedDate = &v 11785 return s 11786} 11787 11788// SetName sets the Name field's value. 11789func (s *PutSlotTypeOutput) SetName(v string) *PutSlotTypeOutput { 11790 s.Name = &v 11791 return s 11792} 11793 11794// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 11795func (s *PutSlotTypeOutput) SetParentSlotTypeSignature(v string) *PutSlotTypeOutput { 11796 s.ParentSlotTypeSignature = &v 11797 return s 11798} 11799 11800// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 11801func (s *PutSlotTypeOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *PutSlotTypeOutput { 11802 s.SlotTypeConfigurations = v 11803 return s 11804} 11805 11806// SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 11807func (s *PutSlotTypeOutput) SetValueSelectionStrategy(v string) *PutSlotTypeOutput { 11808 s.ValueSelectionStrategy = &v 11809 return s 11810} 11811 11812// SetVersion sets the Version field's value. 11813func (s *PutSlotTypeOutput) SetVersion(v string) *PutSlotTypeOutput { 11814 s.Version = &v 11815 return s 11816} 11817 11818// The resource that you are attempting to delete is referred to by another 11819// resource. Use this information to remove references to the resource that 11820// you are trying to delete. 11821// 11822// The body of the exception contains a JSON object that describes the resource. 11823// 11824// { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 11825// 11826// "resourceReference": { 11827// 11828// "name": string, "version": string } } 11829type ResourceInUseException struct { 11830 _ struct{} `type:"structure"` 11831 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11832 11833 // Describes the resource that refers to the resource that you are attempting 11834 // to delete. This object is returned as part of the ResourceInUseException 11835 // exception. 11836 ExampleReference *ResourceReference `locationName:"exampleReference" type:"structure"` 11837 11838 Message_ *string `locationName:"message" type:"string"` 11839 11840 ReferenceType *string `locationName:"referenceType" type:"string" enum:"ReferenceType"` 11841} 11842 11843// String returns the string representation 11844func (s ResourceInUseException) String() string { 11845 return awsutil.Prettify(s) 11846} 11847 11848// GoString returns the string representation 11849func (s ResourceInUseException) GoString() string { 11850 return s.String() 11851} 11852 11853func newErrorResourceInUseException(v protocol.ResponseMetadata) error { 11854 return &ResourceInUseException{ 11855 RespMetadata: v, 11856 } 11857} 11858 11859// Code returns the exception type name. 11860func (s *ResourceInUseException) Code() string { 11861 return "ResourceInUseException" 11862} 11863 11864// Message returns the exception's message. 11865func (s *ResourceInUseException) Message() string { 11866 if s.Message_ != nil { 11867 return *s.Message_ 11868 } 11869 return "" 11870} 11871 11872// OrigErr always returns nil, satisfies awserr.Error interface. 11873func (s *ResourceInUseException) OrigErr() error { 11874 return nil 11875} 11876 11877func (s *ResourceInUseException) Error() string { 11878 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 11879} 11880 11881// Status code returns the HTTP status code for the request's response error. 11882func (s *ResourceInUseException) StatusCode() int { 11883 return s.RespMetadata.StatusCode 11884} 11885 11886// RequestID returns the service's response RequestID for request. 11887func (s *ResourceInUseException) RequestID() string { 11888 return s.RespMetadata.RequestID 11889} 11890 11891// Describes the resource that refers to the resource that you are attempting 11892// to delete. This object is returned as part of the ResourceInUseException 11893// exception. 11894type ResourceReference struct { 11895 _ struct{} `type:"structure"` 11896 11897 // The name of the resource that is using the resource that you are trying to 11898 // delete. 11899 Name *string `locationName:"name" min:"1" type:"string"` 11900 11901 // The version of the resource that is using the resource that you are trying 11902 // to delete. 11903 Version *string `locationName:"version" min:"1" type:"string"` 11904} 11905 11906// String returns the string representation 11907func (s ResourceReference) String() string { 11908 return awsutil.Prettify(s) 11909} 11910 11911// GoString returns the string representation 11912func (s ResourceReference) GoString() string { 11913 return s.String() 11914} 11915 11916// SetName sets the Name field's value. 11917func (s *ResourceReference) SetName(v string) *ResourceReference { 11918 s.Name = &v 11919 return s 11920} 11921 11922// SetVersion sets the Version field's value. 11923func (s *ResourceReference) SetVersion(v string) *ResourceReference { 11924 s.Version = &v 11925 return s 11926} 11927 11928// Identifies the version of a specific slot. 11929type Slot struct { 11930 _ struct{} `type:"structure"` 11931 11932 // A list of default values for the slot. Default values are used when Amazon 11933 // Lex hasn't determined a value for a slot. You can specify default values 11934 // from context variables, session attributes, and defined values. 11935 DefaultValueSpec *SlotDefaultValueSpec `locationName:"defaultValueSpec" type:"structure"` 11936 11937 // A description of the slot. 11938 Description *string `locationName:"description" type:"string"` 11939 11940 // The name of the slot. 11941 // 11942 // Name is a required field 11943 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 11944 11945 // Determines whether a slot is obfuscated in conversation logs and stored utterances. 11946 // When you obfuscate a slot, the value is replaced by the slot name in curly 11947 // braces ({}). For example, if the slot name is "full_name", obfuscated values 11948 // are replaced with "{full_name}". For more information, see Slot Obfuscation 11949 // (https://docs.aws.amazon.com/lex/latest/dg/how-obfuscate.html). 11950 ObfuscationSetting *string `locationName:"obfuscationSetting" type:"string" enum:"ObfuscationSetting"` 11951 11952 // Directs Amazon Lex the order in which to elicit this slot value from the 11953 // user. For example, if the intent has two slots with priorities 1 and 2, AWS 11954 // Amazon Lex first elicits a value for the slot with priority 1. 11955 // 11956 // If multiple slots share the same priority, the order in which Amazon Lex 11957 // elicits values is arbitrary. 11958 Priority *int64 `locationName:"priority" type:"integer"` 11959 11960 // A set of possible responses for the slot type used by text-based clients. 11961 // A user chooses an option from the response card, instead of using text to 11962 // reply. 11963 ResponseCard *string `locationName:"responseCard" min:"1" type:"string"` 11964 11965 // If you know a specific pattern with which users might respond to an Amazon 11966 // Lex request for a slot value, you can provide those utterances to improve 11967 // accuracy. This is optional. In most cases, Amazon Lex is capable of understanding 11968 // user utterances. 11969 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 11970 11971 // Specifies whether the slot is required or optional. 11972 // 11973 // SlotConstraint is a required field 11974 SlotConstraint *string `locationName:"slotConstraint" type:"string" required:"true" enum:"SlotConstraint"` 11975 11976 // The type of the slot, either a custom slot type that you defined or one of 11977 // the built-in slot types. 11978 SlotType *string `locationName:"slotType" min:"1" type:"string"` 11979 11980 // The version of the slot type. 11981 SlotTypeVersion *string `locationName:"slotTypeVersion" min:"1" type:"string"` 11982 11983 // The prompt that Amazon Lex uses to elicit the slot value from the user. 11984 ValueElicitationPrompt *Prompt `locationName:"valueElicitationPrompt" type:"structure"` 11985} 11986 11987// String returns the string representation 11988func (s Slot) String() string { 11989 return awsutil.Prettify(s) 11990} 11991 11992// GoString returns the string representation 11993func (s Slot) GoString() string { 11994 return s.String() 11995} 11996 11997// Validate inspects the fields of the type to determine if they are valid. 11998func (s *Slot) Validate() error { 11999 invalidParams := request.ErrInvalidParams{Context: "Slot"} 12000 if s.Name == nil { 12001 invalidParams.Add(request.NewErrParamRequired("Name")) 12002 } 12003 if s.Name != nil && len(*s.Name) < 1 { 12004 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 12005 } 12006 if s.ResponseCard != nil && len(*s.ResponseCard) < 1 { 12007 invalidParams.Add(request.NewErrParamMinLen("ResponseCard", 1)) 12008 } 12009 if s.SlotConstraint == nil { 12010 invalidParams.Add(request.NewErrParamRequired("SlotConstraint")) 12011 } 12012 if s.SlotType != nil && len(*s.SlotType) < 1 { 12013 invalidParams.Add(request.NewErrParamMinLen("SlotType", 1)) 12014 } 12015 if s.SlotTypeVersion != nil && len(*s.SlotTypeVersion) < 1 { 12016 invalidParams.Add(request.NewErrParamMinLen("SlotTypeVersion", 1)) 12017 } 12018 if s.DefaultValueSpec != nil { 12019 if err := s.DefaultValueSpec.Validate(); err != nil { 12020 invalidParams.AddNested("DefaultValueSpec", err.(request.ErrInvalidParams)) 12021 } 12022 } 12023 if s.ValueElicitationPrompt != nil { 12024 if err := s.ValueElicitationPrompt.Validate(); err != nil { 12025 invalidParams.AddNested("ValueElicitationPrompt", err.(request.ErrInvalidParams)) 12026 } 12027 } 12028 12029 if invalidParams.Len() > 0 { 12030 return invalidParams 12031 } 12032 return nil 12033} 12034 12035// SetDefaultValueSpec sets the DefaultValueSpec field's value. 12036func (s *Slot) SetDefaultValueSpec(v *SlotDefaultValueSpec) *Slot { 12037 s.DefaultValueSpec = v 12038 return s 12039} 12040 12041// SetDescription sets the Description field's value. 12042func (s *Slot) SetDescription(v string) *Slot { 12043 s.Description = &v 12044 return s 12045} 12046 12047// SetName sets the Name field's value. 12048func (s *Slot) SetName(v string) *Slot { 12049 s.Name = &v 12050 return s 12051} 12052 12053// SetObfuscationSetting sets the ObfuscationSetting field's value. 12054func (s *Slot) SetObfuscationSetting(v string) *Slot { 12055 s.ObfuscationSetting = &v 12056 return s 12057} 12058 12059// SetPriority sets the Priority field's value. 12060func (s *Slot) SetPriority(v int64) *Slot { 12061 s.Priority = &v 12062 return s 12063} 12064 12065// SetResponseCard sets the ResponseCard field's value. 12066func (s *Slot) SetResponseCard(v string) *Slot { 12067 s.ResponseCard = &v 12068 return s 12069} 12070 12071// SetSampleUtterances sets the SampleUtterances field's value. 12072func (s *Slot) SetSampleUtterances(v []*string) *Slot { 12073 s.SampleUtterances = v 12074 return s 12075} 12076 12077// SetSlotConstraint sets the SlotConstraint field's value. 12078func (s *Slot) SetSlotConstraint(v string) *Slot { 12079 s.SlotConstraint = &v 12080 return s 12081} 12082 12083// SetSlotType sets the SlotType field's value. 12084func (s *Slot) SetSlotType(v string) *Slot { 12085 s.SlotType = &v 12086 return s 12087} 12088 12089// SetSlotTypeVersion sets the SlotTypeVersion field's value. 12090func (s *Slot) SetSlotTypeVersion(v string) *Slot { 12091 s.SlotTypeVersion = &v 12092 return s 12093} 12094 12095// SetValueElicitationPrompt sets the ValueElicitationPrompt field's value. 12096func (s *Slot) SetValueElicitationPrompt(v *Prompt) *Slot { 12097 s.ValueElicitationPrompt = v 12098 return s 12099} 12100 12101// A default value for a slot. 12102type SlotDefaultValue struct { 12103 _ struct{} `type:"structure"` 12104 12105 // The default value for the slot. You can specify one of the following: 12106 // 12107 // * #context-name.slot-name - The slot value "slot-name" in the context 12108 // "context-name." 12109 // 12110 // * {attribute} - The slot value of the session attribute "attribute." 12111 // 12112 // * 'value' - The discrete value "value." 12113 // 12114 // DefaultValue is a required field 12115 DefaultValue *string `locationName:"defaultValue" min:"1" type:"string" required:"true"` 12116} 12117 12118// String returns the string representation 12119func (s SlotDefaultValue) String() string { 12120 return awsutil.Prettify(s) 12121} 12122 12123// GoString returns the string representation 12124func (s SlotDefaultValue) GoString() string { 12125 return s.String() 12126} 12127 12128// Validate inspects the fields of the type to determine if they are valid. 12129func (s *SlotDefaultValue) Validate() error { 12130 invalidParams := request.ErrInvalidParams{Context: "SlotDefaultValue"} 12131 if s.DefaultValue == nil { 12132 invalidParams.Add(request.NewErrParamRequired("DefaultValue")) 12133 } 12134 if s.DefaultValue != nil && len(*s.DefaultValue) < 1 { 12135 invalidParams.Add(request.NewErrParamMinLen("DefaultValue", 1)) 12136 } 12137 12138 if invalidParams.Len() > 0 { 12139 return invalidParams 12140 } 12141 return nil 12142} 12143 12144// SetDefaultValue sets the DefaultValue field's value. 12145func (s *SlotDefaultValue) SetDefaultValue(v string) *SlotDefaultValue { 12146 s.DefaultValue = &v 12147 return s 12148} 12149 12150// Contains the default values for a slot. Default values are used when Amazon 12151// Lex hasn't determined a value for a slot. 12152type SlotDefaultValueSpec struct { 12153 _ struct{} `type:"structure"` 12154 12155 // The default values for a slot. You can specify more than one default. For 12156 // example, you can specify a default value to use from a matching context variable, 12157 // a session attribute, or a fixed value. 12158 // 12159 // The default value chosen is selected based on the order that you specify 12160 // them in the list. For example, if you specify a context variable and a fixed 12161 // value in that order, Amazon Lex uses the context variable if it is available, 12162 // else it uses the fixed value. 12163 // 12164 // DefaultValueList is a required field 12165 DefaultValueList []*SlotDefaultValue `locationName:"defaultValueList" type:"list" required:"true"` 12166} 12167 12168// String returns the string representation 12169func (s SlotDefaultValueSpec) String() string { 12170 return awsutil.Prettify(s) 12171} 12172 12173// GoString returns the string representation 12174func (s SlotDefaultValueSpec) GoString() string { 12175 return s.String() 12176} 12177 12178// Validate inspects the fields of the type to determine if they are valid. 12179func (s *SlotDefaultValueSpec) Validate() error { 12180 invalidParams := request.ErrInvalidParams{Context: "SlotDefaultValueSpec"} 12181 if s.DefaultValueList == nil { 12182 invalidParams.Add(request.NewErrParamRequired("DefaultValueList")) 12183 } 12184 if s.DefaultValueList != nil { 12185 for i, v := range s.DefaultValueList { 12186 if v == nil { 12187 continue 12188 } 12189 if err := v.Validate(); err != nil { 12190 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DefaultValueList", i), err.(request.ErrInvalidParams)) 12191 } 12192 } 12193 } 12194 12195 if invalidParams.Len() > 0 { 12196 return invalidParams 12197 } 12198 return nil 12199} 12200 12201// SetDefaultValueList sets the DefaultValueList field's value. 12202func (s *SlotDefaultValueSpec) SetDefaultValueList(v []*SlotDefaultValue) *SlotDefaultValueSpec { 12203 s.DefaultValueList = v 12204 return s 12205} 12206 12207// Provides configuration information for a slot type. 12208type SlotTypeConfiguration struct { 12209 _ struct{} `type:"structure"` 12210 12211 // A regular expression used to validate the value of a slot. 12212 RegexConfiguration *SlotTypeRegexConfiguration `locationName:"regexConfiguration" type:"structure"` 12213} 12214 12215// String returns the string representation 12216func (s SlotTypeConfiguration) String() string { 12217 return awsutil.Prettify(s) 12218} 12219 12220// GoString returns the string representation 12221func (s SlotTypeConfiguration) GoString() string { 12222 return s.String() 12223} 12224 12225// Validate inspects the fields of the type to determine if they are valid. 12226func (s *SlotTypeConfiguration) Validate() error { 12227 invalidParams := request.ErrInvalidParams{Context: "SlotTypeConfiguration"} 12228 if s.RegexConfiguration != nil { 12229 if err := s.RegexConfiguration.Validate(); err != nil { 12230 invalidParams.AddNested("RegexConfiguration", err.(request.ErrInvalidParams)) 12231 } 12232 } 12233 12234 if invalidParams.Len() > 0 { 12235 return invalidParams 12236 } 12237 return nil 12238} 12239 12240// SetRegexConfiguration sets the RegexConfiguration field's value. 12241func (s *SlotTypeConfiguration) SetRegexConfiguration(v *SlotTypeRegexConfiguration) *SlotTypeConfiguration { 12242 s.RegexConfiguration = v 12243 return s 12244} 12245 12246// Provides information about a slot type.. 12247type SlotTypeMetadata struct { 12248 _ struct{} `type:"structure"` 12249 12250 // The date that the slot type was created. 12251 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 12252 12253 // A description of the slot type. 12254 Description *string `locationName:"description" type:"string"` 12255 12256 // The date that the slot type was updated. When you create a resource, the 12257 // creation date and last updated date are the same. 12258 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 12259 12260 // The name of the slot type. 12261 Name *string `locationName:"name" min:"1" type:"string"` 12262 12263 // The version of the slot type. 12264 Version *string `locationName:"version" min:"1" type:"string"` 12265} 12266 12267// String returns the string representation 12268func (s SlotTypeMetadata) String() string { 12269 return awsutil.Prettify(s) 12270} 12271 12272// GoString returns the string representation 12273func (s SlotTypeMetadata) GoString() string { 12274 return s.String() 12275} 12276 12277// SetCreatedDate sets the CreatedDate field's value. 12278func (s *SlotTypeMetadata) SetCreatedDate(v time.Time) *SlotTypeMetadata { 12279 s.CreatedDate = &v 12280 return s 12281} 12282 12283// SetDescription sets the Description field's value. 12284func (s *SlotTypeMetadata) SetDescription(v string) *SlotTypeMetadata { 12285 s.Description = &v 12286 return s 12287} 12288 12289// SetLastUpdatedDate sets the LastUpdatedDate field's value. 12290func (s *SlotTypeMetadata) SetLastUpdatedDate(v time.Time) *SlotTypeMetadata { 12291 s.LastUpdatedDate = &v 12292 return s 12293} 12294 12295// SetName sets the Name field's value. 12296func (s *SlotTypeMetadata) SetName(v string) *SlotTypeMetadata { 12297 s.Name = &v 12298 return s 12299} 12300 12301// SetVersion sets the Version field's value. 12302func (s *SlotTypeMetadata) SetVersion(v string) *SlotTypeMetadata { 12303 s.Version = &v 12304 return s 12305} 12306 12307// Provides a regular expression used to validate the value of a slot. 12308type SlotTypeRegexConfiguration struct { 12309 _ struct{} `type:"structure"` 12310 12311 // A regular expression used to validate the value of a slot. 12312 // 12313 // Use a standard regular expression. Amazon Lex supports the following characters 12314 // in the regular expression: 12315 // 12316 // * A-Z, a-z 12317 // 12318 // * 0-9 12319 // 12320 // * Unicode characters ("\ u<Unicode>") 12321 // 12322 // Represent Unicode characters with four digits, for example "\u0041" or "\u005A". 12323 // 12324 // The following regular expression operators are not supported: 12325 // 12326 // * Infinite repeaters: *, +, or {x,} with no upper bound. 12327 // 12328 // * Wild card (.) 12329 // 12330 // Pattern is a required field 12331 Pattern *string `locationName:"pattern" min:"1" type:"string" required:"true"` 12332} 12333 12334// String returns the string representation 12335func (s SlotTypeRegexConfiguration) String() string { 12336 return awsutil.Prettify(s) 12337} 12338 12339// GoString returns the string representation 12340func (s SlotTypeRegexConfiguration) GoString() string { 12341 return s.String() 12342} 12343 12344// Validate inspects the fields of the type to determine if they are valid. 12345func (s *SlotTypeRegexConfiguration) Validate() error { 12346 invalidParams := request.ErrInvalidParams{Context: "SlotTypeRegexConfiguration"} 12347 if s.Pattern == nil { 12348 invalidParams.Add(request.NewErrParamRequired("Pattern")) 12349 } 12350 if s.Pattern != nil && len(*s.Pattern) < 1 { 12351 invalidParams.Add(request.NewErrParamMinLen("Pattern", 1)) 12352 } 12353 12354 if invalidParams.Len() > 0 { 12355 return invalidParams 12356 } 12357 return nil 12358} 12359 12360// SetPattern sets the Pattern field's value. 12361func (s *SlotTypeRegexConfiguration) SetPattern(v string) *SlotTypeRegexConfiguration { 12362 s.Pattern = &v 12363 return s 12364} 12365 12366type StartImportInput struct { 12367 _ struct{} `type:"structure"` 12368 12369 // Specifies the action that the StartImport operation should take when there 12370 // is an existing resource with the same name. 12371 // 12372 // * FAIL_ON_CONFLICT - The import operation is stopped on the first conflict 12373 // between a resource in the import file and an existing resource. The name 12374 // of the resource causing the conflict is in the failureReason field of 12375 // the response to the GetImport operation. OVERWRITE_LATEST - The import 12376 // operation proceeds even if there is a conflict with an existing resource. 12377 // The $LASTEST version of the existing resource is overwritten with the 12378 // data from the import file. 12379 // 12380 // MergeStrategy is a required field 12381 MergeStrategy *string `locationName:"mergeStrategy" type:"string" required:"true" enum:"MergeStrategy"` 12382 12383 // A zip archive in binary format. The archive should contain one file, a JSON 12384 // file containing the resource to import. The resource should match the type 12385 // specified in the resourceType field. 12386 // 12387 // Payload is automatically base64 encoded/decoded by the SDK. 12388 // 12389 // Payload is a required field 12390 Payload []byte `locationName:"payload" type:"blob" required:"true"` 12391 12392 // Specifies the type of resource to export. Each resource also exports any 12393 // resources that it depends on. 12394 // 12395 // * A bot exports dependent intents. 12396 // 12397 // * An intent exports dependent slot types. 12398 // 12399 // ResourceType is a required field 12400 ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` 12401 12402 // A list of tags to add to the imported bot. You can only add tags when you 12403 // import a bot, you can't add tags to an intent or slot type. 12404 Tags []*Tag `locationName:"tags" type:"list"` 12405} 12406 12407// String returns the string representation 12408func (s StartImportInput) String() string { 12409 return awsutil.Prettify(s) 12410} 12411 12412// GoString returns the string representation 12413func (s StartImportInput) GoString() string { 12414 return s.String() 12415} 12416 12417// Validate inspects the fields of the type to determine if they are valid. 12418func (s *StartImportInput) Validate() error { 12419 invalidParams := request.ErrInvalidParams{Context: "StartImportInput"} 12420 if s.MergeStrategy == nil { 12421 invalidParams.Add(request.NewErrParamRequired("MergeStrategy")) 12422 } 12423 if s.Payload == nil { 12424 invalidParams.Add(request.NewErrParamRequired("Payload")) 12425 } 12426 if s.ResourceType == nil { 12427 invalidParams.Add(request.NewErrParamRequired("ResourceType")) 12428 } 12429 if s.Tags != nil { 12430 for i, v := range s.Tags { 12431 if v == nil { 12432 continue 12433 } 12434 if err := v.Validate(); err != nil { 12435 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 12436 } 12437 } 12438 } 12439 12440 if invalidParams.Len() > 0 { 12441 return invalidParams 12442 } 12443 return nil 12444} 12445 12446// SetMergeStrategy sets the MergeStrategy field's value. 12447func (s *StartImportInput) SetMergeStrategy(v string) *StartImportInput { 12448 s.MergeStrategy = &v 12449 return s 12450} 12451 12452// SetPayload sets the Payload field's value. 12453func (s *StartImportInput) SetPayload(v []byte) *StartImportInput { 12454 s.Payload = v 12455 return s 12456} 12457 12458// SetResourceType sets the ResourceType field's value. 12459func (s *StartImportInput) SetResourceType(v string) *StartImportInput { 12460 s.ResourceType = &v 12461 return s 12462} 12463 12464// SetTags sets the Tags field's value. 12465func (s *StartImportInput) SetTags(v []*Tag) *StartImportInput { 12466 s.Tags = v 12467 return s 12468} 12469 12470type StartImportOutput struct { 12471 _ struct{} `type:"structure"` 12472 12473 // A timestamp for the date and time that the import job was requested. 12474 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 12475 12476 // The identifier for the specific import job. 12477 ImportId *string `locationName:"importId" type:"string"` 12478 12479 // The status of the import job. If the status is FAILED, you can get the reason 12480 // for the failure using the GetImport operation. 12481 ImportStatus *string `locationName:"importStatus" type:"string" enum:"ImportStatus"` 12482 12483 // The action to take when there is a merge conflict. 12484 MergeStrategy *string `locationName:"mergeStrategy" type:"string" enum:"MergeStrategy"` 12485 12486 // The name given to the import job. 12487 Name *string `locationName:"name" min:"1" type:"string"` 12488 12489 // The type of resource to import. 12490 ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` 12491 12492 // A list of tags added to the imported bot. 12493 Tags []*Tag `locationName:"tags" type:"list"` 12494} 12495 12496// String returns the string representation 12497func (s StartImportOutput) String() string { 12498 return awsutil.Prettify(s) 12499} 12500 12501// GoString returns the string representation 12502func (s StartImportOutput) GoString() string { 12503 return s.String() 12504} 12505 12506// SetCreatedDate sets the CreatedDate field's value. 12507func (s *StartImportOutput) SetCreatedDate(v time.Time) *StartImportOutput { 12508 s.CreatedDate = &v 12509 return s 12510} 12511 12512// SetImportId sets the ImportId field's value. 12513func (s *StartImportOutput) SetImportId(v string) *StartImportOutput { 12514 s.ImportId = &v 12515 return s 12516} 12517 12518// SetImportStatus sets the ImportStatus field's value. 12519func (s *StartImportOutput) SetImportStatus(v string) *StartImportOutput { 12520 s.ImportStatus = &v 12521 return s 12522} 12523 12524// SetMergeStrategy sets the MergeStrategy field's value. 12525func (s *StartImportOutput) SetMergeStrategy(v string) *StartImportOutput { 12526 s.MergeStrategy = &v 12527 return s 12528} 12529 12530// SetName sets the Name field's value. 12531func (s *StartImportOutput) SetName(v string) *StartImportOutput { 12532 s.Name = &v 12533 return s 12534} 12535 12536// SetResourceType sets the ResourceType field's value. 12537func (s *StartImportOutput) SetResourceType(v string) *StartImportOutput { 12538 s.ResourceType = &v 12539 return s 12540} 12541 12542// SetTags sets the Tags field's value. 12543func (s *StartImportOutput) SetTags(v []*Tag) *StartImportOutput { 12544 s.Tags = v 12545 return s 12546} 12547 12548// A collection of messages that convey information to the user. At runtime, 12549// Amazon Lex selects the message to convey. 12550type Statement struct { 12551 _ struct{} `type:"structure"` 12552 12553 // A collection of message objects. 12554 // 12555 // Messages is a required field 12556 Messages []*Message `locationName:"messages" min:"1" type:"list" required:"true"` 12557 12558 // At runtime, if the client is using the PostText (http://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 12559 // API, Amazon Lex includes the response card in the response. It substitutes 12560 // all of the session attributes and slot values for placeholders in the response 12561 // card. 12562 ResponseCard *string `locationName:"responseCard" min:"1" type:"string"` 12563} 12564 12565// String returns the string representation 12566func (s Statement) String() string { 12567 return awsutil.Prettify(s) 12568} 12569 12570// GoString returns the string representation 12571func (s Statement) GoString() string { 12572 return s.String() 12573} 12574 12575// Validate inspects the fields of the type to determine if they are valid. 12576func (s *Statement) Validate() error { 12577 invalidParams := request.ErrInvalidParams{Context: "Statement"} 12578 if s.Messages == nil { 12579 invalidParams.Add(request.NewErrParamRequired("Messages")) 12580 } 12581 if s.Messages != nil && len(s.Messages) < 1 { 12582 invalidParams.Add(request.NewErrParamMinLen("Messages", 1)) 12583 } 12584 if s.ResponseCard != nil && len(*s.ResponseCard) < 1 { 12585 invalidParams.Add(request.NewErrParamMinLen("ResponseCard", 1)) 12586 } 12587 if s.Messages != nil { 12588 for i, v := range s.Messages { 12589 if v == nil { 12590 continue 12591 } 12592 if err := v.Validate(); err != nil { 12593 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Messages", i), err.(request.ErrInvalidParams)) 12594 } 12595 } 12596 } 12597 12598 if invalidParams.Len() > 0 { 12599 return invalidParams 12600 } 12601 return nil 12602} 12603 12604// SetMessages sets the Messages field's value. 12605func (s *Statement) SetMessages(v []*Message) *Statement { 12606 s.Messages = v 12607 return s 12608} 12609 12610// SetResponseCard sets the ResponseCard field's value. 12611func (s *Statement) SetResponseCard(v string) *Statement { 12612 s.ResponseCard = &v 12613 return s 12614} 12615 12616// A list of key/value pairs that identify a bot, bot alias, or bot channel. 12617// Tag keys and values can consist of Unicode letters, digits, white space, 12618// and any of the following symbols: _ . : / = + - @. 12619type Tag struct { 12620 _ struct{} `type:"structure"` 12621 12622 // The key for the tag. Keys are not case-sensitive and must be unique. 12623 // 12624 // Key is a required field 12625 Key *string `locationName:"key" min:"1" type:"string" required:"true"` 12626 12627 // The value associated with a key. The value may be an empty string but it 12628 // can't be null. 12629 // 12630 // Value is a required field 12631 Value *string `locationName:"value" type:"string" required:"true"` 12632} 12633 12634// String returns the string representation 12635func (s Tag) String() string { 12636 return awsutil.Prettify(s) 12637} 12638 12639// GoString returns the string representation 12640func (s Tag) GoString() string { 12641 return s.String() 12642} 12643 12644// Validate inspects the fields of the type to determine if they are valid. 12645func (s *Tag) Validate() error { 12646 invalidParams := request.ErrInvalidParams{Context: "Tag"} 12647 if s.Key == nil { 12648 invalidParams.Add(request.NewErrParamRequired("Key")) 12649 } 12650 if s.Key != nil && len(*s.Key) < 1 { 12651 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 12652 } 12653 if s.Value == nil { 12654 invalidParams.Add(request.NewErrParamRequired("Value")) 12655 } 12656 12657 if invalidParams.Len() > 0 { 12658 return invalidParams 12659 } 12660 return nil 12661} 12662 12663// SetKey sets the Key field's value. 12664func (s *Tag) SetKey(v string) *Tag { 12665 s.Key = &v 12666 return s 12667} 12668 12669// SetValue sets the Value field's value. 12670func (s *Tag) SetValue(v string) *Tag { 12671 s.Value = &v 12672 return s 12673} 12674 12675type TagResourceInput struct { 12676 _ struct{} `type:"structure"` 12677 12678 // The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel to tag. 12679 // 12680 // ResourceArn is a required field 12681 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` 12682 12683 // A list of tag keys to add to the resource. If a tag key already exists, the 12684 // existing value is replaced with the new value. 12685 // 12686 // Tags is a required field 12687 Tags []*Tag `locationName:"tags" type:"list" required:"true"` 12688} 12689 12690// String returns the string representation 12691func (s TagResourceInput) String() string { 12692 return awsutil.Prettify(s) 12693} 12694 12695// GoString returns the string representation 12696func (s TagResourceInput) GoString() string { 12697 return s.String() 12698} 12699 12700// Validate inspects the fields of the type to determine if they are valid. 12701func (s *TagResourceInput) Validate() error { 12702 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 12703 if s.ResourceArn == nil { 12704 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 12705 } 12706 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 12707 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 12708 } 12709 if s.Tags == nil { 12710 invalidParams.Add(request.NewErrParamRequired("Tags")) 12711 } 12712 if s.Tags != nil { 12713 for i, v := range s.Tags { 12714 if v == nil { 12715 continue 12716 } 12717 if err := v.Validate(); err != nil { 12718 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 12719 } 12720 } 12721 } 12722 12723 if invalidParams.Len() > 0 { 12724 return invalidParams 12725 } 12726 return nil 12727} 12728 12729// SetResourceArn sets the ResourceArn field's value. 12730func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { 12731 s.ResourceArn = &v 12732 return s 12733} 12734 12735// SetTags sets the Tags field's value. 12736func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { 12737 s.Tags = v 12738 return s 12739} 12740 12741type TagResourceOutput struct { 12742 _ struct{} `type:"structure"` 12743} 12744 12745// String returns the string representation 12746func (s TagResourceOutput) String() string { 12747 return awsutil.Prettify(s) 12748} 12749 12750// GoString returns the string representation 12751func (s TagResourceOutput) GoString() string { 12752 return s.String() 12753} 12754 12755type UntagResourceInput struct { 12756 _ struct{} `type:"structure"` 12757 12758 // The Amazon Resource Name (ARN) of the resource to remove the tags from. 12759 // 12760 // ResourceArn is a required field 12761 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` 12762 12763 // A list of tag keys to remove from the resource. If a tag key does not exist 12764 // on the resource, it is ignored. 12765 // 12766 // TagKeys is a required field 12767 TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"` 12768} 12769 12770// String returns the string representation 12771func (s UntagResourceInput) String() string { 12772 return awsutil.Prettify(s) 12773} 12774 12775// GoString returns the string representation 12776func (s UntagResourceInput) GoString() string { 12777 return s.String() 12778} 12779 12780// Validate inspects the fields of the type to determine if they are valid. 12781func (s *UntagResourceInput) Validate() error { 12782 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 12783 if s.ResourceArn == nil { 12784 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 12785 } 12786 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 12787 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 12788 } 12789 if s.TagKeys == nil { 12790 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 12791 } 12792 12793 if invalidParams.Len() > 0 { 12794 return invalidParams 12795 } 12796 return nil 12797} 12798 12799// SetResourceArn sets the ResourceArn field's value. 12800func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { 12801 s.ResourceArn = &v 12802 return s 12803} 12804 12805// SetTagKeys sets the TagKeys field's value. 12806func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 12807 s.TagKeys = v 12808 return s 12809} 12810 12811type UntagResourceOutput struct { 12812 _ struct{} `type:"structure"` 12813} 12814 12815// String returns the string representation 12816func (s UntagResourceOutput) String() string { 12817 return awsutil.Prettify(s) 12818} 12819 12820// GoString returns the string representation 12821func (s UntagResourceOutput) GoString() string { 12822 return s.String() 12823} 12824 12825// Provides information about a single utterance that was made to your bot. 12826type UtteranceData struct { 12827 _ struct{} `type:"structure"` 12828 12829 // The number of times that the utterance was processed. 12830 Count *int64 `locationName:"count" type:"integer"` 12831 12832 // The total number of individuals that used the utterance. 12833 DistinctUsers *int64 `locationName:"distinctUsers" type:"integer"` 12834 12835 // The date that the utterance was first recorded. 12836 FirstUtteredDate *time.Time `locationName:"firstUtteredDate" type:"timestamp"` 12837 12838 // The date that the utterance was last recorded. 12839 LastUtteredDate *time.Time `locationName:"lastUtteredDate" type:"timestamp"` 12840 12841 // The text that was entered by the user or the text representation of an audio 12842 // clip. 12843 UtteranceString *string `locationName:"utteranceString" min:"1" type:"string"` 12844} 12845 12846// String returns the string representation 12847func (s UtteranceData) String() string { 12848 return awsutil.Prettify(s) 12849} 12850 12851// GoString returns the string representation 12852func (s UtteranceData) GoString() string { 12853 return s.String() 12854} 12855 12856// SetCount sets the Count field's value. 12857func (s *UtteranceData) SetCount(v int64) *UtteranceData { 12858 s.Count = &v 12859 return s 12860} 12861 12862// SetDistinctUsers sets the DistinctUsers field's value. 12863func (s *UtteranceData) SetDistinctUsers(v int64) *UtteranceData { 12864 s.DistinctUsers = &v 12865 return s 12866} 12867 12868// SetFirstUtteredDate sets the FirstUtteredDate field's value. 12869func (s *UtteranceData) SetFirstUtteredDate(v time.Time) *UtteranceData { 12870 s.FirstUtteredDate = &v 12871 return s 12872} 12873 12874// SetLastUtteredDate sets the LastUtteredDate field's value. 12875func (s *UtteranceData) SetLastUtteredDate(v time.Time) *UtteranceData { 12876 s.LastUtteredDate = &v 12877 return s 12878} 12879 12880// SetUtteranceString sets the UtteranceString field's value. 12881func (s *UtteranceData) SetUtteranceString(v string) *UtteranceData { 12882 s.UtteranceString = &v 12883 return s 12884} 12885 12886// Provides a list of utterances that have been made to a specific version of 12887// your bot. The list contains a maximum of 100 utterances. 12888type UtteranceList struct { 12889 _ struct{} `type:"structure"` 12890 12891 // The version of the bot that processed the list. 12892 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 12893 12894 // One or more UtteranceData objects that contain information about the utterances 12895 // that have been made to a bot. The maximum number of object is 100. 12896 Utterances []*UtteranceData `locationName:"utterances" type:"list"` 12897} 12898 12899// String returns the string representation 12900func (s UtteranceList) String() string { 12901 return awsutil.Prettify(s) 12902} 12903 12904// GoString returns the string representation 12905func (s UtteranceList) GoString() string { 12906 return s.String() 12907} 12908 12909// SetBotVersion sets the BotVersion field's value. 12910func (s *UtteranceList) SetBotVersion(v string) *UtteranceList { 12911 s.BotVersion = &v 12912 return s 12913} 12914 12915// SetUtterances sets the Utterances field's value. 12916func (s *UtteranceList) SetUtterances(v []*UtteranceData) *UtteranceList { 12917 s.Utterances = v 12918 return s 12919} 12920 12921const ( 12922 // ChannelStatusInProgress is a ChannelStatus enum value 12923 ChannelStatusInProgress = "IN_PROGRESS" 12924 12925 // ChannelStatusCreated is a ChannelStatus enum value 12926 ChannelStatusCreated = "CREATED" 12927 12928 // ChannelStatusFailed is a ChannelStatus enum value 12929 ChannelStatusFailed = "FAILED" 12930) 12931 12932// ChannelStatus_Values returns all elements of the ChannelStatus enum 12933func ChannelStatus_Values() []string { 12934 return []string{ 12935 ChannelStatusInProgress, 12936 ChannelStatusCreated, 12937 ChannelStatusFailed, 12938 } 12939} 12940 12941const ( 12942 // ChannelTypeFacebook is a ChannelType enum value 12943 ChannelTypeFacebook = "Facebook" 12944 12945 // ChannelTypeSlack is a ChannelType enum value 12946 ChannelTypeSlack = "Slack" 12947 12948 // ChannelTypeTwilioSms is a ChannelType enum value 12949 ChannelTypeTwilioSms = "Twilio-Sms" 12950 12951 // ChannelTypeKik is a ChannelType enum value 12952 ChannelTypeKik = "Kik" 12953) 12954 12955// ChannelType_Values returns all elements of the ChannelType enum 12956func ChannelType_Values() []string { 12957 return []string{ 12958 ChannelTypeFacebook, 12959 ChannelTypeSlack, 12960 ChannelTypeTwilioSms, 12961 ChannelTypeKik, 12962 } 12963} 12964 12965const ( 12966 // ContentTypePlainText is a ContentType enum value 12967 ContentTypePlainText = "PlainText" 12968 12969 // ContentTypeSsml is a ContentType enum value 12970 ContentTypeSsml = "SSML" 12971 12972 // ContentTypeCustomPayload is a ContentType enum value 12973 ContentTypeCustomPayload = "CustomPayload" 12974) 12975 12976// ContentType_Values returns all elements of the ContentType enum 12977func ContentType_Values() []string { 12978 return []string{ 12979 ContentTypePlainText, 12980 ContentTypeSsml, 12981 ContentTypeCustomPayload, 12982 } 12983} 12984 12985const ( 12986 // DestinationCloudwatchLogs is a Destination enum value 12987 DestinationCloudwatchLogs = "CLOUDWATCH_LOGS" 12988 12989 // DestinationS3 is a Destination enum value 12990 DestinationS3 = "S3" 12991) 12992 12993// Destination_Values returns all elements of the Destination enum 12994func Destination_Values() []string { 12995 return []string{ 12996 DestinationCloudwatchLogs, 12997 DestinationS3, 12998 } 12999} 13000 13001const ( 13002 // ExportStatusInProgress is a ExportStatus enum value 13003 ExportStatusInProgress = "IN_PROGRESS" 13004 13005 // ExportStatusReady is a ExportStatus enum value 13006 ExportStatusReady = "READY" 13007 13008 // ExportStatusFailed is a ExportStatus enum value 13009 ExportStatusFailed = "FAILED" 13010) 13011 13012// ExportStatus_Values returns all elements of the ExportStatus enum 13013func ExportStatus_Values() []string { 13014 return []string{ 13015 ExportStatusInProgress, 13016 ExportStatusReady, 13017 ExportStatusFailed, 13018 } 13019} 13020 13021const ( 13022 // ExportTypeAlexaSkillsKit is a ExportType enum value 13023 ExportTypeAlexaSkillsKit = "ALEXA_SKILLS_KIT" 13024 13025 // ExportTypeLex is a ExportType enum value 13026 ExportTypeLex = "LEX" 13027) 13028 13029// ExportType_Values returns all elements of the ExportType enum 13030func ExportType_Values() []string { 13031 return []string{ 13032 ExportTypeAlexaSkillsKit, 13033 ExportTypeLex, 13034 } 13035} 13036 13037const ( 13038 // FulfillmentActivityTypeReturnIntent is a FulfillmentActivityType enum value 13039 FulfillmentActivityTypeReturnIntent = "ReturnIntent" 13040 13041 // FulfillmentActivityTypeCodeHook is a FulfillmentActivityType enum value 13042 FulfillmentActivityTypeCodeHook = "CodeHook" 13043) 13044 13045// FulfillmentActivityType_Values returns all elements of the FulfillmentActivityType enum 13046func FulfillmentActivityType_Values() []string { 13047 return []string{ 13048 FulfillmentActivityTypeReturnIntent, 13049 FulfillmentActivityTypeCodeHook, 13050 } 13051} 13052 13053const ( 13054 // ImportStatusInProgress is a ImportStatus enum value 13055 ImportStatusInProgress = "IN_PROGRESS" 13056 13057 // ImportStatusComplete is a ImportStatus enum value 13058 ImportStatusComplete = "COMPLETE" 13059 13060 // ImportStatusFailed is a ImportStatus enum value 13061 ImportStatusFailed = "FAILED" 13062) 13063 13064// ImportStatus_Values returns all elements of the ImportStatus enum 13065func ImportStatus_Values() []string { 13066 return []string{ 13067 ImportStatusInProgress, 13068 ImportStatusComplete, 13069 ImportStatusFailed, 13070 } 13071} 13072 13073const ( 13074 // LocaleDeDe is a Locale enum value 13075 LocaleDeDe = "de-DE" 13076 13077 // LocaleEnAu is a Locale enum value 13078 LocaleEnAu = "en-AU" 13079 13080 // LocaleEnGb is a Locale enum value 13081 LocaleEnGb = "en-GB" 13082 13083 // LocaleEnUs is a Locale enum value 13084 LocaleEnUs = "en-US" 13085 13086 // LocaleEs419 is a Locale enum value 13087 LocaleEs419 = "es-419" 13088 13089 // LocaleEsEs is a Locale enum value 13090 LocaleEsEs = "es-ES" 13091 13092 // LocaleEsUs is a Locale enum value 13093 LocaleEsUs = "es-US" 13094 13095 // LocaleFrFr is a Locale enum value 13096 LocaleFrFr = "fr-FR" 13097 13098 // LocaleFrCa is a Locale enum value 13099 LocaleFrCa = "fr-CA" 13100 13101 // LocaleItIt is a Locale enum value 13102 LocaleItIt = "it-IT" 13103 13104 // LocaleJaJp is a Locale enum value 13105 LocaleJaJp = "ja-JP" 13106) 13107 13108// Locale_Values returns all elements of the Locale enum 13109func Locale_Values() []string { 13110 return []string{ 13111 LocaleDeDe, 13112 LocaleEnAu, 13113 LocaleEnGb, 13114 LocaleEnUs, 13115 LocaleEs419, 13116 LocaleEsEs, 13117 LocaleEsUs, 13118 LocaleFrFr, 13119 LocaleFrCa, 13120 LocaleItIt, 13121 LocaleJaJp, 13122 } 13123} 13124 13125const ( 13126 // LogTypeAudio is a LogType enum value 13127 LogTypeAudio = "AUDIO" 13128 13129 // LogTypeText is a LogType enum value 13130 LogTypeText = "TEXT" 13131) 13132 13133// LogType_Values returns all elements of the LogType enum 13134func LogType_Values() []string { 13135 return []string{ 13136 LogTypeAudio, 13137 LogTypeText, 13138 } 13139} 13140 13141const ( 13142 // MergeStrategyOverwriteLatest is a MergeStrategy enum value 13143 MergeStrategyOverwriteLatest = "OVERWRITE_LATEST" 13144 13145 // MergeStrategyFailOnConflict is a MergeStrategy enum value 13146 MergeStrategyFailOnConflict = "FAIL_ON_CONFLICT" 13147) 13148 13149// MergeStrategy_Values returns all elements of the MergeStrategy enum 13150func MergeStrategy_Values() []string { 13151 return []string{ 13152 MergeStrategyOverwriteLatest, 13153 MergeStrategyFailOnConflict, 13154 } 13155} 13156 13157const ( 13158 // ObfuscationSettingNone is a ObfuscationSetting enum value 13159 ObfuscationSettingNone = "NONE" 13160 13161 // ObfuscationSettingDefaultObfuscation is a ObfuscationSetting enum value 13162 ObfuscationSettingDefaultObfuscation = "DEFAULT_OBFUSCATION" 13163) 13164 13165// ObfuscationSetting_Values returns all elements of the ObfuscationSetting enum 13166func ObfuscationSetting_Values() []string { 13167 return []string{ 13168 ObfuscationSettingNone, 13169 ObfuscationSettingDefaultObfuscation, 13170 } 13171} 13172 13173const ( 13174 // ProcessBehaviorSave is a ProcessBehavior enum value 13175 ProcessBehaviorSave = "SAVE" 13176 13177 // ProcessBehaviorBuild is a ProcessBehavior enum value 13178 ProcessBehaviorBuild = "BUILD" 13179) 13180 13181// ProcessBehavior_Values returns all elements of the ProcessBehavior enum 13182func ProcessBehavior_Values() []string { 13183 return []string{ 13184 ProcessBehaviorSave, 13185 ProcessBehaviorBuild, 13186 } 13187} 13188 13189const ( 13190 // ReferenceTypeIntent is a ReferenceType enum value 13191 ReferenceTypeIntent = "Intent" 13192 13193 // ReferenceTypeBot is a ReferenceType enum value 13194 ReferenceTypeBot = "Bot" 13195 13196 // ReferenceTypeBotAlias is a ReferenceType enum value 13197 ReferenceTypeBotAlias = "BotAlias" 13198 13199 // ReferenceTypeBotChannel is a ReferenceType enum value 13200 ReferenceTypeBotChannel = "BotChannel" 13201) 13202 13203// ReferenceType_Values returns all elements of the ReferenceType enum 13204func ReferenceType_Values() []string { 13205 return []string{ 13206 ReferenceTypeIntent, 13207 ReferenceTypeBot, 13208 ReferenceTypeBotAlias, 13209 ReferenceTypeBotChannel, 13210 } 13211} 13212 13213const ( 13214 // ResourceTypeBot is a ResourceType enum value 13215 ResourceTypeBot = "BOT" 13216 13217 // ResourceTypeIntent is a ResourceType enum value 13218 ResourceTypeIntent = "INTENT" 13219 13220 // ResourceTypeSlotType is a ResourceType enum value 13221 ResourceTypeSlotType = "SLOT_TYPE" 13222) 13223 13224// ResourceType_Values returns all elements of the ResourceType enum 13225func ResourceType_Values() []string { 13226 return []string{ 13227 ResourceTypeBot, 13228 ResourceTypeIntent, 13229 ResourceTypeSlotType, 13230 } 13231} 13232 13233const ( 13234 // SlotConstraintRequired is a SlotConstraint enum value 13235 SlotConstraintRequired = "Required" 13236 13237 // SlotConstraintOptional is a SlotConstraint enum value 13238 SlotConstraintOptional = "Optional" 13239) 13240 13241// SlotConstraint_Values returns all elements of the SlotConstraint enum 13242func SlotConstraint_Values() []string { 13243 return []string{ 13244 SlotConstraintRequired, 13245 SlotConstraintOptional, 13246 } 13247} 13248 13249const ( 13250 // SlotValueSelectionStrategyOriginalValue is a SlotValueSelectionStrategy enum value 13251 SlotValueSelectionStrategyOriginalValue = "ORIGINAL_VALUE" 13252 13253 // SlotValueSelectionStrategyTopResolution is a SlotValueSelectionStrategy enum value 13254 SlotValueSelectionStrategyTopResolution = "TOP_RESOLUTION" 13255) 13256 13257// SlotValueSelectionStrategy_Values returns all elements of the SlotValueSelectionStrategy enum 13258func SlotValueSelectionStrategy_Values() []string { 13259 return []string{ 13260 SlotValueSelectionStrategyOriginalValue, 13261 SlotValueSelectionStrategyTopResolution, 13262 } 13263} 13264 13265const ( 13266 // StatusBuilding is a Status enum value 13267 StatusBuilding = "BUILDING" 13268 13269 // StatusReady is a Status enum value 13270 StatusReady = "READY" 13271 13272 // StatusReadyBasicTesting is a Status enum value 13273 StatusReadyBasicTesting = "READY_BASIC_TESTING" 13274 13275 // StatusFailed is a Status enum value 13276 StatusFailed = "FAILED" 13277 13278 // StatusNotBuilt is a Status enum value 13279 StatusNotBuilt = "NOT_BUILT" 13280) 13281 13282// Status_Values returns all elements of the Status enum 13283func Status_Values() []string { 13284 return []string{ 13285 StatusBuilding, 13286 StatusReady, 13287 StatusReadyBasicTesting, 13288 StatusFailed, 13289 StatusNotBuilt, 13290 } 13291} 13292 13293const ( 13294 // StatusTypeDetected is a StatusType enum value 13295 StatusTypeDetected = "Detected" 13296 13297 // StatusTypeMissed is a StatusType enum value 13298 StatusTypeMissed = "Missed" 13299) 13300 13301// StatusType_Values returns all elements of the StatusType enum 13302func StatusType_Values() []string { 13303 return []string{ 13304 StatusTypeDetected, 13305 StatusTypeMissed, 13306 } 13307} 13308