github.com/aavshr/aws-sdk-go@v1.41.3/service/lexmodelbuildingservice/api.go (about) 1 // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3 package lexmodelbuildingservice 4 5 import ( 6 "fmt" 7 "time" 8 9 "github.com/aavshr/aws-sdk-go/aws" 10 "github.com/aavshr/aws-sdk-go/aws/awsutil" 11 "github.com/aavshr/aws-sdk-go/aws/request" 12 "github.com/aavshr/aws-sdk-go/private/protocol" 13 "github.com/aavshr/aws-sdk-go/private/protocol/restjson" 14 ) 15 16 const 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 42 func (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 102 func (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. 116 func (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 123 const 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 149 func (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 211 func (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. 225 func (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 232 const 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 258 func (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 319 func (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. 333 func (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 340 const 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 366 func (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 441 func (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. 455 func (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 462 const 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 488 func (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 556 func (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. 570 func (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 577 const 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 603 func (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 653 func (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. 667 func (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 674 const 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 700 func (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 763 func (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. 777 func (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 784 const 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 810 func (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 883 func (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. 897 func (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 904 const 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 930 func (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 993 func (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. 1007 func (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 1014 const 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 1040 func (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 1115 func (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. 1129 func (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 1136 const 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 1162 func (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 1225 func (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. 1239 func (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 1246 const 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 1272 func (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 1329 func (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. 1343 func (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 1350 const 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 1376 func (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 1422 func (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. 1436 func (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 1443 const 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 1469 func (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 1515 func (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. 1529 func (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 1536 const 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 1562 func (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 1609 func (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. 1623 func (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 // 1647 func (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. 1658 func (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 1682 const 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 1708 func (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 1755 func (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. 1769 func (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 1776 const 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 1802 func (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 1850 func (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. 1864 func (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 // 1888 func (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. 1899 func (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 1923 const 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 1949 func (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 2008 func (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. 2022 func (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 // 2046 func (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. 2057 func (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 2081 const 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 2107 func (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 2165 func (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. 2179 func (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 // 2203 func (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. 2214 func (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 2238 const 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 2264 func (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 2309 func (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. 2323 func (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 2330 const 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 2356 func (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 2403 func (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. 2417 func (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 // 2441 func (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. 2452 func (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 2476 const 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 2502 func (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 2552 func (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. 2566 func (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 // 2590 func (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. 2601 func (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 2625 const 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 2651 func (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 2694 func (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. 2708 func (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 2715 const 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 2741 func (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 2784 func (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. 2798 func (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 2805 const 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 2831 func (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 2877 func (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. 2891 func (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 2898 const 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 2924 func (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 2983 func (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. 2997 func (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 // 3021 func (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. 3032 func (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 3056 const 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 3082 func (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 3139 func (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. 3153 func (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 // 3177 func (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. 3188 func (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 3212 const opGetMigration = "GetMigration" 3213 3214 // GetMigrationRequest generates a "aws/request.Request" representing the 3215 // client's request for the GetMigration 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 GetMigration for more information on using the GetMigration 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 GetMigrationRequest method. 3230 // req, resp := client.GetMigrationRequest(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/GetMigration 3238 func (c *LexModelBuildingService) GetMigrationRequest(input *GetMigrationInput) (req *request.Request, output *GetMigrationOutput) { 3239 op := &request.Operation{ 3240 Name: opGetMigration, 3241 HTTPMethod: "GET", 3242 HTTPPath: "/migrations/{migrationId}", 3243 } 3244 3245 if input == nil { 3246 input = &GetMigrationInput{} 3247 } 3248 3249 output = &GetMigrationOutput{} 3250 req = c.newRequest(op, input, output) 3251 return 3252 } 3253 3254 // GetMigration API operation for Amazon Lex Model Building Service. 3255 // 3256 // Provides details about an ongoing or complete migration from an Amazon Lex 3257 // V1 bot to an Amazon Lex V2 bot. Use this operation to view the migration 3258 // alerts and warnings related to the migration. 3259 // 3260 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3261 // with awserr.Error's Code and Message methods to get detailed information about 3262 // the error. 3263 // 3264 // See the AWS API reference guide for Amazon Lex Model Building Service's 3265 // API operation GetMigration for usage and error information. 3266 // 3267 // Returned Error Types: 3268 // * LimitExceededException 3269 // The request exceeded a limit. Try your request again. 3270 // 3271 // * InternalFailureException 3272 // An internal Amazon Lex error occurred. Try your request again. 3273 // 3274 // * BadRequestException 3275 // The request is not well formed. For example, a value is invalid or a required 3276 // field is missing. Check the field values, and try again. 3277 // 3278 // * NotFoundException 3279 // The resource specified in the request was not found. Check the resource and 3280 // try again. 3281 // 3282 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigration 3283 func (c *LexModelBuildingService) GetMigration(input *GetMigrationInput) (*GetMigrationOutput, error) { 3284 req, out := c.GetMigrationRequest(input) 3285 return out, req.Send() 3286 } 3287 3288 // GetMigrationWithContext is the same as GetMigration with the addition of 3289 // the ability to pass a context and additional request options. 3290 // 3291 // See GetMigration for details on how to use this API operation. 3292 // 3293 // The context must be non-nil and will be used for request cancellation. If 3294 // the context is nil a panic will occur. In the future the SDK may create 3295 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3296 // for more information on using Contexts. 3297 func (c *LexModelBuildingService) GetMigrationWithContext(ctx aws.Context, input *GetMigrationInput, opts ...request.Option) (*GetMigrationOutput, error) { 3298 req, out := c.GetMigrationRequest(input) 3299 req.SetContext(ctx) 3300 req.ApplyOptions(opts...) 3301 return out, req.Send() 3302 } 3303 3304 const opGetMigrations = "GetMigrations" 3305 3306 // GetMigrationsRequest generates a "aws/request.Request" representing the 3307 // client's request for the GetMigrations operation. The "output" return 3308 // value will be populated with the request's response once the request completes 3309 // successfully. 3310 // 3311 // Use "Send" method on the returned Request to send the API call to the service. 3312 // the "output" return value is not valid until after Send returns without error. 3313 // 3314 // See GetMigrations for more information on using the GetMigrations 3315 // API call, and error handling. 3316 // 3317 // This method is useful when you want to inject custom logic or configuration 3318 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3319 // 3320 // 3321 // // Example sending a request using the GetMigrationsRequest method. 3322 // req, resp := client.GetMigrationsRequest(params) 3323 // 3324 // err := req.Send() 3325 // if err == nil { // resp is now filled 3326 // fmt.Println(resp) 3327 // } 3328 // 3329 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigrations 3330 func (c *LexModelBuildingService) GetMigrationsRequest(input *GetMigrationsInput) (req *request.Request, output *GetMigrationsOutput) { 3331 op := &request.Operation{ 3332 Name: opGetMigrations, 3333 HTTPMethod: "GET", 3334 HTTPPath: "/migrations", 3335 Paginator: &request.Paginator{ 3336 InputTokens: []string{"nextToken"}, 3337 OutputTokens: []string{"nextToken"}, 3338 LimitToken: "maxResults", 3339 TruncationToken: "", 3340 }, 3341 } 3342 3343 if input == nil { 3344 input = &GetMigrationsInput{} 3345 } 3346 3347 output = &GetMigrationsOutput{} 3348 req = c.newRequest(op, input, output) 3349 return 3350 } 3351 3352 // GetMigrations API operation for Amazon Lex Model Building Service. 3353 // 3354 // Gets a list of migrations between Amazon Lex V1 and Amazon Lex V2. 3355 // 3356 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3357 // with awserr.Error's Code and Message methods to get detailed information about 3358 // the error. 3359 // 3360 // See the AWS API reference guide for Amazon Lex Model Building Service's 3361 // API operation GetMigrations for usage and error information. 3362 // 3363 // Returned Error Types: 3364 // * LimitExceededException 3365 // The request exceeded a limit. Try your request again. 3366 // 3367 // * InternalFailureException 3368 // An internal Amazon Lex error occurred. Try your request again. 3369 // 3370 // * BadRequestException 3371 // The request is not well formed. For example, a value is invalid or a required 3372 // field is missing. Check the field values, and try again. 3373 // 3374 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigrations 3375 func (c *LexModelBuildingService) GetMigrations(input *GetMigrationsInput) (*GetMigrationsOutput, error) { 3376 req, out := c.GetMigrationsRequest(input) 3377 return out, req.Send() 3378 } 3379 3380 // GetMigrationsWithContext is the same as GetMigrations with the addition of 3381 // the ability to pass a context and additional request options. 3382 // 3383 // See GetMigrations for details on how to use this API operation. 3384 // 3385 // The context must be non-nil and will be used for request cancellation. If 3386 // the context is nil a panic will occur. In the future the SDK may create 3387 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3388 // for more information on using Contexts. 3389 func (c *LexModelBuildingService) GetMigrationsWithContext(ctx aws.Context, input *GetMigrationsInput, opts ...request.Option) (*GetMigrationsOutput, error) { 3390 req, out := c.GetMigrationsRequest(input) 3391 req.SetContext(ctx) 3392 req.ApplyOptions(opts...) 3393 return out, req.Send() 3394 } 3395 3396 // GetMigrationsPages iterates over the pages of a GetMigrations operation, 3397 // calling the "fn" function with the response data for each page. To stop 3398 // iterating, return false from the fn function. 3399 // 3400 // See GetMigrations method for more information on how to use this operation. 3401 // 3402 // Note: This operation can generate multiple requests to a service. 3403 // 3404 // // Example iterating over at most 3 pages of a GetMigrations operation. 3405 // pageNum := 0 3406 // err := client.GetMigrationsPages(params, 3407 // func(page *lexmodelbuildingservice.GetMigrationsOutput, lastPage bool) bool { 3408 // pageNum++ 3409 // fmt.Println(page) 3410 // return pageNum <= 3 3411 // }) 3412 // 3413 func (c *LexModelBuildingService) GetMigrationsPages(input *GetMigrationsInput, fn func(*GetMigrationsOutput, bool) bool) error { 3414 return c.GetMigrationsPagesWithContext(aws.BackgroundContext(), input, fn) 3415 } 3416 3417 // GetMigrationsPagesWithContext same as GetMigrationsPages except 3418 // it takes a Context and allows setting request options on the pages. 3419 // 3420 // The context must be non-nil and will be used for request cancellation. If 3421 // the context is nil a panic will occur. In the future the SDK may create 3422 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3423 // for more information on using Contexts. 3424 func (c *LexModelBuildingService) GetMigrationsPagesWithContext(ctx aws.Context, input *GetMigrationsInput, fn func(*GetMigrationsOutput, bool) bool, opts ...request.Option) error { 3425 p := request.Pagination{ 3426 NewRequest: func() (*request.Request, error) { 3427 var inCpy *GetMigrationsInput 3428 if input != nil { 3429 tmp := *input 3430 inCpy = &tmp 3431 } 3432 req, _ := c.GetMigrationsRequest(inCpy) 3433 req.SetContext(ctx) 3434 req.ApplyOptions(opts...) 3435 return req, nil 3436 }, 3437 } 3438 3439 for p.Next() { 3440 if !fn(p.Page().(*GetMigrationsOutput), !p.HasNextPage()) { 3441 break 3442 } 3443 } 3444 3445 return p.Err() 3446 } 3447 3448 const opGetSlotType = "GetSlotType" 3449 3450 // GetSlotTypeRequest generates a "aws/request.Request" representing the 3451 // client's request for the GetSlotType operation. The "output" return 3452 // value will be populated with the request's response once the request completes 3453 // successfully. 3454 // 3455 // Use "Send" method on the returned Request to send the API call to the service. 3456 // the "output" return value is not valid until after Send returns without error. 3457 // 3458 // See GetSlotType for more information on using the GetSlotType 3459 // API call, and error handling. 3460 // 3461 // This method is useful when you want to inject custom logic or configuration 3462 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3463 // 3464 // 3465 // // Example sending a request using the GetSlotTypeRequest method. 3466 // req, resp := client.GetSlotTypeRequest(params) 3467 // 3468 // err := req.Send() 3469 // if err == nil { // resp is now filled 3470 // fmt.Println(resp) 3471 // } 3472 // 3473 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotType 3474 func (c *LexModelBuildingService) GetSlotTypeRequest(input *GetSlotTypeInput) (req *request.Request, output *GetSlotTypeOutput) { 3475 op := &request.Operation{ 3476 Name: opGetSlotType, 3477 HTTPMethod: "GET", 3478 HTTPPath: "/slottypes/{name}/versions/{version}", 3479 } 3480 3481 if input == nil { 3482 input = &GetSlotTypeInput{} 3483 } 3484 3485 output = &GetSlotTypeOutput{} 3486 req = c.newRequest(op, input, output) 3487 return 3488 } 3489 3490 // GetSlotType API operation for Amazon Lex Model Building Service. 3491 // 3492 // Returns information about a specific version of a slot type. In addition 3493 // to specifying the slot type name, you must specify the slot type version. 3494 // 3495 // This operation requires permissions for the lex:GetSlotType action. 3496 // 3497 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3498 // with awserr.Error's Code and Message methods to get detailed information about 3499 // the error. 3500 // 3501 // See the AWS API reference guide for Amazon Lex Model Building Service's 3502 // API operation GetSlotType for usage and error information. 3503 // 3504 // Returned Error Types: 3505 // * NotFoundException 3506 // The resource specified in the request was not found. Check the resource and 3507 // try again. 3508 // 3509 // * LimitExceededException 3510 // The request exceeded a limit. Try your request again. 3511 // 3512 // * InternalFailureException 3513 // An internal Amazon Lex error occurred. Try your request again. 3514 // 3515 // * BadRequestException 3516 // The request is not well formed. For example, a value is invalid or a required 3517 // field is missing. Check the field values, and try again. 3518 // 3519 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotType 3520 func (c *LexModelBuildingService) GetSlotType(input *GetSlotTypeInput) (*GetSlotTypeOutput, error) { 3521 req, out := c.GetSlotTypeRequest(input) 3522 return out, req.Send() 3523 } 3524 3525 // GetSlotTypeWithContext is the same as GetSlotType with the addition of 3526 // the ability to pass a context and additional request options. 3527 // 3528 // See GetSlotType for details on how to use this API operation. 3529 // 3530 // The context must be non-nil and will be used for request cancellation. If 3531 // the context is nil a panic will occur. In the future the SDK may create 3532 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3533 // for more information on using Contexts. 3534 func (c *LexModelBuildingService) GetSlotTypeWithContext(ctx aws.Context, input *GetSlotTypeInput, opts ...request.Option) (*GetSlotTypeOutput, error) { 3535 req, out := c.GetSlotTypeRequest(input) 3536 req.SetContext(ctx) 3537 req.ApplyOptions(opts...) 3538 return out, req.Send() 3539 } 3540 3541 const opGetSlotTypeVersions = "GetSlotTypeVersions" 3542 3543 // GetSlotTypeVersionsRequest generates a "aws/request.Request" representing the 3544 // client's request for the GetSlotTypeVersions operation. The "output" return 3545 // value will be populated with the request's response once the request completes 3546 // successfully. 3547 // 3548 // Use "Send" method on the returned Request to send the API call to the service. 3549 // the "output" return value is not valid until after Send returns without error. 3550 // 3551 // See GetSlotTypeVersions for more information on using the GetSlotTypeVersions 3552 // API call, and error handling. 3553 // 3554 // This method is useful when you want to inject custom logic or configuration 3555 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3556 // 3557 // 3558 // // Example sending a request using the GetSlotTypeVersionsRequest method. 3559 // req, resp := client.GetSlotTypeVersionsRequest(params) 3560 // 3561 // err := req.Send() 3562 // if err == nil { // resp is now filled 3563 // fmt.Println(resp) 3564 // } 3565 // 3566 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypeVersions 3567 func (c *LexModelBuildingService) GetSlotTypeVersionsRequest(input *GetSlotTypeVersionsInput) (req *request.Request, output *GetSlotTypeVersionsOutput) { 3568 op := &request.Operation{ 3569 Name: opGetSlotTypeVersions, 3570 HTTPMethod: "GET", 3571 HTTPPath: "/slottypes/{name}/versions/", 3572 Paginator: &request.Paginator{ 3573 InputTokens: []string{"nextToken"}, 3574 OutputTokens: []string{"nextToken"}, 3575 LimitToken: "maxResults", 3576 TruncationToken: "", 3577 }, 3578 } 3579 3580 if input == nil { 3581 input = &GetSlotTypeVersionsInput{} 3582 } 3583 3584 output = &GetSlotTypeVersionsOutput{} 3585 req = c.newRequest(op, input, output) 3586 return 3587 } 3588 3589 // GetSlotTypeVersions API operation for Amazon Lex Model Building Service. 3590 // 3591 // Gets information about all versions of a slot type. 3592 // 3593 // The GetSlotTypeVersions operation returns a SlotTypeMetadata object for each 3594 // version of a slot type. For example, if a slot type has three numbered versions, 3595 // the GetSlotTypeVersions operation returns four SlotTypeMetadata objects in 3596 // the response, one for each numbered version and one for the $LATEST version. 3597 // 3598 // The GetSlotTypeVersions operation always returns at least one version, the 3599 // $LATEST version. 3600 // 3601 // This operation requires permissions for the lex:GetSlotTypeVersions action. 3602 // 3603 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3604 // with awserr.Error's Code and Message methods to get detailed information about 3605 // the error. 3606 // 3607 // See the AWS API reference guide for Amazon Lex Model Building Service's 3608 // API operation GetSlotTypeVersions for usage and error information. 3609 // 3610 // Returned Error Types: 3611 // * NotFoundException 3612 // The resource specified in the request was not found. Check the resource and 3613 // try again. 3614 // 3615 // * LimitExceededException 3616 // The request exceeded a limit. Try your request again. 3617 // 3618 // * InternalFailureException 3619 // An internal Amazon Lex error occurred. Try your request again. 3620 // 3621 // * BadRequestException 3622 // The request is not well formed. For example, a value is invalid or a required 3623 // field is missing. Check the field values, and try again. 3624 // 3625 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypeVersions 3626 func (c *LexModelBuildingService) GetSlotTypeVersions(input *GetSlotTypeVersionsInput) (*GetSlotTypeVersionsOutput, error) { 3627 req, out := c.GetSlotTypeVersionsRequest(input) 3628 return out, req.Send() 3629 } 3630 3631 // GetSlotTypeVersionsWithContext is the same as GetSlotTypeVersions with the addition of 3632 // the ability to pass a context and additional request options. 3633 // 3634 // See GetSlotTypeVersions for details on how to use this API operation. 3635 // 3636 // The context must be non-nil and will be used for request cancellation. If 3637 // the context is nil a panic will occur. In the future the SDK may create 3638 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3639 // for more information on using Contexts. 3640 func (c *LexModelBuildingService) GetSlotTypeVersionsWithContext(ctx aws.Context, input *GetSlotTypeVersionsInput, opts ...request.Option) (*GetSlotTypeVersionsOutput, error) { 3641 req, out := c.GetSlotTypeVersionsRequest(input) 3642 req.SetContext(ctx) 3643 req.ApplyOptions(opts...) 3644 return out, req.Send() 3645 } 3646 3647 // GetSlotTypeVersionsPages iterates over the pages of a GetSlotTypeVersions operation, 3648 // calling the "fn" function with the response data for each page. To stop 3649 // iterating, return false from the fn function. 3650 // 3651 // See GetSlotTypeVersions method for more information on how to use this operation. 3652 // 3653 // Note: This operation can generate multiple requests to a service. 3654 // 3655 // // Example iterating over at most 3 pages of a GetSlotTypeVersions operation. 3656 // pageNum := 0 3657 // err := client.GetSlotTypeVersionsPages(params, 3658 // func(page *lexmodelbuildingservice.GetSlotTypeVersionsOutput, lastPage bool) bool { 3659 // pageNum++ 3660 // fmt.Println(page) 3661 // return pageNum <= 3 3662 // }) 3663 // 3664 func (c *LexModelBuildingService) GetSlotTypeVersionsPages(input *GetSlotTypeVersionsInput, fn func(*GetSlotTypeVersionsOutput, bool) bool) error { 3665 return c.GetSlotTypeVersionsPagesWithContext(aws.BackgroundContext(), input, fn) 3666 } 3667 3668 // GetSlotTypeVersionsPagesWithContext same as GetSlotTypeVersionsPages except 3669 // it takes a Context and allows setting request options on the pages. 3670 // 3671 // The context must be non-nil and will be used for request cancellation. If 3672 // the context is nil a panic will occur. In the future the SDK may create 3673 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3674 // for more information on using Contexts. 3675 func (c *LexModelBuildingService) GetSlotTypeVersionsPagesWithContext(ctx aws.Context, input *GetSlotTypeVersionsInput, fn func(*GetSlotTypeVersionsOutput, bool) bool, opts ...request.Option) error { 3676 p := request.Pagination{ 3677 NewRequest: func() (*request.Request, error) { 3678 var inCpy *GetSlotTypeVersionsInput 3679 if input != nil { 3680 tmp := *input 3681 inCpy = &tmp 3682 } 3683 req, _ := c.GetSlotTypeVersionsRequest(inCpy) 3684 req.SetContext(ctx) 3685 req.ApplyOptions(opts...) 3686 return req, nil 3687 }, 3688 } 3689 3690 for p.Next() { 3691 if !fn(p.Page().(*GetSlotTypeVersionsOutput), !p.HasNextPage()) { 3692 break 3693 } 3694 } 3695 3696 return p.Err() 3697 } 3698 3699 const opGetSlotTypes = "GetSlotTypes" 3700 3701 // GetSlotTypesRequest generates a "aws/request.Request" representing the 3702 // client's request for the GetSlotTypes operation. The "output" return 3703 // value will be populated with the request's response once the request completes 3704 // successfully. 3705 // 3706 // Use "Send" method on the returned Request to send the API call to the service. 3707 // the "output" return value is not valid until after Send returns without error. 3708 // 3709 // See GetSlotTypes for more information on using the GetSlotTypes 3710 // API call, and error handling. 3711 // 3712 // This method is useful when you want to inject custom logic or configuration 3713 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3714 // 3715 // 3716 // // Example sending a request using the GetSlotTypesRequest method. 3717 // req, resp := client.GetSlotTypesRequest(params) 3718 // 3719 // err := req.Send() 3720 // if err == nil { // resp is now filled 3721 // fmt.Println(resp) 3722 // } 3723 // 3724 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypes 3725 func (c *LexModelBuildingService) GetSlotTypesRequest(input *GetSlotTypesInput) (req *request.Request, output *GetSlotTypesOutput) { 3726 op := &request.Operation{ 3727 Name: opGetSlotTypes, 3728 HTTPMethod: "GET", 3729 HTTPPath: "/slottypes/", 3730 Paginator: &request.Paginator{ 3731 InputTokens: []string{"nextToken"}, 3732 OutputTokens: []string{"nextToken"}, 3733 LimitToken: "maxResults", 3734 TruncationToken: "", 3735 }, 3736 } 3737 3738 if input == nil { 3739 input = &GetSlotTypesInput{} 3740 } 3741 3742 output = &GetSlotTypesOutput{} 3743 req = c.newRequest(op, input, output) 3744 return 3745 } 3746 3747 // GetSlotTypes API operation for Amazon Lex Model Building Service. 3748 // 3749 // Returns slot type information as follows: 3750 // 3751 // * If you specify the nameContains field, returns the $LATEST version of 3752 // all slot types that contain the specified string. 3753 // 3754 // * If you don't specify the nameContains field, returns information about 3755 // the $LATEST version of all slot types. 3756 // 3757 // The operation requires permission for the lex:GetSlotTypes action. 3758 // 3759 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3760 // with awserr.Error's Code and Message methods to get detailed information about 3761 // the error. 3762 // 3763 // See the AWS API reference guide for Amazon Lex Model Building Service's 3764 // API operation GetSlotTypes for usage and error information. 3765 // 3766 // Returned Error Types: 3767 // * NotFoundException 3768 // The resource specified in the request was not found. Check the resource and 3769 // try again. 3770 // 3771 // * LimitExceededException 3772 // The request exceeded a limit. Try your request again. 3773 // 3774 // * InternalFailureException 3775 // An internal Amazon Lex error occurred. Try your request again. 3776 // 3777 // * BadRequestException 3778 // The request is not well formed. For example, a value is invalid or a required 3779 // field is missing. Check the field values, and try again. 3780 // 3781 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypes 3782 func (c *LexModelBuildingService) GetSlotTypes(input *GetSlotTypesInput) (*GetSlotTypesOutput, error) { 3783 req, out := c.GetSlotTypesRequest(input) 3784 return out, req.Send() 3785 } 3786 3787 // GetSlotTypesWithContext is the same as GetSlotTypes with the addition of 3788 // the ability to pass a context and additional request options. 3789 // 3790 // See GetSlotTypes for details on how to use this API operation. 3791 // 3792 // The context must be non-nil and will be used for request cancellation. If 3793 // the context is nil a panic will occur. In the future the SDK may create 3794 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3795 // for more information on using Contexts. 3796 func (c *LexModelBuildingService) GetSlotTypesWithContext(ctx aws.Context, input *GetSlotTypesInput, opts ...request.Option) (*GetSlotTypesOutput, error) { 3797 req, out := c.GetSlotTypesRequest(input) 3798 req.SetContext(ctx) 3799 req.ApplyOptions(opts...) 3800 return out, req.Send() 3801 } 3802 3803 // GetSlotTypesPages iterates over the pages of a GetSlotTypes operation, 3804 // calling the "fn" function with the response data for each page. To stop 3805 // iterating, return false from the fn function. 3806 // 3807 // See GetSlotTypes method for more information on how to use this operation. 3808 // 3809 // Note: This operation can generate multiple requests to a service. 3810 // 3811 // // Example iterating over at most 3 pages of a GetSlotTypes operation. 3812 // pageNum := 0 3813 // err := client.GetSlotTypesPages(params, 3814 // func(page *lexmodelbuildingservice.GetSlotTypesOutput, lastPage bool) bool { 3815 // pageNum++ 3816 // fmt.Println(page) 3817 // return pageNum <= 3 3818 // }) 3819 // 3820 func (c *LexModelBuildingService) GetSlotTypesPages(input *GetSlotTypesInput, fn func(*GetSlotTypesOutput, bool) bool) error { 3821 return c.GetSlotTypesPagesWithContext(aws.BackgroundContext(), input, fn) 3822 } 3823 3824 // GetSlotTypesPagesWithContext same as GetSlotTypesPages except 3825 // it takes a Context and allows setting request options on the pages. 3826 // 3827 // The context must be non-nil and will be used for request cancellation. If 3828 // the context is nil a panic will occur. In the future the SDK may create 3829 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3830 // for more information on using Contexts. 3831 func (c *LexModelBuildingService) GetSlotTypesPagesWithContext(ctx aws.Context, input *GetSlotTypesInput, fn func(*GetSlotTypesOutput, bool) bool, opts ...request.Option) error { 3832 p := request.Pagination{ 3833 NewRequest: func() (*request.Request, error) { 3834 var inCpy *GetSlotTypesInput 3835 if input != nil { 3836 tmp := *input 3837 inCpy = &tmp 3838 } 3839 req, _ := c.GetSlotTypesRequest(inCpy) 3840 req.SetContext(ctx) 3841 req.ApplyOptions(opts...) 3842 return req, nil 3843 }, 3844 } 3845 3846 for p.Next() { 3847 if !fn(p.Page().(*GetSlotTypesOutput), !p.HasNextPage()) { 3848 break 3849 } 3850 } 3851 3852 return p.Err() 3853 } 3854 3855 const opGetUtterancesView = "GetUtterancesView" 3856 3857 // GetUtterancesViewRequest generates a "aws/request.Request" representing the 3858 // client's request for the GetUtterancesView operation. The "output" return 3859 // value will be populated with the request's response once the request completes 3860 // successfully. 3861 // 3862 // Use "Send" method on the returned Request to send the API call to the service. 3863 // the "output" return value is not valid until after Send returns without error. 3864 // 3865 // See GetUtterancesView for more information on using the GetUtterancesView 3866 // API call, and error handling. 3867 // 3868 // This method is useful when you want to inject custom logic or configuration 3869 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3870 // 3871 // 3872 // // Example sending a request using the GetUtterancesViewRequest method. 3873 // req, resp := client.GetUtterancesViewRequest(params) 3874 // 3875 // err := req.Send() 3876 // if err == nil { // resp is now filled 3877 // fmt.Println(resp) 3878 // } 3879 // 3880 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetUtterancesView 3881 func (c *LexModelBuildingService) GetUtterancesViewRequest(input *GetUtterancesViewInput) (req *request.Request, output *GetUtterancesViewOutput) { 3882 op := &request.Operation{ 3883 Name: opGetUtterancesView, 3884 HTTPMethod: "GET", 3885 HTTPPath: "/bots/{botname}/utterances?view=aggregation", 3886 } 3887 3888 if input == nil { 3889 input = &GetUtterancesViewInput{} 3890 } 3891 3892 output = &GetUtterancesViewOutput{} 3893 req = c.newRequest(op, input, output) 3894 return 3895 } 3896 3897 // GetUtterancesView API operation for Amazon Lex Model Building Service. 3898 // 3899 // Use the GetUtterancesView operation to get information about the utterances 3900 // that your users have made to your bot. You can use this list to tune the 3901 // utterances that your bot responds to. 3902 // 3903 // For example, say that you have created a bot to order flowers. After your 3904 // users have used your bot for a while, use the GetUtterancesView operation 3905 // to see the requests that they have made and whether they have been successful. 3906 // You might find that the utterance "I want flowers" is not being recognized. 3907 // You could add this utterance to the OrderFlowers intent so that your bot 3908 // recognizes that utterance. 3909 // 3910 // After you publish a new version of a bot, you can get information about the 3911 // old version and the new so that you can compare the performance across the 3912 // two versions. 3913 // 3914 // Utterance statistics are generated once a day. Data is available for the 3915 // last 15 days. You can request information for up to 5 versions of your bot 3916 // in each request. Amazon Lex returns the most frequent utterances received 3917 // by the bot in the last 15 days. The response contains information about a 3918 // maximum of 100 utterances for each version. 3919 // 3920 // If you set childDirected field to true when you created your bot, if you 3921 // are using slot obfuscation with one or more slots, or if you opted out of 3922 // participating in improving Amazon Lex, utterances are not available. 3923 // 3924 // This operation requires permissions for the lex:GetUtterancesView action. 3925 // 3926 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3927 // with awserr.Error's Code and Message methods to get detailed information about 3928 // the error. 3929 // 3930 // See the AWS API reference guide for Amazon Lex Model Building Service's 3931 // API operation GetUtterancesView for usage and error information. 3932 // 3933 // Returned Error Types: 3934 // * LimitExceededException 3935 // The request exceeded a limit. Try your request again. 3936 // 3937 // * InternalFailureException 3938 // An internal Amazon Lex error occurred. Try your request again. 3939 // 3940 // * BadRequestException 3941 // The request is not well formed. For example, a value is invalid or a required 3942 // field is missing. Check the field values, and try again. 3943 // 3944 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetUtterancesView 3945 func (c *LexModelBuildingService) GetUtterancesView(input *GetUtterancesViewInput) (*GetUtterancesViewOutput, error) { 3946 req, out := c.GetUtterancesViewRequest(input) 3947 return out, req.Send() 3948 } 3949 3950 // GetUtterancesViewWithContext is the same as GetUtterancesView with the addition of 3951 // the ability to pass a context and additional request options. 3952 // 3953 // See GetUtterancesView for details on how to use this API operation. 3954 // 3955 // The context must be non-nil and will be used for request cancellation. If 3956 // the context is nil a panic will occur. In the future the SDK may create 3957 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3958 // for more information on using Contexts. 3959 func (c *LexModelBuildingService) GetUtterancesViewWithContext(ctx aws.Context, input *GetUtterancesViewInput, opts ...request.Option) (*GetUtterancesViewOutput, error) { 3960 req, out := c.GetUtterancesViewRequest(input) 3961 req.SetContext(ctx) 3962 req.ApplyOptions(opts...) 3963 return out, req.Send() 3964 } 3965 3966 const opListTagsForResource = "ListTagsForResource" 3967 3968 // ListTagsForResourceRequest generates a "aws/request.Request" representing the 3969 // client's request for the ListTagsForResource operation. The "output" return 3970 // value will be populated with the request's response once the request completes 3971 // successfully. 3972 // 3973 // Use "Send" method on the returned Request to send the API call to the service. 3974 // the "output" return value is not valid until after Send returns without error. 3975 // 3976 // See ListTagsForResource for more information on using the ListTagsForResource 3977 // API call, and error handling. 3978 // 3979 // This method is useful when you want to inject custom logic or configuration 3980 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3981 // 3982 // 3983 // // Example sending a request using the ListTagsForResourceRequest method. 3984 // req, resp := client.ListTagsForResourceRequest(params) 3985 // 3986 // err := req.Send() 3987 // if err == nil { // resp is now filled 3988 // fmt.Println(resp) 3989 // } 3990 // 3991 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/ListTagsForResource 3992 func (c *LexModelBuildingService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 3993 op := &request.Operation{ 3994 Name: opListTagsForResource, 3995 HTTPMethod: "GET", 3996 HTTPPath: "/tags/{resourceArn}", 3997 } 3998 3999 if input == nil { 4000 input = &ListTagsForResourceInput{} 4001 } 4002 4003 output = &ListTagsForResourceOutput{} 4004 req = c.newRequest(op, input, output) 4005 return 4006 } 4007 4008 // ListTagsForResource API operation for Amazon Lex Model Building Service. 4009 // 4010 // Gets a list of tags associated with the specified resource. Only bots, bot 4011 // aliases, and bot channels can have tags associated with them. 4012 // 4013 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4014 // with awserr.Error's Code and Message methods to get detailed information about 4015 // the error. 4016 // 4017 // See the AWS API reference guide for Amazon Lex Model Building Service's 4018 // API operation ListTagsForResource for usage and error information. 4019 // 4020 // Returned Error Types: 4021 // * NotFoundException 4022 // The resource specified in the request was not found. Check the resource and 4023 // try again. 4024 // 4025 // * BadRequestException 4026 // The request is not well formed. For example, a value is invalid or a required 4027 // field is missing. Check the field values, and try again. 4028 // 4029 // * InternalFailureException 4030 // An internal Amazon Lex error occurred. Try your request again. 4031 // 4032 // * LimitExceededException 4033 // The request exceeded a limit. Try your request again. 4034 // 4035 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/ListTagsForResource 4036 func (c *LexModelBuildingService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 4037 req, out := c.ListTagsForResourceRequest(input) 4038 return out, req.Send() 4039 } 4040 4041 // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 4042 // the ability to pass a context and additional request options. 4043 // 4044 // See ListTagsForResource for details on how to use this API operation. 4045 // 4046 // The context must be non-nil and will be used for request cancellation. If 4047 // the context is nil a panic will occur. In the future the SDK may create 4048 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4049 // for more information on using Contexts. 4050 func (c *LexModelBuildingService) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 4051 req, out := c.ListTagsForResourceRequest(input) 4052 req.SetContext(ctx) 4053 req.ApplyOptions(opts...) 4054 return out, req.Send() 4055 } 4056 4057 const opPutBot = "PutBot" 4058 4059 // PutBotRequest generates a "aws/request.Request" representing the 4060 // client's request for the PutBot operation. The "output" return 4061 // value will be populated with the request's response once the request completes 4062 // successfully. 4063 // 4064 // Use "Send" method on the returned Request to send the API call to the service. 4065 // the "output" return value is not valid until after Send returns without error. 4066 // 4067 // See PutBot for more information on using the PutBot 4068 // API call, and error handling. 4069 // 4070 // This method is useful when you want to inject custom logic or configuration 4071 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4072 // 4073 // 4074 // // Example sending a request using the PutBotRequest method. 4075 // req, resp := client.PutBotRequest(params) 4076 // 4077 // err := req.Send() 4078 // if err == nil { // resp is now filled 4079 // fmt.Println(resp) 4080 // } 4081 // 4082 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBot 4083 func (c *LexModelBuildingService) PutBotRequest(input *PutBotInput) (req *request.Request, output *PutBotOutput) { 4084 op := &request.Operation{ 4085 Name: opPutBot, 4086 HTTPMethod: "PUT", 4087 HTTPPath: "/bots/{name}/versions/$LATEST", 4088 } 4089 4090 if input == nil { 4091 input = &PutBotInput{} 4092 } 4093 4094 output = &PutBotOutput{} 4095 req = c.newRequest(op, input, output) 4096 return 4097 } 4098 4099 // PutBot API operation for Amazon Lex Model Building Service. 4100 // 4101 // Creates an Amazon Lex conversational bot or replaces an existing bot. When 4102 // you create or update a bot you are only required to specify a name, a locale, 4103 // and whether the bot is directed toward children under age 13. You can use 4104 // this to add intents later, or to remove intents from an existing bot. When 4105 // you create a bot with the minimum information, the bot is created or updated 4106 // but Amazon Lex returns the response FAILED. You can build the bot after you 4107 // add one or more intents. For more information about Amazon Lex bots, see 4108 // how-it-works. 4109 // 4110 // If you specify the name of an existing bot, the fields in the request replace 4111 // the existing values in the $LATEST version of the bot. Amazon Lex removes 4112 // any fields that you don't provide values for in the request, except for the 4113 // idleTTLInSeconds and privacySettings fields, which are set to their default 4114 // values. If you don't specify values for required fields, Amazon Lex throws 4115 // an exception. 4116 // 4117 // This operation requires permissions for the lex:PutBot action. For more information, 4118 // see security-iam. 4119 // 4120 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4121 // with awserr.Error's Code and Message methods to get detailed information about 4122 // the error. 4123 // 4124 // See the AWS API reference guide for Amazon Lex Model Building Service's 4125 // API operation PutBot for usage and error information. 4126 // 4127 // Returned Error Types: 4128 // * ConflictException 4129 // There was a conflict processing the request. Try your request again. 4130 // 4131 // * LimitExceededException 4132 // The request exceeded a limit. Try your request again. 4133 // 4134 // * InternalFailureException 4135 // An internal Amazon Lex error occurred. Try your request again. 4136 // 4137 // * BadRequestException 4138 // The request is not well formed. For example, a value is invalid or a required 4139 // field is missing. Check the field values, and try again. 4140 // 4141 // * PreconditionFailedException 4142 // The checksum of the resource that you are trying to change does not match 4143 // the checksum in the request. Check the resource's checksum and try again. 4144 // 4145 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBot 4146 func (c *LexModelBuildingService) PutBot(input *PutBotInput) (*PutBotOutput, error) { 4147 req, out := c.PutBotRequest(input) 4148 return out, req.Send() 4149 } 4150 4151 // PutBotWithContext is the same as PutBot with the addition of 4152 // the ability to pass a context and additional request options. 4153 // 4154 // See PutBot for details on how to use this API operation. 4155 // 4156 // The context must be non-nil and will be used for request cancellation. If 4157 // the context is nil a panic will occur. In the future the SDK may create 4158 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4159 // for more information on using Contexts. 4160 func (c *LexModelBuildingService) PutBotWithContext(ctx aws.Context, input *PutBotInput, opts ...request.Option) (*PutBotOutput, error) { 4161 req, out := c.PutBotRequest(input) 4162 req.SetContext(ctx) 4163 req.ApplyOptions(opts...) 4164 return out, req.Send() 4165 } 4166 4167 const opPutBotAlias = "PutBotAlias" 4168 4169 // PutBotAliasRequest generates a "aws/request.Request" representing the 4170 // client's request for the PutBotAlias operation. The "output" return 4171 // value will be populated with the request's response once the request completes 4172 // successfully. 4173 // 4174 // Use "Send" method on the returned Request to send the API call to the service. 4175 // the "output" return value is not valid until after Send returns without error. 4176 // 4177 // See PutBotAlias for more information on using the PutBotAlias 4178 // API call, and error handling. 4179 // 4180 // This method is useful when you want to inject custom logic or configuration 4181 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4182 // 4183 // 4184 // // Example sending a request using the PutBotAliasRequest method. 4185 // req, resp := client.PutBotAliasRequest(params) 4186 // 4187 // err := req.Send() 4188 // if err == nil { // resp is now filled 4189 // fmt.Println(resp) 4190 // } 4191 // 4192 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotAlias 4193 func (c *LexModelBuildingService) PutBotAliasRequest(input *PutBotAliasInput) (req *request.Request, output *PutBotAliasOutput) { 4194 op := &request.Operation{ 4195 Name: opPutBotAlias, 4196 HTTPMethod: "PUT", 4197 HTTPPath: "/bots/{botName}/aliases/{name}", 4198 } 4199 4200 if input == nil { 4201 input = &PutBotAliasInput{} 4202 } 4203 4204 output = &PutBotAliasOutput{} 4205 req = c.newRequest(op, input, output) 4206 return 4207 } 4208 4209 // PutBotAlias API operation for Amazon Lex Model Building Service. 4210 // 4211 // Creates an alias for the specified version of the bot or replaces an alias 4212 // for the specified bot. To change the version of the bot that the alias points 4213 // to, replace the alias. For more information about aliases, see versioning-aliases. 4214 // 4215 // This operation requires permissions for the lex:PutBotAlias action. 4216 // 4217 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4218 // with awserr.Error's Code and Message methods to get detailed information about 4219 // the error. 4220 // 4221 // See the AWS API reference guide for Amazon Lex Model Building Service's 4222 // API operation PutBotAlias for usage and error information. 4223 // 4224 // Returned Error Types: 4225 // * ConflictException 4226 // There was a conflict processing the request. Try your request again. 4227 // 4228 // * LimitExceededException 4229 // The request exceeded a limit. Try your request again. 4230 // 4231 // * InternalFailureException 4232 // An internal Amazon Lex error occurred. Try your request again. 4233 // 4234 // * BadRequestException 4235 // The request is not well formed. For example, a value is invalid or a required 4236 // field is missing. Check the field values, and try again. 4237 // 4238 // * PreconditionFailedException 4239 // The checksum of the resource that you are trying to change does not match 4240 // the checksum in the request. Check the resource's checksum and try again. 4241 // 4242 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotAlias 4243 func (c *LexModelBuildingService) PutBotAlias(input *PutBotAliasInput) (*PutBotAliasOutput, error) { 4244 req, out := c.PutBotAliasRequest(input) 4245 return out, req.Send() 4246 } 4247 4248 // PutBotAliasWithContext is the same as PutBotAlias with the addition of 4249 // the ability to pass a context and additional request options. 4250 // 4251 // See PutBotAlias for details on how to use this API operation. 4252 // 4253 // The context must be non-nil and will be used for request cancellation. If 4254 // the context is nil a panic will occur. In the future the SDK may create 4255 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4256 // for more information on using Contexts. 4257 func (c *LexModelBuildingService) PutBotAliasWithContext(ctx aws.Context, input *PutBotAliasInput, opts ...request.Option) (*PutBotAliasOutput, error) { 4258 req, out := c.PutBotAliasRequest(input) 4259 req.SetContext(ctx) 4260 req.ApplyOptions(opts...) 4261 return out, req.Send() 4262 } 4263 4264 const opPutIntent = "PutIntent" 4265 4266 // PutIntentRequest generates a "aws/request.Request" representing the 4267 // client's request for the PutIntent operation. The "output" return 4268 // value will be populated with the request's response once the request completes 4269 // successfully. 4270 // 4271 // Use "Send" method on the returned Request to send the API call to the service. 4272 // the "output" return value is not valid until after Send returns without error. 4273 // 4274 // See PutIntent for more information on using the PutIntent 4275 // API call, and error handling. 4276 // 4277 // This method is useful when you want to inject custom logic or configuration 4278 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4279 // 4280 // 4281 // // Example sending a request using the PutIntentRequest method. 4282 // req, resp := client.PutIntentRequest(params) 4283 // 4284 // err := req.Send() 4285 // if err == nil { // resp is now filled 4286 // fmt.Println(resp) 4287 // } 4288 // 4289 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutIntent 4290 func (c *LexModelBuildingService) PutIntentRequest(input *PutIntentInput) (req *request.Request, output *PutIntentOutput) { 4291 op := &request.Operation{ 4292 Name: opPutIntent, 4293 HTTPMethod: "PUT", 4294 HTTPPath: "/intents/{name}/versions/$LATEST", 4295 } 4296 4297 if input == nil { 4298 input = &PutIntentInput{} 4299 } 4300 4301 output = &PutIntentOutput{} 4302 req = c.newRequest(op, input, output) 4303 return 4304 } 4305 4306 // PutIntent API operation for Amazon Lex Model Building Service. 4307 // 4308 // Creates an intent or replaces an existing intent. 4309 // 4310 // To define the interaction between the user and your bot, you use one or more 4311 // intents. For a pizza ordering bot, for example, you would create an OrderPizza 4312 // intent. 4313 // 4314 // To create an intent or replace an existing intent, you must provide the following: 4315 // 4316 // * Intent name. For example, OrderPizza. 4317 // 4318 // * Sample utterances. For example, "Can I order a pizza, please." and "I 4319 // want to order a pizza." 4320 // 4321 // * Information to be gathered. You specify slot types for the information 4322 // that your bot will request from the user. You can specify standard slot 4323 // types, such as a date or a time, or custom slot types such as the size 4324 // and crust of a pizza. 4325 // 4326 // * How the intent will be fulfilled. You can provide a Lambda function 4327 // or configure the intent to return the intent information to the client 4328 // application. If you use a Lambda function, when all of the intent information 4329 // is available, Amazon Lex invokes your Lambda function. If you configure 4330 // your intent to return the intent information to the client application. 4331 // 4332 // You can specify other optional information in the request, such as: 4333 // 4334 // * A confirmation prompt to ask the user to confirm an intent. For example, 4335 // "Shall I order your pizza?" 4336 // 4337 // * A conclusion statement to send to the user after the intent has been 4338 // fulfilled. For example, "I placed your pizza order." 4339 // 4340 // * A follow-up prompt that asks the user for additional activity. For example, 4341 // asking "Do you want to order a drink with your pizza?" 4342 // 4343 // If you specify an existing intent name to update the intent, Amazon Lex replaces 4344 // the values in the $LATEST version of the intent with the values in the request. 4345 // Amazon Lex removes fields that you don't provide in the request. If you don't 4346 // specify the required fields, Amazon Lex throws an exception. When you update 4347 // the $LATEST version of an intent, the status field of any bot that uses the 4348 // $LATEST version of the intent is set to NOT_BUILT. 4349 // 4350 // For more information, see how-it-works. 4351 // 4352 // This operation requires permissions for the lex:PutIntent action. 4353 // 4354 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4355 // with awserr.Error's Code and Message methods to get detailed information about 4356 // the error. 4357 // 4358 // See the AWS API reference guide for Amazon Lex Model Building Service's 4359 // API operation PutIntent for usage and error information. 4360 // 4361 // Returned Error Types: 4362 // * ConflictException 4363 // There was a conflict processing the request. Try your request again. 4364 // 4365 // * LimitExceededException 4366 // The request exceeded a limit. Try your request again. 4367 // 4368 // * InternalFailureException 4369 // An internal Amazon Lex error occurred. Try your request again. 4370 // 4371 // * BadRequestException 4372 // The request is not well formed. For example, a value is invalid or a required 4373 // field is missing. Check the field values, and try again. 4374 // 4375 // * PreconditionFailedException 4376 // The checksum of the resource that you are trying to change does not match 4377 // the checksum in the request. Check the resource's checksum and try again. 4378 // 4379 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutIntent 4380 func (c *LexModelBuildingService) PutIntent(input *PutIntentInput) (*PutIntentOutput, error) { 4381 req, out := c.PutIntentRequest(input) 4382 return out, req.Send() 4383 } 4384 4385 // PutIntentWithContext is the same as PutIntent with the addition of 4386 // the ability to pass a context and additional request options. 4387 // 4388 // See PutIntent for details on how to use this API operation. 4389 // 4390 // The context must be non-nil and will be used for request cancellation. If 4391 // the context is nil a panic will occur. In the future the SDK may create 4392 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4393 // for more information on using Contexts. 4394 func (c *LexModelBuildingService) PutIntentWithContext(ctx aws.Context, input *PutIntentInput, opts ...request.Option) (*PutIntentOutput, error) { 4395 req, out := c.PutIntentRequest(input) 4396 req.SetContext(ctx) 4397 req.ApplyOptions(opts...) 4398 return out, req.Send() 4399 } 4400 4401 const opPutSlotType = "PutSlotType" 4402 4403 // PutSlotTypeRequest generates a "aws/request.Request" representing the 4404 // client's request for the PutSlotType operation. The "output" return 4405 // value will be populated with the request's response once the request completes 4406 // successfully. 4407 // 4408 // Use "Send" method on the returned Request to send the API call to the service. 4409 // the "output" return value is not valid until after Send returns without error. 4410 // 4411 // See PutSlotType for more information on using the PutSlotType 4412 // API call, and error handling. 4413 // 4414 // This method is useful when you want to inject custom logic or configuration 4415 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4416 // 4417 // 4418 // // Example sending a request using the PutSlotTypeRequest method. 4419 // req, resp := client.PutSlotTypeRequest(params) 4420 // 4421 // err := req.Send() 4422 // if err == nil { // resp is now filled 4423 // fmt.Println(resp) 4424 // } 4425 // 4426 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutSlotType 4427 func (c *LexModelBuildingService) PutSlotTypeRequest(input *PutSlotTypeInput) (req *request.Request, output *PutSlotTypeOutput) { 4428 op := &request.Operation{ 4429 Name: opPutSlotType, 4430 HTTPMethod: "PUT", 4431 HTTPPath: "/slottypes/{name}/versions/$LATEST", 4432 } 4433 4434 if input == nil { 4435 input = &PutSlotTypeInput{} 4436 } 4437 4438 output = &PutSlotTypeOutput{} 4439 req = c.newRequest(op, input, output) 4440 return 4441 } 4442 4443 // PutSlotType API operation for Amazon Lex Model Building Service. 4444 // 4445 // Creates a custom slot type or replaces an existing custom slot type. 4446 // 4447 // To create a custom slot type, specify a name for the slot type and a set 4448 // of enumeration values, which are the values that a slot of this type can 4449 // assume. For more information, see how-it-works. 4450 // 4451 // If you specify the name of an existing slot type, the fields in the request 4452 // replace the existing values in the $LATEST version of the slot type. Amazon 4453 // Lex removes the fields that you don't provide in the request. If you don't 4454 // specify required fields, Amazon Lex throws an exception. When you update 4455 // the $LATEST version of a slot type, if a bot uses the $LATEST version of 4456 // an intent that contains the slot type, the bot's status field is set to NOT_BUILT. 4457 // 4458 // This operation requires permissions for the lex:PutSlotType action. 4459 // 4460 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4461 // with awserr.Error's Code and Message methods to get detailed information about 4462 // the error. 4463 // 4464 // See the AWS API reference guide for Amazon Lex Model Building Service's 4465 // API operation PutSlotType for usage and error information. 4466 // 4467 // Returned Error Types: 4468 // * ConflictException 4469 // There was a conflict processing the request. Try your request again. 4470 // 4471 // * LimitExceededException 4472 // The request exceeded a limit. Try your request again. 4473 // 4474 // * InternalFailureException 4475 // An internal Amazon Lex error occurred. Try your request again. 4476 // 4477 // * BadRequestException 4478 // The request is not well formed. For example, a value is invalid or a required 4479 // field is missing. Check the field values, and try again. 4480 // 4481 // * PreconditionFailedException 4482 // The checksum of the resource that you are trying to change does not match 4483 // the checksum in the request. Check the resource's checksum and try again. 4484 // 4485 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutSlotType 4486 func (c *LexModelBuildingService) PutSlotType(input *PutSlotTypeInput) (*PutSlotTypeOutput, error) { 4487 req, out := c.PutSlotTypeRequest(input) 4488 return out, req.Send() 4489 } 4490 4491 // PutSlotTypeWithContext is the same as PutSlotType with the addition of 4492 // the ability to pass a context and additional request options. 4493 // 4494 // See PutSlotType for details on how to use this API operation. 4495 // 4496 // The context must be non-nil and will be used for request cancellation. If 4497 // the context is nil a panic will occur. In the future the SDK may create 4498 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4499 // for more information on using Contexts. 4500 func (c *LexModelBuildingService) PutSlotTypeWithContext(ctx aws.Context, input *PutSlotTypeInput, opts ...request.Option) (*PutSlotTypeOutput, error) { 4501 req, out := c.PutSlotTypeRequest(input) 4502 req.SetContext(ctx) 4503 req.ApplyOptions(opts...) 4504 return out, req.Send() 4505 } 4506 4507 const opStartImport = "StartImport" 4508 4509 // StartImportRequest generates a "aws/request.Request" representing the 4510 // client's request for the StartImport operation. The "output" return 4511 // value will be populated with the request's response once the request completes 4512 // successfully. 4513 // 4514 // Use "Send" method on the returned Request to send the API call to the service. 4515 // the "output" return value is not valid until after Send returns without error. 4516 // 4517 // See StartImport for more information on using the StartImport 4518 // API call, and error handling. 4519 // 4520 // This method is useful when you want to inject custom logic or configuration 4521 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4522 // 4523 // 4524 // // Example sending a request using the StartImportRequest method. 4525 // req, resp := client.StartImportRequest(params) 4526 // 4527 // err := req.Send() 4528 // if err == nil { // resp is now filled 4529 // fmt.Println(resp) 4530 // } 4531 // 4532 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartImport 4533 func (c *LexModelBuildingService) StartImportRequest(input *StartImportInput) (req *request.Request, output *StartImportOutput) { 4534 op := &request.Operation{ 4535 Name: opStartImport, 4536 HTTPMethod: "POST", 4537 HTTPPath: "/imports/", 4538 } 4539 4540 if input == nil { 4541 input = &StartImportInput{} 4542 } 4543 4544 output = &StartImportOutput{} 4545 req = c.newRequest(op, input, output) 4546 return 4547 } 4548 4549 // StartImport API operation for Amazon Lex Model Building Service. 4550 // 4551 // Starts a job to import a resource to Amazon Lex. 4552 // 4553 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4554 // with awserr.Error's Code and Message methods to get detailed information about 4555 // the error. 4556 // 4557 // See the AWS API reference guide for Amazon Lex Model Building Service's 4558 // API operation StartImport for usage and error information. 4559 // 4560 // Returned Error Types: 4561 // * LimitExceededException 4562 // The request exceeded a limit. Try your request again. 4563 // 4564 // * InternalFailureException 4565 // An internal Amazon Lex error occurred. Try your request again. 4566 // 4567 // * BadRequestException 4568 // The request is not well formed. For example, a value is invalid or a required 4569 // field is missing. Check the field values, and try again. 4570 // 4571 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartImport 4572 func (c *LexModelBuildingService) StartImport(input *StartImportInput) (*StartImportOutput, error) { 4573 req, out := c.StartImportRequest(input) 4574 return out, req.Send() 4575 } 4576 4577 // StartImportWithContext is the same as StartImport with the addition of 4578 // the ability to pass a context and additional request options. 4579 // 4580 // See StartImport for details on how to use this API operation. 4581 // 4582 // The context must be non-nil and will be used for request cancellation. If 4583 // the context is nil a panic will occur. In the future the SDK may create 4584 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4585 // for more information on using Contexts. 4586 func (c *LexModelBuildingService) StartImportWithContext(ctx aws.Context, input *StartImportInput, opts ...request.Option) (*StartImportOutput, error) { 4587 req, out := c.StartImportRequest(input) 4588 req.SetContext(ctx) 4589 req.ApplyOptions(opts...) 4590 return out, req.Send() 4591 } 4592 4593 const opStartMigration = "StartMigration" 4594 4595 // StartMigrationRequest generates a "aws/request.Request" representing the 4596 // client's request for the StartMigration operation. The "output" return 4597 // value will be populated with the request's response once the request completes 4598 // successfully. 4599 // 4600 // Use "Send" method on the returned Request to send the API call to the service. 4601 // the "output" return value is not valid until after Send returns without error. 4602 // 4603 // See StartMigration for more information on using the StartMigration 4604 // API call, and error handling. 4605 // 4606 // This method is useful when you want to inject custom logic or configuration 4607 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4608 // 4609 // 4610 // // Example sending a request using the StartMigrationRequest method. 4611 // req, resp := client.StartMigrationRequest(params) 4612 // 4613 // err := req.Send() 4614 // if err == nil { // resp is now filled 4615 // fmt.Println(resp) 4616 // } 4617 // 4618 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartMigration 4619 func (c *LexModelBuildingService) StartMigrationRequest(input *StartMigrationInput) (req *request.Request, output *StartMigrationOutput) { 4620 op := &request.Operation{ 4621 Name: opStartMigration, 4622 HTTPMethod: "POST", 4623 HTTPPath: "/migrations", 4624 } 4625 4626 if input == nil { 4627 input = &StartMigrationInput{} 4628 } 4629 4630 output = &StartMigrationOutput{} 4631 req = c.newRequest(op, input, output) 4632 return 4633 } 4634 4635 // StartMigration API operation for Amazon Lex Model Building Service. 4636 // 4637 // Starts migrating a bot from Amazon Lex V1 to Amazon Lex V2. Migrate your 4638 // bot when you want to take advantage of the new features of Amazon Lex V2. 4639 // 4640 // For more information, see Migrating a bot (https://docs.aws.amazon.com/lex/latest/dg/migrate.html) 4641 // in the Amazon Lex developer guide. 4642 // 4643 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4644 // with awserr.Error's Code and Message methods to get detailed information about 4645 // the error. 4646 // 4647 // See the AWS API reference guide for Amazon Lex Model Building Service's 4648 // API operation StartMigration for usage and error information. 4649 // 4650 // Returned Error Types: 4651 // * LimitExceededException 4652 // The request exceeded a limit. Try your request again. 4653 // 4654 // * InternalFailureException 4655 // An internal Amazon Lex error occurred. Try your request again. 4656 // 4657 // * BadRequestException 4658 // The request is not well formed. For example, a value is invalid or a required 4659 // field is missing. Check the field values, and try again. 4660 // 4661 // * AccessDeniedException 4662 // Your IAM user or role does not have permission to call the Amazon Lex V2 4663 // APIs required to migrate your bot. 4664 // 4665 // * NotFoundException 4666 // The resource specified in the request was not found. Check the resource and 4667 // try again. 4668 // 4669 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartMigration 4670 func (c *LexModelBuildingService) StartMigration(input *StartMigrationInput) (*StartMigrationOutput, error) { 4671 req, out := c.StartMigrationRequest(input) 4672 return out, req.Send() 4673 } 4674 4675 // StartMigrationWithContext is the same as StartMigration with the addition of 4676 // the ability to pass a context and additional request options. 4677 // 4678 // See StartMigration for details on how to use this API operation. 4679 // 4680 // The context must be non-nil and will be used for request cancellation. If 4681 // the context is nil a panic will occur. In the future the SDK may create 4682 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4683 // for more information on using Contexts. 4684 func (c *LexModelBuildingService) StartMigrationWithContext(ctx aws.Context, input *StartMigrationInput, opts ...request.Option) (*StartMigrationOutput, error) { 4685 req, out := c.StartMigrationRequest(input) 4686 req.SetContext(ctx) 4687 req.ApplyOptions(opts...) 4688 return out, req.Send() 4689 } 4690 4691 const opTagResource = "TagResource" 4692 4693 // TagResourceRequest generates a "aws/request.Request" representing the 4694 // client's request for the TagResource operation. The "output" return 4695 // value will be populated with the request's response once the request completes 4696 // successfully. 4697 // 4698 // Use "Send" method on the returned Request to send the API call to the service. 4699 // the "output" return value is not valid until after Send returns without error. 4700 // 4701 // See TagResource for more information on using the TagResource 4702 // API call, and error handling. 4703 // 4704 // This method is useful when you want to inject custom logic or configuration 4705 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4706 // 4707 // 4708 // // Example sending a request using the TagResourceRequest method. 4709 // req, resp := client.TagResourceRequest(params) 4710 // 4711 // err := req.Send() 4712 // if err == nil { // resp is now filled 4713 // fmt.Println(resp) 4714 // } 4715 // 4716 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/TagResource 4717 func (c *LexModelBuildingService) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 4718 op := &request.Operation{ 4719 Name: opTagResource, 4720 HTTPMethod: "POST", 4721 HTTPPath: "/tags/{resourceArn}", 4722 } 4723 4724 if input == nil { 4725 input = &TagResourceInput{} 4726 } 4727 4728 output = &TagResourceOutput{} 4729 req = c.newRequest(op, input, output) 4730 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4731 return 4732 } 4733 4734 // TagResource API operation for Amazon Lex Model Building Service. 4735 // 4736 // Adds the specified tags to the specified resource. If a tag key already exists, 4737 // the existing value is replaced with the new value. 4738 // 4739 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4740 // with awserr.Error's Code and Message methods to get detailed information about 4741 // the error. 4742 // 4743 // See the AWS API reference guide for Amazon Lex Model Building Service's 4744 // API operation TagResource for usage and error information. 4745 // 4746 // Returned Error Types: 4747 // * NotFoundException 4748 // The resource specified in the request was not found. Check the resource and 4749 // try again. 4750 // 4751 // * BadRequestException 4752 // The request is not well formed. For example, a value is invalid or a required 4753 // field is missing. Check the field values, and try again. 4754 // 4755 // * ConflictException 4756 // There was a conflict processing the request. Try your request again. 4757 // 4758 // * InternalFailureException 4759 // An internal Amazon Lex error occurred. Try your request again. 4760 // 4761 // * LimitExceededException 4762 // The request exceeded a limit. Try your request again. 4763 // 4764 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/TagResource 4765 func (c *LexModelBuildingService) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 4766 req, out := c.TagResourceRequest(input) 4767 return out, req.Send() 4768 } 4769 4770 // TagResourceWithContext is the same as TagResource with the addition of 4771 // the ability to pass a context and additional request options. 4772 // 4773 // See TagResource for details on how to use this API operation. 4774 // 4775 // The context must be non-nil and will be used for request cancellation. If 4776 // the context is nil a panic will occur. In the future the SDK may create 4777 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4778 // for more information on using Contexts. 4779 func (c *LexModelBuildingService) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 4780 req, out := c.TagResourceRequest(input) 4781 req.SetContext(ctx) 4782 req.ApplyOptions(opts...) 4783 return out, req.Send() 4784 } 4785 4786 const opUntagResource = "UntagResource" 4787 4788 // UntagResourceRequest generates a "aws/request.Request" representing the 4789 // client's request for the UntagResource operation. The "output" return 4790 // value will be populated with the request's response once the request completes 4791 // successfully. 4792 // 4793 // Use "Send" method on the returned Request to send the API call to the service. 4794 // the "output" return value is not valid until after Send returns without error. 4795 // 4796 // See UntagResource for more information on using the UntagResource 4797 // API call, and error handling. 4798 // 4799 // This method is useful when you want to inject custom logic or configuration 4800 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 4801 // 4802 // 4803 // // Example sending a request using the UntagResourceRequest method. 4804 // req, resp := client.UntagResourceRequest(params) 4805 // 4806 // err := req.Send() 4807 // if err == nil { // resp is now filled 4808 // fmt.Println(resp) 4809 // } 4810 // 4811 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/UntagResource 4812 func (c *LexModelBuildingService) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 4813 op := &request.Operation{ 4814 Name: opUntagResource, 4815 HTTPMethod: "DELETE", 4816 HTTPPath: "/tags/{resourceArn}", 4817 } 4818 4819 if input == nil { 4820 input = &UntagResourceInput{} 4821 } 4822 4823 output = &UntagResourceOutput{} 4824 req = c.newRequest(op, input, output) 4825 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4826 return 4827 } 4828 4829 // UntagResource API operation for Amazon Lex Model Building Service. 4830 // 4831 // Removes tags from a bot, bot alias or bot channel. 4832 // 4833 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4834 // with awserr.Error's Code and Message methods to get detailed information about 4835 // the error. 4836 // 4837 // See the AWS API reference guide for Amazon Lex Model Building Service's 4838 // API operation UntagResource for usage and error information. 4839 // 4840 // Returned Error Types: 4841 // * NotFoundException 4842 // The resource specified in the request was not found. Check the resource and 4843 // try again. 4844 // 4845 // * BadRequestException 4846 // The request is not well formed. For example, a value is invalid or a required 4847 // field is missing. Check the field values, and try again. 4848 // 4849 // * ConflictException 4850 // There was a conflict processing the request. Try your request again. 4851 // 4852 // * InternalFailureException 4853 // An internal Amazon Lex error occurred. Try your request again. 4854 // 4855 // * LimitExceededException 4856 // The request exceeded a limit. Try your request again. 4857 // 4858 // See also, https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/UntagResource 4859 func (c *LexModelBuildingService) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 4860 req, out := c.UntagResourceRequest(input) 4861 return out, req.Send() 4862 } 4863 4864 // UntagResourceWithContext is the same as UntagResource with the addition of 4865 // the ability to pass a context and additional request options. 4866 // 4867 // See UntagResource for details on how to use this API operation. 4868 // 4869 // The context must be non-nil and will be used for request cancellation. If 4870 // the context is nil a panic will occur. In the future the SDK may create 4871 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4872 // for more information on using Contexts. 4873 func (c *LexModelBuildingService) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 4874 req, out := c.UntagResourceRequest(input) 4875 req.SetContext(ctx) 4876 req.ApplyOptions(opts...) 4877 return out, req.Send() 4878 } 4879 4880 // Your IAM user or role does not have permission to call the Amazon Lex V2 4881 // APIs required to migrate your bot. 4882 type AccessDeniedException struct { 4883 _ struct{} `type:"structure"` 4884 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4885 4886 Message_ *string `locationName:"message" type:"string"` 4887 } 4888 4889 // String returns the string representation. 4890 // 4891 // API parameter values that are decorated as "sensitive" in the API will not 4892 // be included in the string output. The member name will be present, but the 4893 // value will be replaced with "sensitive". 4894 func (s AccessDeniedException) String() string { 4895 return awsutil.Prettify(s) 4896 } 4897 4898 // GoString returns the string representation. 4899 // 4900 // API parameter values that are decorated as "sensitive" in the API will not 4901 // be included in the string output. The member name will be present, but the 4902 // value will be replaced with "sensitive". 4903 func (s AccessDeniedException) GoString() string { 4904 return s.String() 4905 } 4906 4907 func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { 4908 return &AccessDeniedException{ 4909 RespMetadata: v, 4910 } 4911 } 4912 4913 // Code returns the exception type name. 4914 func (s *AccessDeniedException) Code() string { 4915 return "AccessDeniedException" 4916 } 4917 4918 // Message returns the exception's message. 4919 func (s *AccessDeniedException) Message() string { 4920 if s.Message_ != nil { 4921 return *s.Message_ 4922 } 4923 return "" 4924 } 4925 4926 // OrigErr always returns nil, satisfies awserr.Error interface. 4927 func (s *AccessDeniedException) OrigErr() error { 4928 return nil 4929 } 4930 4931 func (s *AccessDeniedException) Error() string { 4932 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4933 } 4934 4935 // Status code returns the HTTP status code for the request's response error. 4936 func (s *AccessDeniedException) StatusCode() int { 4937 return s.RespMetadata.StatusCode 4938 } 4939 4940 // RequestID returns the service's response RequestID for request. 4941 func (s *AccessDeniedException) RequestID() string { 4942 return s.RespMetadata.RequestID 4943 } 4944 4945 // The request is not well formed. For example, a value is invalid or a required 4946 // field is missing. Check the field values, and try again. 4947 type BadRequestException struct { 4948 _ struct{} `type:"structure"` 4949 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4950 4951 Message_ *string `locationName:"message" type:"string"` 4952 } 4953 4954 // String returns the string representation. 4955 // 4956 // API parameter values that are decorated as "sensitive" in the API will not 4957 // be included in the string output. The member name will be present, but the 4958 // value will be replaced with "sensitive". 4959 func (s BadRequestException) String() string { 4960 return awsutil.Prettify(s) 4961 } 4962 4963 // GoString returns the string representation. 4964 // 4965 // API parameter values that are decorated as "sensitive" in the API will not 4966 // be included in the string output. The member name will be present, but the 4967 // value will be replaced with "sensitive". 4968 func (s BadRequestException) GoString() string { 4969 return s.String() 4970 } 4971 4972 func newErrorBadRequestException(v protocol.ResponseMetadata) error { 4973 return &BadRequestException{ 4974 RespMetadata: v, 4975 } 4976 } 4977 4978 // Code returns the exception type name. 4979 func (s *BadRequestException) Code() string { 4980 return "BadRequestException" 4981 } 4982 4983 // Message returns the exception's message. 4984 func (s *BadRequestException) Message() string { 4985 if s.Message_ != nil { 4986 return *s.Message_ 4987 } 4988 return "" 4989 } 4990 4991 // OrigErr always returns nil, satisfies awserr.Error interface. 4992 func (s *BadRequestException) OrigErr() error { 4993 return nil 4994 } 4995 4996 func (s *BadRequestException) Error() string { 4997 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4998 } 4999 5000 // Status code returns the HTTP status code for the request's response error. 5001 func (s *BadRequestException) StatusCode() int { 5002 return s.RespMetadata.StatusCode 5003 } 5004 5005 // RequestID returns the service's response RequestID for request. 5006 func (s *BadRequestException) RequestID() string { 5007 return s.RespMetadata.RequestID 5008 } 5009 5010 // Provides information about a bot alias. 5011 type BotAliasMetadata struct { 5012 _ struct{} `type:"structure"` 5013 5014 // The name of the bot to which the alias points. 5015 BotName *string `locationName:"botName" min:"2" type:"string"` 5016 5017 // The version of the Amazon Lex bot to which the alias points. 5018 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 5019 5020 // Checksum of the bot alias. 5021 Checksum *string `locationName:"checksum" type:"string"` 5022 5023 // Settings that determine how Amazon Lex uses conversation logs for the alias. 5024 ConversationLogs *ConversationLogsResponse `locationName:"conversationLogs" type:"structure"` 5025 5026 // The date that the bot alias was created. 5027 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 5028 5029 // A description of the bot alias. 5030 Description *string `locationName:"description" type:"string"` 5031 5032 // The date that the bot alias was updated. When you create a resource, the 5033 // creation date and last updated date are the same. 5034 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 5035 5036 // The name of the bot alias. 5037 Name *string `locationName:"name" min:"1" type:"string"` 5038 } 5039 5040 // String returns the string representation. 5041 // 5042 // API parameter values that are decorated as "sensitive" in the API will not 5043 // be included in the string output. The member name will be present, but the 5044 // value will be replaced with "sensitive". 5045 func (s BotAliasMetadata) String() string { 5046 return awsutil.Prettify(s) 5047 } 5048 5049 // GoString returns the string representation. 5050 // 5051 // API parameter values that are decorated as "sensitive" in the API will not 5052 // be included in the string output. The member name will be present, but the 5053 // value will be replaced with "sensitive". 5054 func (s BotAliasMetadata) GoString() string { 5055 return s.String() 5056 } 5057 5058 // SetBotName sets the BotName field's value. 5059 func (s *BotAliasMetadata) SetBotName(v string) *BotAliasMetadata { 5060 s.BotName = &v 5061 return s 5062 } 5063 5064 // SetBotVersion sets the BotVersion field's value. 5065 func (s *BotAliasMetadata) SetBotVersion(v string) *BotAliasMetadata { 5066 s.BotVersion = &v 5067 return s 5068 } 5069 5070 // SetChecksum sets the Checksum field's value. 5071 func (s *BotAliasMetadata) SetChecksum(v string) *BotAliasMetadata { 5072 s.Checksum = &v 5073 return s 5074 } 5075 5076 // SetConversationLogs sets the ConversationLogs field's value. 5077 func (s *BotAliasMetadata) SetConversationLogs(v *ConversationLogsResponse) *BotAliasMetadata { 5078 s.ConversationLogs = v 5079 return s 5080 } 5081 5082 // SetCreatedDate sets the CreatedDate field's value. 5083 func (s *BotAliasMetadata) SetCreatedDate(v time.Time) *BotAliasMetadata { 5084 s.CreatedDate = &v 5085 return s 5086 } 5087 5088 // SetDescription sets the Description field's value. 5089 func (s *BotAliasMetadata) SetDescription(v string) *BotAliasMetadata { 5090 s.Description = &v 5091 return s 5092 } 5093 5094 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 5095 func (s *BotAliasMetadata) SetLastUpdatedDate(v time.Time) *BotAliasMetadata { 5096 s.LastUpdatedDate = &v 5097 return s 5098 } 5099 5100 // SetName sets the Name field's value. 5101 func (s *BotAliasMetadata) SetName(v string) *BotAliasMetadata { 5102 s.Name = &v 5103 return s 5104 } 5105 5106 // Represents an association between an Amazon Lex bot and an external messaging 5107 // platform. 5108 type BotChannelAssociation struct { 5109 _ struct{} `type:"structure"` 5110 5111 // An alias pointing to the specific version of the Amazon Lex bot to which 5112 // this association is being made. 5113 BotAlias *string `locationName:"botAlias" min:"1" type:"string"` 5114 5115 // Provides information necessary to communicate with the messaging platform. 5116 // 5117 // BotConfiguration is a sensitive parameter and its value will be 5118 // replaced with "sensitive" in string returned by BotChannelAssociation's 5119 // String and GoString methods. 5120 BotConfiguration map[string]*string `locationName:"botConfiguration" min:"1" type:"map" sensitive:"true"` 5121 5122 // The name of the Amazon Lex bot to which this association is being made. 5123 // 5124 // Currently, Amazon Lex supports associations with Facebook and Slack, and 5125 // Twilio. 5126 BotName *string `locationName:"botName" min:"2" type:"string"` 5127 5128 // The date that the association between the Amazon Lex bot and the channel 5129 // was created. 5130 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 5131 5132 // A text description of the association you are creating. 5133 Description *string `locationName:"description" type:"string"` 5134 5135 // If status is FAILED, Amazon Lex provides the reason that it failed to create 5136 // the association. 5137 FailureReason *string `locationName:"failureReason" type:"string"` 5138 5139 // The name of the association between the bot and the channel. 5140 Name *string `locationName:"name" min:"1" type:"string"` 5141 5142 // The status of the bot channel. 5143 // 5144 // * CREATED - The channel has been created and is ready for use. 5145 // 5146 // * IN_PROGRESS - Channel creation is in progress. 5147 // 5148 // * FAILED - There was an error creating the channel. For information about 5149 // the reason for the failure, see the failureReason field. 5150 Status *string `locationName:"status" type:"string" enum:"ChannelStatus"` 5151 5152 // Specifies the type of association by indicating the type of channel being 5153 // established between the Amazon Lex bot and the external messaging platform. 5154 Type *string `locationName:"type" type:"string" enum:"ChannelType"` 5155 } 5156 5157 // String returns the string representation. 5158 // 5159 // API parameter values that are decorated as "sensitive" in the API will not 5160 // be included in the string output. The member name will be present, but the 5161 // value will be replaced with "sensitive". 5162 func (s BotChannelAssociation) String() string { 5163 return awsutil.Prettify(s) 5164 } 5165 5166 // GoString returns the string representation. 5167 // 5168 // API parameter values that are decorated as "sensitive" in the API will not 5169 // be included in the string output. The member name will be present, but the 5170 // value will be replaced with "sensitive". 5171 func (s BotChannelAssociation) GoString() string { 5172 return s.String() 5173 } 5174 5175 // SetBotAlias sets the BotAlias field's value. 5176 func (s *BotChannelAssociation) SetBotAlias(v string) *BotChannelAssociation { 5177 s.BotAlias = &v 5178 return s 5179 } 5180 5181 // SetBotConfiguration sets the BotConfiguration field's value. 5182 func (s *BotChannelAssociation) SetBotConfiguration(v map[string]*string) *BotChannelAssociation { 5183 s.BotConfiguration = v 5184 return s 5185 } 5186 5187 // SetBotName sets the BotName field's value. 5188 func (s *BotChannelAssociation) SetBotName(v string) *BotChannelAssociation { 5189 s.BotName = &v 5190 return s 5191 } 5192 5193 // SetCreatedDate sets the CreatedDate field's value. 5194 func (s *BotChannelAssociation) SetCreatedDate(v time.Time) *BotChannelAssociation { 5195 s.CreatedDate = &v 5196 return s 5197 } 5198 5199 // SetDescription sets the Description field's value. 5200 func (s *BotChannelAssociation) SetDescription(v string) *BotChannelAssociation { 5201 s.Description = &v 5202 return s 5203 } 5204 5205 // SetFailureReason sets the FailureReason field's value. 5206 func (s *BotChannelAssociation) SetFailureReason(v string) *BotChannelAssociation { 5207 s.FailureReason = &v 5208 return s 5209 } 5210 5211 // SetName sets the Name field's value. 5212 func (s *BotChannelAssociation) SetName(v string) *BotChannelAssociation { 5213 s.Name = &v 5214 return s 5215 } 5216 5217 // SetStatus sets the Status field's value. 5218 func (s *BotChannelAssociation) SetStatus(v string) *BotChannelAssociation { 5219 s.Status = &v 5220 return s 5221 } 5222 5223 // SetType sets the Type field's value. 5224 func (s *BotChannelAssociation) SetType(v string) *BotChannelAssociation { 5225 s.Type = &v 5226 return s 5227 } 5228 5229 // Provides information about a bot. . 5230 type BotMetadata struct { 5231 _ struct{} `type:"structure"` 5232 5233 // The date that the bot was created. 5234 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 5235 5236 // A description of the bot. 5237 Description *string `locationName:"description" type:"string"` 5238 5239 // The date that the bot was updated. When you create a bot, the creation date 5240 // and last updated date are the same. 5241 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 5242 5243 // The name of the bot. 5244 Name *string `locationName:"name" min:"2" type:"string"` 5245 5246 // The status of the bot. 5247 Status *string `locationName:"status" type:"string" enum:"Status"` 5248 5249 // The version of the bot. For a new bot, the version is always $LATEST. 5250 Version *string `locationName:"version" min:"1" type:"string"` 5251 } 5252 5253 // String returns the string representation. 5254 // 5255 // API parameter values that are decorated as "sensitive" in the API will not 5256 // be included in the string output. The member name will be present, but the 5257 // value will be replaced with "sensitive". 5258 func (s BotMetadata) String() string { 5259 return awsutil.Prettify(s) 5260 } 5261 5262 // GoString returns the string representation. 5263 // 5264 // API parameter values that are decorated as "sensitive" in the API will not 5265 // be included in the string output. The member name will be present, but the 5266 // value will be replaced with "sensitive". 5267 func (s BotMetadata) GoString() string { 5268 return s.String() 5269 } 5270 5271 // SetCreatedDate sets the CreatedDate field's value. 5272 func (s *BotMetadata) SetCreatedDate(v time.Time) *BotMetadata { 5273 s.CreatedDate = &v 5274 return s 5275 } 5276 5277 // SetDescription sets the Description field's value. 5278 func (s *BotMetadata) SetDescription(v string) *BotMetadata { 5279 s.Description = &v 5280 return s 5281 } 5282 5283 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 5284 func (s *BotMetadata) SetLastUpdatedDate(v time.Time) *BotMetadata { 5285 s.LastUpdatedDate = &v 5286 return s 5287 } 5288 5289 // SetName sets the Name field's value. 5290 func (s *BotMetadata) SetName(v string) *BotMetadata { 5291 s.Name = &v 5292 return s 5293 } 5294 5295 // SetStatus sets the Status field's value. 5296 func (s *BotMetadata) SetStatus(v string) *BotMetadata { 5297 s.Status = &v 5298 return s 5299 } 5300 5301 // SetVersion sets the Version field's value. 5302 func (s *BotMetadata) SetVersion(v string) *BotMetadata { 5303 s.Version = &v 5304 return s 5305 } 5306 5307 // Provides metadata for a built-in intent. 5308 type BuiltinIntentMetadata struct { 5309 _ struct{} `type:"structure"` 5310 5311 // A unique identifier for the built-in intent. To find the signature for an 5312 // intent, see Standard Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 5313 // in the Alexa Skills Kit. 5314 Signature *string `locationName:"signature" type:"string"` 5315 5316 // A list of identifiers for the locales that the intent supports. 5317 SupportedLocales []*string `locationName:"supportedLocales" type:"list"` 5318 } 5319 5320 // String returns the string representation. 5321 // 5322 // API parameter values that are decorated as "sensitive" in the API will not 5323 // be included in the string output. The member name will be present, but the 5324 // value will be replaced with "sensitive". 5325 func (s BuiltinIntentMetadata) String() string { 5326 return awsutil.Prettify(s) 5327 } 5328 5329 // GoString returns the string representation. 5330 // 5331 // API parameter values that are decorated as "sensitive" in the API will not 5332 // be included in the string output. The member name will be present, but the 5333 // value will be replaced with "sensitive". 5334 func (s BuiltinIntentMetadata) GoString() string { 5335 return s.String() 5336 } 5337 5338 // SetSignature sets the Signature field's value. 5339 func (s *BuiltinIntentMetadata) SetSignature(v string) *BuiltinIntentMetadata { 5340 s.Signature = &v 5341 return s 5342 } 5343 5344 // SetSupportedLocales sets the SupportedLocales field's value. 5345 func (s *BuiltinIntentMetadata) SetSupportedLocales(v []*string) *BuiltinIntentMetadata { 5346 s.SupportedLocales = v 5347 return s 5348 } 5349 5350 // Provides information about a slot used in a built-in intent. 5351 type BuiltinIntentSlot struct { 5352 _ struct{} `type:"structure"` 5353 5354 // A list of the slots defined for the intent. 5355 Name *string `locationName:"name" type:"string"` 5356 } 5357 5358 // String returns the string representation. 5359 // 5360 // API parameter values that are decorated as "sensitive" in the API will not 5361 // be included in the string output. The member name will be present, but the 5362 // value will be replaced with "sensitive". 5363 func (s BuiltinIntentSlot) String() string { 5364 return awsutil.Prettify(s) 5365 } 5366 5367 // GoString returns the string representation. 5368 // 5369 // API parameter values that are decorated as "sensitive" in the API will not 5370 // be included in the string output. The member name will be present, but the 5371 // value will be replaced with "sensitive". 5372 func (s BuiltinIntentSlot) GoString() string { 5373 return s.String() 5374 } 5375 5376 // SetName sets the Name field's value. 5377 func (s *BuiltinIntentSlot) SetName(v string) *BuiltinIntentSlot { 5378 s.Name = &v 5379 return s 5380 } 5381 5382 // Provides information about a built in slot type. 5383 type BuiltinSlotTypeMetadata struct { 5384 _ struct{} `type:"structure"` 5385 5386 // A unique identifier for the built-in slot type. To find the signature for 5387 // 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) 5388 // in the Alexa Skills Kit. 5389 Signature *string `locationName:"signature" type:"string"` 5390 5391 // A list of target locales for the slot. 5392 SupportedLocales []*string `locationName:"supportedLocales" type:"list"` 5393 } 5394 5395 // String returns the string representation. 5396 // 5397 // API parameter values that are decorated as "sensitive" in the API will not 5398 // be included in the string output. The member name will be present, but the 5399 // value will be replaced with "sensitive". 5400 func (s BuiltinSlotTypeMetadata) String() string { 5401 return awsutil.Prettify(s) 5402 } 5403 5404 // GoString returns the string representation. 5405 // 5406 // API parameter values that are decorated as "sensitive" in the API will not 5407 // be included in the string output. The member name will be present, but the 5408 // value will be replaced with "sensitive". 5409 func (s BuiltinSlotTypeMetadata) GoString() string { 5410 return s.String() 5411 } 5412 5413 // SetSignature sets the Signature field's value. 5414 func (s *BuiltinSlotTypeMetadata) SetSignature(v string) *BuiltinSlotTypeMetadata { 5415 s.Signature = &v 5416 return s 5417 } 5418 5419 // SetSupportedLocales sets the SupportedLocales field's value. 5420 func (s *BuiltinSlotTypeMetadata) SetSupportedLocales(v []*string) *BuiltinSlotTypeMetadata { 5421 s.SupportedLocales = v 5422 return s 5423 } 5424 5425 // Specifies a Lambda function that verifies requests to a bot or fulfills the 5426 // user's request to a bot.. 5427 type CodeHook struct { 5428 _ struct{} `type:"structure"` 5429 5430 // The version of the request-response that you want Amazon Lex to use to invoke 5431 // your Lambda function. For more information, see using-lambda. 5432 // 5433 // MessageVersion is a required field 5434 MessageVersion *string `locationName:"messageVersion" min:"1" type:"string" required:"true"` 5435 5436 // The Amazon Resource Name (ARN) of the Lambda function. 5437 // 5438 // Uri is a required field 5439 Uri *string `locationName:"uri" min:"20" type:"string" required:"true"` 5440 } 5441 5442 // String returns the string representation. 5443 // 5444 // API parameter values that are decorated as "sensitive" in the API will not 5445 // be included in the string output. The member name will be present, but the 5446 // value will be replaced with "sensitive". 5447 func (s CodeHook) String() string { 5448 return awsutil.Prettify(s) 5449 } 5450 5451 // GoString returns the string representation. 5452 // 5453 // API parameter values that are decorated as "sensitive" in the API will not 5454 // be included in the string output. The member name will be present, but the 5455 // value will be replaced with "sensitive". 5456 func (s CodeHook) GoString() string { 5457 return s.String() 5458 } 5459 5460 // Validate inspects the fields of the type to determine if they are valid. 5461 func (s *CodeHook) Validate() error { 5462 invalidParams := request.ErrInvalidParams{Context: "CodeHook"} 5463 if s.MessageVersion == nil { 5464 invalidParams.Add(request.NewErrParamRequired("MessageVersion")) 5465 } 5466 if s.MessageVersion != nil && len(*s.MessageVersion) < 1 { 5467 invalidParams.Add(request.NewErrParamMinLen("MessageVersion", 1)) 5468 } 5469 if s.Uri == nil { 5470 invalidParams.Add(request.NewErrParamRequired("Uri")) 5471 } 5472 if s.Uri != nil && len(*s.Uri) < 20 { 5473 invalidParams.Add(request.NewErrParamMinLen("Uri", 20)) 5474 } 5475 5476 if invalidParams.Len() > 0 { 5477 return invalidParams 5478 } 5479 return nil 5480 } 5481 5482 // SetMessageVersion sets the MessageVersion field's value. 5483 func (s *CodeHook) SetMessageVersion(v string) *CodeHook { 5484 s.MessageVersion = &v 5485 return s 5486 } 5487 5488 // SetUri sets the Uri field's value. 5489 func (s *CodeHook) SetUri(v string) *CodeHook { 5490 s.Uri = &v 5491 return s 5492 } 5493 5494 // There was a conflict processing the request. Try your request again. 5495 type ConflictException struct { 5496 _ struct{} `type:"structure"` 5497 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 5498 5499 Message_ *string `locationName:"message" type:"string"` 5500 } 5501 5502 // String returns the string representation. 5503 // 5504 // API parameter values that are decorated as "sensitive" in the API will not 5505 // be included in the string output. The member name will be present, but the 5506 // value will be replaced with "sensitive". 5507 func (s ConflictException) String() string { 5508 return awsutil.Prettify(s) 5509 } 5510 5511 // GoString returns the string representation. 5512 // 5513 // API parameter values that are decorated as "sensitive" in the API will not 5514 // be included in the string output. The member name will be present, but the 5515 // value will be replaced with "sensitive". 5516 func (s ConflictException) GoString() string { 5517 return s.String() 5518 } 5519 5520 func newErrorConflictException(v protocol.ResponseMetadata) error { 5521 return &ConflictException{ 5522 RespMetadata: v, 5523 } 5524 } 5525 5526 // Code returns the exception type name. 5527 func (s *ConflictException) Code() string { 5528 return "ConflictException" 5529 } 5530 5531 // Message returns the exception's message. 5532 func (s *ConflictException) Message() string { 5533 if s.Message_ != nil { 5534 return *s.Message_ 5535 } 5536 return "" 5537 } 5538 5539 // OrigErr always returns nil, satisfies awserr.Error interface. 5540 func (s *ConflictException) OrigErr() error { 5541 return nil 5542 } 5543 5544 func (s *ConflictException) Error() string { 5545 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 5546 } 5547 5548 // Status code returns the HTTP status code for the request's response error. 5549 func (s *ConflictException) StatusCode() int { 5550 return s.RespMetadata.StatusCode 5551 } 5552 5553 // RequestID returns the service's response RequestID for request. 5554 func (s *ConflictException) RequestID() string { 5555 return s.RespMetadata.RequestID 5556 } 5557 5558 // Provides the settings needed for conversation logs. 5559 type ConversationLogsRequest struct { 5560 _ struct{} `type:"structure"` 5561 5562 // The Amazon Resource Name (ARN) of an IAM role with permission to write to 5563 // your CloudWatch Logs for text logs and your S3 bucket for audio logs. If 5564 // audio encryption is enabled, this role also provides access permission for 5565 // the AWS KMS key used for encrypting audio logs. For more information, see 5566 // Creating an IAM Role and Policy for Conversation Logs (https://docs.aws.amazon.com/lex/latest/dg/conversation-logs-role-and-policy.html). 5567 // 5568 // IamRoleArn is a required field 5569 IamRoleArn *string `locationName:"iamRoleArn" min:"20" type:"string" required:"true"` 5570 5571 // The settings for your conversation logs. You can log the conversation text, 5572 // conversation audio, or both. 5573 // 5574 // LogSettings is a required field 5575 LogSettings []*LogSettingsRequest `locationName:"logSettings" type:"list" required:"true"` 5576 } 5577 5578 // String returns the string representation. 5579 // 5580 // API parameter values that are decorated as "sensitive" in the API will not 5581 // be included in the string output. The member name will be present, but the 5582 // value will be replaced with "sensitive". 5583 func (s ConversationLogsRequest) String() string { 5584 return awsutil.Prettify(s) 5585 } 5586 5587 // GoString returns the string representation. 5588 // 5589 // API parameter values that are decorated as "sensitive" in the API will not 5590 // be included in the string output. The member name will be present, but the 5591 // value will be replaced with "sensitive". 5592 func (s ConversationLogsRequest) GoString() string { 5593 return s.String() 5594 } 5595 5596 // Validate inspects the fields of the type to determine if they are valid. 5597 func (s *ConversationLogsRequest) Validate() error { 5598 invalidParams := request.ErrInvalidParams{Context: "ConversationLogsRequest"} 5599 if s.IamRoleArn == nil { 5600 invalidParams.Add(request.NewErrParamRequired("IamRoleArn")) 5601 } 5602 if s.IamRoleArn != nil && len(*s.IamRoleArn) < 20 { 5603 invalidParams.Add(request.NewErrParamMinLen("IamRoleArn", 20)) 5604 } 5605 if s.LogSettings == nil { 5606 invalidParams.Add(request.NewErrParamRequired("LogSettings")) 5607 } 5608 if s.LogSettings != nil { 5609 for i, v := range s.LogSettings { 5610 if v == nil { 5611 continue 5612 } 5613 if err := v.Validate(); err != nil { 5614 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LogSettings", i), err.(request.ErrInvalidParams)) 5615 } 5616 } 5617 } 5618 5619 if invalidParams.Len() > 0 { 5620 return invalidParams 5621 } 5622 return nil 5623 } 5624 5625 // SetIamRoleArn sets the IamRoleArn field's value. 5626 func (s *ConversationLogsRequest) SetIamRoleArn(v string) *ConversationLogsRequest { 5627 s.IamRoleArn = &v 5628 return s 5629 } 5630 5631 // SetLogSettings sets the LogSettings field's value. 5632 func (s *ConversationLogsRequest) SetLogSettings(v []*LogSettingsRequest) *ConversationLogsRequest { 5633 s.LogSettings = v 5634 return s 5635 } 5636 5637 // Contains information about conversation log settings. 5638 type ConversationLogsResponse struct { 5639 _ struct{} `type:"structure"` 5640 5641 // The Amazon Resource Name (ARN) of the IAM role used to write your logs to 5642 // CloudWatch Logs or an S3 bucket. 5643 IamRoleArn *string `locationName:"iamRoleArn" min:"20" type:"string"` 5644 5645 // The settings for your conversation logs. You can log text, audio, or both. 5646 LogSettings []*LogSettingsResponse `locationName:"logSettings" type:"list"` 5647 } 5648 5649 // String returns the string representation. 5650 // 5651 // API parameter values that are decorated as "sensitive" in the API will not 5652 // be included in the string output. The member name will be present, but the 5653 // value will be replaced with "sensitive". 5654 func (s ConversationLogsResponse) String() string { 5655 return awsutil.Prettify(s) 5656 } 5657 5658 // GoString returns the string representation. 5659 // 5660 // API parameter values that are decorated as "sensitive" in the API will not 5661 // be included in the string output. The member name will be present, but the 5662 // value will be replaced with "sensitive". 5663 func (s ConversationLogsResponse) GoString() string { 5664 return s.String() 5665 } 5666 5667 // SetIamRoleArn sets the IamRoleArn field's value. 5668 func (s *ConversationLogsResponse) SetIamRoleArn(v string) *ConversationLogsResponse { 5669 s.IamRoleArn = &v 5670 return s 5671 } 5672 5673 // SetLogSettings sets the LogSettings field's value. 5674 func (s *ConversationLogsResponse) SetLogSettings(v []*LogSettingsResponse) *ConversationLogsResponse { 5675 s.LogSettings = v 5676 return s 5677 } 5678 5679 type CreateBotVersionInput struct { 5680 _ struct{} `type:"structure"` 5681 5682 // Identifies a specific revision of the $LATEST version of the bot. If you 5683 // specify a checksum and the $LATEST version of the bot has a different checksum, 5684 // a PreconditionFailedException exception is returned and Amazon Lex doesn't 5685 // publish a new version. If you don't specify a checksum, Amazon Lex publishes 5686 // the $LATEST version. 5687 Checksum *string `locationName:"checksum" type:"string"` 5688 5689 // The name of the bot that you want to create a new version of. The name is 5690 // case sensitive. 5691 // 5692 // Name is a required field 5693 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 5694 } 5695 5696 // String returns the string representation. 5697 // 5698 // API parameter values that are decorated as "sensitive" in the API will not 5699 // be included in the string output. The member name will be present, but the 5700 // value will be replaced with "sensitive". 5701 func (s CreateBotVersionInput) String() string { 5702 return awsutil.Prettify(s) 5703 } 5704 5705 // GoString returns the string representation. 5706 // 5707 // API parameter values that are decorated as "sensitive" in the API will not 5708 // be included in the string output. The member name will be present, but the 5709 // value will be replaced with "sensitive". 5710 func (s CreateBotVersionInput) GoString() string { 5711 return s.String() 5712 } 5713 5714 // Validate inspects the fields of the type to determine if they are valid. 5715 func (s *CreateBotVersionInput) Validate() error { 5716 invalidParams := request.ErrInvalidParams{Context: "CreateBotVersionInput"} 5717 if s.Name == nil { 5718 invalidParams.Add(request.NewErrParamRequired("Name")) 5719 } 5720 if s.Name != nil && len(*s.Name) < 2 { 5721 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 5722 } 5723 5724 if invalidParams.Len() > 0 { 5725 return invalidParams 5726 } 5727 return nil 5728 } 5729 5730 // SetChecksum sets the Checksum field's value. 5731 func (s *CreateBotVersionInput) SetChecksum(v string) *CreateBotVersionInput { 5732 s.Checksum = &v 5733 return s 5734 } 5735 5736 // SetName sets the Name field's value. 5737 func (s *CreateBotVersionInput) SetName(v string) *CreateBotVersionInput { 5738 s.Name = &v 5739 return s 5740 } 5741 5742 type CreateBotVersionOutput struct { 5743 _ struct{} `type:"structure"` 5744 5745 // The message that Amazon Lex uses to cancel a conversation. For more information, 5746 // see PutBot. 5747 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 5748 5749 // Checksum identifying the version of the bot that was created. 5750 Checksum *string `locationName:"checksum" type:"string"` 5751 5752 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 5753 // you must specify whether your use of Amazon Lex is related to a website, 5754 // program, or other application that is directed or targeted, in whole or in 5755 // part, to children under age 13 and subject to the Children's Online Privacy 5756 // Protection Act (COPPA) by specifying true or false in the childDirected field. 5757 // By specifying true in the childDirected field, you confirm that your use 5758 // of Amazon Lex is related to a website, program, or other application that 5759 // is directed or targeted, in whole or in part, to children under age 13 and 5760 // subject to COPPA. By specifying false in the childDirected field, you confirm 5761 // that your use of Amazon Lex is not related to a website, program, or other 5762 // application that is directed or targeted, in whole or in part, to children 5763 // under age 13 and subject to COPPA. You may not specify a default value for 5764 // the childDirected field that does not accurately reflect whether your use 5765 // of Amazon Lex is related to a website, program, or other application that 5766 // is directed or targeted, in whole or in part, to children under age 13 and 5767 // subject to COPPA. 5768 // 5769 // If your use of Amazon Lex relates to a website, program, or other application 5770 // that is directed in whole or in part, to children under age 13, you must 5771 // obtain any required verifiable parental consent under COPPA. For information 5772 // regarding the use of Amazon Lex in connection with websites, programs, or 5773 // other applications that are directed or targeted, in whole or in part, to 5774 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 5775 ChildDirected *bool `locationName:"childDirected" type:"boolean"` 5776 5777 // The message that Amazon Lex uses when it doesn't understand the user's request. 5778 // For more information, see PutBot. 5779 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 5780 5781 // The date when the bot version was created. 5782 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 5783 5784 // A description of the bot. 5785 Description *string `locationName:"description" type:"string"` 5786 5787 // Indicates whether utterances entered by the user should be sent to Amazon 5788 // Comprehend for sentiment analysis. 5789 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 5790 5791 // Indicates whether the bot uses accuracy improvements. true indicates that 5792 // the bot is using the improvements, otherwise, false. 5793 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 5794 5795 // If status is FAILED, Amazon Lex provides the reason that it failed to build 5796 // the bot. 5797 FailureReason *string `locationName:"failureReason" type:"string"` 5798 5799 // The maximum time in seconds that Amazon Lex retains the data gathered in 5800 // a conversation. For more information, see PutBot. 5801 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 5802 5803 // An array of Intent objects. For more information, see PutBot. 5804 Intents []*Intent `locationName:"intents" type:"list"` 5805 5806 // The date when the $LATEST version of this bot was updated. 5807 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 5808 5809 // Specifies the target locale for the bot. 5810 Locale *string `locationName:"locale" type:"string" enum:"Locale"` 5811 5812 // The name of the bot. 5813 Name *string `locationName:"name" min:"2" type:"string"` 5814 5815 // When you send a request to create or update a bot, Amazon Lex sets the status 5816 // response element to BUILDING. After Amazon Lex builds the bot, it sets status 5817 // to READY. If Amazon Lex can't build the bot, it sets status to FAILED. Amazon 5818 // Lex returns the reason for the failure in the failureReason response element. 5819 Status *string `locationName:"status" type:"string" enum:"Status"` 5820 5821 // The version of the bot. 5822 Version *string `locationName:"version" min:"1" type:"string"` 5823 5824 // The Amazon Polly voice ID that Amazon Lex uses for voice interactions with 5825 // the user. 5826 VoiceId *string `locationName:"voiceId" type:"string"` 5827 } 5828 5829 // String returns the string representation. 5830 // 5831 // API parameter values that are decorated as "sensitive" in the API will not 5832 // be included in the string output. The member name will be present, but the 5833 // value will be replaced with "sensitive". 5834 func (s CreateBotVersionOutput) String() string { 5835 return awsutil.Prettify(s) 5836 } 5837 5838 // GoString returns the string representation. 5839 // 5840 // API parameter values that are decorated as "sensitive" in the API will not 5841 // be included in the string output. The member name will be present, but the 5842 // value will be replaced with "sensitive". 5843 func (s CreateBotVersionOutput) GoString() string { 5844 return s.String() 5845 } 5846 5847 // SetAbortStatement sets the AbortStatement field's value. 5848 func (s *CreateBotVersionOutput) SetAbortStatement(v *Statement) *CreateBotVersionOutput { 5849 s.AbortStatement = v 5850 return s 5851 } 5852 5853 // SetChecksum sets the Checksum field's value. 5854 func (s *CreateBotVersionOutput) SetChecksum(v string) *CreateBotVersionOutput { 5855 s.Checksum = &v 5856 return s 5857 } 5858 5859 // SetChildDirected sets the ChildDirected field's value. 5860 func (s *CreateBotVersionOutput) SetChildDirected(v bool) *CreateBotVersionOutput { 5861 s.ChildDirected = &v 5862 return s 5863 } 5864 5865 // SetClarificationPrompt sets the ClarificationPrompt field's value. 5866 func (s *CreateBotVersionOutput) SetClarificationPrompt(v *Prompt) *CreateBotVersionOutput { 5867 s.ClarificationPrompt = v 5868 return s 5869 } 5870 5871 // SetCreatedDate sets the CreatedDate field's value. 5872 func (s *CreateBotVersionOutput) SetCreatedDate(v time.Time) *CreateBotVersionOutput { 5873 s.CreatedDate = &v 5874 return s 5875 } 5876 5877 // SetDescription sets the Description field's value. 5878 func (s *CreateBotVersionOutput) SetDescription(v string) *CreateBotVersionOutput { 5879 s.Description = &v 5880 return s 5881 } 5882 5883 // SetDetectSentiment sets the DetectSentiment field's value. 5884 func (s *CreateBotVersionOutput) SetDetectSentiment(v bool) *CreateBotVersionOutput { 5885 s.DetectSentiment = &v 5886 return s 5887 } 5888 5889 // SetEnableModelImprovements sets the EnableModelImprovements field's value. 5890 func (s *CreateBotVersionOutput) SetEnableModelImprovements(v bool) *CreateBotVersionOutput { 5891 s.EnableModelImprovements = &v 5892 return s 5893 } 5894 5895 // SetFailureReason sets the FailureReason field's value. 5896 func (s *CreateBotVersionOutput) SetFailureReason(v string) *CreateBotVersionOutput { 5897 s.FailureReason = &v 5898 return s 5899 } 5900 5901 // SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 5902 func (s *CreateBotVersionOutput) SetIdleSessionTTLInSeconds(v int64) *CreateBotVersionOutput { 5903 s.IdleSessionTTLInSeconds = &v 5904 return s 5905 } 5906 5907 // SetIntents sets the Intents field's value. 5908 func (s *CreateBotVersionOutput) SetIntents(v []*Intent) *CreateBotVersionOutput { 5909 s.Intents = v 5910 return s 5911 } 5912 5913 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 5914 func (s *CreateBotVersionOutput) SetLastUpdatedDate(v time.Time) *CreateBotVersionOutput { 5915 s.LastUpdatedDate = &v 5916 return s 5917 } 5918 5919 // SetLocale sets the Locale field's value. 5920 func (s *CreateBotVersionOutput) SetLocale(v string) *CreateBotVersionOutput { 5921 s.Locale = &v 5922 return s 5923 } 5924 5925 // SetName sets the Name field's value. 5926 func (s *CreateBotVersionOutput) SetName(v string) *CreateBotVersionOutput { 5927 s.Name = &v 5928 return s 5929 } 5930 5931 // SetStatus sets the Status field's value. 5932 func (s *CreateBotVersionOutput) SetStatus(v string) *CreateBotVersionOutput { 5933 s.Status = &v 5934 return s 5935 } 5936 5937 // SetVersion sets the Version field's value. 5938 func (s *CreateBotVersionOutput) SetVersion(v string) *CreateBotVersionOutput { 5939 s.Version = &v 5940 return s 5941 } 5942 5943 // SetVoiceId sets the VoiceId field's value. 5944 func (s *CreateBotVersionOutput) SetVoiceId(v string) *CreateBotVersionOutput { 5945 s.VoiceId = &v 5946 return s 5947 } 5948 5949 type CreateIntentVersionInput struct { 5950 _ struct{} `type:"structure"` 5951 5952 // Checksum of the $LATEST version of the intent that should be used to create 5953 // the new version. If you specify a checksum and the $LATEST version of the 5954 // intent has a different checksum, Amazon Lex returns a PreconditionFailedException 5955 // exception and doesn't publish a new version. If you don't specify a checksum, 5956 // Amazon Lex publishes the $LATEST version. 5957 Checksum *string `locationName:"checksum" type:"string"` 5958 5959 // The name of the intent that you want to create a new version of. The name 5960 // is case sensitive. 5961 // 5962 // Name is a required field 5963 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 5964 } 5965 5966 // String returns the string representation. 5967 // 5968 // API parameter values that are decorated as "sensitive" in the API will not 5969 // be included in the string output. The member name will be present, but the 5970 // value will be replaced with "sensitive". 5971 func (s CreateIntentVersionInput) String() string { 5972 return awsutil.Prettify(s) 5973 } 5974 5975 // GoString returns the string representation. 5976 // 5977 // API parameter values that are decorated as "sensitive" in the API will not 5978 // be included in the string output. The member name will be present, but the 5979 // value will be replaced with "sensitive". 5980 func (s CreateIntentVersionInput) GoString() string { 5981 return s.String() 5982 } 5983 5984 // Validate inspects the fields of the type to determine if they are valid. 5985 func (s *CreateIntentVersionInput) Validate() error { 5986 invalidParams := request.ErrInvalidParams{Context: "CreateIntentVersionInput"} 5987 if s.Name == nil { 5988 invalidParams.Add(request.NewErrParamRequired("Name")) 5989 } 5990 if s.Name != nil && len(*s.Name) < 1 { 5991 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 5992 } 5993 5994 if invalidParams.Len() > 0 { 5995 return invalidParams 5996 } 5997 return nil 5998 } 5999 6000 // SetChecksum sets the Checksum field's value. 6001 func (s *CreateIntentVersionInput) SetChecksum(v string) *CreateIntentVersionInput { 6002 s.Checksum = &v 6003 return s 6004 } 6005 6006 // SetName sets the Name field's value. 6007 func (s *CreateIntentVersionInput) SetName(v string) *CreateIntentVersionInput { 6008 s.Name = &v 6009 return s 6010 } 6011 6012 type CreateIntentVersionOutput struct { 6013 _ struct{} `type:"structure"` 6014 6015 // Checksum of the intent version created. 6016 Checksum *string `locationName:"checksum" type:"string"` 6017 6018 // After the Lambda function specified in the fulfillmentActivity field fulfills 6019 // the intent, Amazon Lex conveys this statement to the user. 6020 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 6021 6022 // If defined, the prompt that Amazon Lex uses to confirm the user's intent 6023 // before fulfilling it. 6024 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 6025 6026 // The date that the intent was created. 6027 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 6028 6029 // A description of the intent. 6030 Description *string `locationName:"description" type:"string"` 6031 6032 // If defined, Amazon Lex invokes this Lambda function for each user input. 6033 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 6034 6035 // If defined, Amazon Lex uses this prompt to solicit additional user activity 6036 // after the intent is fulfilled. 6037 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 6038 6039 // Describes how the intent is fulfilled. 6040 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 6041 6042 // An array of InputContext objects that lists the contexts that must be active 6043 // for Amazon Lex to choose the intent in a conversation with the user. 6044 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 6045 6046 // Configuration information, if any, for connecting an Amazon Kendra index 6047 // with the AMAZON.KendraSearchIntent intent. 6048 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 6049 6050 // The date that the intent was updated. 6051 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 6052 6053 // The name of the intent. 6054 Name *string `locationName:"name" min:"1" type:"string"` 6055 6056 // An array of OutputContext objects that lists the contexts that the intent 6057 // activates when the intent is fulfilled. 6058 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 6059 6060 // A unique identifier for a built-in intent. 6061 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 6062 6063 // If the user answers "no" to the question defined in confirmationPrompt, Amazon 6064 // Lex responds with this statement to acknowledge that the intent was canceled. 6065 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 6066 6067 // An array of sample utterances configured for the intent. 6068 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 6069 6070 // An array of slot types that defines the information required to fulfill the 6071 // intent. 6072 Slots []*Slot `locationName:"slots" type:"list"` 6073 6074 // The version number assigned to the new version of the intent. 6075 Version *string `locationName:"version" min:"1" type:"string"` 6076 } 6077 6078 // String returns the string representation. 6079 // 6080 // API parameter values that are decorated as "sensitive" in the API will not 6081 // be included in the string output. The member name will be present, but the 6082 // value will be replaced with "sensitive". 6083 func (s CreateIntentVersionOutput) String() string { 6084 return awsutil.Prettify(s) 6085 } 6086 6087 // GoString returns the string representation. 6088 // 6089 // API parameter values that are decorated as "sensitive" in the API will not 6090 // be included in the string output. The member name will be present, but the 6091 // value will be replaced with "sensitive". 6092 func (s CreateIntentVersionOutput) GoString() string { 6093 return s.String() 6094 } 6095 6096 // SetChecksum sets the Checksum field's value. 6097 func (s *CreateIntentVersionOutput) SetChecksum(v string) *CreateIntentVersionOutput { 6098 s.Checksum = &v 6099 return s 6100 } 6101 6102 // SetConclusionStatement sets the ConclusionStatement field's value. 6103 func (s *CreateIntentVersionOutput) SetConclusionStatement(v *Statement) *CreateIntentVersionOutput { 6104 s.ConclusionStatement = v 6105 return s 6106 } 6107 6108 // SetConfirmationPrompt sets the ConfirmationPrompt field's value. 6109 func (s *CreateIntentVersionOutput) SetConfirmationPrompt(v *Prompt) *CreateIntentVersionOutput { 6110 s.ConfirmationPrompt = v 6111 return s 6112 } 6113 6114 // SetCreatedDate sets the CreatedDate field's value. 6115 func (s *CreateIntentVersionOutput) SetCreatedDate(v time.Time) *CreateIntentVersionOutput { 6116 s.CreatedDate = &v 6117 return s 6118 } 6119 6120 // SetDescription sets the Description field's value. 6121 func (s *CreateIntentVersionOutput) SetDescription(v string) *CreateIntentVersionOutput { 6122 s.Description = &v 6123 return s 6124 } 6125 6126 // SetDialogCodeHook sets the DialogCodeHook field's value. 6127 func (s *CreateIntentVersionOutput) SetDialogCodeHook(v *CodeHook) *CreateIntentVersionOutput { 6128 s.DialogCodeHook = v 6129 return s 6130 } 6131 6132 // SetFollowUpPrompt sets the FollowUpPrompt field's value. 6133 func (s *CreateIntentVersionOutput) SetFollowUpPrompt(v *FollowUpPrompt) *CreateIntentVersionOutput { 6134 s.FollowUpPrompt = v 6135 return s 6136 } 6137 6138 // SetFulfillmentActivity sets the FulfillmentActivity field's value. 6139 func (s *CreateIntentVersionOutput) SetFulfillmentActivity(v *FulfillmentActivity) *CreateIntentVersionOutput { 6140 s.FulfillmentActivity = v 6141 return s 6142 } 6143 6144 // SetInputContexts sets the InputContexts field's value. 6145 func (s *CreateIntentVersionOutput) SetInputContexts(v []*InputContext) *CreateIntentVersionOutput { 6146 s.InputContexts = v 6147 return s 6148 } 6149 6150 // SetKendraConfiguration sets the KendraConfiguration field's value. 6151 func (s *CreateIntentVersionOutput) SetKendraConfiguration(v *KendraConfiguration) *CreateIntentVersionOutput { 6152 s.KendraConfiguration = v 6153 return s 6154 } 6155 6156 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 6157 func (s *CreateIntentVersionOutput) SetLastUpdatedDate(v time.Time) *CreateIntentVersionOutput { 6158 s.LastUpdatedDate = &v 6159 return s 6160 } 6161 6162 // SetName sets the Name field's value. 6163 func (s *CreateIntentVersionOutput) SetName(v string) *CreateIntentVersionOutput { 6164 s.Name = &v 6165 return s 6166 } 6167 6168 // SetOutputContexts sets the OutputContexts field's value. 6169 func (s *CreateIntentVersionOutput) SetOutputContexts(v []*OutputContext) *CreateIntentVersionOutput { 6170 s.OutputContexts = v 6171 return s 6172 } 6173 6174 // SetParentIntentSignature sets the ParentIntentSignature field's value. 6175 func (s *CreateIntentVersionOutput) SetParentIntentSignature(v string) *CreateIntentVersionOutput { 6176 s.ParentIntentSignature = &v 6177 return s 6178 } 6179 6180 // SetRejectionStatement sets the RejectionStatement field's value. 6181 func (s *CreateIntentVersionOutput) SetRejectionStatement(v *Statement) *CreateIntentVersionOutput { 6182 s.RejectionStatement = v 6183 return s 6184 } 6185 6186 // SetSampleUtterances sets the SampleUtterances field's value. 6187 func (s *CreateIntentVersionOutput) SetSampleUtterances(v []*string) *CreateIntentVersionOutput { 6188 s.SampleUtterances = v 6189 return s 6190 } 6191 6192 // SetSlots sets the Slots field's value. 6193 func (s *CreateIntentVersionOutput) SetSlots(v []*Slot) *CreateIntentVersionOutput { 6194 s.Slots = v 6195 return s 6196 } 6197 6198 // SetVersion sets the Version field's value. 6199 func (s *CreateIntentVersionOutput) SetVersion(v string) *CreateIntentVersionOutput { 6200 s.Version = &v 6201 return s 6202 } 6203 6204 type CreateSlotTypeVersionInput struct { 6205 _ struct{} `type:"structure"` 6206 6207 // Checksum for the $LATEST version of the slot type that you want to publish. 6208 // If you specify a checksum and the $LATEST version of the slot type has a 6209 // different checksum, Amazon Lex returns a PreconditionFailedException exception 6210 // and doesn't publish the new version. If you don't specify a checksum, Amazon 6211 // Lex publishes the $LATEST version. 6212 Checksum *string `locationName:"checksum" type:"string"` 6213 6214 // The name of the slot type that you want to create a new version for. The 6215 // name is case sensitive. 6216 // 6217 // Name is a required field 6218 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6219 } 6220 6221 // String returns the string representation. 6222 // 6223 // API parameter values that are decorated as "sensitive" in the API will not 6224 // be included in the string output. The member name will be present, but the 6225 // value will be replaced with "sensitive". 6226 func (s CreateSlotTypeVersionInput) String() string { 6227 return awsutil.Prettify(s) 6228 } 6229 6230 // GoString returns the string representation. 6231 // 6232 // API parameter values that are decorated as "sensitive" in the API will not 6233 // be included in the string output. The member name will be present, but the 6234 // value will be replaced with "sensitive". 6235 func (s CreateSlotTypeVersionInput) GoString() string { 6236 return s.String() 6237 } 6238 6239 // Validate inspects the fields of the type to determine if they are valid. 6240 func (s *CreateSlotTypeVersionInput) Validate() error { 6241 invalidParams := request.ErrInvalidParams{Context: "CreateSlotTypeVersionInput"} 6242 if s.Name == nil { 6243 invalidParams.Add(request.NewErrParamRequired("Name")) 6244 } 6245 if s.Name != nil && len(*s.Name) < 1 { 6246 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6247 } 6248 6249 if invalidParams.Len() > 0 { 6250 return invalidParams 6251 } 6252 return nil 6253 } 6254 6255 // SetChecksum sets the Checksum field's value. 6256 func (s *CreateSlotTypeVersionInput) SetChecksum(v string) *CreateSlotTypeVersionInput { 6257 s.Checksum = &v 6258 return s 6259 } 6260 6261 // SetName sets the Name field's value. 6262 func (s *CreateSlotTypeVersionInput) SetName(v string) *CreateSlotTypeVersionInput { 6263 s.Name = &v 6264 return s 6265 } 6266 6267 type CreateSlotTypeVersionOutput struct { 6268 _ struct{} `type:"structure"` 6269 6270 // Checksum of the $LATEST version of the slot type. 6271 Checksum *string `locationName:"checksum" type:"string"` 6272 6273 // The date that the slot type was created. 6274 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 6275 6276 // A description of the slot type. 6277 Description *string `locationName:"description" type:"string"` 6278 6279 // A list of EnumerationValue objects that defines the values that the slot 6280 // type can take. 6281 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 6282 6283 // The date that the slot type was updated. When you create a resource, the 6284 // creation date and last update date are the same. 6285 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 6286 6287 // The name of the slot type. 6288 Name *string `locationName:"name" min:"1" type:"string"` 6289 6290 // The built-in slot type used a the parent of the slot type. 6291 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 6292 6293 // Configuration information that extends the parent built-in slot type. 6294 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 6295 6296 // The strategy that Amazon Lex uses to determine the value of the slot. For 6297 // more information, see PutSlotType. 6298 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 6299 6300 // The version assigned to the new slot type version. 6301 Version *string `locationName:"version" min:"1" type:"string"` 6302 } 6303 6304 // String returns the string representation. 6305 // 6306 // API parameter values that are decorated as "sensitive" in the API will not 6307 // be included in the string output. The member name will be present, but the 6308 // value will be replaced with "sensitive". 6309 func (s CreateSlotTypeVersionOutput) String() string { 6310 return awsutil.Prettify(s) 6311 } 6312 6313 // GoString returns the string representation. 6314 // 6315 // API parameter values that are decorated as "sensitive" in the API will not 6316 // be included in the string output. The member name will be present, but the 6317 // value will be replaced with "sensitive". 6318 func (s CreateSlotTypeVersionOutput) GoString() string { 6319 return s.String() 6320 } 6321 6322 // SetChecksum sets the Checksum field's value. 6323 func (s *CreateSlotTypeVersionOutput) SetChecksum(v string) *CreateSlotTypeVersionOutput { 6324 s.Checksum = &v 6325 return s 6326 } 6327 6328 // SetCreatedDate sets the CreatedDate field's value. 6329 func (s *CreateSlotTypeVersionOutput) SetCreatedDate(v time.Time) *CreateSlotTypeVersionOutput { 6330 s.CreatedDate = &v 6331 return s 6332 } 6333 6334 // SetDescription sets the Description field's value. 6335 func (s *CreateSlotTypeVersionOutput) SetDescription(v string) *CreateSlotTypeVersionOutput { 6336 s.Description = &v 6337 return s 6338 } 6339 6340 // SetEnumerationValues sets the EnumerationValues field's value. 6341 func (s *CreateSlotTypeVersionOutput) SetEnumerationValues(v []*EnumerationValue) *CreateSlotTypeVersionOutput { 6342 s.EnumerationValues = v 6343 return s 6344 } 6345 6346 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 6347 func (s *CreateSlotTypeVersionOutput) SetLastUpdatedDate(v time.Time) *CreateSlotTypeVersionOutput { 6348 s.LastUpdatedDate = &v 6349 return s 6350 } 6351 6352 // SetName sets the Name field's value. 6353 func (s *CreateSlotTypeVersionOutput) SetName(v string) *CreateSlotTypeVersionOutput { 6354 s.Name = &v 6355 return s 6356 } 6357 6358 // SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 6359 func (s *CreateSlotTypeVersionOutput) SetParentSlotTypeSignature(v string) *CreateSlotTypeVersionOutput { 6360 s.ParentSlotTypeSignature = &v 6361 return s 6362 } 6363 6364 // SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 6365 func (s *CreateSlotTypeVersionOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *CreateSlotTypeVersionOutput { 6366 s.SlotTypeConfigurations = v 6367 return s 6368 } 6369 6370 // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 6371 func (s *CreateSlotTypeVersionOutput) SetValueSelectionStrategy(v string) *CreateSlotTypeVersionOutput { 6372 s.ValueSelectionStrategy = &v 6373 return s 6374 } 6375 6376 // SetVersion sets the Version field's value. 6377 func (s *CreateSlotTypeVersionOutput) SetVersion(v string) *CreateSlotTypeVersionOutput { 6378 s.Version = &v 6379 return s 6380 } 6381 6382 type DeleteBotAliasInput struct { 6383 _ struct{} `type:"structure" nopayload:"true"` 6384 6385 // The name of the bot that the alias points to. 6386 // 6387 // BotName is a required field 6388 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 6389 6390 // The name of the alias to delete. The name is case sensitive. 6391 // 6392 // Name is a required field 6393 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6394 } 6395 6396 // String returns the string representation. 6397 // 6398 // API parameter values that are decorated as "sensitive" in the API will not 6399 // be included in the string output. The member name will be present, but the 6400 // value will be replaced with "sensitive". 6401 func (s DeleteBotAliasInput) String() string { 6402 return awsutil.Prettify(s) 6403 } 6404 6405 // GoString returns the string representation. 6406 // 6407 // API parameter values that are decorated as "sensitive" in the API will not 6408 // be included in the string output. The member name will be present, but the 6409 // value will be replaced with "sensitive". 6410 func (s DeleteBotAliasInput) GoString() string { 6411 return s.String() 6412 } 6413 6414 // Validate inspects the fields of the type to determine if they are valid. 6415 func (s *DeleteBotAliasInput) Validate() error { 6416 invalidParams := request.ErrInvalidParams{Context: "DeleteBotAliasInput"} 6417 if s.BotName == nil { 6418 invalidParams.Add(request.NewErrParamRequired("BotName")) 6419 } 6420 if s.BotName != nil && len(*s.BotName) < 2 { 6421 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 6422 } 6423 if s.Name == nil { 6424 invalidParams.Add(request.NewErrParamRequired("Name")) 6425 } 6426 if s.Name != nil && len(*s.Name) < 1 { 6427 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6428 } 6429 6430 if invalidParams.Len() > 0 { 6431 return invalidParams 6432 } 6433 return nil 6434 } 6435 6436 // SetBotName sets the BotName field's value. 6437 func (s *DeleteBotAliasInput) SetBotName(v string) *DeleteBotAliasInput { 6438 s.BotName = &v 6439 return s 6440 } 6441 6442 // SetName sets the Name field's value. 6443 func (s *DeleteBotAliasInput) SetName(v string) *DeleteBotAliasInput { 6444 s.Name = &v 6445 return s 6446 } 6447 6448 type DeleteBotAliasOutput struct { 6449 _ struct{} `type:"structure" nopayload:"true"` 6450 } 6451 6452 // String returns the string representation. 6453 // 6454 // API parameter values that are decorated as "sensitive" in the API will not 6455 // be included in the string output. The member name will be present, but the 6456 // value will be replaced with "sensitive". 6457 func (s DeleteBotAliasOutput) String() string { 6458 return awsutil.Prettify(s) 6459 } 6460 6461 // GoString returns the string representation. 6462 // 6463 // API parameter values that are decorated as "sensitive" in the API will not 6464 // be included in the string output. The member name will be present, but the 6465 // value will be replaced with "sensitive". 6466 func (s DeleteBotAliasOutput) GoString() string { 6467 return s.String() 6468 } 6469 6470 type DeleteBotChannelAssociationInput struct { 6471 _ struct{} `type:"structure" nopayload:"true"` 6472 6473 // An alias that points to the specific version of the Amazon Lex bot to which 6474 // this association is being made. 6475 // 6476 // BotAlias is a required field 6477 BotAlias *string `location:"uri" locationName:"aliasName" min:"1" type:"string" required:"true"` 6478 6479 // The name of the Amazon Lex bot. 6480 // 6481 // BotName is a required field 6482 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 6483 6484 // The name of the association. The name is case sensitive. 6485 // 6486 // Name is a required field 6487 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6488 } 6489 6490 // String returns the string representation. 6491 // 6492 // API parameter values that are decorated as "sensitive" in the API will not 6493 // be included in the string output. The member name will be present, but the 6494 // value will be replaced with "sensitive". 6495 func (s DeleteBotChannelAssociationInput) String() string { 6496 return awsutil.Prettify(s) 6497 } 6498 6499 // GoString returns the string representation. 6500 // 6501 // API parameter values that are decorated as "sensitive" in the API will not 6502 // be included in the string output. The member name will be present, but the 6503 // value will be replaced with "sensitive". 6504 func (s DeleteBotChannelAssociationInput) GoString() string { 6505 return s.String() 6506 } 6507 6508 // Validate inspects the fields of the type to determine if they are valid. 6509 func (s *DeleteBotChannelAssociationInput) Validate() error { 6510 invalidParams := request.ErrInvalidParams{Context: "DeleteBotChannelAssociationInput"} 6511 if s.BotAlias == nil { 6512 invalidParams.Add(request.NewErrParamRequired("BotAlias")) 6513 } 6514 if s.BotAlias != nil && len(*s.BotAlias) < 1 { 6515 invalidParams.Add(request.NewErrParamMinLen("BotAlias", 1)) 6516 } 6517 if s.BotName == nil { 6518 invalidParams.Add(request.NewErrParamRequired("BotName")) 6519 } 6520 if s.BotName != nil && len(*s.BotName) < 2 { 6521 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 6522 } 6523 if s.Name == nil { 6524 invalidParams.Add(request.NewErrParamRequired("Name")) 6525 } 6526 if s.Name != nil && len(*s.Name) < 1 { 6527 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6528 } 6529 6530 if invalidParams.Len() > 0 { 6531 return invalidParams 6532 } 6533 return nil 6534 } 6535 6536 // SetBotAlias sets the BotAlias field's value. 6537 func (s *DeleteBotChannelAssociationInput) SetBotAlias(v string) *DeleteBotChannelAssociationInput { 6538 s.BotAlias = &v 6539 return s 6540 } 6541 6542 // SetBotName sets the BotName field's value. 6543 func (s *DeleteBotChannelAssociationInput) SetBotName(v string) *DeleteBotChannelAssociationInput { 6544 s.BotName = &v 6545 return s 6546 } 6547 6548 // SetName sets the Name field's value. 6549 func (s *DeleteBotChannelAssociationInput) SetName(v string) *DeleteBotChannelAssociationInput { 6550 s.Name = &v 6551 return s 6552 } 6553 6554 type DeleteBotChannelAssociationOutput struct { 6555 _ struct{} `type:"structure" nopayload:"true"` 6556 } 6557 6558 // String returns the string representation. 6559 // 6560 // API parameter values that are decorated as "sensitive" in the API will not 6561 // be included in the string output. The member name will be present, but the 6562 // value will be replaced with "sensitive". 6563 func (s DeleteBotChannelAssociationOutput) String() string { 6564 return awsutil.Prettify(s) 6565 } 6566 6567 // GoString returns the string representation. 6568 // 6569 // API parameter values that are decorated as "sensitive" in the API will not 6570 // be included in the string output. The member name will be present, but the 6571 // value will be replaced with "sensitive". 6572 func (s DeleteBotChannelAssociationOutput) GoString() string { 6573 return s.String() 6574 } 6575 6576 type DeleteBotInput struct { 6577 _ struct{} `type:"structure" nopayload:"true"` 6578 6579 // The name of the bot. The name is case sensitive. 6580 // 6581 // Name is a required field 6582 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 6583 } 6584 6585 // String returns the string representation. 6586 // 6587 // API parameter values that are decorated as "sensitive" in the API will not 6588 // be included in the string output. The member name will be present, but the 6589 // value will be replaced with "sensitive". 6590 func (s DeleteBotInput) String() string { 6591 return awsutil.Prettify(s) 6592 } 6593 6594 // GoString returns the string representation. 6595 // 6596 // API parameter values that are decorated as "sensitive" in the API will not 6597 // be included in the string output. The member name will be present, but the 6598 // value will be replaced with "sensitive". 6599 func (s DeleteBotInput) GoString() string { 6600 return s.String() 6601 } 6602 6603 // Validate inspects the fields of the type to determine if they are valid. 6604 func (s *DeleteBotInput) Validate() error { 6605 invalidParams := request.ErrInvalidParams{Context: "DeleteBotInput"} 6606 if s.Name == nil { 6607 invalidParams.Add(request.NewErrParamRequired("Name")) 6608 } 6609 if s.Name != nil && len(*s.Name) < 2 { 6610 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 6611 } 6612 6613 if invalidParams.Len() > 0 { 6614 return invalidParams 6615 } 6616 return nil 6617 } 6618 6619 // SetName sets the Name field's value. 6620 func (s *DeleteBotInput) SetName(v string) *DeleteBotInput { 6621 s.Name = &v 6622 return s 6623 } 6624 6625 type DeleteBotOutput struct { 6626 _ struct{} `type:"structure" nopayload:"true"` 6627 } 6628 6629 // String returns the string representation. 6630 // 6631 // API parameter values that are decorated as "sensitive" in the API will not 6632 // be included in the string output. The member name will be present, but the 6633 // value will be replaced with "sensitive". 6634 func (s DeleteBotOutput) String() string { 6635 return awsutil.Prettify(s) 6636 } 6637 6638 // GoString returns the string representation. 6639 // 6640 // API parameter values that are decorated as "sensitive" in the API will not 6641 // be included in the string output. The member name will be present, but the 6642 // value will be replaced with "sensitive". 6643 func (s DeleteBotOutput) GoString() string { 6644 return s.String() 6645 } 6646 6647 type DeleteBotVersionInput struct { 6648 _ struct{} `type:"structure" nopayload:"true"` 6649 6650 // The name of the bot. 6651 // 6652 // Name is a required field 6653 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 6654 6655 // The version of the bot to delete. You cannot delete the $LATEST version of 6656 // the bot. To delete the $LATEST version, use the DeleteBot operation. 6657 // 6658 // Version is a required field 6659 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 6660 } 6661 6662 // String returns the string representation. 6663 // 6664 // API parameter values that are decorated as "sensitive" in the API will not 6665 // be included in the string output. The member name will be present, but the 6666 // value will be replaced with "sensitive". 6667 func (s DeleteBotVersionInput) String() string { 6668 return awsutil.Prettify(s) 6669 } 6670 6671 // GoString returns the string representation. 6672 // 6673 // API parameter values that are decorated as "sensitive" in the API will not 6674 // be included in the string output. The member name will be present, but the 6675 // value will be replaced with "sensitive". 6676 func (s DeleteBotVersionInput) GoString() string { 6677 return s.String() 6678 } 6679 6680 // Validate inspects the fields of the type to determine if they are valid. 6681 func (s *DeleteBotVersionInput) Validate() error { 6682 invalidParams := request.ErrInvalidParams{Context: "DeleteBotVersionInput"} 6683 if s.Name == nil { 6684 invalidParams.Add(request.NewErrParamRequired("Name")) 6685 } 6686 if s.Name != nil && len(*s.Name) < 2 { 6687 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 6688 } 6689 if s.Version == nil { 6690 invalidParams.Add(request.NewErrParamRequired("Version")) 6691 } 6692 if s.Version != nil && len(*s.Version) < 1 { 6693 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 6694 } 6695 6696 if invalidParams.Len() > 0 { 6697 return invalidParams 6698 } 6699 return nil 6700 } 6701 6702 // SetName sets the Name field's value. 6703 func (s *DeleteBotVersionInput) SetName(v string) *DeleteBotVersionInput { 6704 s.Name = &v 6705 return s 6706 } 6707 6708 // SetVersion sets the Version field's value. 6709 func (s *DeleteBotVersionInput) SetVersion(v string) *DeleteBotVersionInput { 6710 s.Version = &v 6711 return s 6712 } 6713 6714 type DeleteBotVersionOutput struct { 6715 _ struct{} `type:"structure" nopayload:"true"` 6716 } 6717 6718 // String returns the string representation. 6719 // 6720 // API parameter values that are decorated as "sensitive" in the API will not 6721 // be included in the string output. The member name will be present, but the 6722 // value will be replaced with "sensitive". 6723 func (s DeleteBotVersionOutput) String() string { 6724 return awsutil.Prettify(s) 6725 } 6726 6727 // GoString returns the string representation. 6728 // 6729 // API parameter values that are decorated as "sensitive" in the API will not 6730 // be included in the string output. The member name will be present, but the 6731 // value will be replaced with "sensitive". 6732 func (s DeleteBotVersionOutput) GoString() string { 6733 return s.String() 6734 } 6735 6736 type DeleteIntentInput struct { 6737 _ struct{} `type:"structure" nopayload:"true"` 6738 6739 // The name of the intent. The name is case sensitive. 6740 // 6741 // Name is a required field 6742 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6743 } 6744 6745 // String returns the string representation. 6746 // 6747 // API parameter values that are decorated as "sensitive" in the API will not 6748 // be included in the string output. The member name will be present, but the 6749 // value will be replaced with "sensitive". 6750 func (s DeleteIntentInput) String() string { 6751 return awsutil.Prettify(s) 6752 } 6753 6754 // GoString returns the string representation. 6755 // 6756 // API parameter values that are decorated as "sensitive" in the API will not 6757 // be included in the string output. The member name will be present, but the 6758 // value will be replaced with "sensitive". 6759 func (s DeleteIntentInput) GoString() string { 6760 return s.String() 6761 } 6762 6763 // Validate inspects the fields of the type to determine if they are valid. 6764 func (s *DeleteIntentInput) Validate() error { 6765 invalidParams := request.ErrInvalidParams{Context: "DeleteIntentInput"} 6766 if s.Name == nil { 6767 invalidParams.Add(request.NewErrParamRequired("Name")) 6768 } 6769 if s.Name != nil && len(*s.Name) < 1 { 6770 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6771 } 6772 6773 if invalidParams.Len() > 0 { 6774 return invalidParams 6775 } 6776 return nil 6777 } 6778 6779 // SetName sets the Name field's value. 6780 func (s *DeleteIntentInput) SetName(v string) *DeleteIntentInput { 6781 s.Name = &v 6782 return s 6783 } 6784 6785 type DeleteIntentOutput struct { 6786 _ struct{} `type:"structure" nopayload:"true"` 6787 } 6788 6789 // String returns the string representation. 6790 // 6791 // API parameter values that are decorated as "sensitive" in the API will not 6792 // be included in the string output. The member name will be present, but the 6793 // value will be replaced with "sensitive". 6794 func (s DeleteIntentOutput) String() string { 6795 return awsutil.Prettify(s) 6796 } 6797 6798 // GoString returns the string representation. 6799 // 6800 // API parameter values that are decorated as "sensitive" in the API will not 6801 // be included in the string output. The member name will be present, but the 6802 // value will be replaced with "sensitive". 6803 func (s DeleteIntentOutput) GoString() string { 6804 return s.String() 6805 } 6806 6807 type DeleteIntentVersionInput struct { 6808 _ struct{} `type:"structure" nopayload:"true"` 6809 6810 // The name of the intent. 6811 // 6812 // Name is a required field 6813 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6814 6815 // The version of the intent to delete. You cannot delete the $LATEST version 6816 // of the intent. To delete the $LATEST version, use the DeleteIntent operation. 6817 // 6818 // Version is a required field 6819 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 6820 } 6821 6822 // String returns the string representation. 6823 // 6824 // API parameter values that are decorated as "sensitive" in the API will not 6825 // be included in the string output. The member name will be present, but the 6826 // value will be replaced with "sensitive". 6827 func (s DeleteIntentVersionInput) String() string { 6828 return awsutil.Prettify(s) 6829 } 6830 6831 // GoString returns the string representation. 6832 // 6833 // API parameter values that are decorated as "sensitive" in the API will not 6834 // be included in the string output. The member name will be present, but the 6835 // value will be replaced with "sensitive". 6836 func (s DeleteIntentVersionInput) GoString() string { 6837 return s.String() 6838 } 6839 6840 // Validate inspects the fields of the type to determine if they are valid. 6841 func (s *DeleteIntentVersionInput) Validate() error { 6842 invalidParams := request.ErrInvalidParams{Context: "DeleteIntentVersionInput"} 6843 if s.Name == nil { 6844 invalidParams.Add(request.NewErrParamRequired("Name")) 6845 } 6846 if s.Name != nil && len(*s.Name) < 1 { 6847 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6848 } 6849 if s.Version == nil { 6850 invalidParams.Add(request.NewErrParamRequired("Version")) 6851 } 6852 if s.Version != nil && len(*s.Version) < 1 { 6853 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 6854 } 6855 6856 if invalidParams.Len() > 0 { 6857 return invalidParams 6858 } 6859 return nil 6860 } 6861 6862 // SetName sets the Name field's value. 6863 func (s *DeleteIntentVersionInput) SetName(v string) *DeleteIntentVersionInput { 6864 s.Name = &v 6865 return s 6866 } 6867 6868 // SetVersion sets the Version field's value. 6869 func (s *DeleteIntentVersionInput) SetVersion(v string) *DeleteIntentVersionInput { 6870 s.Version = &v 6871 return s 6872 } 6873 6874 type DeleteIntentVersionOutput struct { 6875 _ struct{} `type:"structure" nopayload:"true"` 6876 } 6877 6878 // String returns the string representation. 6879 // 6880 // API parameter values that are decorated as "sensitive" in the API will not 6881 // be included in the string output. The member name will be present, but the 6882 // value will be replaced with "sensitive". 6883 func (s DeleteIntentVersionOutput) String() string { 6884 return awsutil.Prettify(s) 6885 } 6886 6887 // GoString returns the string representation. 6888 // 6889 // API parameter values that are decorated as "sensitive" in the API will not 6890 // be included in the string output. The member name will be present, but the 6891 // value will be replaced with "sensitive". 6892 func (s DeleteIntentVersionOutput) GoString() string { 6893 return s.String() 6894 } 6895 6896 type DeleteSlotTypeInput struct { 6897 _ struct{} `type:"structure" nopayload:"true"` 6898 6899 // The name of the slot type. The name is case sensitive. 6900 // 6901 // Name is a required field 6902 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6903 } 6904 6905 // String returns the string representation. 6906 // 6907 // API parameter values that are decorated as "sensitive" in the API will not 6908 // be included in the string output. The member name will be present, but the 6909 // value will be replaced with "sensitive". 6910 func (s DeleteSlotTypeInput) String() string { 6911 return awsutil.Prettify(s) 6912 } 6913 6914 // GoString returns the string representation. 6915 // 6916 // API parameter values that are decorated as "sensitive" in the API will not 6917 // be included in the string output. The member name will be present, but the 6918 // value will be replaced with "sensitive". 6919 func (s DeleteSlotTypeInput) GoString() string { 6920 return s.String() 6921 } 6922 6923 // Validate inspects the fields of the type to determine if they are valid. 6924 func (s *DeleteSlotTypeInput) Validate() error { 6925 invalidParams := request.ErrInvalidParams{Context: "DeleteSlotTypeInput"} 6926 if s.Name == nil { 6927 invalidParams.Add(request.NewErrParamRequired("Name")) 6928 } 6929 if s.Name != nil && len(*s.Name) < 1 { 6930 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 6931 } 6932 6933 if invalidParams.Len() > 0 { 6934 return invalidParams 6935 } 6936 return nil 6937 } 6938 6939 // SetName sets the Name field's value. 6940 func (s *DeleteSlotTypeInput) SetName(v string) *DeleteSlotTypeInput { 6941 s.Name = &v 6942 return s 6943 } 6944 6945 type DeleteSlotTypeOutput struct { 6946 _ struct{} `type:"structure" nopayload:"true"` 6947 } 6948 6949 // String returns the string representation. 6950 // 6951 // API parameter values that are decorated as "sensitive" in the API will not 6952 // be included in the string output. The member name will be present, but the 6953 // value will be replaced with "sensitive". 6954 func (s DeleteSlotTypeOutput) String() string { 6955 return awsutil.Prettify(s) 6956 } 6957 6958 // GoString returns the string representation. 6959 // 6960 // API parameter values that are decorated as "sensitive" in the API will not 6961 // be included in the string output. The member name will be present, but the 6962 // value will be replaced with "sensitive". 6963 func (s DeleteSlotTypeOutput) GoString() string { 6964 return s.String() 6965 } 6966 6967 type DeleteSlotTypeVersionInput struct { 6968 _ struct{} `type:"structure" nopayload:"true"` 6969 6970 // The name of the slot type. 6971 // 6972 // Name is a required field 6973 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 6974 6975 // The version of the slot type to delete. You cannot delete the $LATEST version 6976 // of the slot type. To delete the $LATEST version, use the DeleteSlotType operation. 6977 // 6978 // Version is a required field 6979 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 6980 } 6981 6982 // String returns the string representation. 6983 // 6984 // API parameter values that are decorated as "sensitive" in the API will not 6985 // be included in the string output. The member name will be present, but the 6986 // value will be replaced with "sensitive". 6987 func (s DeleteSlotTypeVersionInput) String() string { 6988 return awsutil.Prettify(s) 6989 } 6990 6991 // GoString returns the string representation. 6992 // 6993 // API parameter values that are decorated as "sensitive" in the API will not 6994 // be included in the string output. The member name will be present, but the 6995 // value will be replaced with "sensitive". 6996 func (s DeleteSlotTypeVersionInput) GoString() string { 6997 return s.String() 6998 } 6999 7000 // Validate inspects the fields of the type to determine if they are valid. 7001 func (s *DeleteSlotTypeVersionInput) Validate() error { 7002 invalidParams := request.ErrInvalidParams{Context: "DeleteSlotTypeVersionInput"} 7003 if s.Name == nil { 7004 invalidParams.Add(request.NewErrParamRequired("Name")) 7005 } 7006 if s.Name != nil && len(*s.Name) < 1 { 7007 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 7008 } 7009 if s.Version == nil { 7010 invalidParams.Add(request.NewErrParamRequired("Version")) 7011 } 7012 if s.Version != nil && len(*s.Version) < 1 { 7013 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 7014 } 7015 7016 if invalidParams.Len() > 0 { 7017 return invalidParams 7018 } 7019 return nil 7020 } 7021 7022 // SetName sets the Name field's value. 7023 func (s *DeleteSlotTypeVersionInput) SetName(v string) *DeleteSlotTypeVersionInput { 7024 s.Name = &v 7025 return s 7026 } 7027 7028 // SetVersion sets the Version field's value. 7029 func (s *DeleteSlotTypeVersionInput) SetVersion(v string) *DeleteSlotTypeVersionInput { 7030 s.Version = &v 7031 return s 7032 } 7033 7034 type DeleteSlotTypeVersionOutput struct { 7035 _ struct{} `type:"structure" nopayload:"true"` 7036 } 7037 7038 // String returns the string representation. 7039 // 7040 // API parameter values that are decorated as "sensitive" in the API will not 7041 // be included in the string output. The member name will be present, but the 7042 // value will be replaced with "sensitive". 7043 func (s DeleteSlotTypeVersionOutput) String() string { 7044 return awsutil.Prettify(s) 7045 } 7046 7047 // GoString returns the string representation. 7048 // 7049 // API parameter values that are decorated as "sensitive" in the API will not 7050 // be included in the string output. The member name will be present, but the 7051 // value will be replaced with "sensitive". 7052 func (s DeleteSlotTypeVersionOutput) GoString() string { 7053 return s.String() 7054 } 7055 7056 type DeleteUtterancesInput struct { 7057 _ struct{} `type:"structure" nopayload:"true"` 7058 7059 // The name of the bot that stored the utterances. 7060 // 7061 // BotName is a required field 7062 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 7063 7064 // The unique identifier for the user that made the utterances. This is the 7065 // user ID that was sent in the PostContent (http://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 7066 // or PostText (http://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 7067 // operation request that contained the utterance. 7068 // 7069 // UserId is a required field 7070 UserId *string `location:"uri" locationName:"userId" min:"2" type:"string" required:"true"` 7071 } 7072 7073 // String returns the string representation. 7074 // 7075 // API parameter values that are decorated as "sensitive" in the API will not 7076 // be included in the string output. The member name will be present, but the 7077 // value will be replaced with "sensitive". 7078 func (s DeleteUtterancesInput) String() string { 7079 return awsutil.Prettify(s) 7080 } 7081 7082 // GoString returns the string representation. 7083 // 7084 // API parameter values that are decorated as "sensitive" in the API will not 7085 // be included in the string output. The member name will be present, but the 7086 // value will be replaced with "sensitive". 7087 func (s DeleteUtterancesInput) GoString() string { 7088 return s.String() 7089 } 7090 7091 // Validate inspects the fields of the type to determine if they are valid. 7092 func (s *DeleteUtterancesInput) Validate() error { 7093 invalidParams := request.ErrInvalidParams{Context: "DeleteUtterancesInput"} 7094 if s.BotName == nil { 7095 invalidParams.Add(request.NewErrParamRequired("BotName")) 7096 } 7097 if s.BotName != nil && len(*s.BotName) < 2 { 7098 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 7099 } 7100 if s.UserId == nil { 7101 invalidParams.Add(request.NewErrParamRequired("UserId")) 7102 } 7103 if s.UserId != nil && len(*s.UserId) < 2 { 7104 invalidParams.Add(request.NewErrParamMinLen("UserId", 2)) 7105 } 7106 7107 if invalidParams.Len() > 0 { 7108 return invalidParams 7109 } 7110 return nil 7111 } 7112 7113 // SetBotName sets the BotName field's value. 7114 func (s *DeleteUtterancesInput) SetBotName(v string) *DeleteUtterancesInput { 7115 s.BotName = &v 7116 return s 7117 } 7118 7119 // SetUserId sets the UserId field's value. 7120 func (s *DeleteUtterancesInput) SetUserId(v string) *DeleteUtterancesInput { 7121 s.UserId = &v 7122 return s 7123 } 7124 7125 type DeleteUtterancesOutput struct { 7126 _ struct{} `type:"structure" nopayload:"true"` 7127 } 7128 7129 // String returns the string representation. 7130 // 7131 // API parameter values that are decorated as "sensitive" in the API will not 7132 // be included in the string output. The member name will be present, but the 7133 // value will be replaced with "sensitive". 7134 func (s DeleteUtterancesOutput) String() string { 7135 return awsutil.Prettify(s) 7136 } 7137 7138 // GoString returns the string representation. 7139 // 7140 // API parameter values that are decorated as "sensitive" in the API will not 7141 // be included in the string output. The member name will be present, but the 7142 // value will be replaced with "sensitive". 7143 func (s DeleteUtterancesOutput) GoString() string { 7144 return s.String() 7145 } 7146 7147 // Each slot type can have a set of values. Each enumeration value represents 7148 // a value the slot type can take. 7149 // 7150 // For example, a pizza ordering bot could have a slot type that specifies the 7151 // type of crust that the pizza should have. The slot type could include the 7152 // values 7153 // 7154 // * thick 7155 // 7156 // * thin 7157 // 7158 // * stuffed 7159 type EnumerationValue struct { 7160 _ struct{} `type:"structure"` 7161 7162 // Additional values related to the slot type value. 7163 Synonyms []*string `locationName:"synonyms" type:"list"` 7164 7165 // The value of the slot type. 7166 // 7167 // Value is a required field 7168 Value *string `locationName:"value" min:"1" type:"string" required:"true"` 7169 } 7170 7171 // String returns the string representation. 7172 // 7173 // API parameter values that are decorated as "sensitive" in the API will not 7174 // be included in the string output. The member name will be present, but the 7175 // value will be replaced with "sensitive". 7176 func (s EnumerationValue) String() string { 7177 return awsutil.Prettify(s) 7178 } 7179 7180 // GoString returns the string representation. 7181 // 7182 // API parameter values that are decorated as "sensitive" in the API will not 7183 // be included in the string output. The member name will be present, but the 7184 // value will be replaced with "sensitive". 7185 func (s EnumerationValue) GoString() string { 7186 return s.String() 7187 } 7188 7189 // Validate inspects the fields of the type to determine if they are valid. 7190 func (s *EnumerationValue) Validate() error { 7191 invalidParams := request.ErrInvalidParams{Context: "EnumerationValue"} 7192 if s.Value == nil { 7193 invalidParams.Add(request.NewErrParamRequired("Value")) 7194 } 7195 if s.Value != nil && len(*s.Value) < 1 { 7196 invalidParams.Add(request.NewErrParamMinLen("Value", 1)) 7197 } 7198 7199 if invalidParams.Len() > 0 { 7200 return invalidParams 7201 } 7202 return nil 7203 } 7204 7205 // SetSynonyms sets the Synonyms field's value. 7206 func (s *EnumerationValue) SetSynonyms(v []*string) *EnumerationValue { 7207 s.Synonyms = v 7208 return s 7209 } 7210 7211 // SetValue sets the Value field's value. 7212 func (s *EnumerationValue) SetValue(v string) *EnumerationValue { 7213 s.Value = &v 7214 return s 7215 } 7216 7217 // A prompt for additional activity after an intent is fulfilled. For example, 7218 // after the OrderPizza intent is fulfilled, you might prompt the user to find 7219 // out whether the user wants to order drinks. 7220 type FollowUpPrompt struct { 7221 _ struct{} `type:"structure"` 7222 7223 // Prompts for information from the user. 7224 // 7225 // Prompt is a required field 7226 Prompt *Prompt `locationName:"prompt" type:"structure" required:"true"` 7227 7228 // If the user answers "no" to the question defined in the prompt field, Amazon 7229 // Lex responds with this statement to acknowledge that the intent was canceled. 7230 // 7231 // RejectionStatement is a required field 7232 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure" required:"true"` 7233 } 7234 7235 // String returns the string representation. 7236 // 7237 // API parameter values that are decorated as "sensitive" in the API will not 7238 // be included in the string output. The member name will be present, but the 7239 // value will be replaced with "sensitive". 7240 func (s FollowUpPrompt) String() string { 7241 return awsutil.Prettify(s) 7242 } 7243 7244 // GoString returns the string representation. 7245 // 7246 // API parameter values that are decorated as "sensitive" in the API will not 7247 // be included in the string output. The member name will be present, but the 7248 // value will be replaced with "sensitive". 7249 func (s FollowUpPrompt) GoString() string { 7250 return s.String() 7251 } 7252 7253 // Validate inspects the fields of the type to determine if they are valid. 7254 func (s *FollowUpPrompt) Validate() error { 7255 invalidParams := request.ErrInvalidParams{Context: "FollowUpPrompt"} 7256 if s.Prompt == nil { 7257 invalidParams.Add(request.NewErrParamRequired("Prompt")) 7258 } 7259 if s.RejectionStatement == nil { 7260 invalidParams.Add(request.NewErrParamRequired("RejectionStatement")) 7261 } 7262 if s.Prompt != nil { 7263 if err := s.Prompt.Validate(); err != nil { 7264 invalidParams.AddNested("Prompt", err.(request.ErrInvalidParams)) 7265 } 7266 } 7267 if s.RejectionStatement != nil { 7268 if err := s.RejectionStatement.Validate(); err != nil { 7269 invalidParams.AddNested("RejectionStatement", err.(request.ErrInvalidParams)) 7270 } 7271 } 7272 7273 if invalidParams.Len() > 0 { 7274 return invalidParams 7275 } 7276 return nil 7277 } 7278 7279 // SetPrompt sets the Prompt field's value. 7280 func (s *FollowUpPrompt) SetPrompt(v *Prompt) *FollowUpPrompt { 7281 s.Prompt = v 7282 return s 7283 } 7284 7285 // SetRejectionStatement sets the RejectionStatement field's value. 7286 func (s *FollowUpPrompt) SetRejectionStatement(v *Statement) *FollowUpPrompt { 7287 s.RejectionStatement = v 7288 return s 7289 } 7290 7291 // Describes how the intent is fulfilled after the user provides all of the 7292 // information required for the intent. You can provide a Lambda function to 7293 // process the intent, or you can return the intent information to the client 7294 // application. We recommend that you use a Lambda function so that the relevant 7295 // logic lives in the Cloud and limit the client-side code primarily to presentation. 7296 // If you need to update the logic, you only update the Lambda function; you 7297 // don't need to upgrade your client application. 7298 // 7299 // Consider the following examples: 7300 // 7301 // * In a pizza ordering application, after the user provides all of the 7302 // information for placing an order, you use a Lambda function to place an 7303 // order with a pizzeria. 7304 // 7305 // * In a gaming application, when a user says "pick up a rock," this information 7306 // must go back to the client application so that it can perform the operation 7307 // and update the graphics. In this case, you want Amazon Lex to return the 7308 // intent data to the client. 7309 type FulfillmentActivity struct { 7310 _ struct{} `type:"structure"` 7311 7312 // A description of the Lambda function that is run to fulfill the intent. 7313 CodeHook *CodeHook `locationName:"codeHook" type:"structure"` 7314 7315 // How the intent should be fulfilled, either by running a Lambda function or 7316 // by returning the slot data to the client application. 7317 // 7318 // Type is a required field 7319 Type *string `locationName:"type" type:"string" required:"true" enum:"FulfillmentActivityType"` 7320 } 7321 7322 // String returns the string representation. 7323 // 7324 // API parameter values that are decorated as "sensitive" in the API will not 7325 // be included in the string output. The member name will be present, but the 7326 // value will be replaced with "sensitive". 7327 func (s FulfillmentActivity) String() string { 7328 return awsutil.Prettify(s) 7329 } 7330 7331 // GoString returns the string representation. 7332 // 7333 // API parameter values that are decorated as "sensitive" in the API will not 7334 // be included in the string output. The member name will be present, but the 7335 // value will be replaced with "sensitive". 7336 func (s FulfillmentActivity) GoString() string { 7337 return s.String() 7338 } 7339 7340 // Validate inspects the fields of the type to determine if they are valid. 7341 func (s *FulfillmentActivity) Validate() error { 7342 invalidParams := request.ErrInvalidParams{Context: "FulfillmentActivity"} 7343 if s.Type == nil { 7344 invalidParams.Add(request.NewErrParamRequired("Type")) 7345 } 7346 if s.CodeHook != nil { 7347 if err := s.CodeHook.Validate(); err != nil { 7348 invalidParams.AddNested("CodeHook", err.(request.ErrInvalidParams)) 7349 } 7350 } 7351 7352 if invalidParams.Len() > 0 { 7353 return invalidParams 7354 } 7355 return nil 7356 } 7357 7358 // SetCodeHook sets the CodeHook field's value. 7359 func (s *FulfillmentActivity) SetCodeHook(v *CodeHook) *FulfillmentActivity { 7360 s.CodeHook = v 7361 return s 7362 } 7363 7364 // SetType sets the Type field's value. 7365 func (s *FulfillmentActivity) SetType(v string) *FulfillmentActivity { 7366 s.Type = &v 7367 return s 7368 } 7369 7370 type GetBotAliasInput struct { 7371 _ struct{} `type:"structure" nopayload:"true"` 7372 7373 // The name of the bot. 7374 // 7375 // BotName is a required field 7376 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 7377 7378 // The name of the bot alias. The name is case sensitive. 7379 // 7380 // Name is a required field 7381 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 7382 } 7383 7384 // String returns the string representation. 7385 // 7386 // API parameter values that are decorated as "sensitive" in the API will not 7387 // be included in the string output. The member name will be present, but the 7388 // value will be replaced with "sensitive". 7389 func (s GetBotAliasInput) String() string { 7390 return awsutil.Prettify(s) 7391 } 7392 7393 // GoString returns the string representation. 7394 // 7395 // API parameter values that are decorated as "sensitive" in the API will not 7396 // be included in the string output. The member name will be present, but the 7397 // value will be replaced with "sensitive". 7398 func (s GetBotAliasInput) GoString() string { 7399 return s.String() 7400 } 7401 7402 // Validate inspects the fields of the type to determine if they are valid. 7403 func (s *GetBotAliasInput) Validate() error { 7404 invalidParams := request.ErrInvalidParams{Context: "GetBotAliasInput"} 7405 if s.BotName == nil { 7406 invalidParams.Add(request.NewErrParamRequired("BotName")) 7407 } 7408 if s.BotName != nil && len(*s.BotName) < 2 { 7409 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 7410 } 7411 if s.Name == nil { 7412 invalidParams.Add(request.NewErrParamRequired("Name")) 7413 } 7414 if s.Name != nil && len(*s.Name) < 1 { 7415 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 7416 } 7417 7418 if invalidParams.Len() > 0 { 7419 return invalidParams 7420 } 7421 return nil 7422 } 7423 7424 // SetBotName sets the BotName field's value. 7425 func (s *GetBotAliasInput) SetBotName(v string) *GetBotAliasInput { 7426 s.BotName = &v 7427 return s 7428 } 7429 7430 // SetName sets the Name field's value. 7431 func (s *GetBotAliasInput) SetName(v string) *GetBotAliasInput { 7432 s.Name = &v 7433 return s 7434 } 7435 7436 type GetBotAliasOutput struct { 7437 _ struct{} `type:"structure"` 7438 7439 // The name of the bot that the alias points to. 7440 BotName *string `locationName:"botName" min:"2" type:"string"` 7441 7442 // The version of the bot that the alias points to. 7443 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 7444 7445 // Checksum of the bot alias. 7446 Checksum *string `locationName:"checksum" type:"string"` 7447 7448 // The settings that determine how Amazon Lex uses conversation logs for the 7449 // alias. 7450 ConversationLogs *ConversationLogsResponse `locationName:"conversationLogs" type:"structure"` 7451 7452 // The date that the bot alias was created. 7453 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 7454 7455 // A description of the bot alias. 7456 Description *string `locationName:"description" type:"string"` 7457 7458 // The date that the bot alias was updated. When you create a resource, the 7459 // creation date and the last updated date are the same. 7460 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 7461 7462 // The name of the bot alias. 7463 Name *string `locationName:"name" min:"1" type:"string"` 7464 } 7465 7466 // String returns the string representation. 7467 // 7468 // API parameter values that are decorated as "sensitive" in the API will not 7469 // be included in the string output. The member name will be present, but the 7470 // value will be replaced with "sensitive". 7471 func (s GetBotAliasOutput) String() string { 7472 return awsutil.Prettify(s) 7473 } 7474 7475 // GoString returns the string representation. 7476 // 7477 // API parameter values that are decorated as "sensitive" in the API will not 7478 // be included in the string output. The member name will be present, but the 7479 // value will be replaced with "sensitive". 7480 func (s GetBotAliasOutput) GoString() string { 7481 return s.String() 7482 } 7483 7484 // SetBotName sets the BotName field's value. 7485 func (s *GetBotAliasOutput) SetBotName(v string) *GetBotAliasOutput { 7486 s.BotName = &v 7487 return s 7488 } 7489 7490 // SetBotVersion sets the BotVersion field's value. 7491 func (s *GetBotAliasOutput) SetBotVersion(v string) *GetBotAliasOutput { 7492 s.BotVersion = &v 7493 return s 7494 } 7495 7496 // SetChecksum sets the Checksum field's value. 7497 func (s *GetBotAliasOutput) SetChecksum(v string) *GetBotAliasOutput { 7498 s.Checksum = &v 7499 return s 7500 } 7501 7502 // SetConversationLogs sets the ConversationLogs field's value. 7503 func (s *GetBotAliasOutput) SetConversationLogs(v *ConversationLogsResponse) *GetBotAliasOutput { 7504 s.ConversationLogs = v 7505 return s 7506 } 7507 7508 // SetCreatedDate sets the CreatedDate field's value. 7509 func (s *GetBotAliasOutput) SetCreatedDate(v time.Time) *GetBotAliasOutput { 7510 s.CreatedDate = &v 7511 return s 7512 } 7513 7514 // SetDescription sets the Description field's value. 7515 func (s *GetBotAliasOutput) SetDescription(v string) *GetBotAliasOutput { 7516 s.Description = &v 7517 return s 7518 } 7519 7520 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 7521 func (s *GetBotAliasOutput) SetLastUpdatedDate(v time.Time) *GetBotAliasOutput { 7522 s.LastUpdatedDate = &v 7523 return s 7524 } 7525 7526 // SetName sets the Name field's value. 7527 func (s *GetBotAliasOutput) SetName(v string) *GetBotAliasOutput { 7528 s.Name = &v 7529 return s 7530 } 7531 7532 type GetBotAliasesInput struct { 7533 _ struct{} `type:"structure" nopayload:"true"` 7534 7535 // The name of the bot. 7536 // 7537 // BotName is a required field 7538 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 7539 7540 // The maximum number of aliases to return in the response. The default is 50. . 7541 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7542 7543 // Substring to match in bot alias names. An alias will be returned if any part 7544 // of its name matches the substring. For example, "xyz" matches both "xyzabc" 7545 // and "abcxyz." 7546 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 7547 7548 // A pagination token for fetching the next page of aliases. If the response 7549 // to this call is truncated, Amazon Lex returns a pagination token in the response. 7550 // To fetch the next page of aliases, specify the pagination token in the next 7551 // request. 7552 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7553 } 7554 7555 // String returns the string representation. 7556 // 7557 // API parameter values that are decorated as "sensitive" in the API will not 7558 // be included in the string output. The member name will be present, but the 7559 // value will be replaced with "sensitive". 7560 func (s GetBotAliasesInput) String() string { 7561 return awsutil.Prettify(s) 7562 } 7563 7564 // GoString returns the string representation. 7565 // 7566 // API parameter values that are decorated as "sensitive" in the API will not 7567 // be included in the string output. The member name will be present, but the 7568 // value will be replaced with "sensitive". 7569 func (s GetBotAliasesInput) GoString() string { 7570 return s.String() 7571 } 7572 7573 // Validate inspects the fields of the type to determine if they are valid. 7574 func (s *GetBotAliasesInput) Validate() error { 7575 invalidParams := request.ErrInvalidParams{Context: "GetBotAliasesInput"} 7576 if s.BotName == nil { 7577 invalidParams.Add(request.NewErrParamRequired("BotName")) 7578 } 7579 if s.BotName != nil && len(*s.BotName) < 2 { 7580 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 7581 } 7582 if s.MaxResults != nil && *s.MaxResults < 1 { 7583 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7584 } 7585 if s.NameContains != nil && len(*s.NameContains) < 1 { 7586 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 7587 } 7588 7589 if invalidParams.Len() > 0 { 7590 return invalidParams 7591 } 7592 return nil 7593 } 7594 7595 // SetBotName sets the BotName field's value. 7596 func (s *GetBotAliasesInput) SetBotName(v string) *GetBotAliasesInput { 7597 s.BotName = &v 7598 return s 7599 } 7600 7601 // SetMaxResults sets the MaxResults field's value. 7602 func (s *GetBotAliasesInput) SetMaxResults(v int64) *GetBotAliasesInput { 7603 s.MaxResults = &v 7604 return s 7605 } 7606 7607 // SetNameContains sets the NameContains field's value. 7608 func (s *GetBotAliasesInput) SetNameContains(v string) *GetBotAliasesInput { 7609 s.NameContains = &v 7610 return s 7611 } 7612 7613 // SetNextToken sets the NextToken field's value. 7614 func (s *GetBotAliasesInput) SetNextToken(v string) *GetBotAliasesInput { 7615 s.NextToken = &v 7616 return s 7617 } 7618 7619 type GetBotAliasesOutput struct { 7620 _ struct{} `type:"structure"` 7621 7622 // An array of BotAliasMetadata objects, each describing a bot alias. 7623 BotAliases []*BotAliasMetadata `type:"list"` 7624 7625 // A pagination token for fetching next page of aliases. If the response to 7626 // this call is truncated, Amazon Lex returns a pagination token in the response. 7627 // To fetch the next page of aliases, specify the pagination token in the next 7628 // request. 7629 NextToken *string `locationName:"nextToken" type:"string"` 7630 } 7631 7632 // String returns the string representation. 7633 // 7634 // API parameter values that are decorated as "sensitive" in the API will not 7635 // be included in the string output. The member name will be present, but the 7636 // value will be replaced with "sensitive". 7637 func (s GetBotAliasesOutput) String() string { 7638 return awsutil.Prettify(s) 7639 } 7640 7641 // GoString returns the string representation. 7642 // 7643 // API parameter values that are decorated as "sensitive" in the API will not 7644 // be included in the string output. The member name will be present, but the 7645 // value will be replaced with "sensitive". 7646 func (s GetBotAliasesOutput) GoString() string { 7647 return s.String() 7648 } 7649 7650 // SetBotAliases sets the BotAliases field's value. 7651 func (s *GetBotAliasesOutput) SetBotAliases(v []*BotAliasMetadata) *GetBotAliasesOutput { 7652 s.BotAliases = v 7653 return s 7654 } 7655 7656 // SetNextToken sets the NextToken field's value. 7657 func (s *GetBotAliasesOutput) SetNextToken(v string) *GetBotAliasesOutput { 7658 s.NextToken = &v 7659 return s 7660 } 7661 7662 type GetBotChannelAssociationInput struct { 7663 _ struct{} `type:"structure" nopayload:"true"` 7664 7665 // An alias pointing to the specific version of the Amazon Lex bot to which 7666 // this association is being made. 7667 // 7668 // BotAlias is a required field 7669 BotAlias *string `location:"uri" locationName:"aliasName" min:"1" type:"string" required:"true"` 7670 7671 // The name of the Amazon Lex bot. 7672 // 7673 // BotName is a required field 7674 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 7675 7676 // The name of the association between the bot and the channel. The name is 7677 // case sensitive. 7678 // 7679 // Name is a required field 7680 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 7681 } 7682 7683 // String returns the string representation. 7684 // 7685 // API parameter values that are decorated as "sensitive" in the API will not 7686 // be included in the string output. The member name will be present, but the 7687 // value will be replaced with "sensitive". 7688 func (s GetBotChannelAssociationInput) String() string { 7689 return awsutil.Prettify(s) 7690 } 7691 7692 // GoString returns the string representation. 7693 // 7694 // API parameter values that are decorated as "sensitive" in the API will not 7695 // be included in the string output. The member name will be present, but the 7696 // value will be replaced with "sensitive". 7697 func (s GetBotChannelAssociationInput) GoString() string { 7698 return s.String() 7699 } 7700 7701 // Validate inspects the fields of the type to determine if they are valid. 7702 func (s *GetBotChannelAssociationInput) Validate() error { 7703 invalidParams := request.ErrInvalidParams{Context: "GetBotChannelAssociationInput"} 7704 if s.BotAlias == nil { 7705 invalidParams.Add(request.NewErrParamRequired("BotAlias")) 7706 } 7707 if s.BotAlias != nil && len(*s.BotAlias) < 1 { 7708 invalidParams.Add(request.NewErrParamMinLen("BotAlias", 1)) 7709 } 7710 if s.BotName == nil { 7711 invalidParams.Add(request.NewErrParamRequired("BotName")) 7712 } 7713 if s.BotName != nil && len(*s.BotName) < 2 { 7714 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 7715 } 7716 if s.Name == nil { 7717 invalidParams.Add(request.NewErrParamRequired("Name")) 7718 } 7719 if s.Name != nil && len(*s.Name) < 1 { 7720 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 7721 } 7722 7723 if invalidParams.Len() > 0 { 7724 return invalidParams 7725 } 7726 return nil 7727 } 7728 7729 // SetBotAlias sets the BotAlias field's value. 7730 func (s *GetBotChannelAssociationInput) SetBotAlias(v string) *GetBotChannelAssociationInput { 7731 s.BotAlias = &v 7732 return s 7733 } 7734 7735 // SetBotName sets the BotName field's value. 7736 func (s *GetBotChannelAssociationInput) SetBotName(v string) *GetBotChannelAssociationInput { 7737 s.BotName = &v 7738 return s 7739 } 7740 7741 // SetName sets the Name field's value. 7742 func (s *GetBotChannelAssociationInput) SetName(v string) *GetBotChannelAssociationInput { 7743 s.Name = &v 7744 return s 7745 } 7746 7747 type GetBotChannelAssociationOutput struct { 7748 _ struct{} `type:"structure"` 7749 7750 // An alias pointing to the specific version of the Amazon Lex bot to which 7751 // this association is being made. 7752 BotAlias *string `locationName:"botAlias" min:"1" type:"string"` 7753 7754 // Provides information that the messaging platform needs to communicate with 7755 // the Amazon Lex bot. 7756 // 7757 // BotConfiguration is a sensitive parameter and its value will be 7758 // replaced with "sensitive" in string returned by GetBotChannelAssociationOutput's 7759 // String and GoString methods. 7760 BotConfiguration map[string]*string `locationName:"botConfiguration" min:"1" type:"map" sensitive:"true"` 7761 7762 // The name of the Amazon Lex bot. 7763 BotName *string `locationName:"botName" min:"2" type:"string"` 7764 7765 // The date that the association between the bot and the channel was created. 7766 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 7767 7768 // A description of the association between the bot and the channel. 7769 Description *string `locationName:"description" type:"string"` 7770 7771 // If status is FAILED, Amazon Lex provides the reason that it failed to create 7772 // the association. 7773 FailureReason *string `locationName:"failureReason" type:"string"` 7774 7775 // The name of the association between the bot and the channel. 7776 Name *string `locationName:"name" min:"1" type:"string"` 7777 7778 // The status of the bot channel. 7779 // 7780 // * CREATED - The channel has been created and is ready for use. 7781 // 7782 // * IN_PROGRESS - Channel creation is in progress. 7783 // 7784 // * FAILED - There was an error creating the channel. For information about 7785 // the reason for the failure, see the failureReason field. 7786 Status *string `locationName:"status" type:"string" enum:"ChannelStatus"` 7787 7788 // The type of the messaging platform. 7789 Type *string `locationName:"type" type:"string" enum:"ChannelType"` 7790 } 7791 7792 // String returns the string representation. 7793 // 7794 // API parameter values that are decorated as "sensitive" in the API will not 7795 // be included in the string output. The member name will be present, but the 7796 // value will be replaced with "sensitive". 7797 func (s GetBotChannelAssociationOutput) String() string { 7798 return awsutil.Prettify(s) 7799 } 7800 7801 // GoString returns the string representation. 7802 // 7803 // API parameter values that are decorated as "sensitive" in the API will not 7804 // be included in the string output. The member name will be present, but the 7805 // value will be replaced with "sensitive". 7806 func (s GetBotChannelAssociationOutput) GoString() string { 7807 return s.String() 7808 } 7809 7810 // SetBotAlias sets the BotAlias field's value. 7811 func (s *GetBotChannelAssociationOutput) SetBotAlias(v string) *GetBotChannelAssociationOutput { 7812 s.BotAlias = &v 7813 return s 7814 } 7815 7816 // SetBotConfiguration sets the BotConfiguration field's value. 7817 func (s *GetBotChannelAssociationOutput) SetBotConfiguration(v map[string]*string) *GetBotChannelAssociationOutput { 7818 s.BotConfiguration = v 7819 return s 7820 } 7821 7822 // SetBotName sets the BotName field's value. 7823 func (s *GetBotChannelAssociationOutput) SetBotName(v string) *GetBotChannelAssociationOutput { 7824 s.BotName = &v 7825 return s 7826 } 7827 7828 // SetCreatedDate sets the CreatedDate field's value. 7829 func (s *GetBotChannelAssociationOutput) SetCreatedDate(v time.Time) *GetBotChannelAssociationOutput { 7830 s.CreatedDate = &v 7831 return s 7832 } 7833 7834 // SetDescription sets the Description field's value. 7835 func (s *GetBotChannelAssociationOutput) SetDescription(v string) *GetBotChannelAssociationOutput { 7836 s.Description = &v 7837 return s 7838 } 7839 7840 // SetFailureReason sets the FailureReason field's value. 7841 func (s *GetBotChannelAssociationOutput) SetFailureReason(v string) *GetBotChannelAssociationOutput { 7842 s.FailureReason = &v 7843 return s 7844 } 7845 7846 // SetName sets the Name field's value. 7847 func (s *GetBotChannelAssociationOutput) SetName(v string) *GetBotChannelAssociationOutput { 7848 s.Name = &v 7849 return s 7850 } 7851 7852 // SetStatus sets the Status field's value. 7853 func (s *GetBotChannelAssociationOutput) SetStatus(v string) *GetBotChannelAssociationOutput { 7854 s.Status = &v 7855 return s 7856 } 7857 7858 // SetType sets the Type field's value. 7859 func (s *GetBotChannelAssociationOutput) SetType(v string) *GetBotChannelAssociationOutput { 7860 s.Type = &v 7861 return s 7862 } 7863 7864 type GetBotChannelAssociationsInput struct { 7865 _ struct{} `type:"structure" nopayload:"true"` 7866 7867 // An alias pointing to the specific version of the Amazon Lex bot to which 7868 // this association is being made. 7869 // 7870 // BotAlias is a required field 7871 BotAlias *string `location:"uri" locationName:"aliasName" min:"1" type:"string" required:"true"` 7872 7873 // The name of the Amazon Lex bot in the association. 7874 // 7875 // BotName is a required field 7876 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 7877 7878 // The maximum number of associations to return in the response. The default 7879 // is 50. 7880 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 7881 7882 // Substring to match in channel association names. An association will be returned 7883 // if any part of its name matches the substring. For example, "xyz" matches 7884 // both "xyzabc" and "abcxyz." To return all bot channel associations, use a 7885 // hyphen ("-") as the nameContains parameter. 7886 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 7887 7888 // A pagination token for fetching the next page of associations. If the response 7889 // to this call is truncated, Amazon Lex returns a pagination token in the response. 7890 // To fetch the next page of associations, specify the pagination token in the 7891 // next request. 7892 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 7893 } 7894 7895 // String returns the string representation. 7896 // 7897 // API parameter values that are decorated as "sensitive" in the API will not 7898 // be included in the string output. The member name will be present, but the 7899 // value will be replaced with "sensitive". 7900 func (s GetBotChannelAssociationsInput) String() string { 7901 return awsutil.Prettify(s) 7902 } 7903 7904 // GoString returns the string representation. 7905 // 7906 // API parameter values that are decorated as "sensitive" in the API will not 7907 // be included in the string output. The member name will be present, but the 7908 // value will be replaced with "sensitive". 7909 func (s GetBotChannelAssociationsInput) GoString() string { 7910 return s.String() 7911 } 7912 7913 // Validate inspects the fields of the type to determine if they are valid. 7914 func (s *GetBotChannelAssociationsInput) Validate() error { 7915 invalidParams := request.ErrInvalidParams{Context: "GetBotChannelAssociationsInput"} 7916 if s.BotAlias == nil { 7917 invalidParams.Add(request.NewErrParamRequired("BotAlias")) 7918 } 7919 if s.BotAlias != nil && len(*s.BotAlias) < 1 { 7920 invalidParams.Add(request.NewErrParamMinLen("BotAlias", 1)) 7921 } 7922 if s.BotName == nil { 7923 invalidParams.Add(request.NewErrParamRequired("BotName")) 7924 } 7925 if s.BotName != nil && len(*s.BotName) < 2 { 7926 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 7927 } 7928 if s.MaxResults != nil && *s.MaxResults < 1 { 7929 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7930 } 7931 if s.NameContains != nil && len(*s.NameContains) < 1 { 7932 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 7933 } 7934 7935 if invalidParams.Len() > 0 { 7936 return invalidParams 7937 } 7938 return nil 7939 } 7940 7941 // SetBotAlias sets the BotAlias field's value. 7942 func (s *GetBotChannelAssociationsInput) SetBotAlias(v string) *GetBotChannelAssociationsInput { 7943 s.BotAlias = &v 7944 return s 7945 } 7946 7947 // SetBotName sets the BotName field's value. 7948 func (s *GetBotChannelAssociationsInput) SetBotName(v string) *GetBotChannelAssociationsInput { 7949 s.BotName = &v 7950 return s 7951 } 7952 7953 // SetMaxResults sets the MaxResults field's value. 7954 func (s *GetBotChannelAssociationsInput) SetMaxResults(v int64) *GetBotChannelAssociationsInput { 7955 s.MaxResults = &v 7956 return s 7957 } 7958 7959 // SetNameContains sets the NameContains field's value. 7960 func (s *GetBotChannelAssociationsInput) SetNameContains(v string) *GetBotChannelAssociationsInput { 7961 s.NameContains = &v 7962 return s 7963 } 7964 7965 // SetNextToken sets the NextToken field's value. 7966 func (s *GetBotChannelAssociationsInput) SetNextToken(v string) *GetBotChannelAssociationsInput { 7967 s.NextToken = &v 7968 return s 7969 } 7970 7971 type GetBotChannelAssociationsOutput struct { 7972 _ struct{} `type:"structure"` 7973 7974 // An array of objects, one for each association, that provides information 7975 // about the Amazon Lex bot and its association with the channel. 7976 BotChannelAssociations []*BotChannelAssociation `locationName:"botChannelAssociations" type:"list"` 7977 7978 // A pagination token that fetches the next page of associations. If the response 7979 // to this call is truncated, Amazon Lex returns a pagination token in the response. 7980 // To fetch the next page of associations, specify the pagination token in the 7981 // next request. 7982 NextToken *string `locationName:"nextToken" type:"string"` 7983 } 7984 7985 // String returns the string representation. 7986 // 7987 // API parameter values that are decorated as "sensitive" in the API will not 7988 // be included in the string output. The member name will be present, but the 7989 // value will be replaced with "sensitive". 7990 func (s GetBotChannelAssociationsOutput) String() string { 7991 return awsutil.Prettify(s) 7992 } 7993 7994 // GoString returns the string representation. 7995 // 7996 // API parameter values that are decorated as "sensitive" in the API will not 7997 // be included in the string output. The member name will be present, but the 7998 // value will be replaced with "sensitive". 7999 func (s GetBotChannelAssociationsOutput) GoString() string { 8000 return s.String() 8001 } 8002 8003 // SetBotChannelAssociations sets the BotChannelAssociations field's value. 8004 func (s *GetBotChannelAssociationsOutput) SetBotChannelAssociations(v []*BotChannelAssociation) *GetBotChannelAssociationsOutput { 8005 s.BotChannelAssociations = v 8006 return s 8007 } 8008 8009 // SetNextToken sets the NextToken field's value. 8010 func (s *GetBotChannelAssociationsOutput) SetNextToken(v string) *GetBotChannelAssociationsOutput { 8011 s.NextToken = &v 8012 return s 8013 } 8014 8015 type GetBotInput struct { 8016 _ struct{} `type:"structure" nopayload:"true"` 8017 8018 // The name of the bot. The name is case sensitive. 8019 // 8020 // Name is a required field 8021 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 8022 8023 // The version or alias of the bot. 8024 // 8025 // VersionOrAlias is a required field 8026 VersionOrAlias *string `location:"uri" locationName:"versionoralias" type:"string" required:"true"` 8027 } 8028 8029 // String returns the string representation. 8030 // 8031 // API parameter values that are decorated as "sensitive" in the API will not 8032 // be included in the string output. The member name will be present, but the 8033 // value will be replaced with "sensitive". 8034 func (s GetBotInput) String() string { 8035 return awsutil.Prettify(s) 8036 } 8037 8038 // GoString returns the string representation. 8039 // 8040 // API parameter values that are decorated as "sensitive" in the API will not 8041 // be included in the string output. The member name will be present, but the 8042 // value will be replaced with "sensitive". 8043 func (s GetBotInput) GoString() string { 8044 return s.String() 8045 } 8046 8047 // Validate inspects the fields of the type to determine if they are valid. 8048 func (s *GetBotInput) Validate() error { 8049 invalidParams := request.ErrInvalidParams{Context: "GetBotInput"} 8050 if s.Name == nil { 8051 invalidParams.Add(request.NewErrParamRequired("Name")) 8052 } 8053 if s.Name != nil && len(*s.Name) < 2 { 8054 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 8055 } 8056 if s.VersionOrAlias == nil { 8057 invalidParams.Add(request.NewErrParamRequired("VersionOrAlias")) 8058 } 8059 if s.VersionOrAlias != nil && len(*s.VersionOrAlias) < 1 { 8060 invalidParams.Add(request.NewErrParamMinLen("VersionOrAlias", 1)) 8061 } 8062 8063 if invalidParams.Len() > 0 { 8064 return invalidParams 8065 } 8066 return nil 8067 } 8068 8069 // SetName sets the Name field's value. 8070 func (s *GetBotInput) SetName(v string) *GetBotInput { 8071 s.Name = &v 8072 return s 8073 } 8074 8075 // SetVersionOrAlias sets the VersionOrAlias field's value. 8076 func (s *GetBotInput) SetVersionOrAlias(v string) *GetBotInput { 8077 s.VersionOrAlias = &v 8078 return s 8079 } 8080 8081 type GetBotOutput struct { 8082 _ struct{} `type:"structure"` 8083 8084 // The message that Amazon Lex returns when the user elects to end the conversation 8085 // without completing it. For more information, see PutBot. 8086 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 8087 8088 // Checksum of the bot used to identify a specific revision of the bot's $LATEST 8089 // version. 8090 Checksum *string `locationName:"checksum" type:"string"` 8091 8092 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 8093 // you must specify whether your use of Amazon Lex is related to a website, 8094 // program, or other application that is directed or targeted, in whole or in 8095 // part, to children under age 13 and subject to the Children's Online Privacy 8096 // Protection Act (COPPA) by specifying true or false in the childDirected field. 8097 // By specifying true in the childDirected field, you confirm that your use 8098 // of Amazon Lex is related to a website, program, or other application that 8099 // is directed or targeted, in whole or in part, to children under age 13 and 8100 // subject to COPPA. By specifying false in the childDirected field, you confirm 8101 // that your use of Amazon Lex is not related to a website, program, or other 8102 // application that is directed or targeted, in whole or in part, to children 8103 // under age 13 and subject to COPPA. You may not specify a default value for 8104 // the childDirected field that does not accurately reflect whether your use 8105 // of Amazon Lex is related to a website, program, or other application that 8106 // is directed or targeted, in whole or in part, to children under age 13 and 8107 // subject to COPPA. 8108 // 8109 // If your use of Amazon Lex relates to a website, program, or other application 8110 // that is directed in whole or in part, to children under age 13, you must 8111 // obtain any required verifiable parental consent under COPPA. For information 8112 // regarding the use of Amazon Lex in connection with websites, programs, or 8113 // other applications that are directed or targeted, in whole or in part, to 8114 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 8115 ChildDirected *bool `locationName:"childDirected" type:"boolean"` 8116 8117 // The message Amazon Lex uses when it doesn't understand the user's request. 8118 // For more information, see PutBot. 8119 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 8120 8121 // The date that the bot was created. 8122 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 8123 8124 // A description of the bot. 8125 Description *string `locationName:"description" type:"string"` 8126 8127 // Indicates whether user utterances should be sent to Amazon Comprehend for 8128 // sentiment analysis. 8129 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 8130 8131 // Indicates whether the bot uses accuracy improvements. true indicates that 8132 // the bot is using the improvements, otherwise, false. 8133 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 8134 8135 // If status is FAILED, Amazon Lex explains why it failed to build the bot. 8136 FailureReason *string `locationName:"failureReason" type:"string"` 8137 8138 // The maximum time in seconds that Amazon Lex retains the data gathered in 8139 // a conversation. For more information, see PutBot. 8140 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 8141 8142 // An array of intent objects. For more information, see PutBot. 8143 Intents []*Intent `locationName:"intents" type:"list"` 8144 8145 // The date that the bot was updated. When you create a resource, the creation 8146 // date and last updated date are the same. 8147 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 8148 8149 // The target locale for the bot. 8150 Locale *string `locationName:"locale" type:"string" enum:"Locale"` 8151 8152 // The name of the bot. 8153 Name *string `locationName:"name" min:"2" type:"string"` 8154 8155 // The score that determines where Amazon Lex inserts the AMAZON.FallbackIntent, 8156 // AMAZON.KendraSearchIntent, or both when returning alternative intents in 8157 // a PostContent (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 8158 // or PostText (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 8159 // response. AMAZON.FallbackIntent is inserted if the confidence score for all 8160 // intents is below this value. AMAZON.KendraSearchIntent is only inserted if 8161 // it is configured for the bot. 8162 NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` 8163 8164 // The status of the bot. 8165 // 8166 // When the status is BUILDING Amazon Lex is building the bot for testing and 8167 // use. 8168 // 8169 // If the status of the bot is READY_BASIC_TESTING, you can test the bot using 8170 // the exact utterances specified in the bot's intents. When the bot is ready 8171 // for full testing or to run, the status is READY. 8172 // 8173 // If there was a problem with building the bot, the status is FAILED and the 8174 // failureReason field explains why the bot did not build. 8175 // 8176 // If the bot was saved but not built, the status is NOT_BUILT. 8177 Status *string `locationName:"status" type:"string" enum:"Status"` 8178 8179 // The version of the bot. For a new bot, the version is always $LATEST. 8180 Version *string `locationName:"version" min:"1" type:"string"` 8181 8182 // The Amazon Polly voice ID that Amazon Lex uses for voice interaction with 8183 // the user. For more information, see PutBot. 8184 VoiceId *string `locationName:"voiceId" type:"string"` 8185 } 8186 8187 // String returns the string representation. 8188 // 8189 // API parameter values that are decorated as "sensitive" in the API will not 8190 // be included in the string output. The member name will be present, but the 8191 // value will be replaced with "sensitive". 8192 func (s GetBotOutput) String() string { 8193 return awsutil.Prettify(s) 8194 } 8195 8196 // GoString returns the string representation. 8197 // 8198 // API parameter values that are decorated as "sensitive" in the API will not 8199 // be included in the string output. The member name will be present, but the 8200 // value will be replaced with "sensitive". 8201 func (s GetBotOutput) GoString() string { 8202 return s.String() 8203 } 8204 8205 // SetAbortStatement sets the AbortStatement field's value. 8206 func (s *GetBotOutput) SetAbortStatement(v *Statement) *GetBotOutput { 8207 s.AbortStatement = v 8208 return s 8209 } 8210 8211 // SetChecksum sets the Checksum field's value. 8212 func (s *GetBotOutput) SetChecksum(v string) *GetBotOutput { 8213 s.Checksum = &v 8214 return s 8215 } 8216 8217 // SetChildDirected sets the ChildDirected field's value. 8218 func (s *GetBotOutput) SetChildDirected(v bool) *GetBotOutput { 8219 s.ChildDirected = &v 8220 return s 8221 } 8222 8223 // SetClarificationPrompt sets the ClarificationPrompt field's value. 8224 func (s *GetBotOutput) SetClarificationPrompt(v *Prompt) *GetBotOutput { 8225 s.ClarificationPrompt = v 8226 return s 8227 } 8228 8229 // SetCreatedDate sets the CreatedDate field's value. 8230 func (s *GetBotOutput) SetCreatedDate(v time.Time) *GetBotOutput { 8231 s.CreatedDate = &v 8232 return s 8233 } 8234 8235 // SetDescription sets the Description field's value. 8236 func (s *GetBotOutput) SetDescription(v string) *GetBotOutput { 8237 s.Description = &v 8238 return s 8239 } 8240 8241 // SetDetectSentiment sets the DetectSentiment field's value. 8242 func (s *GetBotOutput) SetDetectSentiment(v bool) *GetBotOutput { 8243 s.DetectSentiment = &v 8244 return s 8245 } 8246 8247 // SetEnableModelImprovements sets the EnableModelImprovements field's value. 8248 func (s *GetBotOutput) SetEnableModelImprovements(v bool) *GetBotOutput { 8249 s.EnableModelImprovements = &v 8250 return s 8251 } 8252 8253 // SetFailureReason sets the FailureReason field's value. 8254 func (s *GetBotOutput) SetFailureReason(v string) *GetBotOutput { 8255 s.FailureReason = &v 8256 return s 8257 } 8258 8259 // SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 8260 func (s *GetBotOutput) SetIdleSessionTTLInSeconds(v int64) *GetBotOutput { 8261 s.IdleSessionTTLInSeconds = &v 8262 return s 8263 } 8264 8265 // SetIntents sets the Intents field's value. 8266 func (s *GetBotOutput) SetIntents(v []*Intent) *GetBotOutput { 8267 s.Intents = v 8268 return s 8269 } 8270 8271 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 8272 func (s *GetBotOutput) SetLastUpdatedDate(v time.Time) *GetBotOutput { 8273 s.LastUpdatedDate = &v 8274 return s 8275 } 8276 8277 // SetLocale sets the Locale field's value. 8278 func (s *GetBotOutput) SetLocale(v string) *GetBotOutput { 8279 s.Locale = &v 8280 return s 8281 } 8282 8283 // SetName sets the Name field's value. 8284 func (s *GetBotOutput) SetName(v string) *GetBotOutput { 8285 s.Name = &v 8286 return s 8287 } 8288 8289 // SetNluIntentConfidenceThreshold sets the NluIntentConfidenceThreshold field's value. 8290 func (s *GetBotOutput) SetNluIntentConfidenceThreshold(v float64) *GetBotOutput { 8291 s.NluIntentConfidenceThreshold = &v 8292 return s 8293 } 8294 8295 // SetStatus sets the Status field's value. 8296 func (s *GetBotOutput) SetStatus(v string) *GetBotOutput { 8297 s.Status = &v 8298 return s 8299 } 8300 8301 // SetVersion sets the Version field's value. 8302 func (s *GetBotOutput) SetVersion(v string) *GetBotOutput { 8303 s.Version = &v 8304 return s 8305 } 8306 8307 // SetVoiceId sets the VoiceId field's value. 8308 func (s *GetBotOutput) SetVoiceId(v string) *GetBotOutput { 8309 s.VoiceId = &v 8310 return s 8311 } 8312 8313 type GetBotVersionsInput struct { 8314 _ struct{} `type:"structure" nopayload:"true"` 8315 8316 // The maximum number of bot versions to return in the response. The default 8317 // is 10. 8318 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8319 8320 // The name of the bot for which versions should be returned. 8321 // 8322 // Name is a required field 8323 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 8324 8325 // A pagination token for fetching the next page of bot versions. If the response 8326 // to this call is truncated, Amazon Lex returns a pagination token in the response. 8327 // To fetch the next page of versions, specify the pagination token in the next 8328 // request. 8329 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8330 } 8331 8332 // String returns the string representation. 8333 // 8334 // API parameter values that are decorated as "sensitive" in the API will not 8335 // be included in the string output. The member name will be present, but the 8336 // value will be replaced with "sensitive". 8337 func (s GetBotVersionsInput) String() string { 8338 return awsutil.Prettify(s) 8339 } 8340 8341 // GoString returns the string representation. 8342 // 8343 // API parameter values that are decorated as "sensitive" in the API will not 8344 // be included in the string output. The member name will be present, but the 8345 // value will be replaced with "sensitive". 8346 func (s GetBotVersionsInput) GoString() string { 8347 return s.String() 8348 } 8349 8350 // Validate inspects the fields of the type to determine if they are valid. 8351 func (s *GetBotVersionsInput) Validate() error { 8352 invalidParams := request.ErrInvalidParams{Context: "GetBotVersionsInput"} 8353 if s.MaxResults != nil && *s.MaxResults < 1 { 8354 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8355 } 8356 if s.Name == nil { 8357 invalidParams.Add(request.NewErrParamRequired("Name")) 8358 } 8359 if s.Name != nil && len(*s.Name) < 2 { 8360 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 8361 } 8362 8363 if invalidParams.Len() > 0 { 8364 return invalidParams 8365 } 8366 return nil 8367 } 8368 8369 // SetMaxResults sets the MaxResults field's value. 8370 func (s *GetBotVersionsInput) SetMaxResults(v int64) *GetBotVersionsInput { 8371 s.MaxResults = &v 8372 return s 8373 } 8374 8375 // SetName sets the Name field's value. 8376 func (s *GetBotVersionsInput) SetName(v string) *GetBotVersionsInput { 8377 s.Name = &v 8378 return s 8379 } 8380 8381 // SetNextToken sets the NextToken field's value. 8382 func (s *GetBotVersionsInput) SetNextToken(v string) *GetBotVersionsInput { 8383 s.NextToken = &v 8384 return s 8385 } 8386 8387 type GetBotVersionsOutput struct { 8388 _ struct{} `type:"structure"` 8389 8390 // An array of BotMetadata objects, one for each numbered version of the bot 8391 // plus one for the $LATEST version. 8392 Bots []*BotMetadata `locationName:"bots" type:"list"` 8393 8394 // A pagination token for fetching the next page of bot versions. If the response 8395 // to this call is truncated, Amazon Lex returns a pagination token in the response. 8396 // To fetch the next page of versions, specify the pagination token in the next 8397 // request. 8398 NextToken *string `locationName:"nextToken" type:"string"` 8399 } 8400 8401 // String returns the string representation. 8402 // 8403 // API parameter values that are decorated as "sensitive" in the API will not 8404 // be included in the string output. The member name will be present, but the 8405 // value will be replaced with "sensitive". 8406 func (s GetBotVersionsOutput) String() string { 8407 return awsutil.Prettify(s) 8408 } 8409 8410 // GoString returns the string representation. 8411 // 8412 // API parameter values that are decorated as "sensitive" in the API will not 8413 // be included in the string output. The member name will be present, but the 8414 // value will be replaced with "sensitive". 8415 func (s GetBotVersionsOutput) GoString() string { 8416 return s.String() 8417 } 8418 8419 // SetBots sets the Bots field's value. 8420 func (s *GetBotVersionsOutput) SetBots(v []*BotMetadata) *GetBotVersionsOutput { 8421 s.Bots = v 8422 return s 8423 } 8424 8425 // SetNextToken sets the NextToken field's value. 8426 func (s *GetBotVersionsOutput) SetNextToken(v string) *GetBotVersionsOutput { 8427 s.NextToken = &v 8428 return s 8429 } 8430 8431 type GetBotsInput struct { 8432 _ struct{} `type:"structure" nopayload:"true"` 8433 8434 // The maximum number of bots to return in the response that the request will 8435 // return. The default is 10. 8436 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8437 8438 // Substring to match in bot names. A bot will be returned if any part of its 8439 // name matches the substring. For example, "xyz" matches both "xyzabc" and 8440 // "abcxyz." 8441 NameContains *string `location:"querystring" locationName:"nameContains" min:"2" type:"string"` 8442 8443 // A pagination token that fetches the next page of bots. If the response to 8444 // this call is truncated, Amazon Lex returns a pagination token in the response. 8445 // To fetch the next page of bots, specify the pagination token in the next 8446 // request. 8447 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8448 } 8449 8450 // String returns the string representation. 8451 // 8452 // API parameter values that are decorated as "sensitive" in the API will not 8453 // be included in the string output. The member name will be present, but the 8454 // value will be replaced with "sensitive". 8455 func (s GetBotsInput) String() string { 8456 return awsutil.Prettify(s) 8457 } 8458 8459 // GoString returns the string representation. 8460 // 8461 // API parameter values that are decorated as "sensitive" in the API will not 8462 // be included in the string output. The member name will be present, but the 8463 // value will be replaced with "sensitive". 8464 func (s GetBotsInput) GoString() string { 8465 return s.String() 8466 } 8467 8468 // Validate inspects the fields of the type to determine if they are valid. 8469 func (s *GetBotsInput) Validate() error { 8470 invalidParams := request.ErrInvalidParams{Context: "GetBotsInput"} 8471 if s.MaxResults != nil && *s.MaxResults < 1 { 8472 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8473 } 8474 if s.NameContains != nil && len(*s.NameContains) < 2 { 8475 invalidParams.Add(request.NewErrParamMinLen("NameContains", 2)) 8476 } 8477 8478 if invalidParams.Len() > 0 { 8479 return invalidParams 8480 } 8481 return nil 8482 } 8483 8484 // SetMaxResults sets the MaxResults field's value. 8485 func (s *GetBotsInput) SetMaxResults(v int64) *GetBotsInput { 8486 s.MaxResults = &v 8487 return s 8488 } 8489 8490 // SetNameContains sets the NameContains field's value. 8491 func (s *GetBotsInput) SetNameContains(v string) *GetBotsInput { 8492 s.NameContains = &v 8493 return s 8494 } 8495 8496 // SetNextToken sets the NextToken field's value. 8497 func (s *GetBotsInput) SetNextToken(v string) *GetBotsInput { 8498 s.NextToken = &v 8499 return s 8500 } 8501 8502 type GetBotsOutput struct { 8503 _ struct{} `type:"structure"` 8504 8505 // An array of botMetadata objects, with one entry for each bot. 8506 Bots []*BotMetadata `locationName:"bots" type:"list"` 8507 8508 // If the response is truncated, it includes a pagination token that you can 8509 // specify in your next request to fetch the next page of bots. 8510 NextToken *string `locationName:"nextToken" type:"string"` 8511 } 8512 8513 // String returns the string representation. 8514 // 8515 // API parameter values that are decorated as "sensitive" in the API will not 8516 // be included in the string output. The member name will be present, but the 8517 // value will be replaced with "sensitive". 8518 func (s GetBotsOutput) String() string { 8519 return awsutil.Prettify(s) 8520 } 8521 8522 // GoString returns the string representation. 8523 // 8524 // API parameter values that are decorated as "sensitive" in the API will not 8525 // be included in the string output. The member name will be present, but the 8526 // value will be replaced with "sensitive". 8527 func (s GetBotsOutput) GoString() string { 8528 return s.String() 8529 } 8530 8531 // SetBots sets the Bots field's value. 8532 func (s *GetBotsOutput) SetBots(v []*BotMetadata) *GetBotsOutput { 8533 s.Bots = v 8534 return s 8535 } 8536 8537 // SetNextToken sets the NextToken field's value. 8538 func (s *GetBotsOutput) SetNextToken(v string) *GetBotsOutput { 8539 s.NextToken = &v 8540 return s 8541 } 8542 8543 type GetBuiltinIntentInput struct { 8544 _ struct{} `type:"structure" nopayload:"true"` 8545 8546 // The unique identifier for a built-in intent. To find the signature for an 8547 // intent, see Standard Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 8548 // in the Alexa Skills Kit. 8549 // 8550 // Signature is a required field 8551 Signature *string `location:"uri" locationName:"signature" type:"string" required:"true"` 8552 } 8553 8554 // String returns the string representation. 8555 // 8556 // API parameter values that are decorated as "sensitive" in the API will not 8557 // be included in the string output. The member name will be present, but the 8558 // value will be replaced with "sensitive". 8559 func (s GetBuiltinIntentInput) String() string { 8560 return awsutil.Prettify(s) 8561 } 8562 8563 // GoString returns the string representation. 8564 // 8565 // API parameter values that are decorated as "sensitive" in the API will not 8566 // be included in the string output. The member name will be present, but the 8567 // value will be replaced with "sensitive". 8568 func (s GetBuiltinIntentInput) GoString() string { 8569 return s.String() 8570 } 8571 8572 // Validate inspects the fields of the type to determine if they are valid. 8573 func (s *GetBuiltinIntentInput) Validate() error { 8574 invalidParams := request.ErrInvalidParams{Context: "GetBuiltinIntentInput"} 8575 if s.Signature == nil { 8576 invalidParams.Add(request.NewErrParamRequired("Signature")) 8577 } 8578 if s.Signature != nil && len(*s.Signature) < 1 { 8579 invalidParams.Add(request.NewErrParamMinLen("Signature", 1)) 8580 } 8581 8582 if invalidParams.Len() > 0 { 8583 return invalidParams 8584 } 8585 return nil 8586 } 8587 8588 // SetSignature sets the Signature field's value. 8589 func (s *GetBuiltinIntentInput) SetSignature(v string) *GetBuiltinIntentInput { 8590 s.Signature = &v 8591 return s 8592 } 8593 8594 type GetBuiltinIntentOutput struct { 8595 _ struct{} `type:"structure"` 8596 8597 // The unique identifier for a built-in intent. 8598 Signature *string `locationName:"signature" type:"string"` 8599 8600 // An array of BuiltinIntentSlot objects, one entry for each slot type in the 8601 // intent. 8602 Slots []*BuiltinIntentSlot `locationName:"slots" type:"list"` 8603 8604 // A list of locales that the intent supports. 8605 SupportedLocales []*string `locationName:"supportedLocales" type:"list"` 8606 } 8607 8608 // String returns the string representation. 8609 // 8610 // API parameter values that are decorated as "sensitive" in the API will not 8611 // be included in the string output. The member name will be present, but the 8612 // value will be replaced with "sensitive". 8613 func (s GetBuiltinIntentOutput) String() string { 8614 return awsutil.Prettify(s) 8615 } 8616 8617 // GoString returns the string representation. 8618 // 8619 // API parameter values that are decorated as "sensitive" in the API will not 8620 // be included in the string output. The member name will be present, but the 8621 // value will be replaced with "sensitive". 8622 func (s GetBuiltinIntentOutput) GoString() string { 8623 return s.String() 8624 } 8625 8626 // SetSignature sets the Signature field's value. 8627 func (s *GetBuiltinIntentOutput) SetSignature(v string) *GetBuiltinIntentOutput { 8628 s.Signature = &v 8629 return s 8630 } 8631 8632 // SetSlots sets the Slots field's value. 8633 func (s *GetBuiltinIntentOutput) SetSlots(v []*BuiltinIntentSlot) *GetBuiltinIntentOutput { 8634 s.Slots = v 8635 return s 8636 } 8637 8638 // SetSupportedLocales sets the SupportedLocales field's value. 8639 func (s *GetBuiltinIntentOutput) SetSupportedLocales(v []*string) *GetBuiltinIntentOutput { 8640 s.SupportedLocales = v 8641 return s 8642 } 8643 8644 type GetBuiltinIntentsInput struct { 8645 _ struct{} `type:"structure" nopayload:"true"` 8646 8647 // A list of locales that the intent supports. 8648 Locale *string `location:"querystring" locationName:"locale" type:"string" enum:"Locale"` 8649 8650 // The maximum number of intents to return in the response. The default is 10. 8651 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8652 8653 // A pagination token that fetches the next page of intents. If this API call 8654 // is truncated, Amazon Lex returns a pagination token in the response. To fetch 8655 // the next page of intents, use the pagination token in the next request. 8656 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8657 8658 // Substring to match in built-in intent signatures. An intent will be returned 8659 // if any part of its signature matches the substring. For example, "xyz" matches 8660 // both "xyzabc" and "abcxyz." To find the signature for an intent, see Standard 8661 // Built-in Intents (https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/standard-intents) 8662 // in the Alexa Skills Kit. 8663 SignatureContains *string `location:"querystring" locationName:"signatureContains" type:"string"` 8664 } 8665 8666 // String returns the string representation. 8667 // 8668 // API parameter values that are decorated as "sensitive" in the API will not 8669 // be included in the string output. The member name will be present, but the 8670 // value will be replaced with "sensitive". 8671 func (s GetBuiltinIntentsInput) String() string { 8672 return awsutil.Prettify(s) 8673 } 8674 8675 // GoString returns the string representation. 8676 // 8677 // API parameter values that are decorated as "sensitive" in the API will not 8678 // be included in the string output. The member name will be present, but the 8679 // value will be replaced with "sensitive". 8680 func (s GetBuiltinIntentsInput) GoString() string { 8681 return s.String() 8682 } 8683 8684 // Validate inspects the fields of the type to determine if they are valid. 8685 func (s *GetBuiltinIntentsInput) Validate() error { 8686 invalidParams := request.ErrInvalidParams{Context: "GetBuiltinIntentsInput"} 8687 if s.MaxResults != nil && *s.MaxResults < 1 { 8688 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8689 } 8690 8691 if invalidParams.Len() > 0 { 8692 return invalidParams 8693 } 8694 return nil 8695 } 8696 8697 // SetLocale sets the Locale field's value. 8698 func (s *GetBuiltinIntentsInput) SetLocale(v string) *GetBuiltinIntentsInput { 8699 s.Locale = &v 8700 return s 8701 } 8702 8703 // SetMaxResults sets the MaxResults field's value. 8704 func (s *GetBuiltinIntentsInput) SetMaxResults(v int64) *GetBuiltinIntentsInput { 8705 s.MaxResults = &v 8706 return s 8707 } 8708 8709 // SetNextToken sets the NextToken field's value. 8710 func (s *GetBuiltinIntentsInput) SetNextToken(v string) *GetBuiltinIntentsInput { 8711 s.NextToken = &v 8712 return s 8713 } 8714 8715 // SetSignatureContains sets the SignatureContains field's value. 8716 func (s *GetBuiltinIntentsInput) SetSignatureContains(v string) *GetBuiltinIntentsInput { 8717 s.SignatureContains = &v 8718 return s 8719 } 8720 8721 type GetBuiltinIntentsOutput struct { 8722 _ struct{} `type:"structure"` 8723 8724 // An array of builtinIntentMetadata objects, one for each intent in the response. 8725 Intents []*BuiltinIntentMetadata `locationName:"intents" type:"list"` 8726 8727 // A pagination token that fetches the next page of intents. If the response 8728 // to this API call is truncated, Amazon Lex returns a pagination token in the 8729 // response. To fetch the next page of intents, specify the pagination token 8730 // in the next request. 8731 NextToken *string `locationName:"nextToken" type:"string"` 8732 } 8733 8734 // String returns the string representation. 8735 // 8736 // API parameter values that are decorated as "sensitive" in the API will not 8737 // be included in the string output. The member name will be present, but the 8738 // value will be replaced with "sensitive". 8739 func (s GetBuiltinIntentsOutput) String() string { 8740 return awsutil.Prettify(s) 8741 } 8742 8743 // GoString returns the string representation. 8744 // 8745 // API parameter values that are decorated as "sensitive" in the API will not 8746 // be included in the string output. The member name will be present, but the 8747 // value will be replaced with "sensitive". 8748 func (s GetBuiltinIntentsOutput) GoString() string { 8749 return s.String() 8750 } 8751 8752 // SetIntents sets the Intents field's value. 8753 func (s *GetBuiltinIntentsOutput) SetIntents(v []*BuiltinIntentMetadata) *GetBuiltinIntentsOutput { 8754 s.Intents = v 8755 return s 8756 } 8757 8758 // SetNextToken sets the NextToken field's value. 8759 func (s *GetBuiltinIntentsOutput) SetNextToken(v string) *GetBuiltinIntentsOutput { 8760 s.NextToken = &v 8761 return s 8762 } 8763 8764 type GetBuiltinSlotTypesInput struct { 8765 _ struct{} `type:"structure" nopayload:"true"` 8766 8767 // A list of locales that the slot type supports. 8768 Locale *string `location:"querystring" locationName:"locale" type:"string" enum:"Locale"` 8769 8770 // The maximum number of slot types to return in the response. The default is 8771 // 10. 8772 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 8773 8774 // A pagination token that fetches the next page of slot types. If the response 8775 // to this API call is truncated, Amazon Lex returns a pagination token in the 8776 // response. To fetch the next page of slot types, specify the pagination token 8777 // in the next request. 8778 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 8779 8780 // Substring to match in built-in slot type signatures. A slot type will be 8781 // returned if any part of its signature matches the substring. For example, 8782 // "xyz" matches both "xyzabc" and "abcxyz." 8783 SignatureContains *string `location:"querystring" locationName:"signatureContains" type:"string"` 8784 } 8785 8786 // String returns the string representation. 8787 // 8788 // API parameter values that are decorated as "sensitive" in the API will not 8789 // be included in the string output. The member name will be present, but the 8790 // value will be replaced with "sensitive". 8791 func (s GetBuiltinSlotTypesInput) String() string { 8792 return awsutil.Prettify(s) 8793 } 8794 8795 // GoString returns the string representation. 8796 // 8797 // API parameter values that are decorated as "sensitive" in the API will not 8798 // be included in the string output. The member name will be present, but the 8799 // value will be replaced with "sensitive". 8800 func (s GetBuiltinSlotTypesInput) GoString() string { 8801 return s.String() 8802 } 8803 8804 // Validate inspects the fields of the type to determine if they are valid. 8805 func (s *GetBuiltinSlotTypesInput) Validate() error { 8806 invalidParams := request.ErrInvalidParams{Context: "GetBuiltinSlotTypesInput"} 8807 if s.MaxResults != nil && *s.MaxResults < 1 { 8808 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8809 } 8810 8811 if invalidParams.Len() > 0 { 8812 return invalidParams 8813 } 8814 return nil 8815 } 8816 8817 // SetLocale sets the Locale field's value. 8818 func (s *GetBuiltinSlotTypesInput) SetLocale(v string) *GetBuiltinSlotTypesInput { 8819 s.Locale = &v 8820 return s 8821 } 8822 8823 // SetMaxResults sets the MaxResults field's value. 8824 func (s *GetBuiltinSlotTypesInput) SetMaxResults(v int64) *GetBuiltinSlotTypesInput { 8825 s.MaxResults = &v 8826 return s 8827 } 8828 8829 // SetNextToken sets the NextToken field's value. 8830 func (s *GetBuiltinSlotTypesInput) SetNextToken(v string) *GetBuiltinSlotTypesInput { 8831 s.NextToken = &v 8832 return s 8833 } 8834 8835 // SetSignatureContains sets the SignatureContains field's value. 8836 func (s *GetBuiltinSlotTypesInput) SetSignatureContains(v string) *GetBuiltinSlotTypesInput { 8837 s.SignatureContains = &v 8838 return s 8839 } 8840 8841 type GetBuiltinSlotTypesOutput struct { 8842 _ struct{} `type:"structure"` 8843 8844 // If the response is truncated, the response includes a pagination token that 8845 // you can use in your next request to fetch the next page of slot types. 8846 NextToken *string `locationName:"nextToken" type:"string"` 8847 8848 // An array of BuiltInSlotTypeMetadata objects, one entry for each slot type 8849 // returned. 8850 SlotTypes []*BuiltinSlotTypeMetadata `locationName:"slotTypes" type:"list"` 8851 } 8852 8853 // String returns the string representation. 8854 // 8855 // API parameter values that are decorated as "sensitive" in the API will not 8856 // be included in the string output. The member name will be present, but the 8857 // value will be replaced with "sensitive". 8858 func (s GetBuiltinSlotTypesOutput) String() string { 8859 return awsutil.Prettify(s) 8860 } 8861 8862 // GoString returns the string representation. 8863 // 8864 // API parameter values that are decorated as "sensitive" in the API will not 8865 // be included in the string output. The member name will be present, but the 8866 // value will be replaced with "sensitive". 8867 func (s GetBuiltinSlotTypesOutput) GoString() string { 8868 return s.String() 8869 } 8870 8871 // SetNextToken sets the NextToken field's value. 8872 func (s *GetBuiltinSlotTypesOutput) SetNextToken(v string) *GetBuiltinSlotTypesOutput { 8873 s.NextToken = &v 8874 return s 8875 } 8876 8877 // SetSlotTypes sets the SlotTypes field's value. 8878 func (s *GetBuiltinSlotTypesOutput) SetSlotTypes(v []*BuiltinSlotTypeMetadata) *GetBuiltinSlotTypesOutput { 8879 s.SlotTypes = v 8880 return s 8881 } 8882 8883 type GetExportInput struct { 8884 _ struct{} `type:"structure" nopayload:"true"` 8885 8886 // The format of the exported data. 8887 // 8888 // ExportType is a required field 8889 ExportType *string `location:"querystring" locationName:"exportType" type:"string" required:"true" enum:"ExportType"` 8890 8891 // The name of the bot to export. 8892 // 8893 // Name is a required field 8894 Name *string `location:"querystring" locationName:"name" min:"1" type:"string" required:"true"` 8895 8896 // The type of resource to export. 8897 // 8898 // ResourceType is a required field 8899 ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` 8900 8901 // The version of the bot to export. 8902 // 8903 // Version is a required field 8904 Version *string `location:"querystring" locationName:"version" min:"1" type:"string" required:"true"` 8905 } 8906 8907 // String returns the string representation. 8908 // 8909 // API parameter values that are decorated as "sensitive" in the API will not 8910 // be included in the string output. The member name will be present, but the 8911 // value will be replaced with "sensitive". 8912 func (s GetExportInput) String() string { 8913 return awsutil.Prettify(s) 8914 } 8915 8916 // GoString returns the string representation. 8917 // 8918 // API parameter values that are decorated as "sensitive" in the API will not 8919 // be included in the string output. The member name will be present, but the 8920 // value will be replaced with "sensitive". 8921 func (s GetExportInput) GoString() string { 8922 return s.String() 8923 } 8924 8925 // Validate inspects the fields of the type to determine if they are valid. 8926 func (s *GetExportInput) Validate() error { 8927 invalidParams := request.ErrInvalidParams{Context: "GetExportInput"} 8928 if s.ExportType == nil { 8929 invalidParams.Add(request.NewErrParamRequired("ExportType")) 8930 } 8931 if s.Name == nil { 8932 invalidParams.Add(request.NewErrParamRequired("Name")) 8933 } 8934 if s.Name != nil && len(*s.Name) < 1 { 8935 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 8936 } 8937 if s.ResourceType == nil { 8938 invalidParams.Add(request.NewErrParamRequired("ResourceType")) 8939 } 8940 if s.Version == nil { 8941 invalidParams.Add(request.NewErrParamRequired("Version")) 8942 } 8943 if s.Version != nil && len(*s.Version) < 1 { 8944 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 8945 } 8946 8947 if invalidParams.Len() > 0 { 8948 return invalidParams 8949 } 8950 return nil 8951 } 8952 8953 // SetExportType sets the ExportType field's value. 8954 func (s *GetExportInput) SetExportType(v string) *GetExportInput { 8955 s.ExportType = &v 8956 return s 8957 } 8958 8959 // SetName sets the Name field's value. 8960 func (s *GetExportInput) SetName(v string) *GetExportInput { 8961 s.Name = &v 8962 return s 8963 } 8964 8965 // SetResourceType sets the ResourceType field's value. 8966 func (s *GetExportInput) SetResourceType(v string) *GetExportInput { 8967 s.ResourceType = &v 8968 return s 8969 } 8970 8971 // SetVersion sets the Version field's value. 8972 func (s *GetExportInput) SetVersion(v string) *GetExportInput { 8973 s.Version = &v 8974 return s 8975 } 8976 8977 type GetExportOutput struct { 8978 _ struct{} `type:"structure"` 8979 8980 // The status of the export. 8981 // 8982 // * IN_PROGRESS - The export is in progress. 8983 // 8984 // * READY - The export is complete. 8985 // 8986 // * FAILED - The export could not be completed. 8987 ExportStatus *string `locationName:"exportStatus" type:"string" enum:"ExportStatus"` 8988 8989 // The format of the exported data. 8990 ExportType *string `locationName:"exportType" type:"string" enum:"ExportType"` 8991 8992 // If status is FAILED, Amazon Lex provides the reason that it failed to export 8993 // the resource. 8994 FailureReason *string `locationName:"failureReason" type:"string"` 8995 8996 // The name of the bot being exported. 8997 Name *string `locationName:"name" min:"1" type:"string"` 8998 8999 // The type of the exported resource. 9000 ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` 9001 9002 // An S3 pre-signed URL that provides the location of the exported resource. 9003 // The exported resource is a ZIP archive that contains the exported resource 9004 // in JSON format. The structure of the archive may change. Your code should 9005 // not rely on the archive structure. 9006 Url *string `locationName:"url" type:"string"` 9007 9008 // The version of the bot being exported. 9009 Version *string `locationName:"version" min:"1" type:"string"` 9010 } 9011 9012 // String returns the string representation. 9013 // 9014 // API parameter values that are decorated as "sensitive" in the API will not 9015 // be included in the string output. The member name will be present, but the 9016 // value will be replaced with "sensitive". 9017 func (s GetExportOutput) String() string { 9018 return awsutil.Prettify(s) 9019 } 9020 9021 // GoString returns the string representation. 9022 // 9023 // API parameter values that are decorated as "sensitive" in the API will not 9024 // be included in the string output. The member name will be present, but the 9025 // value will be replaced with "sensitive". 9026 func (s GetExportOutput) GoString() string { 9027 return s.String() 9028 } 9029 9030 // SetExportStatus sets the ExportStatus field's value. 9031 func (s *GetExportOutput) SetExportStatus(v string) *GetExportOutput { 9032 s.ExportStatus = &v 9033 return s 9034 } 9035 9036 // SetExportType sets the ExportType field's value. 9037 func (s *GetExportOutput) SetExportType(v string) *GetExportOutput { 9038 s.ExportType = &v 9039 return s 9040 } 9041 9042 // SetFailureReason sets the FailureReason field's value. 9043 func (s *GetExportOutput) SetFailureReason(v string) *GetExportOutput { 9044 s.FailureReason = &v 9045 return s 9046 } 9047 9048 // SetName sets the Name field's value. 9049 func (s *GetExportOutput) SetName(v string) *GetExportOutput { 9050 s.Name = &v 9051 return s 9052 } 9053 9054 // SetResourceType sets the ResourceType field's value. 9055 func (s *GetExportOutput) SetResourceType(v string) *GetExportOutput { 9056 s.ResourceType = &v 9057 return s 9058 } 9059 9060 // SetUrl sets the Url field's value. 9061 func (s *GetExportOutput) SetUrl(v string) *GetExportOutput { 9062 s.Url = &v 9063 return s 9064 } 9065 9066 // SetVersion sets the Version field's value. 9067 func (s *GetExportOutput) SetVersion(v string) *GetExportOutput { 9068 s.Version = &v 9069 return s 9070 } 9071 9072 type GetImportInput struct { 9073 _ struct{} `type:"structure" nopayload:"true"` 9074 9075 // The identifier of the import job information to return. 9076 // 9077 // ImportId is a required field 9078 ImportId *string `location:"uri" locationName:"importId" type:"string" required:"true"` 9079 } 9080 9081 // String returns the string representation. 9082 // 9083 // API parameter values that are decorated as "sensitive" in the API will not 9084 // be included in the string output. The member name will be present, but the 9085 // value will be replaced with "sensitive". 9086 func (s GetImportInput) String() string { 9087 return awsutil.Prettify(s) 9088 } 9089 9090 // GoString returns the string representation. 9091 // 9092 // API parameter values that are decorated as "sensitive" in the API will not 9093 // be included in the string output. The member name will be present, but the 9094 // value will be replaced with "sensitive". 9095 func (s GetImportInput) GoString() string { 9096 return s.String() 9097 } 9098 9099 // Validate inspects the fields of the type to determine if they are valid. 9100 func (s *GetImportInput) Validate() error { 9101 invalidParams := request.ErrInvalidParams{Context: "GetImportInput"} 9102 if s.ImportId == nil { 9103 invalidParams.Add(request.NewErrParamRequired("ImportId")) 9104 } 9105 if s.ImportId != nil && len(*s.ImportId) < 1 { 9106 invalidParams.Add(request.NewErrParamMinLen("ImportId", 1)) 9107 } 9108 9109 if invalidParams.Len() > 0 { 9110 return invalidParams 9111 } 9112 return nil 9113 } 9114 9115 // SetImportId sets the ImportId field's value. 9116 func (s *GetImportInput) SetImportId(v string) *GetImportInput { 9117 s.ImportId = &v 9118 return s 9119 } 9120 9121 type GetImportOutput struct { 9122 _ struct{} `type:"structure"` 9123 9124 // A timestamp for the date and time that the import job was created. 9125 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 9126 9127 // A string that describes why an import job failed to complete. 9128 FailureReason []*string `locationName:"failureReason" type:"list"` 9129 9130 // The identifier for the specific import job. 9131 ImportId *string `locationName:"importId" type:"string"` 9132 9133 // The status of the import job. If the status is FAILED, you can get the reason 9134 // for the failure from the failureReason field. 9135 ImportStatus *string `locationName:"importStatus" type:"string" enum:"ImportStatus"` 9136 9137 // The action taken when there was a conflict between an existing resource and 9138 // a resource in the import file. 9139 MergeStrategy *string `locationName:"mergeStrategy" type:"string" enum:"MergeStrategy"` 9140 9141 // The name given to the import job. 9142 Name *string `locationName:"name" min:"1" type:"string"` 9143 9144 // The type of resource imported. 9145 ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` 9146 } 9147 9148 // String returns the string representation. 9149 // 9150 // API parameter values that are decorated as "sensitive" in the API will not 9151 // be included in the string output. The member name will be present, but the 9152 // value will be replaced with "sensitive". 9153 func (s GetImportOutput) String() string { 9154 return awsutil.Prettify(s) 9155 } 9156 9157 // GoString returns the string representation. 9158 // 9159 // API parameter values that are decorated as "sensitive" in the API will not 9160 // be included in the string output. The member name will be present, but the 9161 // value will be replaced with "sensitive". 9162 func (s GetImportOutput) GoString() string { 9163 return s.String() 9164 } 9165 9166 // SetCreatedDate sets the CreatedDate field's value. 9167 func (s *GetImportOutput) SetCreatedDate(v time.Time) *GetImportOutput { 9168 s.CreatedDate = &v 9169 return s 9170 } 9171 9172 // SetFailureReason sets the FailureReason field's value. 9173 func (s *GetImportOutput) SetFailureReason(v []*string) *GetImportOutput { 9174 s.FailureReason = v 9175 return s 9176 } 9177 9178 // SetImportId sets the ImportId field's value. 9179 func (s *GetImportOutput) SetImportId(v string) *GetImportOutput { 9180 s.ImportId = &v 9181 return s 9182 } 9183 9184 // SetImportStatus sets the ImportStatus field's value. 9185 func (s *GetImportOutput) SetImportStatus(v string) *GetImportOutput { 9186 s.ImportStatus = &v 9187 return s 9188 } 9189 9190 // SetMergeStrategy sets the MergeStrategy field's value. 9191 func (s *GetImportOutput) SetMergeStrategy(v string) *GetImportOutput { 9192 s.MergeStrategy = &v 9193 return s 9194 } 9195 9196 // SetName sets the Name field's value. 9197 func (s *GetImportOutput) SetName(v string) *GetImportOutput { 9198 s.Name = &v 9199 return s 9200 } 9201 9202 // SetResourceType sets the ResourceType field's value. 9203 func (s *GetImportOutput) SetResourceType(v string) *GetImportOutput { 9204 s.ResourceType = &v 9205 return s 9206 } 9207 9208 type GetIntentInput struct { 9209 _ struct{} `type:"structure" nopayload:"true"` 9210 9211 // The name of the intent. The name is case sensitive. 9212 // 9213 // Name is a required field 9214 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 9215 9216 // The version of the intent. 9217 // 9218 // Version is a required field 9219 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 9220 } 9221 9222 // String returns the string representation. 9223 // 9224 // API parameter values that are decorated as "sensitive" in the API will not 9225 // be included in the string output. The member name will be present, but the 9226 // value will be replaced with "sensitive". 9227 func (s GetIntentInput) String() string { 9228 return awsutil.Prettify(s) 9229 } 9230 9231 // GoString returns the string representation. 9232 // 9233 // API parameter values that are decorated as "sensitive" in the API will not 9234 // be included in the string output. The member name will be present, but the 9235 // value will be replaced with "sensitive". 9236 func (s GetIntentInput) GoString() string { 9237 return s.String() 9238 } 9239 9240 // Validate inspects the fields of the type to determine if they are valid. 9241 func (s *GetIntentInput) Validate() error { 9242 invalidParams := request.ErrInvalidParams{Context: "GetIntentInput"} 9243 if s.Name == nil { 9244 invalidParams.Add(request.NewErrParamRequired("Name")) 9245 } 9246 if s.Name != nil && len(*s.Name) < 1 { 9247 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 9248 } 9249 if s.Version == nil { 9250 invalidParams.Add(request.NewErrParamRequired("Version")) 9251 } 9252 if s.Version != nil && len(*s.Version) < 1 { 9253 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 9254 } 9255 9256 if invalidParams.Len() > 0 { 9257 return invalidParams 9258 } 9259 return nil 9260 } 9261 9262 // SetName sets the Name field's value. 9263 func (s *GetIntentInput) SetName(v string) *GetIntentInput { 9264 s.Name = &v 9265 return s 9266 } 9267 9268 // SetVersion sets the Version field's value. 9269 func (s *GetIntentInput) SetVersion(v string) *GetIntentInput { 9270 s.Version = &v 9271 return s 9272 } 9273 9274 type GetIntentOutput struct { 9275 _ struct{} `type:"structure"` 9276 9277 // Checksum of the intent. 9278 Checksum *string `locationName:"checksum" type:"string"` 9279 9280 // After the Lambda function specified in the fulfillmentActivity element fulfills 9281 // the intent, Amazon Lex conveys this statement to the user. 9282 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 9283 9284 // If defined in the bot, Amazon Lex uses prompt to confirm the intent before 9285 // fulfilling the user's request. For more information, see PutIntent. 9286 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 9287 9288 // The date that the intent was created. 9289 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 9290 9291 // A description of the intent. 9292 Description *string `locationName:"description" type:"string"` 9293 9294 // If defined in the bot, Amazon Amazon Lex invokes this Lambda function for 9295 // each user input. For more information, see PutIntent. 9296 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 9297 9298 // If defined in the bot, Amazon Lex uses this prompt to solicit additional 9299 // user activity after the intent is fulfilled. For more information, see PutIntent. 9300 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 9301 9302 // Describes how the intent is fulfilled. For more information, see PutIntent. 9303 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 9304 9305 // An array of InputContext objects that lists the contexts that must be active 9306 // for Amazon Lex to choose the intent in a conversation with the user. 9307 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 9308 9309 // Configuration information, if any, to connect to an Amazon Kendra index with 9310 // the AMAZON.KendraSearchIntent intent. 9311 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 9312 9313 // The date that the intent was updated. When you create a resource, the creation 9314 // date and the last updated date are the same. 9315 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 9316 9317 // The name of the intent. 9318 Name *string `locationName:"name" min:"1" type:"string"` 9319 9320 // An array of OutputContext objects that lists the contexts that the intent 9321 // activates when the intent is fulfilled. 9322 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 9323 9324 // A unique identifier for a built-in intent. 9325 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 9326 9327 // If the user answers "no" to the question defined in confirmationPrompt, Amazon 9328 // Lex responds with this statement to acknowledge that the intent was canceled. 9329 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 9330 9331 // An array of sample utterances configured for the intent. 9332 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 9333 9334 // An array of intent slots configured for the intent. 9335 Slots []*Slot `locationName:"slots" type:"list"` 9336 9337 // The version of the intent. 9338 Version *string `locationName:"version" min:"1" type:"string"` 9339 } 9340 9341 // String returns the string representation. 9342 // 9343 // API parameter values that are decorated as "sensitive" in the API will not 9344 // be included in the string output. The member name will be present, but the 9345 // value will be replaced with "sensitive". 9346 func (s GetIntentOutput) String() string { 9347 return awsutil.Prettify(s) 9348 } 9349 9350 // GoString returns the string representation. 9351 // 9352 // API parameter values that are decorated as "sensitive" in the API will not 9353 // be included in the string output. The member name will be present, but the 9354 // value will be replaced with "sensitive". 9355 func (s GetIntentOutput) GoString() string { 9356 return s.String() 9357 } 9358 9359 // SetChecksum sets the Checksum field's value. 9360 func (s *GetIntentOutput) SetChecksum(v string) *GetIntentOutput { 9361 s.Checksum = &v 9362 return s 9363 } 9364 9365 // SetConclusionStatement sets the ConclusionStatement field's value. 9366 func (s *GetIntentOutput) SetConclusionStatement(v *Statement) *GetIntentOutput { 9367 s.ConclusionStatement = v 9368 return s 9369 } 9370 9371 // SetConfirmationPrompt sets the ConfirmationPrompt field's value. 9372 func (s *GetIntentOutput) SetConfirmationPrompt(v *Prompt) *GetIntentOutput { 9373 s.ConfirmationPrompt = v 9374 return s 9375 } 9376 9377 // SetCreatedDate sets the CreatedDate field's value. 9378 func (s *GetIntentOutput) SetCreatedDate(v time.Time) *GetIntentOutput { 9379 s.CreatedDate = &v 9380 return s 9381 } 9382 9383 // SetDescription sets the Description field's value. 9384 func (s *GetIntentOutput) SetDescription(v string) *GetIntentOutput { 9385 s.Description = &v 9386 return s 9387 } 9388 9389 // SetDialogCodeHook sets the DialogCodeHook field's value. 9390 func (s *GetIntentOutput) SetDialogCodeHook(v *CodeHook) *GetIntentOutput { 9391 s.DialogCodeHook = v 9392 return s 9393 } 9394 9395 // SetFollowUpPrompt sets the FollowUpPrompt field's value. 9396 func (s *GetIntentOutput) SetFollowUpPrompt(v *FollowUpPrompt) *GetIntentOutput { 9397 s.FollowUpPrompt = v 9398 return s 9399 } 9400 9401 // SetFulfillmentActivity sets the FulfillmentActivity field's value. 9402 func (s *GetIntentOutput) SetFulfillmentActivity(v *FulfillmentActivity) *GetIntentOutput { 9403 s.FulfillmentActivity = v 9404 return s 9405 } 9406 9407 // SetInputContexts sets the InputContexts field's value. 9408 func (s *GetIntentOutput) SetInputContexts(v []*InputContext) *GetIntentOutput { 9409 s.InputContexts = v 9410 return s 9411 } 9412 9413 // SetKendraConfiguration sets the KendraConfiguration field's value. 9414 func (s *GetIntentOutput) SetKendraConfiguration(v *KendraConfiguration) *GetIntentOutput { 9415 s.KendraConfiguration = v 9416 return s 9417 } 9418 9419 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 9420 func (s *GetIntentOutput) SetLastUpdatedDate(v time.Time) *GetIntentOutput { 9421 s.LastUpdatedDate = &v 9422 return s 9423 } 9424 9425 // SetName sets the Name field's value. 9426 func (s *GetIntentOutput) SetName(v string) *GetIntentOutput { 9427 s.Name = &v 9428 return s 9429 } 9430 9431 // SetOutputContexts sets the OutputContexts field's value. 9432 func (s *GetIntentOutput) SetOutputContexts(v []*OutputContext) *GetIntentOutput { 9433 s.OutputContexts = v 9434 return s 9435 } 9436 9437 // SetParentIntentSignature sets the ParentIntentSignature field's value. 9438 func (s *GetIntentOutput) SetParentIntentSignature(v string) *GetIntentOutput { 9439 s.ParentIntentSignature = &v 9440 return s 9441 } 9442 9443 // SetRejectionStatement sets the RejectionStatement field's value. 9444 func (s *GetIntentOutput) SetRejectionStatement(v *Statement) *GetIntentOutput { 9445 s.RejectionStatement = v 9446 return s 9447 } 9448 9449 // SetSampleUtterances sets the SampleUtterances field's value. 9450 func (s *GetIntentOutput) SetSampleUtterances(v []*string) *GetIntentOutput { 9451 s.SampleUtterances = v 9452 return s 9453 } 9454 9455 // SetSlots sets the Slots field's value. 9456 func (s *GetIntentOutput) SetSlots(v []*Slot) *GetIntentOutput { 9457 s.Slots = v 9458 return s 9459 } 9460 9461 // SetVersion sets the Version field's value. 9462 func (s *GetIntentOutput) SetVersion(v string) *GetIntentOutput { 9463 s.Version = &v 9464 return s 9465 } 9466 9467 type GetIntentVersionsInput struct { 9468 _ struct{} `type:"structure" nopayload:"true"` 9469 9470 // The maximum number of intent versions to return in the response. The default 9471 // is 10. 9472 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 9473 9474 // The name of the intent for which versions should be returned. 9475 // 9476 // Name is a required field 9477 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 9478 9479 // A pagination token for fetching the next page of intent versions. If the 9480 // response to this call is truncated, Amazon Lex returns a pagination token 9481 // in the response. To fetch the next page of versions, specify the pagination 9482 // token in the next request. 9483 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 9484 } 9485 9486 // String returns the string representation. 9487 // 9488 // API parameter values that are decorated as "sensitive" in the API will not 9489 // be included in the string output. The member name will be present, but the 9490 // value will be replaced with "sensitive". 9491 func (s GetIntentVersionsInput) String() string { 9492 return awsutil.Prettify(s) 9493 } 9494 9495 // GoString returns the string representation. 9496 // 9497 // API parameter values that are decorated as "sensitive" in the API will not 9498 // be included in the string output. The member name will be present, but the 9499 // value will be replaced with "sensitive". 9500 func (s GetIntentVersionsInput) GoString() string { 9501 return s.String() 9502 } 9503 9504 // Validate inspects the fields of the type to determine if they are valid. 9505 func (s *GetIntentVersionsInput) Validate() error { 9506 invalidParams := request.ErrInvalidParams{Context: "GetIntentVersionsInput"} 9507 if s.MaxResults != nil && *s.MaxResults < 1 { 9508 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 9509 } 9510 if s.Name == nil { 9511 invalidParams.Add(request.NewErrParamRequired("Name")) 9512 } 9513 if s.Name != nil && len(*s.Name) < 1 { 9514 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 9515 } 9516 9517 if invalidParams.Len() > 0 { 9518 return invalidParams 9519 } 9520 return nil 9521 } 9522 9523 // SetMaxResults sets the MaxResults field's value. 9524 func (s *GetIntentVersionsInput) SetMaxResults(v int64) *GetIntentVersionsInput { 9525 s.MaxResults = &v 9526 return s 9527 } 9528 9529 // SetName sets the Name field's value. 9530 func (s *GetIntentVersionsInput) SetName(v string) *GetIntentVersionsInput { 9531 s.Name = &v 9532 return s 9533 } 9534 9535 // SetNextToken sets the NextToken field's value. 9536 func (s *GetIntentVersionsInput) SetNextToken(v string) *GetIntentVersionsInput { 9537 s.NextToken = &v 9538 return s 9539 } 9540 9541 type GetIntentVersionsOutput struct { 9542 _ struct{} `type:"structure"` 9543 9544 // An array of IntentMetadata objects, one for each numbered version of the 9545 // intent plus one for the $LATEST version. 9546 Intents []*IntentMetadata `locationName:"intents" type:"list"` 9547 9548 // A pagination token for fetching the next page of intent versions. If the 9549 // response to this call is truncated, Amazon Lex returns a pagination token 9550 // in the response. To fetch the next page of versions, specify the pagination 9551 // token in the next request. 9552 NextToken *string `locationName:"nextToken" type:"string"` 9553 } 9554 9555 // String returns the string representation. 9556 // 9557 // API parameter values that are decorated as "sensitive" in the API will not 9558 // be included in the string output. The member name will be present, but the 9559 // value will be replaced with "sensitive". 9560 func (s GetIntentVersionsOutput) String() string { 9561 return awsutil.Prettify(s) 9562 } 9563 9564 // GoString returns the string representation. 9565 // 9566 // API parameter values that are decorated as "sensitive" in the API will not 9567 // be included in the string output. The member name will be present, but the 9568 // value will be replaced with "sensitive". 9569 func (s GetIntentVersionsOutput) GoString() string { 9570 return s.String() 9571 } 9572 9573 // SetIntents sets the Intents field's value. 9574 func (s *GetIntentVersionsOutput) SetIntents(v []*IntentMetadata) *GetIntentVersionsOutput { 9575 s.Intents = v 9576 return s 9577 } 9578 9579 // SetNextToken sets the NextToken field's value. 9580 func (s *GetIntentVersionsOutput) SetNextToken(v string) *GetIntentVersionsOutput { 9581 s.NextToken = &v 9582 return s 9583 } 9584 9585 type GetIntentsInput struct { 9586 _ struct{} `type:"structure" nopayload:"true"` 9587 9588 // The maximum number of intents to return in the response. The default is 10. 9589 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 9590 9591 // Substring to match in intent names. An intent will be returned if any part 9592 // of its name matches the substring. For example, "xyz" matches both "xyzabc" 9593 // and "abcxyz." 9594 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 9595 9596 // A pagination token that fetches the next page of intents. If the response 9597 // to this API call is truncated, Amazon Lex returns a pagination token in the 9598 // response. To fetch the next page of intents, specify the pagination token 9599 // in the next request. 9600 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 9601 } 9602 9603 // String returns the string representation. 9604 // 9605 // API parameter values that are decorated as "sensitive" in the API will not 9606 // be included in the string output. The member name will be present, but the 9607 // value will be replaced with "sensitive". 9608 func (s GetIntentsInput) String() string { 9609 return awsutil.Prettify(s) 9610 } 9611 9612 // GoString returns the string representation. 9613 // 9614 // API parameter values that are decorated as "sensitive" in the API will not 9615 // be included in the string output. The member name will be present, but the 9616 // value will be replaced with "sensitive". 9617 func (s GetIntentsInput) GoString() string { 9618 return s.String() 9619 } 9620 9621 // Validate inspects the fields of the type to determine if they are valid. 9622 func (s *GetIntentsInput) Validate() error { 9623 invalidParams := request.ErrInvalidParams{Context: "GetIntentsInput"} 9624 if s.MaxResults != nil && *s.MaxResults < 1 { 9625 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 9626 } 9627 if s.NameContains != nil && len(*s.NameContains) < 1 { 9628 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 9629 } 9630 9631 if invalidParams.Len() > 0 { 9632 return invalidParams 9633 } 9634 return nil 9635 } 9636 9637 // SetMaxResults sets the MaxResults field's value. 9638 func (s *GetIntentsInput) SetMaxResults(v int64) *GetIntentsInput { 9639 s.MaxResults = &v 9640 return s 9641 } 9642 9643 // SetNameContains sets the NameContains field's value. 9644 func (s *GetIntentsInput) SetNameContains(v string) *GetIntentsInput { 9645 s.NameContains = &v 9646 return s 9647 } 9648 9649 // SetNextToken sets the NextToken field's value. 9650 func (s *GetIntentsInput) SetNextToken(v string) *GetIntentsInput { 9651 s.NextToken = &v 9652 return s 9653 } 9654 9655 type GetIntentsOutput struct { 9656 _ struct{} `type:"structure"` 9657 9658 // An array of Intent objects. For more information, see PutBot. 9659 Intents []*IntentMetadata `locationName:"intents" type:"list"` 9660 9661 // If the response is truncated, the response includes a pagination token that 9662 // you can specify in your next request to fetch the next page of intents. 9663 NextToken *string `locationName:"nextToken" type:"string"` 9664 } 9665 9666 // String returns the string representation. 9667 // 9668 // API parameter values that are decorated as "sensitive" in the API will not 9669 // be included in the string output. The member name will be present, but the 9670 // value will be replaced with "sensitive". 9671 func (s GetIntentsOutput) String() string { 9672 return awsutil.Prettify(s) 9673 } 9674 9675 // GoString returns the string representation. 9676 // 9677 // API parameter values that are decorated as "sensitive" in the API will not 9678 // be included in the string output. The member name will be present, but the 9679 // value will be replaced with "sensitive". 9680 func (s GetIntentsOutput) GoString() string { 9681 return s.String() 9682 } 9683 9684 // SetIntents sets the Intents field's value. 9685 func (s *GetIntentsOutput) SetIntents(v []*IntentMetadata) *GetIntentsOutput { 9686 s.Intents = v 9687 return s 9688 } 9689 9690 // SetNextToken sets the NextToken field's value. 9691 func (s *GetIntentsOutput) SetNextToken(v string) *GetIntentsOutput { 9692 s.NextToken = &v 9693 return s 9694 } 9695 9696 type GetMigrationInput struct { 9697 _ struct{} `type:"structure" nopayload:"true"` 9698 9699 // The unique identifier of the migration to view. The migrationID is returned 9700 // by the operation. 9701 // 9702 // MigrationId is a required field 9703 MigrationId *string `location:"uri" locationName:"migrationId" min:"10" type:"string" required:"true"` 9704 } 9705 9706 // String returns the string representation. 9707 // 9708 // API parameter values that are decorated as "sensitive" in the API will not 9709 // be included in the string output. The member name will be present, but the 9710 // value will be replaced with "sensitive". 9711 func (s GetMigrationInput) String() string { 9712 return awsutil.Prettify(s) 9713 } 9714 9715 // GoString returns the string representation. 9716 // 9717 // API parameter values that are decorated as "sensitive" in the API will not 9718 // be included in the string output. The member name will be present, but the 9719 // value will be replaced with "sensitive". 9720 func (s GetMigrationInput) GoString() string { 9721 return s.String() 9722 } 9723 9724 // Validate inspects the fields of the type to determine if they are valid. 9725 func (s *GetMigrationInput) Validate() error { 9726 invalidParams := request.ErrInvalidParams{Context: "GetMigrationInput"} 9727 if s.MigrationId == nil { 9728 invalidParams.Add(request.NewErrParamRequired("MigrationId")) 9729 } 9730 if s.MigrationId != nil && len(*s.MigrationId) < 10 { 9731 invalidParams.Add(request.NewErrParamMinLen("MigrationId", 10)) 9732 } 9733 9734 if invalidParams.Len() > 0 { 9735 return invalidParams 9736 } 9737 return nil 9738 } 9739 9740 // SetMigrationId sets the MigrationId field's value. 9741 func (s *GetMigrationInput) SetMigrationId(v string) *GetMigrationInput { 9742 s.MigrationId = &v 9743 return s 9744 } 9745 9746 type GetMigrationOutput struct { 9747 _ struct{} `type:"structure"` 9748 9749 // A list of alerts and warnings that indicate issues with the migration for 9750 // the Amazon Lex V1 bot to Amazon Lex V2. You receive a warning when an Amazon 9751 // Lex V1 feature has a different implementation if Amazon Lex V2. 9752 // 9753 // For more information, see Migrating a bot (https://docs.aws.amazon.com/lexv2/latest/dg/migrate.html) 9754 // in the Amazon Lex V2 developer guide. 9755 Alerts []*MigrationAlert `locationName:"alerts" type:"list"` 9756 9757 // The unique identifier of the migration. This is the same as the identifier 9758 // used when calling the GetMigration operation. 9759 MigrationId *string `locationName:"migrationId" min:"10" type:"string"` 9760 9761 // Indicates the status of the migration. When the status is COMPLETE the migration 9762 // is finished and the bot is available in Amazon Lex V2. There may be alerts 9763 // and warnings that need to be resolved to complete the migration. 9764 MigrationStatus *string `locationName:"migrationStatus" type:"string" enum:"MigrationStatus"` 9765 9766 // The strategy used to conduct the migration. 9767 // 9768 // * CREATE_NEW - Creates a new Amazon Lex V2 bot and migrates the Amazon 9769 // Lex V1 bot to the new bot. 9770 // 9771 // * UPDATE_EXISTING - Overwrites the existing Amazon Lex V2 bot metadata 9772 // and the locale being migrated. It doesn't change any other locales in 9773 // the Amazon Lex V2 bot. If the locale doesn't exist, a new locale is created 9774 // in the Amazon Lex V2 bot. 9775 MigrationStrategy *string `locationName:"migrationStrategy" type:"string" enum:"MigrationStrategy"` 9776 9777 // The date and time that the migration started. 9778 MigrationTimestamp *time.Time `locationName:"migrationTimestamp" type:"timestamp"` 9779 9780 // The locale of the Amazon Lex V1 bot migrated to Amazon Lex V2. 9781 V1BotLocale *string `locationName:"v1BotLocale" type:"string" enum:"Locale"` 9782 9783 // The name of the Amazon Lex V1 bot migrated to Amazon Lex V2. 9784 V1BotName *string `locationName:"v1BotName" min:"2" type:"string"` 9785 9786 // The version of the Amazon Lex V1 bot migrated to Amazon Lex V2. 9787 V1BotVersion *string `locationName:"v1BotVersion" min:"1" type:"string"` 9788 9789 // The unique identifier of the Amazon Lex V2 bot that the Amazon Lex V1 is 9790 // being migrated to. 9791 V2BotId *string `locationName:"v2BotId" min:"10" type:"string"` 9792 9793 // The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot. 9794 V2BotRole *string `locationName:"v2BotRole" min:"20" type:"string"` 9795 } 9796 9797 // String returns the string representation. 9798 // 9799 // API parameter values that are decorated as "sensitive" in the API will not 9800 // be included in the string output. The member name will be present, but the 9801 // value will be replaced with "sensitive". 9802 func (s GetMigrationOutput) String() string { 9803 return awsutil.Prettify(s) 9804 } 9805 9806 // GoString returns the string representation. 9807 // 9808 // API parameter values that are decorated as "sensitive" in the API will not 9809 // be included in the string output. The member name will be present, but the 9810 // value will be replaced with "sensitive". 9811 func (s GetMigrationOutput) GoString() string { 9812 return s.String() 9813 } 9814 9815 // SetAlerts sets the Alerts field's value. 9816 func (s *GetMigrationOutput) SetAlerts(v []*MigrationAlert) *GetMigrationOutput { 9817 s.Alerts = v 9818 return s 9819 } 9820 9821 // SetMigrationId sets the MigrationId field's value. 9822 func (s *GetMigrationOutput) SetMigrationId(v string) *GetMigrationOutput { 9823 s.MigrationId = &v 9824 return s 9825 } 9826 9827 // SetMigrationStatus sets the MigrationStatus field's value. 9828 func (s *GetMigrationOutput) SetMigrationStatus(v string) *GetMigrationOutput { 9829 s.MigrationStatus = &v 9830 return s 9831 } 9832 9833 // SetMigrationStrategy sets the MigrationStrategy field's value. 9834 func (s *GetMigrationOutput) SetMigrationStrategy(v string) *GetMigrationOutput { 9835 s.MigrationStrategy = &v 9836 return s 9837 } 9838 9839 // SetMigrationTimestamp sets the MigrationTimestamp field's value. 9840 func (s *GetMigrationOutput) SetMigrationTimestamp(v time.Time) *GetMigrationOutput { 9841 s.MigrationTimestamp = &v 9842 return s 9843 } 9844 9845 // SetV1BotLocale sets the V1BotLocale field's value. 9846 func (s *GetMigrationOutput) SetV1BotLocale(v string) *GetMigrationOutput { 9847 s.V1BotLocale = &v 9848 return s 9849 } 9850 9851 // SetV1BotName sets the V1BotName field's value. 9852 func (s *GetMigrationOutput) SetV1BotName(v string) *GetMigrationOutput { 9853 s.V1BotName = &v 9854 return s 9855 } 9856 9857 // SetV1BotVersion sets the V1BotVersion field's value. 9858 func (s *GetMigrationOutput) SetV1BotVersion(v string) *GetMigrationOutput { 9859 s.V1BotVersion = &v 9860 return s 9861 } 9862 9863 // SetV2BotId sets the V2BotId field's value. 9864 func (s *GetMigrationOutput) SetV2BotId(v string) *GetMigrationOutput { 9865 s.V2BotId = &v 9866 return s 9867 } 9868 9869 // SetV2BotRole sets the V2BotRole field's value. 9870 func (s *GetMigrationOutput) SetV2BotRole(v string) *GetMigrationOutput { 9871 s.V2BotRole = &v 9872 return s 9873 } 9874 9875 type GetMigrationsInput struct { 9876 _ struct{} `type:"structure" nopayload:"true"` 9877 9878 // The maximum number of migrations to return in the response. The default is 9879 // 10. 9880 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 9881 9882 // Filters the list to contain only migrations in the specified state. 9883 MigrationStatusEquals *string `location:"querystring" locationName:"migrationStatusEquals" type:"string" enum:"MigrationStatus"` 9884 9885 // A pagination token that fetches the next page of migrations. If the response 9886 // to this operation is truncated, Amazon Lex returns a pagination token in 9887 // the response. To fetch the next page of migrations, specify the pagination 9888 // token in the request. 9889 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 9890 9891 // The field to sort the list of migrations by. You can sort by the Amazon Lex 9892 // V1 bot name or the date and time that the migration was started. 9893 SortByAttribute *string `location:"querystring" locationName:"sortByAttribute" type:"string" enum:"MigrationSortAttribute"` 9894 9895 // The order so sort the list. 9896 SortByOrder *string `location:"querystring" locationName:"sortByOrder" type:"string" enum:"SortOrder"` 9897 9898 // Filters the list to contain only bots whose name contains the specified string. 9899 // The string is matched anywhere in bot name. 9900 V1BotNameContains *string `location:"querystring" locationName:"v1BotNameContains" min:"2" type:"string"` 9901 } 9902 9903 // String returns the string representation. 9904 // 9905 // API parameter values that are decorated as "sensitive" in the API will not 9906 // be included in the string output. The member name will be present, but the 9907 // value will be replaced with "sensitive". 9908 func (s GetMigrationsInput) String() string { 9909 return awsutil.Prettify(s) 9910 } 9911 9912 // GoString returns the string representation. 9913 // 9914 // API parameter values that are decorated as "sensitive" in the API will not 9915 // be included in the string output. The member name will be present, but the 9916 // value will be replaced with "sensitive". 9917 func (s GetMigrationsInput) GoString() string { 9918 return s.String() 9919 } 9920 9921 // Validate inspects the fields of the type to determine if they are valid. 9922 func (s *GetMigrationsInput) Validate() error { 9923 invalidParams := request.ErrInvalidParams{Context: "GetMigrationsInput"} 9924 if s.MaxResults != nil && *s.MaxResults < 1 { 9925 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 9926 } 9927 if s.V1BotNameContains != nil && len(*s.V1BotNameContains) < 2 { 9928 invalidParams.Add(request.NewErrParamMinLen("V1BotNameContains", 2)) 9929 } 9930 9931 if invalidParams.Len() > 0 { 9932 return invalidParams 9933 } 9934 return nil 9935 } 9936 9937 // SetMaxResults sets the MaxResults field's value. 9938 func (s *GetMigrationsInput) SetMaxResults(v int64) *GetMigrationsInput { 9939 s.MaxResults = &v 9940 return s 9941 } 9942 9943 // SetMigrationStatusEquals sets the MigrationStatusEquals field's value. 9944 func (s *GetMigrationsInput) SetMigrationStatusEquals(v string) *GetMigrationsInput { 9945 s.MigrationStatusEquals = &v 9946 return s 9947 } 9948 9949 // SetNextToken sets the NextToken field's value. 9950 func (s *GetMigrationsInput) SetNextToken(v string) *GetMigrationsInput { 9951 s.NextToken = &v 9952 return s 9953 } 9954 9955 // SetSortByAttribute sets the SortByAttribute field's value. 9956 func (s *GetMigrationsInput) SetSortByAttribute(v string) *GetMigrationsInput { 9957 s.SortByAttribute = &v 9958 return s 9959 } 9960 9961 // SetSortByOrder sets the SortByOrder field's value. 9962 func (s *GetMigrationsInput) SetSortByOrder(v string) *GetMigrationsInput { 9963 s.SortByOrder = &v 9964 return s 9965 } 9966 9967 // SetV1BotNameContains sets the V1BotNameContains field's value. 9968 func (s *GetMigrationsInput) SetV1BotNameContains(v string) *GetMigrationsInput { 9969 s.V1BotNameContains = &v 9970 return s 9971 } 9972 9973 type GetMigrationsOutput struct { 9974 _ struct{} `type:"structure"` 9975 9976 // An array of summaries for migrations from Amazon Lex V1 to Amazon Lex V2. 9977 // To see details of the migration, use the migrationId from the summary in 9978 // a call to the operation. 9979 MigrationSummaries []*MigrationSummary `locationName:"migrationSummaries" type:"list"` 9980 9981 // If the response is truncated, it includes a pagination token that you can 9982 // specify in your next request to fetch the next page of migrations. 9983 NextToken *string `locationName:"nextToken" type:"string"` 9984 } 9985 9986 // String returns the string representation. 9987 // 9988 // API parameter values that are decorated as "sensitive" in the API will not 9989 // be included in the string output. The member name will be present, but the 9990 // value will be replaced with "sensitive". 9991 func (s GetMigrationsOutput) String() string { 9992 return awsutil.Prettify(s) 9993 } 9994 9995 // GoString returns the string representation. 9996 // 9997 // API parameter values that are decorated as "sensitive" in the API will not 9998 // be included in the string output. The member name will be present, but the 9999 // value will be replaced with "sensitive". 10000 func (s GetMigrationsOutput) GoString() string { 10001 return s.String() 10002 } 10003 10004 // SetMigrationSummaries sets the MigrationSummaries field's value. 10005 func (s *GetMigrationsOutput) SetMigrationSummaries(v []*MigrationSummary) *GetMigrationsOutput { 10006 s.MigrationSummaries = v 10007 return s 10008 } 10009 10010 // SetNextToken sets the NextToken field's value. 10011 func (s *GetMigrationsOutput) SetNextToken(v string) *GetMigrationsOutput { 10012 s.NextToken = &v 10013 return s 10014 } 10015 10016 type GetSlotTypeInput struct { 10017 _ struct{} `type:"structure" nopayload:"true"` 10018 10019 // The name of the slot type. The name is case sensitive. 10020 // 10021 // Name is a required field 10022 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 10023 10024 // The version of the slot type. 10025 // 10026 // Version is a required field 10027 Version *string `location:"uri" locationName:"version" min:"1" type:"string" required:"true"` 10028 } 10029 10030 // String returns the string representation. 10031 // 10032 // API parameter values that are decorated as "sensitive" in the API will not 10033 // be included in the string output. The member name will be present, but the 10034 // value will be replaced with "sensitive". 10035 func (s GetSlotTypeInput) String() string { 10036 return awsutil.Prettify(s) 10037 } 10038 10039 // GoString returns the string representation. 10040 // 10041 // API parameter values that are decorated as "sensitive" in the API will not 10042 // be included in the string output. The member name will be present, but the 10043 // value will be replaced with "sensitive". 10044 func (s GetSlotTypeInput) GoString() string { 10045 return s.String() 10046 } 10047 10048 // Validate inspects the fields of the type to determine if they are valid. 10049 func (s *GetSlotTypeInput) Validate() error { 10050 invalidParams := request.ErrInvalidParams{Context: "GetSlotTypeInput"} 10051 if s.Name == nil { 10052 invalidParams.Add(request.NewErrParamRequired("Name")) 10053 } 10054 if s.Name != nil && len(*s.Name) < 1 { 10055 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 10056 } 10057 if s.Version == nil { 10058 invalidParams.Add(request.NewErrParamRequired("Version")) 10059 } 10060 if s.Version != nil && len(*s.Version) < 1 { 10061 invalidParams.Add(request.NewErrParamMinLen("Version", 1)) 10062 } 10063 10064 if invalidParams.Len() > 0 { 10065 return invalidParams 10066 } 10067 return nil 10068 } 10069 10070 // SetName sets the Name field's value. 10071 func (s *GetSlotTypeInput) SetName(v string) *GetSlotTypeInput { 10072 s.Name = &v 10073 return s 10074 } 10075 10076 // SetVersion sets the Version field's value. 10077 func (s *GetSlotTypeInput) SetVersion(v string) *GetSlotTypeInput { 10078 s.Version = &v 10079 return s 10080 } 10081 10082 type GetSlotTypeOutput struct { 10083 _ struct{} `type:"structure"` 10084 10085 // Checksum of the $LATEST version of the slot type. 10086 Checksum *string `locationName:"checksum" type:"string"` 10087 10088 // The date that the slot type was created. 10089 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 10090 10091 // A description of the slot type. 10092 Description *string `locationName:"description" type:"string"` 10093 10094 // A list of EnumerationValue objects that defines the values that the slot 10095 // type can take. 10096 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 10097 10098 // The date that the slot type was updated. When you create a resource, the 10099 // creation date and last update date are the same. 10100 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 10101 10102 // The name of the slot type. 10103 Name *string `locationName:"name" min:"1" type:"string"` 10104 10105 // The built-in slot type used as a parent for the slot type. 10106 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 10107 10108 // Configuration information that extends the parent built-in slot type. 10109 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 10110 10111 // The strategy that Amazon Lex uses to determine the value of the slot. For 10112 // more information, see PutSlotType. 10113 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 10114 10115 // The version of the slot type. 10116 Version *string `locationName:"version" min:"1" type:"string"` 10117 } 10118 10119 // String returns the string representation. 10120 // 10121 // API parameter values that are decorated as "sensitive" in the API will not 10122 // be included in the string output. The member name will be present, but the 10123 // value will be replaced with "sensitive". 10124 func (s GetSlotTypeOutput) String() string { 10125 return awsutil.Prettify(s) 10126 } 10127 10128 // GoString returns the string representation. 10129 // 10130 // API parameter values that are decorated as "sensitive" in the API will not 10131 // be included in the string output. The member name will be present, but the 10132 // value will be replaced with "sensitive". 10133 func (s GetSlotTypeOutput) GoString() string { 10134 return s.String() 10135 } 10136 10137 // SetChecksum sets the Checksum field's value. 10138 func (s *GetSlotTypeOutput) SetChecksum(v string) *GetSlotTypeOutput { 10139 s.Checksum = &v 10140 return s 10141 } 10142 10143 // SetCreatedDate sets the CreatedDate field's value. 10144 func (s *GetSlotTypeOutput) SetCreatedDate(v time.Time) *GetSlotTypeOutput { 10145 s.CreatedDate = &v 10146 return s 10147 } 10148 10149 // SetDescription sets the Description field's value. 10150 func (s *GetSlotTypeOutput) SetDescription(v string) *GetSlotTypeOutput { 10151 s.Description = &v 10152 return s 10153 } 10154 10155 // SetEnumerationValues sets the EnumerationValues field's value. 10156 func (s *GetSlotTypeOutput) SetEnumerationValues(v []*EnumerationValue) *GetSlotTypeOutput { 10157 s.EnumerationValues = v 10158 return s 10159 } 10160 10161 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 10162 func (s *GetSlotTypeOutput) SetLastUpdatedDate(v time.Time) *GetSlotTypeOutput { 10163 s.LastUpdatedDate = &v 10164 return s 10165 } 10166 10167 // SetName sets the Name field's value. 10168 func (s *GetSlotTypeOutput) SetName(v string) *GetSlotTypeOutput { 10169 s.Name = &v 10170 return s 10171 } 10172 10173 // SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 10174 func (s *GetSlotTypeOutput) SetParentSlotTypeSignature(v string) *GetSlotTypeOutput { 10175 s.ParentSlotTypeSignature = &v 10176 return s 10177 } 10178 10179 // SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 10180 func (s *GetSlotTypeOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *GetSlotTypeOutput { 10181 s.SlotTypeConfigurations = v 10182 return s 10183 } 10184 10185 // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 10186 func (s *GetSlotTypeOutput) SetValueSelectionStrategy(v string) *GetSlotTypeOutput { 10187 s.ValueSelectionStrategy = &v 10188 return s 10189 } 10190 10191 // SetVersion sets the Version field's value. 10192 func (s *GetSlotTypeOutput) SetVersion(v string) *GetSlotTypeOutput { 10193 s.Version = &v 10194 return s 10195 } 10196 10197 type GetSlotTypeVersionsInput struct { 10198 _ struct{} `type:"structure" nopayload:"true"` 10199 10200 // The maximum number of slot type versions to return in the response. The default 10201 // is 10. 10202 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 10203 10204 // The name of the slot type for which versions should be returned. 10205 // 10206 // Name is a required field 10207 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 10208 10209 // A pagination token for fetching the next page of slot type versions. If the 10210 // response to this call is truncated, Amazon Lex returns a pagination token 10211 // in the response. To fetch the next page of versions, specify the pagination 10212 // token in the next request. 10213 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 10214 } 10215 10216 // String returns the string representation. 10217 // 10218 // API parameter values that are decorated as "sensitive" in the API will not 10219 // be included in the string output. The member name will be present, but the 10220 // value will be replaced with "sensitive". 10221 func (s GetSlotTypeVersionsInput) String() string { 10222 return awsutil.Prettify(s) 10223 } 10224 10225 // GoString returns the string representation. 10226 // 10227 // API parameter values that are decorated as "sensitive" in the API will not 10228 // be included in the string output. The member name will be present, but the 10229 // value will be replaced with "sensitive". 10230 func (s GetSlotTypeVersionsInput) GoString() string { 10231 return s.String() 10232 } 10233 10234 // Validate inspects the fields of the type to determine if they are valid. 10235 func (s *GetSlotTypeVersionsInput) Validate() error { 10236 invalidParams := request.ErrInvalidParams{Context: "GetSlotTypeVersionsInput"} 10237 if s.MaxResults != nil && *s.MaxResults < 1 { 10238 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 10239 } 10240 if s.Name == nil { 10241 invalidParams.Add(request.NewErrParamRequired("Name")) 10242 } 10243 if s.Name != nil && len(*s.Name) < 1 { 10244 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 10245 } 10246 10247 if invalidParams.Len() > 0 { 10248 return invalidParams 10249 } 10250 return nil 10251 } 10252 10253 // SetMaxResults sets the MaxResults field's value. 10254 func (s *GetSlotTypeVersionsInput) SetMaxResults(v int64) *GetSlotTypeVersionsInput { 10255 s.MaxResults = &v 10256 return s 10257 } 10258 10259 // SetName sets the Name field's value. 10260 func (s *GetSlotTypeVersionsInput) SetName(v string) *GetSlotTypeVersionsInput { 10261 s.Name = &v 10262 return s 10263 } 10264 10265 // SetNextToken sets the NextToken field's value. 10266 func (s *GetSlotTypeVersionsInput) SetNextToken(v string) *GetSlotTypeVersionsInput { 10267 s.NextToken = &v 10268 return s 10269 } 10270 10271 type GetSlotTypeVersionsOutput struct { 10272 _ struct{} `type:"structure"` 10273 10274 // A pagination token for fetching the next page of slot type versions. If the 10275 // response to this call is truncated, Amazon Lex returns a pagination token 10276 // in the response. To fetch the next page of versions, specify the pagination 10277 // token in the next request. 10278 NextToken *string `locationName:"nextToken" type:"string"` 10279 10280 // An array of SlotTypeMetadata objects, one for each numbered version of the 10281 // slot type plus one for the $LATEST version. 10282 SlotTypes []*SlotTypeMetadata `locationName:"slotTypes" type:"list"` 10283 } 10284 10285 // String returns the string representation. 10286 // 10287 // API parameter values that are decorated as "sensitive" in the API will not 10288 // be included in the string output. The member name will be present, but the 10289 // value will be replaced with "sensitive". 10290 func (s GetSlotTypeVersionsOutput) String() string { 10291 return awsutil.Prettify(s) 10292 } 10293 10294 // GoString returns the string representation. 10295 // 10296 // API parameter values that are decorated as "sensitive" in the API will not 10297 // be included in the string output. The member name will be present, but the 10298 // value will be replaced with "sensitive". 10299 func (s GetSlotTypeVersionsOutput) GoString() string { 10300 return s.String() 10301 } 10302 10303 // SetNextToken sets the NextToken field's value. 10304 func (s *GetSlotTypeVersionsOutput) SetNextToken(v string) *GetSlotTypeVersionsOutput { 10305 s.NextToken = &v 10306 return s 10307 } 10308 10309 // SetSlotTypes sets the SlotTypes field's value. 10310 func (s *GetSlotTypeVersionsOutput) SetSlotTypes(v []*SlotTypeMetadata) *GetSlotTypeVersionsOutput { 10311 s.SlotTypes = v 10312 return s 10313 } 10314 10315 type GetSlotTypesInput struct { 10316 _ struct{} `type:"structure" nopayload:"true"` 10317 10318 // The maximum number of slot types to return in the response. The default is 10319 // 10. 10320 MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` 10321 10322 // Substring to match in slot type names. A slot type will be returned if any 10323 // part of its name matches the substring. For example, "xyz" matches both "xyzabc" 10324 // and "abcxyz." 10325 NameContains *string `location:"querystring" locationName:"nameContains" min:"1" type:"string"` 10326 10327 // A pagination token that fetches the next page of slot types. If the response 10328 // to this API call is truncated, Amazon Lex returns a pagination token in the 10329 // response. To fetch next page of slot types, specify the pagination token 10330 // in the next request. 10331 NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` 10332 } 10333 10334 // String returns the string representation. 10335 // 10336 // API parameter values that are decorated as "sensitive" in the API will not 10337 // be included in the string output. The member name will be present, but the 10338 // value will be replaced with "sensitive". 10339 func (s GetSlotTypesInput) String() string { 10340 return awsutil.Prettify(s) 10341 } 10342 10343 // GoString returns the string representation. 10344 // 10345 // API parameter values that are decorated as "sensitive" in the API will not 10346 // be included in the string output. The member name will be present, but the 10347 // value will be replaced with "sensitive". 10348 func (s GetSlotTypesInput) GoString() string { 10349 return s.String() 10350 } 10351 10352 // Validate inspects the fields of the type to determine if they are valid. 10353 func (s *GetSlotTypesInput) Validate() error { 10354 invalidParams := request.ErrInvalidParams{Context: "GetSlotTypesInput"} 10355 if s.MaxResults != nil && *s.MaxResults < 1 { 10356 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 10357 } 10358 if s.NameContains != nil && len(*s.NameContains) < 1 { 10359 invalidParams.Add(request.NewErrParamMinLen("NameContains", 1)) 10360 } 10361 10362 if invalidParams.Len() > 0 { 10363 return invalidParams 10364 } 10365 return nil 10366 } 10367 10368 // SetMaxResults sets the MaxResults field's value. 10369 func (s *GetSlotTypesInput) SetMaxResults(v int64) *GetSlotTypesInput { 10370 s.MaxResults = &v 10371 return s 10372 } 10373 10374 // SetNameContains sets the NameContains field's value. 10375 func (s *GetSlotTypesInput) SetNameContains(v string) *GetSlotTypesInput { 10376 s.NameContains = &v 10377 return s 10378 } 10379 10380 // SetNextToken sets the NextToken field's value. 10381 func (s *GetSlotTypesInput) SetNextToken(v string) *GetSlotTypesInput { 10382 s.NextToken = &v 10383 return s 10384 } 10385 10386 type GetSlotTypesOutput struct { 10387 _ struct{} `type:"structure"` 10388 10389 // If the response is truncated, it includes a pagination token that you can 10390 // specify in your next request to fetch the next page of slot types. 10391 NextToken *string `locationName:"nextToken" type:"string"` 10392 10393 // An array of objects, one for each slot type, that provides information such 10394 // as the name of the slot type, the version, and a description. 10395 SlotTypes []*SlotTypeMetadata `locationName:"slotTypes" type:"list"` 10396 } 10397 10398 // String returns the string representation. 10399 // 10400 // API parameter values that are decorated as "sensitive" in the API will not 10401 // be included in the string output. The member name will be present, but the 10402 // value will be replaced with "sensitive". 10403 func (s GetSlotTypesOutput) String() string { 10404 return awsutil.Prettify(s) 10405 } 10406 10407 // GoString returns the string representation. 10408 // 10409 // API parameter values that are decorated as "sensitive" in the API will not 10410 // be included in the string output. The member name will be present, but the 10411 // value will be replaced with "sensitive". 10412 func (s GetSlotTypesOutput) GoString() string { 10413 return s.String() 10414 } 10415 10416 // SetNextToken sets the NextToken field's value. 10417 func (s *GetSlotTypesOutput) SetNextToken(v string) *GetSlotTypesOutput { 10418 s.NextToken = &v 10419 return s 10420 } 10421 10422 // SetSlotTypes sets the SlotTypes field's value. 10423 func (s *GetSlotTypesOutput) SetSlotTypes(v []*SlotTypeMetadata) *GetSlotTypesOutput { 10424 s.SlotTypes = v 10425 return s 10426 } 10427 10428 type GetUtterancesViewInput struct { 10429 _ struct{} `type:"structure" nopayload:"true"` 10430 10431 // The name of the bot for which utterance information should be returned. 10432 // 10433 // BotName is a required field 10434 BotName *string `location:"uri" locationName:"botname" min:"2" type:"string" required:"true"` 10435 10436 // An array of bot versions for which utterance information should be returned. 10437 // The limit is 5 versions per request. 10438 // 10439 // BotVersions is a required field 10440 BotVersions []*string `location:"querystring" locationName:"bot_versions" min:"1" type:"list" required:"true"` 10441 10442 // To return utterances that were recognized and handled, use Detected. To return 10443 // utterances that were not recognized, use Missed. 10444 // 10445 // StatusType is a required field 10446 StatusType *string `location:"querystring" locationName:"status_type" type:"string" required:"true" enum:"StatusType"` 10447 } 10448 10449 // String returns the string representation. 10450 // 10451 // API parameter values that are decorated as "sensitive" in the API will not 10452 // be included in the string output. The member name will be present, but the 10453 // value will be replaced with "sensitive". 10454 func (s GetUtterancesViewInput) String() string { 10455 return awsutil.Prettify(s) 10456 } 10457 10458 // GoString returns the string representation. 10459 // 10460 // API parameter values that are decorated as "sensitive" in the API will not 10461 // be included in the string output. The member name will be present, but the 10462 // value will be replaced with "sensitive". 10463 func (s GetUtterancesViewInput) GoString() string { 10464 return s.String() 10465 } 10466 10467 // Validate inspects the fields of the type to determine if they are valid. 10468 func (s *GetUtterancesViewInput) Validate() error { 10469 invalidParams := request.ErrInvalidParams{Context: "GetUtterancesViewInput"} 10470 if s.BotName == nil { 10471 invalidParams.Add(request.NewErrParamRequired("BotName")) 10472 } 10473 if s.BotName != nil && len(*s.BotName) < 2 { 10474 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 10475 } 10476 if s.BotVersions == nil { 10477 invalidParams.Add(request.NewErrParamRequired("BotVersions")) 10478 } 10479 if s.BotVersions != nil && len(s.BotVersions) < 1 { 10480 invalidParams.Add(request.NewErrParamMinLen("BotVersions", 1)) 10481 } 10482 if s.StatusType == nil { 10483 invalidParams.Add(request.NewErrParamRequired("StatusType")) 10484 } 10485 10486 if invalidParams.Len() > 0 { 10487 return invalidParams 10488 } 10489 return nil 10490 } 10491 10492 // SetBotName sets the BotName field's value. 10493 func (s *GetUtterancesViewInput) SetBotName(v string) *GetUtterancesViewInput { 10494 s.BotName = &v 10495 return s 10496 } 10497 10498 // SetBotVersions sets the BotVersions field's value. 10499 func (s *GetUtterancesViewInput) SetBotVersions(v []*string) *GetUtterancesViewInput { 10500 s.BotVersions = v 10501 return s 10502 } 10503 10504 // SetStatusType sets the StatusType field's value. 10505 func (s *GetUtterancesViewInput) SetStatusType(v string) *GetUtterancesViewInput { 10506 s.StatusType = &v 10507 return s 10508 } 10509 10510 type GetUtterancesViewOutput struct { 10511 _ struct{} `type:"structure"` 10512 10513 // The name of the bot for which utterance information was returned. 10514 BotName *string `locationName:"botName" min:"2" type:"string"` 10515 10516 // An array of UtteranceList objects, each containing a list of UtteranceData 10517 // objects describing the utterances that were processed by your bot. The response 10518 // contains a maximum of 100 UtteranceData objects for each version. Amazon 10519 // Lex returns the most frequent utterances received by the bot in the last 10520 // 15 days. 10521 Utterances []*UtteranceList `locationName:"utterances" type:"list"` 10522 } 10523 10524 // String returns the string representation. 10525 // 10526 // API parameter values that are decorated as "sensitive" in the API will not 10527 // be included in the string output. The member name will be present, but the 10528 // value will be replaced with "sensitive". 10529 func (s GetUtterancesViewOutput) String() string { 10530 return awsutil.Prettify(s) 10531 } 10532 10533 // GoString returns the string representation. 10534 // 10535 // API parameter values that are decorated as "sensitive" in the API will not 10536 // be included in the string output. The member name will be present, but the 10537 // value will be replaced with "sensitive". 10538 func (s GetUtterancesViewOutput) GoString() string { 10539 return s.String() 10540 } 10541 10542 // SetBotName sets the BotName field's value. 10543 func (s *GetUtterancesViewOutput) SetBotName(v string) *GetUtterancesViewOutput { 10544 s.BotName = &v 10545 return s 10546 } 10547 10548 // SetUtterances sets the Utterances field's value. 10549 func (s *GetUtterancesViewOutput) SetUtterances(v []*UtteranceList) *GetUtterancesViewOutput { 10550 s.Utterances = v 10551 return s 10552 } 10553 10554 // The name of a context that must be active for an intent to be selected by 10555 // Amazon Lex. 10556 type InputContext struct { 10557 _ struct{} `type:"structure"` 10558 10559 // The name of the context. 10560 // 10561 // Name is a required field 10562 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 10563 } 10564 10565 // String returns the string representation. 10566 // 10567 // API parameter values that are decorated as "sensitive" in the API will not 10568 // be included in the string output. The member name will be present, but the 10569 // value will be replaced with "sensitive". 10570 func (s InputContext) String() string { 10571 return awsutil.Prettify(s) 10572 } 10573 10574 // GoString returns the string representation. 10575 // 10576 // API parameter values that are decorated as "sensitive" in the API will not 10577 // be included in the string output. The member name will be present, but the 10578 // value will be replaced with "sensitive". 10579 func (s InputContext) GoString() string { 10580 return s.String() 10581 } 10582 10583 // Validate inspects the fields of the type to determine if they are valid. 10584 func (s *InputContext) Validate() error { 10585 invalidParams := request.ErrInvalidParams{Context: "InputContext"} 10586 if s.Name == nil { 10587 invalidParams.Add(request.NewErrParamRequired("Name")) 10588 } 10589 if s.Name != nil && len(*s.Name) < 1 { 10590 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 10591 } 10592 10593 if invalidParams.Len() > 0 { 10594 return invalidParams 10595 } 10596 return nil 10597 } 10598 10599 // SetName sets the Name field's value. 10600 func (s *InputContext) SetName(v string) *InputContext { 10601 s.Name = &v 10602 return s 10603 } 10604 10605 // Identifies the specific version of an intent. 10606 type Intent struct { 10607 _ struct{} `type:"structure"` 10608 10609 // The name of the intent. 10610 // 10611 // IntentName is a required field 10612 IntentName *string `locationName:"intentName" min:"1" type:"string" required:"true"` 10613 10614 // The version of the intent. 10615 // 10616 // IntentVersion is a required field 10617 IntentVersion *string `locationName:"intentVersion" min:"1" type:"string" required:"true"` 10618 } 10619 10620 // String returns the string representation. 10621 // 10622 // API parameter values that are decorated as "sensitive" in the API will not 10623 // be included in the string output. The member name will be present, but the 10624 // value will be replaced with "sensitive". 10625 func (s Intent) String() string { 10626 return awsutil.Prettify(s) 10627 } 10628 10629 // GoString returns the string representation. 10630 // 10631 // API parameter values that are decorated as "sensitive" in the API will not 10632 // be included in the string output. The member name will be present, but the 10633 // value will be replaced with "sensitive". 10634 func (s Intent) GoString() string { 10635 return s.String() 10636 } 10637 10638 // Validate inspects the fields of the type to determine if they are valid. 10639 func (s *Intent) Validate() error { 10640 invalidParams := request.ErrInvalidParams{Context: "Intent"} 10641 if s.IntentName == nil { 10642 invalidParams.Add(request.NewErrParamRequired("IntentName")) 10643 } 10644 if s.IntentName != nil && len(*s.IntentName) < 1 { 10645 invalidParams.Add(request.NewErrParamMinLen("IntentName", 1)) 10646 } 10647 if s.IntentVersion == nil { 10648 invalidParams.Add(request.NewErrParamRequired("IntentVersion")) 10649 } 10650 if s.IntentVersion != nil && len(*s.IntentVersion) < 1 { 10651 invalidParams.Add(request.NewErrParamMinLen("IntentVersion", 1)) 10652 } 10653 10654 if invalidParams.Len() > 0 { 10655 return invalidParams 10656 } 10657 return nil 10658 } 10659 10660 // SetIntentName sets the IntentName field's value. 10661 func (s *Intent) SetIntentName(v string) *Intent { 10662 s.IntentName = &v 10663 return s 10664 } 10665 10666 // SetIntentVersion sets the IntentVersion field's value. 10667 func (s *Intent) SetIntentVersion(v string) *Intent { 10668 s.IntentVersion = &v 10669 return s 10670 } 10671 10672 // Provides information about an intent. 10673 type IntentMetadata struct { 10674 _ struct{} `type:"structure"` 10675 10676 // The date that the intent was created. 10677 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 10678 10679 // A description of the intent. 10680 Description *string `locationName:"description" type:"string"` 10681 10682 // The date that the intent was updated. When you create an intent, the creation 10683 // date and last updated date are the same. 10684 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 10685 10686 // The name of the intent. 10687 Name *string `locationName:"name" min:"1" type:"string"` 10688 10689 // The version of the intent. 10690 Version *string `locationName:"version" min:"1" type:"string"` 10691 } 10692 10693 // String returns the string representation. 10694 // 10695 // API parameter values that are decorated as "sensitive" in the API will not 10696 // be included in the string output. The member name will be present, but the 10697 // value will be replaced with "sensitive". 10698 func (s IntentMetadata) String() string { 10699 return awsutil.Prettify(s) 10700 } 10701 10702 // GoString returns the string representation. 10703 // 10704 // API parameter values that are decorated as "sensitive" in the API will not 10705 // be included in the string output. The member name will be present, but the 10706 // value will be replaced with "sensitive". 10707 func (s IntentMetadata) GoString() string { 10708 return s.String() 10709 } 10710 10711 // SetCreatedDate sets the CreatedDate field's value. 10712 func (s *IntentMetadata) SetCreatedDate(v time.Time) *IntentMetadata { 10713 s.CreatedDate = &v 10714 return s 10715 } 10716 10717 // SetDescription sets the Description field's value. 10718 func (s *IntentMetadata) SetDescription(v string) *IntentMetadata { 10719 s.Description = &v 10720 return s 10721 } 10722 10723 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 10724 func (s *IntentMetadata) SetLastUpdatedDate(v time.Time) *IntentMetadata { 10725 s.LastUpdatedDate = &v 10726 return s 10727 } 10728 10729 // SetName sets the Name field's value. 10730 func (s *IntentMetadata) SetName(v string) *IntentMetadata { 10731 s.Name = &v 10732 return s 10733 } 10734 10735 // SetVersion sets the Version field's value. 10736 func (s *IntentMetadata) SetVersion(v string) *IntentMetadata { 10737 s.Version = &v 10738 return s 10739 } 10740 10741 // An internal Amazon Lex error occurred. Try your request again. 10742 type InternalFailureException struct { 10743 _ struct{} `type:"structure"` 10744 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10745 10746 Message_ *string `locationName:"message" type:"string"` 10747 } 10748 10749 // String returns the string representation. 10750 // 10751 // API parameter values that are decorated as "sensitive" in the API will not 10752 // be included in the string output. The member name will be present, but the 10753 // value will be replaced with "sensitive". 10754 func (s InternalFailureException) String() string { 10755 return awsutil.Prettify(s) 10756 } 10757 10758 // GoString returns the string representation. 10759 // 10760 // API parameter values that are decorated as "sensitive" in the API will not 10761 // be included in the string output. The member name will be present, but the 10762 // value will be replaced with "sensitive". 10763 func (s InternalFailureException) GoString() string { 10764 return s.String() 10765 } 10766 10767 func newErrorInternalFailureException(v protocol.ResponseMetadata) error { 10768 return &InternalFailureException{ 10769 RespMetadata: v, 10770 } 10771 } 10772 10773 // Code returns the exception type name. 10774 func (s *InternalFailureException) Code() string { 10775 return "InternalFailureException" 10776 } 10777 10778 // Message returns the exception's message. 10779 func (s *InternalFailureException) Message() string { 10780 if s.Message_ != nil { 10781 return *s.Message_ 10782 } 10783 return "" 10784 } 10785 10786 // OrigErr always returns nil, satisfies awserr.Error interface. 10787 func (s *InternalFailureException) OrigErr() error { 10788 return nil 10789 } 10790 10791 func (s *InternalFailureException) Error() string { 10792 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 10793 } 10794 10795 // Status code returns the HTTP status code for the request's response error. 10796 func (s *InternalFailureException) StatusCode() int { 10797 return s.RespMetadata.StatusCode 10798 } 10799 10800 // RequestID returns the service's response RequestID for request. 10801 func (s *InternalFailureException) RequestID() string { 10802 return s.RespMetadata.RequestID 10803 } 10804 10805 // Provides configuration information for the AMAZON.KendraSearchIntent intent. 10806 // When you use this intent, Amazon Lex searches the specified Amazon Kendra 10807 // index and returns documents from the index that match the user's utterance. 10808 // For more information, see AMAZON.KendraSearchIntent (http://docs.aws.amazon.com/lex/latest/dg/built-in-intent-kendra-search.html). 10809 type KendraConfiguration struct { 10810 _ struct{} `type:"structure"` 10811 10812 // The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the 10813 // AMAZON.KendraSearchIntent intent to search. The index must be in the same 10814 // account and Region as the Amazon Lex bot. If the Amazon Kendra index does 10815 // not exist, you get an exception when you call the PutIntent operation. 10816 // 10817 // KendraIndex is a required field 10818 KendraIndex *string `locationName:"kendraIndex" min:"20" type:"string" required:"true"` 10819 10820 // A query filter that Amazon Lex sends to Amazon Kendra to filter the response 10821 // from the query. The filter is in the format defined by Amazon Kendra. For 10822 // more information, see Filtering queries (http://docs.aws.amazon.com/kendra/latest/dg/filtering.html). 10823 // 10824 // You can override this filter string with a new filter string at runtime. 10825 QueryFilterString *string `locationName:"queryFilterString" type:"string"` 10826 10827 // The Amazon Resource Name (ARN) of an IAM role that has permission to search 10828 // the Amazon Kendra index. The role must be in the same account and Region 10829 // as the Amazon Lex bot. If the role does not exist, you get an exception when 10830 // you call the PutIntent operation. 10831 // 10832 // Role is a required field 10833 Role *string `locationName:"role" min:"20" type:"string" required:"true"` 10834 } 10835 10836 // String returns the string representation. 10837 // 10838 // API parameter values that are decorated as "sensitive" in the API will not 10839 // be included in the string output. The member name will be present, but the 10840 // value will be replaced with "sensitive". 10841 func (s KendraConfiguration) String() string { 10842 return awsutil.Prettify(s) 10843 } 10844 10845 // GoString returns the string representation. 10846 // 10847 // API parameter values that are decorated as "sensitive" in the API will not 10848 // be included in the string output. The member name will be present, but the 10849 // value will be replaced with "sensitive". 10850 func (s KendraConfiguration) GoString() string { 10851 return s.String() 10852 } 10853 10854 // Validate inspects the fields of the type to determine if they are valid. 10855 func (s *KendraConfiguration) Validate() error { 10856 invalidParams := request.ErrInvalidParams{Context: "KendraConfiguration"} 10857 if s.KendraIndex == nil { 10858 invalidParams.Add(request.NewErrParamRequired("KendraIndex")) 10859 } 10860 if s.KendraIndex != nil && len(*s.KendraIndex) < 20 { 10861 invalidParams.Add(request.NewErrParamMinLen("KendraIndex", 20)) 10862 } 10863 if s.Role == nil { 10864 invalidParams.Add(request.NewErrParamRequired("Role")) 10865 } 10866 if s.Role != nil && len(*s.Role) < 20 { 10867 invalidParams.Add(request.NewErrParamMinLen("Role", 20)) 10868 } 10869 10870 if invalidParams.Len() > 0 { 10871 return invalidParams 10872 } 10873 return nil 10874 } 10875 10876 // SetKendraIndex sets the KendraIndex field's value. 10877 func (s *KendraConfiguration) SetKendraIndex(v string) *KendraConfiguration { 10878 s.KendraIndex = &v 10879 return s 10880 } 10881 10882 // SetQueryFilterString sets the QueryFilterString field's value. 10883 func (s *KendraConfiguration) SetQueryFilterString(v string) *KendraConfiguration { 10884 s.QueryFilterString = &v 10885 return s 10886 } 10887 10888 // SetRole sets the Role field's value. 10889 func (s *KendraConfiguration) SetRole(v string) *KendraConfiguration { 10890 s.Role = &v 10891 return s 10892 } 10893 10894 // The request exceeded a limit. Try your request again. 10895 type LimitExceededException struct { 10896 _ struct{} `type:"structure"` 10897 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10898 10899 Message_ *string `locationName:"message" type:"string"` 10900 10901 RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"` 10902 } 10903 10904 // String returns the string representation. 10905 // 10906 // API parameter values that are decorated as "sensitive" in the API will not 10907 // be included in the string output. The member name will be present, but the 10908 // value will be replaced with "sensitive". 10909 func (s LimitExceededException) String() string { 10910 return awsutil.Prettify(s) 10911 } 10912 10913 // GoString returns the string representation. 10914 // 10915 // API parameter values that are decorated as "sensitive" in the API will not 10916 // be included in the string output. The member name will be present, but the 10917 // value will be replaced with "sensitive". 10918 func (s LimitExceededException) GoString() string { 10919 return s.String() 10920 } 10921 10922 func newErrorLimitExceededException(v protocol.ResponseMetadata) error { 10923 return &LimitExceededException{ 10924 RespMetadata: v, 10925 } 10926 } 10927 10928 // Code returns the exception type name. 10929 func (s *LimitExceededException) Code() string { 10930 return "LimitExceededException" 10931 } 10932 10933 // Message returns the exception's message. 10934 func (s *LimitExceededException) Message() string { 10935 if s.Message_ != nil { 10936 return *s.Message_ 10937 } 10938 return "" 10939 } 10940 10941 // OrigErr always returns nil, satisfies awserr.Error interface. 10942 func (s *LimitExceededException) OrigErr() error { 10943 return nil 10944 } 10945 10946 func (s *LimitExceededException) Error() string { 10947 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10948 } 10949 10950 // Status code returns the HTTP status code for the request's response error. 10951 func (s *LimitExceededException) StatusCode() int { 10952 return s.RespMetadata.StatusCode 10953 } 10954 10955 // RequestID returns the service's response RequestID for request. 10956 func (s *LimitExceededException) RequestID() string { 10957 return s.RespMetadata.RequestID 10958 } 10959 10960 type ListTagsForResourceInput struct { 10961 _ struct{} `type:"structure" nopayload:"true"` 10962 10963 // The Amazon Resource Name (ARN) of the resource to get a list of tags for. 10964 // 10965 // ResourceArn is a required field 10966 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` 10967 } 10968 10969 // String returns the string representation. 10970 // 10971 // API parameter values that are decorated as "sensitive" in the API will not 10972 // be included in the string output. The member name will be present, but the 10973 // value will be replaced with "sensitive". 10974 func (s ListTagsForResourceInput) String() string { 10975 return awsutil.Prettify(s) 10976 } 10977 10978 // GoString returns the string representation. 10979 // 10980 // API parameter values that are decorated as "sensitive" in the API will not 10981 // be included in the string output. The member name will be present, but the 10982 // value will be replaced with "sensitive". 10983 func (s ListTagsForResourceInput) GoString() string { 10984 return s.String() 10985 } 10986 10987 // Validate inspects the fields of the type to determine if they are valid. 10988 func (s *ListTagsForResourceInput) Validate() error { 10989 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 10990 if s.ResourceArn == nil { 10991 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 10992 } 10993 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 10994 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 10995 } 10996 10997 if invalidParams.Len() > 0 { 10998 return invalidParams 10999 } 11000 return nil 11001 } 11002 11003 // SetResourceArn sets the ResourceArn field's value. 11004 func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { 11005 s.ResourceArn = &v 11006 return s 11007 } 11008 11009 type ListTagsForResourceOutput struct { 11010 _ struct{} `type:"structure"` 11011 11012 // The tags associated with a resource. 11013 Tags []*Tag `locationName:"tags" type:"list"` 11014 } 11015 11016 // String returns the string representation. 11017 // 11018 // API parameter values that are decorated as "sensitive" in the API will not 11019 // be included in the string output. The member name will be present, but the 11020 // value will be replaced with "sensitive". 11021 func (s ListTagsForResourceOutput) String() string { 11022 return awsutil.Prettify(s) 11023 } 11024 11025 // GoString returns the string representation. 11026 // 11027 // API parameter values that are decorated as "sensitive" in the API will not 11028 // be included in the string output. The member name will be present, but the 11029 // value will be replaced with "sensitive". 11030 func (s ListTagsForResourceOutput) GoString() string { 11031 return s.String() 11032 } 11033 11034 // SetTags sets the Tags field's value. 11035 func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { 11036 s.Tags = v 11037 return s 11038 } 11039 11040 // Settings used to configure delivery mode and destination for conversation 11041 // logs. 11042 type LogSettingsRequest struct { 11043 _ struct{} `type:"structure"` 11044 11045 // Where the logs will be delivered. Text logs are delivered to a CloudWatch 11046 // Logs log group. Audio logs are delivered to an S3 bucket. 11047 // 11048 // Destination is a required field 11049 Destination *string `locationName:"destination" type:"string" required:"true" enum:"Destination"` 11050 11051 // The Amazon Resource Name (ARN) of the AWS KMS customer managed key for encrypting 11052 // audio logs delivered to an S3 bucket. The key does not apply to CloudWatch 11053 // Logs and is optional for S3 buckets. 11054 KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` 11055 11056 // The type of logging to enable. Text logs are delivered to a CloudWatch Logs 11057 // log group. Audio logs are delivered to an S3 bucket. 11058 // 11059 // LogType is a required field 11060 LogType *string `locationName:"logType" type:"string" required:"true" enum:"LogType"` 11061 11062 // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket 11063 // where the logs should be delivered. 11064 // 11065 // ResourceArn is a required field 11066 ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` 11067 } 11068 11069 // String returns the string representation. 11070 // 11071 // API parameter values that are decorated as "sensitive" in the API will not 11072 // be included in the string output. The member name will be present, but the 11073 // value will be replaced with "sensitive". 11074 func (s LogSettingsRequest) String() string { 11075 return awsutil.Prettify(s) 11076 } 11077 11078 // GoString returns the string representation. 11079 // 11080 // API parameter values that are decorated as "sensitive" in the API will not 11081 // be included in the string output. The member name will be present, but the 11082 // value will be replaced with "sensitive". 11083 func (s LogSettingsRequest) GoString() string { 11084 return s.String() 11085 } 11086 11087 // Validate inspects the fields of the type to determine if they are valid. 11088 func (s *LogSettingsRequest) Validate() error { 11089 invalidParams := request.ErrInvalidParams{Context: "LogSettingsRequest"} 11090 if s.Destination == nil { 11091 invalidParams.Add(request.NewErrParamRequired("Destination")) 11092 } 11093 if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 20 { 11094 invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 20)) 11095 } 11096 if s.LogType == nil { 11097 invalidParams.Add(request.NewErrParamRequired("LogType")) 11098 } 11099 if s.ResourceArn == nil { 11100 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 11101 } 11102 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 11103 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 11104 } 11105 11106 if invalidParams.Len() > 0 { 11107 return invalidParams 11108 } 11109 return nil 11110 } 11111 11112 // SetDestination sets the Destination field's value. 11113 func (s *LogSettingsRequest) SetDestination(v string) *LogSettingsRequest { 11114 s.Destination = &v 11115 return s 11116 } 11117 11118 // SetKmsKeyArn sets the KmsKeyArn field's value. 11119 func (s *LogSettingsRequest) SetKmsKeyArn(v string) *LogSettingsRequest { 11120 s.KmsKeyArn = &v 11121 return s 11122 } 11123 11124 // SetLogType sets the LogType field's value. 11125 func (s *LogSettingsRequest) SetLogType(v string) *LogSettingsRequest { 11126 s.LogType = &v 11127 return s 11128 } 11129 11130 // SetResourceArn sets the ResourceArn field's value. 11131 func (s *LogSettingsRequest) SetResourceArn(v string) *LogSettingsRequest { 11132 s.ResourceArn = &v 11133 return s 11134 } 11135 11136 // The settings for conversation logs. 11137 type LogSettingsResponse struct { 11138 _ struct{} `type:"structure"` 11139 11140 // The destination where logs are delivered. 11141 Destination *string `locationName:"destination" type:"string" enum:"Destination"` 11142 11143 // The Amazon Resource Name (ARN) of the key used to encrypt audio logs in an 11144 // S3 bucket. 11145 KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` 11146 11147 // The type of logging that is enabled. 11148 LogType *string `locationName:"logType" type:"string" enum:"LogType"` 11149 11150 // The Amazon Resource Name (ARN) of the CloudWatch Logs log group or S3 bucket 11151 // where the logs are delivered. 11152 ResourceArn *string `locationName:"resourceArn" min:"1" type:"string"` 11153 11154 // The resource prefix is the first part of the S3 object key within the S3 11155 // bucket that you specified to contain audio logs. For CloudWatch Logs it is 11156 // the prefix of the log stream name within the log group that you specified. 11157 ResourcePrefix *string `locationName:"resourcePrefix" type:"string"` 11158 } 11159 11160 // String returns the string representation. 11161 // 11162 // API parameter values that are decorated as "sensitive" in the API will not 11163 // be included in the string output. The member name will be present, but the 11164 // value will be replaced with "sensitive". 11165 func (s LogSettingsResponse) String() string { 11166 return awsutil.Prettify(s) 11167 } 11168 11169 // GoString returns the string representation. 11170 // 11171 // API parameter values that are decorated as "sensitive" in the API will not 11172 // be included in the string output. The member name will be present, but the 11173 // value will be replaced with "sensitive". 11174 func (s LogSettingsResponse) GoString() string { 11175 return s.String() 11176 } 11177 11178 // SetDestination sets the Destination field's value. 11179 func (s *LogSettingsResponse) SetDestination(v string) *LogSettingsResponse { 11180 s.Destination = &v 11181 return s 11182 } 11183 11184 // SetKmsKeyArn sets the KmsKeyArn field's value. 11185 func (s *LogSettingsResponse) SetKmsKeyArn(v string) *LogSettingsResponse { 11186 s.KmsKeyArn = &v 11187 return s 11188 } 11189 11190 // SetLogType sets the LogType field's value. 11191 func (s *LogSettingsResponse) SetLogType(v string) *LogSettingsResponse { 11192 s.LogType = &v 11193 return s 11194 } 11195 11196 // SetResourceArn sets the ResourceArn field's value. 11197 func (s *LogSettingsResponse) SetResourceArn(v string) *LogSettingsResponse { 11198 s.ResourceArn = &v 11199 return s 11200 } 11201 11202 // SetResourcePrefix sets the ResourcePrefix field's value. 11203 func (s *LogSettingsResponse) SetResourcePrefix(v string) *LogSettingsResponse { 11204 s.ResourcePrefix = &v 11205 return s 11206 } 11207 11208 // The message object that provides the message text and its type. 11209 type Message struct { 11210 _ struct{} `type:"structure"` 11211 11212 // The text of the message. 11213 // 11214 // Content is a required field 11215 Content *string `locationName:"content" min:"1" type:"string" required:"true"` 11216 11217 // The content type of the message string. 11218 // 11219 // ContentType is a required field 11220 ContentType *string `locationName:"contentType" type:"string" required:"true" enum:"ContentType"` 11221 11222 // Identifies the message group that the message belongs to. When a group is 11223 // assigned to a message, Amazon Lex returns one message from each group in 11224 // the response. 11225 GroupNumber *int64 `locationName:"groupNumber" min:"1" type:"integer"` 11226 } 11227 11228 // String returns the string representation. 11229 // 11230 // API parameter values that are decorated as "sensitive" in the API will not 11231 // be included in the string output. The member name will be present, but the 11232 // value will be replaced with "sensitive". 11233 func (s Message) String() string { 11234 return awsutil.Prettify(s) 11235 } 11236 11237 // GoString returns the string representation. 11238 // 11239 // API parameter values that are decorated as "sensitive" in the API will not 11240 // be included in the string output. The member name will be present, but the 11241 // value will be replaced with "sensitive". 11242 func (s Message) GoString() string { 11243 return s.String() 11244 } 11245 11246 // Validate inspects the fields of the type to determine if they are valid. 11247 func (s *Message) Validate() error { 11248 invalidParams := request.ErrInvalidParams{Context: "Message"} 11249 if s.Content == nil { 11250 invalidParams.Add(request.NewErrParamRequired("Content")) 11251 } 11252 if s.Content != nil && len(*s.Content) < 1 { 11253 invalidParams.Add(request.NewErrParamMinLen("Content", 1)) 11254 } 11255 if s.ContentType == nil { 11256 invalidParams.Add(request.NewErrParamRequired("ContentType")) 11257 } 11258 if s.GroupNumber != nil && *s.GroupNumber < 1 { 11259 invalidParams.Add(request.NewErrParamMinValue("GroupNumber", 1)) 11260 } 11261 11262 if invalidParams.Len() > 0 { 11263 return invalidParams 11264 } 11265 return nil 11266 } 11267 11268 // SetContent sets the Content field's value. 11269 func (s *Message) SetContent(v string) *Message { 11270 s.Content = &v 11271 return s 11272 } 11273 11274 // SetContentType sets the ContentType field's value. 11275 func (s *Message) SetContentType(v string) *Message { 11276 s.ContentType = &v 11277 return s 11278 } 11279 11280 // SetGroupNumber sets the GroupNumber field's value. 11281 func (s *Message) SetGroupNumber(v int64) *Message { 11282 s.GroupNumber = &v 11283 return s 11284 } 11285 11286 // Provides information about alerts and warnings that Amazon Lex sends during 11287 // a migration. The alerts include information about how to resolve the issue. 11288 type MigrationAlert struct { 11289 _ struct{} `type:"structure"` 11290 11291 // Additional details about the alert. 11292 Details []*string `locationName:"details" type:"list"` 11293 11294 // A message that describes why the alert was issued. 11295 Message *string `locationName:"message" type:"string"` 11296 11297 // A link to the Amazon Lex documentation that describes how to resolve the 11298 // alert. 11299 ReferenceURLs []*string `locationName:"referenceURLs" type:"list"` 11300 11301 // The type of alert. There are two kinds of alerts: 11302 // 11303 // * ERROR - There was an issue with the migration that can't be resolved. 11304 // The migration stops. 11305 // 11306 // * WARN - There was an issue with the migration that requires manual changes 11307 // to the new Amazon Lex V2 bot. The migration continues. 11308 Type *string `locationName:"type" type:"string" enum:"MigrationAlertType"` 11309 } 11310 11311 // String returns the string representation. 11312 // 11313 // API parameter values that are decorated as "sensitive" in the API will not 11314 // be included in the string output. The member name will be present, but the 11315 // value will be replaced with "sensitive". 11316 func (s MigrationAlert) String() string { 11317 return awsutil.Prettify(s) 11318 } 11319 11320 // GoString returns the string representation. 11321 // 11322 // API parameter values that are decorated as "sensitive" in the API will not 11323 // be included in the string output. The member name will be present, but the 11324 // value will be replaced with "sensitive". 11325 func (s MigrationAlert) GoString() string { 11326 return s.String() 11327 } 11328 11329 // SetDetails sets the Details field's value. 11330 func (s *MigrationAlert) SetDetails(v []*string) *MigrationAlert { 11331 s.Details = v 11332 return s 11333 } 11334 11335 // SetMessage sets the Message field's value. 11336 func (s *MigrationAlert) SetMessage(v string) *MigrationAlert { 11337 s.Message = &v 11338 return s 11339 } 11340 11341 // SetReferenceURLs sets the ReferenceURLs field's value. 11342 func (s *MigrationAlert) SetReferenceURLs(v []*string) *MigrationAlert { 11343 s.ReferenceURLs = v 11344 return s 11345 } 11346 11347 // SetType sets the Type field's value. 11348 func (s *MigrationAlert) SetType(v string) *MigrationAlert { 11349 s.Type = &v 11350 return s 11351 } 11352 11353 // Provides information about migrating a bot from Amazon Lex V1 to Amazon Lex 11354 // V2. 11355 type MigrationSummary struct { 11356 _ struct{} `type:"structure"` 11357 11358 // The unique identifier that Amazon Lex assigned to the migration. 11359 MigrationId *string `locationName:"migrationId" min:"10" type:"string"` 11360 11361 // The status of the operation. When the status is COMPLETE the bot is available 11362 // in Amazon Lex V2. There may be alerts and warnings that need to be resolved 11363 // to complete the migration. 11364 MigrationStatus *string `locationName:"migrationStatus" type:"string" enum:"MigrationStatus"` 11365 11366 // The strategy used to conduct the migration. 11367 MigrationStrategy *string `locationName:"migrationStrategy" type:"string" enum:"MigrationStrategy"` 11368 11369 // The date and time that the migration started. 11370 MigrationTimestamp *time.Time `locationName:"migrationTimestamp" type:"timestamp"` 11371 11372 // The locale of the Amazon Lex V1 bot that is the source of the migration. 11373 V1BotLocale *string `locationName:"v1BotLocale" type:"string" enum:"Locale"` 11374 11375 // The name of the Amazon Lex V1 bot that is the source of the migration. 11376 V1BotName *string `locationName:"v1BotName" min:"2" type:"string"` 11377 11378 // The version of the Amazon Lex V1 bot that is the source of the migration. 11379 V1BotVersion *string `locationName:"v1BotVersion" min:"1" type:"string"` 11380 11381 // The unique identifier of the Amazon Lex V2 that is the destination of the 11382 // migration. 11383 V2BotId *string `locationName:"v2BotId" min:"10" type:"string"` 11384 11385 // The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot. 11386 V2BotRole *string `locationName:"v2BotRole" min:"20" type:"string"` 11387 } 11388 11389 // String returns the string representation. 11390 // 11391 // API parameter values that are decorated as "sensitive" in the API will not 11392 // be included in the string output. The member name will be present, but the 11393 // value will be replaced with "sensitive". 11394 func (s MigrationSummary) String() string { 11395 return awsutil.Prettify(s) 11396 } 11397 11398 // GoString returns the string representation. 11399 // 11400 // API parameter values that are decorated as "sensitive" in the API will not 11401 // be included in the string output. The member name will be present, but the 11402 // value will be replaced with "sensitive". 11403 func (s MigrationSummary) GoString() string { 11404 return s.String() 11405 } 11406 11407 // SetMigrationId sets the MigrationId field's value. 11408 func (s *MigrationSummary) SetMigrationId(v string) *MigrationSummary { 11409 s.MigrationId = &v 11410 return s 11411 } 11412 11413 // SetMigrationStatus sets the MigrationStatus field's value. 11414 func (s *MigrationSummary) SetMigrationStatus(v string) *MigrationSummary { 11415 s.MigrationStatus = &v 11416 return s 11417 } 11418 11419 // SetMigrationStrategy sets the MigrationStrategy field's value. 11420 func (s *MigrationSummary) SetMigrationStrategy(v string) *MigrationSummary { 11421 s.MigrationStrategy = &v 11422 return s 11423 } 11424 11425 // SetMigrationTimestamp sets the MigrationTimestamp field's value. 11426 func (s *MigrationSummary) SetMigrationTimestamp(v time.Time) *MigrationSummary { 11427 s.MigrationTimestamp = &v 11428 return s 11429 } 11430 11431 // SetV1BotLocale sets the V1BotLocale field's value. 11432 func (s *MigrationSummary) SetV1BotLocale(v string) *MigrationSummary { 11433 s.V1BotLocale = &v 11434 return s 11435 } 11436 11437 // SetV1BotName sets the V1BotName field's value. 11438 func (s *MigrationSummary) SetV1BotName(v string) *MigrationSummary { 11439 s.V1BotName = &v 11440 return s 11441 } 11442 11443 // SetV1BotVersion sets the V1BotVersion field's value. 11444 func (s *MigrationSummary) SetV1BotVersion(v string) *MigrationSummary { 11445 s.V1BotVersion = &v 11446 return s 11447 } 11448 11449 // SetV2BotId sets the V2BotId field's value. 11450 func (s *MigrationSummary) SetV2BotId(v string) *MigrationSummary { 11451 s.V2BotId = &v 11452 return s 11453 } 11454 11455 // SetV2BotRole sets the V2BotRole field's value. 11456 func (s *MigrationSummary) SetV2BotRole(v string) *MigrationSummary { 11457 s.V2BotRole = &v 11458 return s 11459 } 11460 11461 // The resource specified in the request was not found. Check the resource and 11462 // try again. 11463 type NotFoundException struct { 11464 _ struct{} `type:"structure"` 11465 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11466 11467 Message_ *string `locationName:"message" type:"string"` 11468 } 11469 11470 // String returns the string representation. 11471 // 11472 // API parameter values that are decorated as "sensitive" in the API will not 11473 // be included in the string output. The member name will be present, but the 11474 // value will be replaced with "sensitive". 11475 func (s NotFoundException) String() string { 11476 return awsutil.Prettify(s) 11477 } 11478 11479 // GoString returns the string representation. 11480 // 11481 // API parameter values that are decorated as "sensitive" in the API will not 11482 // be included in the string output. The member name will be present, but the 11483 // value will be replaced with "sensitive". 11484 func (s NotFoundException) GoString() string { 11485 return s.String() 11486 } 11487 11488 func newErrorNotFoundException(v protocol.ResponseMetadata) error { 11489 return &NotFoundException{ 11490 RespMetadata: v, 11491 } 11492 } 11493 11494 // Code returns the exception type name. 11495 func (s *NotFoundException) Code() string { 11496 return "NotFoundException" 11497 } 11498 11499 // Message returns the exception's message. 11500 func (s *NotFoundException) Message() string { 11501 if s.Message_ != nil { 11502 return *s.Message_ 11503 } 11504 return "" 11505 } 11506 11507 // OrigErr always returns nil, satisfies awserr.Error interface. 11508 func (s *NotFoundException) OrigErr() error { 11509 return nil 11510 } 11511 11512 func (s *NotFoundException) Error() string { 11513 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11514 } 11515 11516 // Status code returns the HTTP status code for the request's response error. 11517 func (s *NotFoundException) StatusCode() int { 11518 return s.RespMetadata.StatusCode 11519 } 11520 11521 // RequestID returns the service's response RequestID for request. 11522 func (s *NotFoundException) RequestID() string { 11523 return s.RespMetadata.RequestID 11524 } 11525 11526 // The specification of an output context that is set when an intent is fulfilled. 11527 type OutputContext struct { 11528 _ struct{} `type:"structure"` 11529 11530 // The name of the context. 11531 // 11532 // Name is a required field 11533 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 11534 11535 // The number of seconds that the context should be active after it is first 11536 // sent in a PostContent or PostText response. You can set the value between 11537 // 5 and 86,400 seconds (24 hours). 11538 // 11539 // TimeToLiveInSeconds is a required field 11540 TimeToLiveInSeconds *int64 `locationName:"timeToLiveInSeconds" min:"5" type:"integer" required:"true"` 11541 11542 // The number of conversation turns that the context should be active. A conversation 11543 // turn is one PostContent or PostText request and the corresponding response 11544 // from Amazon Lex. 11545 // 11546 // TurnsToLive is a required field 11547 TurnsToLive *int64 `locationName:"turnsToLive" min:"1" type:"integer" required:"true"` 11548 } 11549 11550 // String returns the string representation. 11551 // 11552 // API parameter values that are decorated as "sensitive" in the API will not 11553 // be included in the string output. The member name will be present, but the 11554 // value will be replaced with "sensitive". 11555 func (s OutputContext) String() string { 11556 return awsutil.Prettify(s) 11557 } 11558 11559 // GoString returns the string representation. 11560 // 11561 // API parameter values that are decorated as "sensitive" in the API will not 11562 // be included in the string output. The member name will be present, but the 11563 // value will be replaced with "sensitive". 11564 func (s OutputContext) GoString() string { 11565 return s.String() 11566 } 11567 11568 // Validate inspects the fields of the type to determine if they are valid. 11569 func (s *OutputContext) Validate() error { 11570 invalidParams := request.ErrInvalidParams{Context: "OutputContext"} 11571 if s.Name == nil { 11572 invalidParams.Add(request.NewErrParamRequired("Name")) 11573 } 11574 if s.Name != nil && len(*s.Name) < 1 { 11575 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 11576 } 11577 if s.TimeToLiveInSeconds == nil { 11578 invalidParams.Add(request.NewErrParamRequired("TimeToLiveInSeconds")) 11579 } 11580 if s.TimeToLiveInSeconds != nil && *s.TimeToLiveInSeconds < 5 { 11581 invalidParams.Add(request.NewErrParamMinValue("TimeToLiveInSeconds", 5)) 11582 } 11583 if s.TurnsToLive == nil { 11584 invalidParams.Add(request.NewErrParamRequired("TurnsToLive")) 11585 } 11586 if s.TurnsToLive != nil && *s.TurnsToLive < 1 { 11587 invalidParams.Add(request.NewErrParamMinValue("TurnsToLive", 1)) 11588 } 11589 11590 if invalidParams.Len() > 0 { 11591 return invalidParams 11592 } 11593 return nil 11594 } 11595 11596 // SetName sets the Name field's value. 11597 func (s *OutputContext) SetName(v string) *OutputContext { 11598 s.Name = &v 11599 return s 11600 } 11601 11602 // SetTimeToLiveInSeconds sets the TimeToLiveInSeconds field's value. 11603 func (s *OutputContext) SetTimeToLiveInSeconds(v int64) *OutputContext { 11604 s.TimeToLiveInSeconds = &v 11605 return s 11606 } 11607 11608 // SetTurnsToLive sets the TurnsToLive field's value. 11609 func (s *OutputContext) SetTurnsToLive(v int64) *OutputContext { 11610 s.TurnsToLive = &v 11611 return s 11612 } 11613 11614 // The checksum of the resource that you are trying to change does not match 11615 // the checksum in the request. Check the resource's checksum and try again. 11616 type PreconditionFailedException struct { 11617 _ struct{} `type:"structure"` 11618 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11619 11620 Message_ *string `locationName:"message" type:"string"` 11621 } 11622 11623 // String returns the string representation. 11624 // 11625 // API parameter values that are decorated as "sensitive" in the API will not 11626 // be included in the string output. The member name will be present, but the 11627 // value will be replaced with "sensitive". 11628 func (s PreconditionFailedException) String() string { 11629 return awsutil.Prettify(s) 11630 } 11631 11632 // GoString returns the string representation. 11633 // 11634 // API parameter values that are decorated as "sensitive" in the API will not 11635 // be included in the string output. The member name will be present, but the 11636 // value will be replaced with "sensitive". 11637 func (s PreconditionFailedException) GoString() string { 11638 return s.String() 11639 } 11640 11641 func newErrorPreconditionFailedException(v protocol.ResponseMetadata) error { 11642 return &PreconditionFailedException{ 11643 RespMetadata: v, 11644 } 11645 } 11646 11647 // Code returns the exception type name. 11648 func (s *PreconditionFailedException) Code() string { 11649 return "PreconditionFailedException" 11650 } 11651 11652 // Message returns the exception's message. 11653 func (s *PreconditionFailedException) Message() string { 11654 if s.Message_ != nil { 11655 return *s.Message_ 11656 } 11657 return "" 11658 } 11659 11660 // OrigErr always returns nil, satisfies awserr.Error interface. 11661 func (s *PreconditionFailedException) OrigErr() error { 11662 return nil 11663 } 11664 11665 func (s *PreconditionFailedException) Error() string { 11666 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11667 } 11668 11669 // Status code returns the HTTP status code for the request's response error. 11670 func (s *PreconditionFailedException) StatusCode() int { 11671 return s.RespMetadata.StatusCode 11672 } 11673 11674 // RequestID returns the service's response RequestID for request. 11675 func (s *PreconditionFailedException) RequestID() string { 11676 return s.RespMetadata.RequestID 11677 } 11678 11679 // Obtains information from the user. To define a prompt, provide one or more 11680 // messages and specify the number of attempts to get information from the user. 11681 // If you provide more than one message, Amazon Lex chooses one of the messages 11682 // to use to prompt the user. For more information, see how-it-works. 11683 type Prompt struct { 11684 _ struct{} `type:"structure"` 11685 11686 // The number of times to prompt the user for information. 11687 // 11688 // MaxAttempts is a required field 11689 MaxAttempts *int64 `locationName:"maxAttempts" min:"1" type:"integer" required:"true"` 11690 11691 // An array of objects, each of which provides a message string and its type. 11692 // You can specify the message string in plain text or in Speech Synthesis Markup 11693 // Language (SSML). 11694 // 11695 // Messages is a required field 11696 Messages []*Message `locationName:"messages" min:"1" type:"list" required:"true"` 11697 11698 // A response card. Amazon Lex uses this prompt at runtime, in the PostText 11699 // API response. It substitutes session attributes and slot values for placeholders 11700 // in the response card. For more information, see ex-resp-card. 11701 ResponseCard *string `locationName:"responseCard" min:"1" type:"string"` 11702 } 11703 11704 // String returns the string representation. 11705 // 11706 // API parameter values that are decorated as "sensitive" in the API will not 11707 // be included in the string output. The member name will be present, but the 11708 // value will be replaced with "sensitive". 11709 func (s Prompt) String() string { 11710 return awsutil.Prettify(s) 11711 } 11712 11713 // GoString returns the string representation. 11714 // 11715 // API parameter values that are decorated as "sensitive" in the API will not 11716 // be included in the string output. The member name will be present, but the 11717 // value will be replaced with "sensitive". 11718 func (s Prompt) GoString() string { 11719 return s.String() 11720 } 11721 11722 // Validate inspects the fields of the type to determine if they are valid. 11723 func (s *Prompt) Validate() error { 11724 invalidParams := request.ErrInvalidParams{Context: "Prompt"} 11725 if s.MaxAttempts == nil { 11726 invalidParams.Add(request.NewErrParamRequired("MaxAttempts")) 11727 } 11728 if s.MaxAttempts != nil && *s.MaxAttempts < 1 { 11729 invalidParams.Add(request.NewErrParamMinValue("MaxAttempts", 1)) 11730 } 11731 if s.Messages == nil { 11732 invalidParams.Add(request.NewErrParamRequired("Messages")) 11733 } 11734 if s.Messages != nil && len(s.Messages) < 1 { 11735 invalidParams.Add(request.NewErrParamMinLen("Messages", 1)) 11736 } 11737 if s.ResponseCard != nil && len(*s.ResponseCard) < 1 { 11738 invalidParams.Add(request.NewErrParamMinLen("ResponseCard", 1)) 11739 } 11740 if s.Messages != nil { 11741 for i, v := range s.Messages { 11742 if v == nil { 11743 continue 11744 } 11745 if err := v.Validate(); err != nil { 11746 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Messages", i), err.(request.ErrInvalidParams)) 11747 } 11748 } 11749 } 11750 11751 if invalidParams.Len() > 0 { 11752 return invalidParams 11753 } 11754 return nil 11755 } 11756 11757 // SetMaxAttempts sets the MaxAttempts field's value. 11758 func (s *Prompt) SetMaxAttempts(v int64) *Prompt { 11759 s.MaxAttempts = &v 11760 return s 11761 } 11762 11763 // SetMessages sets the Messages field's value. 11764 func (s *Prompt) SetMessages(v []*Message) *Prompt { 11765 s.Messages = v 11766 return s 11767 } 11768 11769 // SetResponseCard sets the ResponseCard field's value. 11770 func (s *Prompt) SetResponseCard(v string) *Prompt { 11771 s.ResponseCard = &v 11772 return s 11773 } 11774 11775 type PutBotAliasInput struct { 11776 _ struct{} `type:"structure"` 11777 11778 // The name of the bot. 11779 // 11780 // BotName is a required field 11781 BotName *string `location:"uri" locationName:"botName" min:"2" type:"string" required:"true"` 11782 11783 // The version of the bot. 11784 // 11785 // BotVersion is a required field 11786 BotVersion *string `locationName:"botVersion" min:"1" type:"string" required:"true"` 11787 11788 // Identifies a specific revision of the $LATEST version. 11789 // 11790 // When you create a new bot alias, leave the checksum field blank. If you specify 11791 // a checksum you get a BadRequestException exception. 11792 // 11793 // When you want to update a bot alias, set the checksum field to the checksum 11794 // of the most recent revision of the $LATEST version. If you don't specify 11795 // the checksum field, or if the checksum does not match the $LATEST version, 11796 // you get a PreconditionFailedException exception. 11797 Checksum *string `locationName:"checksum" type:"string"` 11798 11799 // Settings for conversation logs for the alias. 11800 ConversationLogs *ConversationLogsRequest `locationName:"conversationLogs" type:"structure"` 11801 11802 // A description of the alias. 11803 Description *string `locationName:"description" type:"string"` 11804 11805 // The name of the alias. The name is not case sensitive. 11806 // 11807 // Name is a required field 11808 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 11809 11810 // A list of tags to add to the bot alias. You can only add tags when you create 11811 // an alias, you can't use the PutBotAlias operation to update the tags on a 11812 // bot alias. To update tags, use the TagResource operation. 11813 Tags []*Tag `locationName:"tags" type:"list"` 11814 } 11815 11816 // String returns the string representation. 11817 // 11818 // API parameter values that are decorated as "sensitive" in the API will not 11819 // be included in the string output. The member name will be present, but the 11820 // value will be replaced with "sensitive". 11821 func (s PutBotAliasInput) String() string { 11822 return awsutil.Prettify(s) 11823 } 11824 11825 // GoString returns the string representation. 11826 // 11827 // API parameter values that are decorated as "sensitive" in the API will not 11828 // be included in the string output. The member name will be present, but the 11829 // value will be replaced with "sensitive". 11830 func (s PutBotAliasInput) GoString() string { 11831 return s.String() 11832 } 11833 11834 // Validate inspects the fields of the type to determine if they are valid. 11835 func (s *PutBotAliasInput) Validate() error { 11836 invalidParams := request.ErrInvalidParams{Context: "PutBotAliasInput"} 11837 if s.BotName == nil { 11838 invalidParams.Add(request.NewErrParamRequired("BotName")) 11839 } 11840 if s.BotName != nil && len(*s.BotName) < 2 { 11841 invalidParams.Add(request.NewErrParamMinLen("BotName", 2)) 11842 } 11843 if s.BotVersion == nil { 11844 invalidParams.Add(request.NewErrParamRequired("BotVersion")) 11845 } 11846 if s.BotVersion != nil && len(*s.BotVersion) < 1 { 11847 invalidParams.Add(request.NewErrParamMinLen("BotVersion", 1)) 11848 } 11849 if s.Name == nil { 11850 invalidParams.Add(request.NewErrParamRequired("Name")) 11851 } 11852 if s.Name != nil && len(*s.Name) < 1 { 11853 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 11854 } 11855 if s.ConversationLogs != nil { 11856 if err := s.ConversationLogs.Validate(); err != nil { 11857 invalidParams.AddNested("ConversationLogs", err.(request.ErrInvalidParams)) 11858 } 11859 } 11860 if s.Tags != nil { 11861 for i, v := range s.Tags { 11862 if v == nil { 11863 continue 11864 } 11865 if err := v.Validate(); err != nil { 11866 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 11867 } 11868 } 11869 } 11870 11871 if invalidParams.Len() > 0 { 11872 return invalidParams 11873 } 11874 return nil 11875 } 11876 11877 // SetBotName sets the BotName field's value. 11878 func (s *PutBotAliasInput) SetBotName(v string) *PutBotAliasInput { 11879 s.BotName = &v 11880 return s 11881 } 11882 11883 // SetBotVersion sets the BotVersion field's value. 11884 func (s *PutBotAliasInput) SetBotVersion(v string) *PutBotAliasInput { 11885 s.BotVersion = &v 11886 return s 11887 } 11888 11889 // SetChecksum sets the Checksum field's value. 11890 func (s *PutBotAliasInput) SetChecksum(v string) *PutBotAliasInput { 11891 s.Checksum = &v 11892 return s 11893 } 11894 11895 // SetConversationLogs sets the ConversationLogs field's value. 11896 func (s *PutBotAliasInput) SetConversationLogs(v *ConversationLogsRequest) *PutBotAliasInput { 11897 s.ConversationLogs = v 11898 return s 11899 } 11900 11901 // SetDescription sets the Description field's value. 11902 func (s *PutBotAliasInput) SetDescription(v string) *PutBotAliasInput { 11903 s.Description = &v 11904 return s 11905 } 11906 11907 // SetName sets the Name field's value. 11908 func (s *PutBotAliasInput) SetName(v string) *PutBotAliasInput { 11909 s.Name = &v 11910 return s 11911 } 11912 11913 // SetTags sets the Tags field's value. 11914 func (s *PutBotAliasInput) SetTags(v []*Tag) *PutBotAliasInput { 11915 s.Tags = v 11916 return s 11917 } 11918 11919 type PutBotAliasOutput struct { 11920 _ struct{} `type:"structure"` 11921 11922 // The name of the bot that the alias points to. 11923 BotName *string `locationName:"botName" min:"2" type:"string"` 11924 11925 // The version of the bot that the alias points to. 11926 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 11927 11928 // The checksum for the current version of the alias. 11929 Checksum *string `locationName:"checksum" type:"string"` 11930 11931 // The settings that determine how Amazon Lex uses conversation logs for the 11932 // alias. 11933 ConversationLogs *ConversationLogsResponse `locationName:"conversationLogs" type:"structure"` 11934 11935 // The date that the bot alias was created. 11936 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 11937 11938 // A description of the alias. 11939 Description *string `locationName:"description" type:"string"` 11940 11941 // The date that the bot alias was updated. When you create a resource, the 11942 // creation date and the last updated date are the same. 11943 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 11944 11945 // The name of the alias. 11946 Name *string `locationName:"name" min:"1" type:"string"` 11947 11948 // A list of tags associated with a bot. 11949 Tags []*Tag `locationName:"tags" type:"list"` 11950 } 11951 11952 // String returns the string representation. 11953 // 11954 // API parameter values that are decorated as "sensitive" in the API will not 11955 // be included in the string output. The member name will be present, but the 11956 // value will be replaced with "sensitive". 11957 func (s PutBotAliasOutput) String() string { 11958 return awsutil.Prettify(s) 11959 } 11960 11961 // GoString returns the string representation. 11962 // 11963 // API parameter values that are decorated as "sensitive" in the API will not 11964 // be included in the string output. The member name will be present, but the 11965 // value will be replaced with "sensitive". 11966 func (s PutBotAliasOutput) GoString() string { 11967 return s.String() 11968 } 11969 11970 // SetBotName sets the BotName field's value. 11971 func (s *PutBotAliasOutput) SetBotName(v string) *PutBotAliasOutput { 11972 s.BotName = &v 11973 return s 11974 } 11975 11976 // SetBotVersion sets the BotVersion field's value. 11977 func (s *PutBotAliasOutput) SetBotVersion(v string) *PutBotAliasOutput { 11978 s.BotVersion = &v 11979 return s 11980 } 11981 11982 // SetChecksum sets the Checksum field's value. 11983 func (s *PutBotAliasOutput) SetChecksum(v string) *PutBotAliasOutput { 11984 s.Checksum = &v 11985 return s 11986 } 11987 11988 // SetConversationLogs sets the ConversationLogs field's value. 11989 func (s *PutBotAliasOutput) SetConversationLogs(v *ConversationLogsResponse) *PutBotAliasOutput { 11990 s.ConversationLogs = v 11991 return s 11992 } 11993 11994 // SetCreatedDate sets the CreatedDate field's value. 11995 func (s *PutBotAliasOutput) SetCreatedDate(v time.Time) *PutBotAliasOutput { 11996 s.CreatedDate = &v 11997 return s 11998 } 11999 12000 // SetDescription sets the Description field's value. 12001 func (s *PutBotAliasOutput) SetDescription(v string) *PutBotAliasOutput { 12002 s.Description = &v 12003 return s 12004 } 12005 12006 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 12007 func (s *PutBotAliasOutput) SetLastUpdatedDate(v time.Time) *PutBotAliasOutput { 12008 s.LastUpdatedDate = &v 12009 return s 12010 } 12011 12012 // SetName sets the Name field's value. 12013 func (s *PutBotAliasOutput) SetName(v string) *PutBotAliasOutput { 12014 s.Name = &v 12015 return s 12016 } 12017 12018 // SetTags sets the Tags field's value. 12019 func (s *PutBotAliasOutput) SetTags(v []*Tag) *PutBotAliasOutput { 12020 s.Tags = v 12021 return s 12022 } 12023 12024 type PutBotInput struct { 12025 _ struct{} `type:"structure"` 12026 12027 // When Amazon Lex can't understand the user's input in context, it tries to 12028 // elicit the information a few times. After that, Amazon Lex sends the message 12029 // defined in abortStatement to the user, and then cancels the conversation. 12030 // To set the number of retries, use the valueElicitationPrompt field for the 12031 // slot type. 12032 // 12033 // For example, in a pizza ordering bot, Amazon Lex might ask a user "What type 12034 // of crust would you like?" If the user's response is not one of the expected 12035 // responses (for example, "thin crust, "deep dish," etc.), Amazon Lex tries 12036 // to elicit a correct response a few more times. 12037 // 12038 // For example, in a pizza ordering application, OrderPizza might be one of 12039 // the intents. This intent might require the CrustType slot. You specify the 12040 // valueElicitationPrompt field when you create the CrustType slot. 12041 // 12042 // If you have defined a fallback intent the cancel statement will not be sent 12043 // to the user, the fallback intent is used instead. For more information, see 12044 // AMAZON.FallbackIntent (https://docs.aws.amazon.com/lex/latest/dg/built-in-intent-fallback.html). 12045 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 12046 12047 // Identifies a specific revision of the $LATEST version. 12048 // 12049 // When you create a new bot, leave the checksum field blank. If you specify 12050 // a checksum you get a BadRequestException exception. 12051 // 12052 // When you want to update a bot, set the checksum field to the checksum of 12053 // the most recent revision of the $LATEST version. If you don't specify the 12054 // checksum field, or if the checksum does not match the $LATEST version, you 12055 // get a PreconditionFailedException exception. 12056 Checksum *string `locationName:"checksum" type:"string"` 12057 12058 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 12059 // you must specify whether your use of Amazon Lex is related to a website, 12060 // program, or other application that is directed or targeted, in whole or in 12061 // part, to children under age 13 and subject to the Children's Online Privacy 12062 // Protection Act (COPPA) by specifying true or false in the childDirected field. 12063 // By specifying true in the childDirected field, you confirm that your use 12064 // of Amazon Lex is related to a website, program, or other application that 12065 // is directed or targeted, in whole or in part, to children under age 13 and 12066 // subject to COPPA. By specifying false in the childDirected field, you confirm 12067 // that your use of Amazon Lex is not related to a website, program, or other 12068 // application that is directed or targeted, in whole or in part, to children 12069 // under age 13 and subject to COPPA. You may not specify a default value for 12070 // the childDirected field that does not accurately reflect whether your use 12071 // of Amazon Lex is related to a website, program, or other application that 12072 // is directed or targeted, in whole or in part, to children under age 13 and 12073 // subject to COPPA. 12074 // 12075 // If your use of Amazon Lex relates to a website, program, or other application 12076 // that is directed in whole or in part, to children under age 13, you must 12077 // obtain any required verifiable parental consent under COPPA. For information 12078 // regarding the use of Amazon Lex in connection with websites, programs, or 12079 // other applications that are directed or targeted, in whole or in part, to 12080 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 12081 // 12082 // ChildDirected is a required field 12083 ChildDirected *bool `locationName:"childDirected" type:"boolean" required:"true"` 12084 12085 // When Amazon Lex doesn't understand the user's intent, it uses this message 12086 // to get clarification. To specify how many times Amazon Lex should repeat 12087 // the clarification prompt, use the maxAttempts field. If Amazon Lex still 12088 // doesn't understand, it sends the message in the abortStatement field. 12089 // 12090 // When you create a clarification prompt, make sure that it suggests the correct 12091 // response from the user. for example, for a bot that orders pizza and drinks, 12092 // you might create this clarification prompt: "What would you like to do? You 12093 // can say 'Order a pizza' or 'Order a drink.'" 12094 // 12095 // If you have defined a fallback intent, it will be invoked if the clarification 12096 // prompt is repeated the number of times defined in the maxAttempts field. 12097 // For more information, see AMAZON.FallbackIntent (https://docs.aws.amazon.com/lex/latest/dg/built-in-intent-fallback.html). 12098 // 12099 // If you don't define a clarification prompt, at runtime Amazon Lex will return 12100 // a 400 Bad Request exception in three cases: 12101 // 12102 // * Follow-up prompt - When the user responds to a follow-up prompt but 12103 // does not provide an intent. For example, in response to a follow-up prompt 12104 // that says "Would you like anything else today?" the user says "Yes." Amazon 12105 // Lex will return a 400 Bad Request exception because it does not have a 12106 // clarification prompt to send to the user to get an intent. 12107 // 12108 // * Lambda function - When using a Lambda function, you return an ElicitIntent 12109 // dialog type. Since Amazon Lex does not have a clarification prompt to 12110 // get an intent from the user, it returns a 400 Bad Request exception. 12111 // 12112 // * PutSession operation - When using the PutSession operation, you send 12113 // an ElicitIntent dialog type. Since Amazon Lex does not have a clarification 12114 // prompt to get an intent from the user, it returns a 400 Bad Request exception. 12115 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 12116 12117 // When set to true a new numbered version of the bot is created. This is the 12118 // same as calling the CreateBotVersion operation. If you don't specify createVersion, 12119 // the default is false. 12120 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 12121 12122 // A description of the bot. 12123 Description *string `locationName:"description" type:"string"` 12124 12125 // When set to true user utterances are sent to Amazon Comprehend for sentiment 12126 // analysis. If you don't specify detectSentiment, the default is false. 12127 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 12128 12129 // Set to true to enable access to natural language understanding improvements. 12130 // 12131 // When you set the enableModelImprovements parameter to true you can use the 12132 // nluIntentConfidenceThreshold parameter to configure confidence scores. For 12133 // more information, see Confidence Scores (https://docs.aws.amazon.com/lex/latest/dg/confidence-scores.html). 12134 // 12135 // You can only set the enableModelImprovements parameter in certain Regions. 12136 // If you set the parameter to true, your bot has access to accuracy improvements. 12137 // 12138 // The Regions where you can set the enableModelImprovements parameter to true 12139 // are: 12140 // 12141 // * US East (N. Virginia) (us-east-1) 12142 // 12143 // * US West (Oregon) (us-west-2) 12144 // 12145 // * Asia Pacific (Sydney) (ap-southeast-2) 12146 // 12147 // * EU (Ireland) (eu-west-1) 12148 // 12149 // In other Regions, the enableModelImprovements parameter is set to true by 12150 // default. In these Regions setting the parameter to false throws a ValidationException 12151 // exception. 12152 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 12153 12154 // The maximum time in seconds that Amazon Lex retains the data gathered in 12155 // a conversation. 12156 // 12157 // A user interaction session remains active for the amount of time specified. 12158 // If no conversation occurs during this time, the session expires and Amazon 12159 // Lex deletes any data provided before the timeout. 12160 // 12161 // For example, suppose that a user chooses the OrderPizza intent, but gets 12162 // sidetracked halfway through placing an order. If the user doesn't complete 12163 // the order within the specified time, Amazon Lex discards the slot information 12164 // that it gathered, and the user must start over. 12165 // 12166 // If you don't include the idleSessionTTLInSeconds element in a PutBot operation 12167 // request, Amazon Lex uses the default value. This is also true if the request 12168 // replaces an existing bot. 12169 // 12170 // The default is 300 seconds (5 minutes). 12171 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 12172 12173 // An array of Intent objects. Each intent represents a command that a user 12174 // can express. For example, a pizza ordering bot might support an OrderPizza 12175 // intent. For more information, see how-it-works. 12176 Intents []*Intent `locationName:"intents" type:"list"` 12177 12178 // Specifies the target locale for the bot. Any intent used in the bot must 12179 // be compatible with the locale of the bot. 12180 // 12181 // The default is en-US. 12182 // 12183 // Locale is a required field 12184 Locale *string `locationName:"locale" type:"string" required:"true" enum:"Locale"` 12185 12186 // The name of the bot. The name is not case sensitive. 12187 // 12188 // Name is a required field 12189 Name *string `location:"uri" locationName:"name" min:"2" type:"string" required:"true"` 12190 12191 // Determines the threshold where Amazon Lex will insert the AMAZON.FallbackIntent, 12192 // AMAZON.KendraSearchIntent, or both when returning alternative intents in 12193 // a PostContent (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 12194 // or PostText (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 12195 // response. AMAZON.FallbackIntent and AMAZON.KendraSearchIntent are only inserted 12196 // if they are configured for the bot. 12197 // 12198 // You must set the enableModelImprovements parameter to true to use confidence 12199 // scores in the following regions. 12200 // 12201 // * US East (N. Virginia) (us-east-1) 12202 // 12203 // * US West (Oregon) (us-west-2) 12204 // 12205 // * Asia Pacific (Sydney) (ap-southeast-2) 12206 // 12207 // * EU (Ireland) (eu-west-1) 12208 // 12209 // In other Regions, the enableModelImprovements parameter is set to true by 12210 // default. 12211 // 12212 // For example, suppose a bot is configured with the confidence threshold of 12213 // 0.80 and the AMAZON.FallbackIntent. Amazon Lex returns three alternative 12214 // intents with the following confidence scores: IntentA (0.70), IntentB (0.60), 12215 // IntentC (0.50). The response from the PostText operation would be: 12216 // 12217 // * AMAZON.FallbackIntent 12218 // 12219 // * IntentA 12220 // 12221 // * IntentB 12222 // 12223 // * IntentC 12224 NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` 12225 12226 // If you set the processBehavior element to BUILD, Amazon Lex builds the bot 12227 // so that it can be run. If you set the element to SAVE Amazon Lex saves the 12228 // bot, but doesn't build it. 12229 // 12230 // If you don't specify this value, the default value is BUILD. 12231 ProcessBehavior *string `locationName:"processBehavior" type:"string" enum:"ProcessBehavior"` 12232 12233 // A list of tags to add to the bot. You can only add tags when you create a 12234 // bot, you can't use the PutBot operation to update the tags on a bot. To update 12235 // tags, use the TagResource operation. 12236 Tags []*Tag `locationName:"tags" type:"list"` 12237 12238 // The Amazon Polly voice ID that you want Amazon Lex to use for voice interactions 12239 // with the user. The locale configured for the voice must match the locale 12240 // of the bot. For more information, see Voices in Amazon Polly (https://docs.aws.amazon.com/polly/latest/dg/voicelist.html) 12241 // in the Amazon Polly Developer Guide. 12242 VoiceId *string `locationName:"voiceId" type:"string"` 12243 } 12244 12245 // String returns the string representation. 12246 // 12247 // API parameter values that are decorated as "sensitive" in the API will not 12248 // be included in the string output. The member name will be present, but the 12249 // value will be replaced with "sensitive". 12250 func (s PutBotInput) String() string { 12251 return awsutil.Prettify(s) 12252 } 12253 12254 // GoString returns the string representation. 12255 // 12256 // API parameter values that are decorated as "sensitive" in the API will not 12257 // be included in the string output. The member name will be present, but the 12258 // value will be replaced with "sensitive". 12259 func (s PutBotInput) GoString() string { 12260 return s.String() 12261 } 12262 12263 // Validate inspects the fields of the type to determine if they are valid. 12264 func (s *PutBotInput) Validate() error { 12265 invalidParams := request.ErrInvalidParams{Context: "PutBotInput"} 12266 if s.ChildDirected == nil { 12267 invalidParams.Add(request.NewErrParamRequired("ChildDirected")) 12268 } 12269 if s.IdleSessionTTLInSeconds != nil && *s.IdleSessionTTLInSeconds < 60 { 12270 invalidParams.Add(request.NewErrParamMinValue("IdleSessionTTLInSeconds", 60)) 12271 } 12272 if s.Locale == nil { 12273 invalidParams.Add(request.NewErrParamRequired("Locale")) 12274 } 12275 if s.Name == nil { 12276 invalidParams.Add(request.NewErrParamRequired("Name")) 12277 } 12278 if s.Name != nil && len(*s.Name) < 2 { 12279 invalidParams.Add(request.NewErrParamMinLen("Name", 2)) 12280 } 12281 if s.AbortStatement != nil { 12282 if err := s.AbortStatement.Validate(); err != nil { 12283 invalidParams.AddNested("AbortStatement", err.(request.ErrInvalidParams)) 12284 } 12285 } 12286 if s.ClarificationPrompt != nil { 12287 if err := s.ClarificationPrompt.Validate(); err != nil { 12288 invalidParams.AddNested("ClarificationPrompt", err.(request.ErrInvalidParams)) 12289 } 12290 } 12291 if s.Intents != nil { 12292 for i, v := range s.Intents { 12293 if v == nil { 12294 continue 12295 } 12296 if err := v.Validate(); err != nil { 12297 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Intents", i), err.(request.ErrInvalidParams)) 12298 } 12299 } 12300 } 12301 if s.Tags != nil { 12302 for i, v := range s.Tags { 12303 if v == nil { 12304 continue 12305 } 12306 if err := v.Validate(); err != nil { 12307 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 12308 } 12309 } 12310 } 12311 12312 if invalidParams.Len() > 0 { 12313 return invalidParams 12314 } 12315 return nil 12316 } 12317 12318 // SetAbortStatement sets the AbortStatement field's value. 12319 func (s *PutBotInput) SetAbortStatement(v *Statement) *PutBotInput { 12320 s.AbortStatement = v 12321 return s 12322 } 12323 12324 // SetChecksum sets the Checksum field's value. 12325 func (s *PutBotInput) SetChecksum(v string) *PutBotInput { 12326 s.Checksum = &v 12327 return s 12328 } 12329 12330 // SetChildDirected sets the ChildDirected field's value. 12331 func (s *PutBotInput) SetChildDirected(v bool) *PutBotInput { 12332 s.ChildDirected = &v 12333 return s 12334 } 12335 12336 // SetClarificationPrompt sets the ClarificationPrompt field's value. 12337 func (s *PutBotInput) SetClarificationPrompt(v *Prompt) *PutBotInput { 12338 s.ClarificationPrompt = v 12339 return s 12340 } 12341 12342 // SetCreateVersion sets the CreateVersion field's value. 12343 func (s *PutBotInput) SetCreateVersion(v bool) *PutBotInput { 12344 s.CreateVersion = &v 12345 return s 12346 } 12347 12348 // SetDescription sets the Description field's value. 12349 func (s *PutBotInput) SetDescription(v string) *PutBotInput { 12350 s.Description = &v 12351 return s 12352 } 12353 12354 // SetDetectSentiment sets the DetectSentiment field's value. 12355 func (s *PutBotInput) SetDetectSentiment(v bool) *PutBotInput { 12356 s.DetectSentiment = &v 12357 return s 12358 } 12359 12360 // SetEnableModelImprovements sets the EnableModelImprovements field's value. 12361 func (s *PutBotInput) SetEnableModelImprovements(v bool) *PutBotInput { 12362 s.EnableModelImprovements = &v 12363 return s 12364 } 12365 12366 // SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 12367 func (s *PutBotInput) SetIdleSessionTTLInSeconds(v int64) *PutBotInput { 12368 s.IdleSessionTTLInSeconds = &v 12369 return s 12370 } 12371 12372 // SetIntents sets the Intents field's value. 12373 func (s *PutBotInput) SetIntents(v []*Intent) *PutBotInput { 12374 s.Intents = v 12375 return s 12376 } 12377 12378 // SetLocale sets the Locale field's value. 12379 func (s *PutBotInput) SetLocale(v string) *PutBotInput { 12380 s.Locale = &v 12381 return s 12382 } 12383 12384 // SetName sets the Name field's value. 12385 func (s *PutBotInput) SetName(v string) *PutBotInput { 12386 s.Name = &v 12387 return s 12388 } 12389 12390 // SetNluIntentConfidenceThreshold sets the NluIntentConfidenceThreshold field's value. 12391 func (s *PutBotInput) SetNluIntentConfidenceThreshold(v float64) *PutBotInput { 12392 s.NluIntentConfidenceThreshold = &v 12393 return s 12394 } 12395 12396 // SetProcessBehavior sets the ProcessBehavior field's value. 12397 func (s *PutBotInput) SetProcessBehavior(v string) *PutBotInput { 12398 s.ProcessBehavior = &v 12399 return s 12400 } 12401 12402 // SetTags sets the Tags field's value. 12403 func (s *PutBotInput) SetTags(v []*Tag) *PutBotInput { 12404 s.Tags = v 12405 return s 12406 } 12407 12408 // SetVoiceId sets the VoiceId field's value. 12409 func (s *PutBotInput) SetVoiceId(v string) *PutBotInput { 12410 s.VoiceId = &v 12411 return s 12412 } 12413 12414 type PutBotOutput struct { 12415 _ struct{} `type:"structure"` 12416 12417 // The message that Amazon Lex uses to cancel a conversation. For more information, 12418 // see PutBot. 12419 AbortStatement *Statement `locationName:"abortStatement" type:"structure"` 12420 12421 // Checksum of the bot that you created. 12422 Checksum *string `locationName:"checksum" type:"string"` 12423 12424 // For each Amazon Lex bot created with the Amazon Lex Model Building Service, 12425 // you must specify whether your use of Amazon Lex is related to a website, 12426 // program, or other application that is directed or targeted, in whole or in 12427 // part, to children under age 13 and subject to the Children's Online Privacy 12428 // Protection Act (COPPA) by specifying true or false in the childDirected field. 12429 // By specifying true in the childDirected field, you confirm that your use 12430 // of Amazon Lex is related to a website, program, or other application that 12431 // is directed or targeted, in whole or in part, to children under age 13 and 12432 // subject to COPPA. By specifying false in the childDirected field, you confirm 12433 // that your use of Amazon Lex is not related to a website, program, or other 12434 // application that is directed or targeted, in whole or in part, to children 12435 // under age 13 and subject to COPPA. You may not specify a default value for 12436 // the childDirected field that does not accurately reflect whether your use 12437 // of Amazon Lex is related to a website, program, or other application that 12438 // is directed or targeted, in whole or in part, to children under age 13 and 12439 // subject to COPPA. 12440 // 12441 // If your use of Amazon Lex relates to a website, program, or other application 12442 // that is directed in whole or in part, to children under age 13, you must 12443 // obtain any required verifiable parental consent under COPPA. For information 12444 // regarding the use of Amazon Lex in connection with websites, programs, or 12445 // other applications that are directed or targeted, in whole or in part, to 12446 // children under age 13, see the Amazon Lex FAQ. (https://aws.amazon.com/lex/faqs#data-security) 12447 ChildDirected *bool `locationName:"childDirected" type:"boolean"` 12448 12449 // The prompts that Amazon Lex uses when it doesn't understand the user's intent. 12450 // For more information, see PutBot. 12451 ClarificationPrompt *Prompt `locationName:"clarificationPrompt" type:"structure"` 12452 12453 // True if a new version of the bot was created. If the createVersion field 12454 // was not specified in the request, the createVersion field is set to false 12455 // in the response. 12456 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 12457 12458 // The date that the bot was created. 12459 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 12460 12461 // A description of the bot. 12462 Description *string `locationName:"description" type:"string"` 12463 12464 // true if the bot is configured to send user utterances to Amazon Comprehend 12465 // for sentiment analysis. If the detectSentiment field was not specified in 12466 // the request, the detectSentiment field is false in the response. 12467 DetectSentiment *bool `locationName:"detectSentiment" type:"boolean"` 12468 12469 // Indicates whether the bot uses accuracy improvements. true indicates that 12470 // the bot is using the improvements, otherwise, false. 12471 EnableModelImprovements *bool `locationName:"enableModelImprovements" type:"boolean"` 12472 12473 // If status is FAILED, Amazon Lex provides the reason that it failed to build 12474 // the bot. 12475 FailureReason *string `locationName:"failureReason" type:"string"` 12476 12477 // The maximum length of time that Amazon Lex retains the data gathered in a 12478 // conversation. For more information, see PutBot. 12479 IdleSessionTTLInSeconds *int64 `locationName:"idleSessionTTLInSeconds" min:"60" type:"integer"` 12480 12481 // An array of Intent objects. For more information, see PutBot. 12482 Intents []*Intent `locationName:"intents" type:"list"` 12483 12484 // The date that the bot was updated. When you create a resource, the creation 12485 // date and last updated date are the same. 12486 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 12487 12488 // The target locale for the bot. 12489 Locale *string `locationName:"locale" type:"string" enum:"Locale"` 12490 12491 // The name of the bot. 12492 Name *string `locationName:"name" min:"2" type:"string"` 12493 12494 // The score that determines where Amazon Lex inserts the AMAZON.FallbackIntent, 12495 // AMAZON.KendraSearchIntent, or both when returning alternative intents in 12496 // a PostContent (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostContent.html) 12497 // or PostText (https://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 12498 // response. AMAZON.FallbackIntent is inserted if the confidence score for all 12499 // intents is below this value. AMAZON.KendraSearchIntent is only inserted if 12500 // it is configured for the bot. 12501 NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` 12502 12503 // When you send a request to create a bot with processBehavior set to BUILD, 12504 // Amazon Lex sets the status response element to BUILDING. 12505 // 12506 // In the READY_BASIC_TESTING state you can test the bot with user inputs that 12507 // exactly match the utterances configured for the bot's intents and values 12508 // in the slot types. 12509 // 12510 // If Amazon Lex can't build the bot, Amazon Lex sets status to FAILED. Amazon 12511 // Lex returns the reason for the failure in the failureReason response element. 12512 // 12513 // When you set processBehavior to SAVE, Amazon Lex sets the status code to 12514 // NOT BUILT. 12515 // 12516 // When the bot is in the READY state you can test and publish the bot. 12517 Status *string `locationName:"status" type:"string" enum:"Status"` 12518 12519 // A list of tags associated with the bot. 12520 Tags []*Tag `locationName:"tags" type:"list"` 12521 12522 // The version of the bot. For a new bot, the version is always $LATEST. 12523 Version *string `locationName:"version" min:"1" type:"string"` 12524 12525 // The Amazon Polly voice ID that Amazon Lex uses for voice interaction with 12526 // the user. For more information, see PutBot. 12527 VoiceId *string `locationName:"voiceId" type:"string"` 12528 } 12529 12530 // String returns the string representation. 12531 // 12532 // API parameter values that are decorated as "sensitive" in the API will not 12533 // be included in the string output. The member name will be present, but the 12534 // value will be replaced with "sensitive". 12535 func (s PutBotOutput) String() string { 12536 return awsutil.Prettify(s) 12537 } 12538 12539 // GoString returns the string representation. 12540 // 12541 // API parameter values that are decorated as "sensitive" in the API will not 12542 // be included in the string output. The member name will be present, but the 12543 // value will be replaced with "sensitive". 12544 func (s PutBotOutput) GoString() string { 12545 return s.String() 12546 } 12547 12548 // SetAbortStatement sets the AbortStatement field's value. 12549 func (s *PutBotOutput) SetAbortStatement(v *Statement) *PutBotOutput { 12550 s.AbortStatement = v 12551 return s 12552 } 12553 12554 // SetChecksum sets the Checksum field's value. 12555 func (s *PutBotOutput) SetChecksum(v string) *PutBotOutput { 12556 s.Checksum = &v 12557 return s 12558 } 12559 12560 // SetChildDirected sets the ChildDirected field's value. 12561 func (s *PutBotOutput) SetChildDirected(v bool) *PutBotOutput { 12562 s.ChildDirected = &v 12563 return s 12564 } 12565 12566 // SetClarificationPrompt sets the ClarificationPrompt field's value. 12567 func (s *PutBotOutput) SetClarificationPrompt(v *Prompt) *PutBotOutput { 12568 s.ClarificationPrompt = v 12569 return s 12570 } 12571 12572 // SetCreateVersion sets the CreateVersion field's value. 12573 func (s *PutBotOutput) SetCreateVersion(v bool) *PutBotOutput { 12574 s.CreateVersion = &v 12575 return s 12576 } 12577 12578 // SetCreatedDate sets the CreatedDate field's value. 12579 func (s *PutBotOutput) SetCreatedDate(v time.Time) *PutBotOutput { 12580 s.CreatedDate = &v 12581 return s 12582 } 12583 12584 // SetDescription sets the Description field's value. 12585 func (s *PutBotOutput) SetDescription(v string) *PutBotOutput { 12586 s.Description = &v 12587 return s 12588 } 12589 12590 // SetDetectSentiment sets the DetectSentiment field's value. 12591 func (s *PutBotOutput) SetDetectSentiment(v bool) *PutBotOutput { 12592 s.DetectSentiment = &v 12593 return s 12594 } 12595 12596 // SetEnableModelImprovements sets the EnableModelImprovements field's value. 12597 func (s *PutBotOutput) SetEnableModelImprovements(v bool) *PutBotOutput { 12598 s.EnableModelImprovements = &v 12599 return s 12600 } 12601 12602 // SetFailureReason sets the FailureReason field's value. 12603 func (s *PutBotOutput) SetFailureReason(v string) *PutBotOutput { 12604 s.FailureReason = &v 12605 return s 12606 } 12607 12608 // SetIdleSessionTTLInSeconds sets the IdleSessionTTLInSeconds field's value. 12609 func (s *PutBotOutput) SetIdleSessionTTLInSeconds(v int64) *PutBotOutput { 12610 s.IdleSessionTTLInSeconds = &v 12611 return s 12612 } 12613 12614 // SetIntents sets the Intents field's value. 12615 func (s *PutBotOutput) SetIntents(v []*Intent) *PutBotOutput { 12616 s.Intents = v 12617 return s 12618 } 12619 12620 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 12621 func (s *PutBotOutput) SetLastUpdatedDate(v time.Time) *PutBotOutput { 12622 s.LastUpdatedDate = &v 12623 return s 12624 } 12625 12626 // SetLocale sets the Locale field's value. 12627 func (s *PutBotOutput) SetLocale(v string) *PutBotOutput { 12628 s.Locale = &v 12629 return s 12630 } 12631 12632 // SetName sets the Name field's value. 12633 func (s *PutBotOutput) SetName(v string) *PutBotOutput { 12634 s.Name = &v 12635 return s 12636 } 12637 12638 // SetNluIntentConfidenceThreshold sets the NluIntentConfidenceThreshold field's value. 12639 func (s *PutBotOutput) SetNluIntentConfidenceThreshold(v float64) *PutBotOutput { 12640 s.NluIntentConfidenceThreshold = &v 12641 return s 12642 } 12643 12644 // SetStatus sets the Status field's value. 12645 func (s *PutBotOutput) SetStatus(v string) *PutBotOutput { 12646 s.Status = &v 12647 return s 12648 } 12649 12650 // SetTags sets the Tags field's value. 12651 func (s *PutBotOutput) SetTags(v []*Tag) *PutBotOutput { 12652 s.Tags = v 12653 return s 12654 } 12655 12656 // SetVersion sets the Version field's value. 12657 func (s *PutBotOutput) SetVersion(v string) *PutBotOutput { 12658 s.Version = &v 12659 return s 12660 } 12661 12662 // SetVoiceId sets the VoiceId field's value. 12663 func (s *PutBotOutput) SetVoiceId(v string) *PutBotOutput { 12664 s.VoiceId = &v 12665 return s 12666 } 12667 12668 type PutIntentInput struct { 12669 _ struct{} `type:"structure"` 12670 12671 // Identifies a specific revision of the $LATEST version. 12672 // 12673 // When you create a new intent, leave the checksum field blank. If you specify 12674 // a checksum you get a BadRequestException exception. 12675 // 12676 // When you want to update a intent, set the checksum field to the checksum 12677 // of the most recent revision of the $LATEST version. If you don't specify 12678 // the checksum field, or if the checksum does not match the $LATEST version, 12679 // you get a PreconditionFailedException exception. 12680 Checksum *string `locationName:"checksum" type:"string"` 12681 12682 // The statement that you want Amazon Lex to convey to the user after the intent 12683 // is successfully fulfilled by the Lambda function. 12684 // 12685 // This element is relevant only if you provide a Lambda function in the fulfillmentActivity. 12686 // If you return the intent to the client application, you can't specify this 12687 // element. 12688 // 12689 // The followUpPrompt and conclusionStatement are mutually exclusive. You can 12690 // specify only one. 12691 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 12692 12693 // Prompts the user to confirm the intent. This question should have a yes or 12694 // no answer. 12695 // 12696 // Amazon Lex uses this prompt to ensure that the user acknowledges that the 12697 // intent is ready for fulfillment. For example, with the OrderPizza intent, 12698 // you might want to confirm that the order is correct before placing it. For 12699 // other intents, such as intents that simply respond to user questions, you 12700 // might not need to ask the user for confirmation before providing the information. 12701 // 12702 // You you must provide both the rejectionStatement and the confirmationPrompt, 12703 // or neither. 12704 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 12705 12706 // When set to true a new numbered version of the intent is created. This is 12707 // the same as calling the CreateIntentVersion operation. If you do not specify 12708 // createVersion, the default is false. 12709 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 12710 12711 // A description of the intent. 12712 Description *string `locationName:"description" type:"string"` 12713 12714 // Specifies a Lambda function to invoke for each user input. You can invoke 12715 // this Lambda function to personalize user interaction. 12716 // 12717 // For example, suppose your bot determines that the user is John. Your Lambda 12718 // function might retrieve John's information from a backend database and prepopulate 12719 // some of the values. For example, if you find that John is gluten intolerant, 12720 // you might set the corresponding intent slot, GlutenIntolerant, to true. You 12721 // might find John's phone number and set the corresponding session attribute. 12722 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 12723 12724 // Amazon Lex uses this prompt to solicit additional activity after fulfilling 12725 // an intent. For example, after the OrderPizza intent is fulfilled, you might 12726 // prompt the user to order a drink. 12727 // 12728 // The action that Amazon Lex takes depends on the user's response, as follows: 12729 // 12730 // * If the user says "Yes" it responds with the clarification prompt that 12731 // is configured for the bot. 12732 // 12733 // * if the user says "Yes" and continues with an utterance that triggers 12734 // an intent it starts a conversation for the intent. 12735 // 12736 // * If the user says "No" it responds with the rejection statement configured 12737 // for the the follow-up prompt. 12738 // 12739 // * If it doesn't recognize the utterance it repeats the follow-up prompt 12740 // again. 12741 // 12742 // The followUpPrompt field and the conclusionStatement field are mutually exclusive. 12743 // You can specify only one. 12744 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 12745 12746 // Required. Describes how the intent is fulfilled. For example, after a user 12747 // provides all of the information for a pizza order, fulfillmentActivity defines 12748 // how the bot places an order with a local pizza store. 12749 // 12750 // You might configure Amazon Lex to return all of the intent information to 12751 // the client application, or direct it to invoke a Lambda function that can 12752 // process the intent (for example, place an order with a pizzeria). 12753 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 12754 12755 // An array of InputContext objects that lists the contexts that must be active 12756 // for Amazon Lex to choose the intent in a conversation with the user. 12757 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 12758 12759 // Configuration information required to use the AMAZON.KendraSearchIntent intent 12760 // to connect to an Amazon Kendra index. For more information, see AMAZON.KendraSearchIntent 12761 // (http://docs.aws.amazon.com/lex/latest/dg/built-in-intent-kendra-search.html). 12762 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 12763 12764 // The name of the intent. The name is not case sensitive. 12765 // 12766 // The name can't match a built-in intent name, or a built-in intent name with 12767 // "AMAZON." removed. For example, because there is a built-in intent called 12768 // AMAZON.HelpIntent, you can't create a custom intent called HelpIntent. 12769 // 12770 // 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) 12771 // in the Alexa Skills Kit. 12772 // 12773 // Name is a required field 12774 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 12775 12776 // An array of OutputContext objects that lists the contexts that the intent 12777 // activates when the intent is fulfilled. 12778 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 12779 12780 // A unique identifier for the built-in intent to base this intent on. To find 12781 // 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) 12782 // in the Alexa Skills Kit. 12783 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 12784 12785 // When the user answers "no" to the question defined in confirmationPrompt, 12786 // Amazon Lex responds with this statement to acknowledge that the intent was 12787 // canceled. 12788 // 12789 // You must provide both the rejectionStatement and the confirmationPrompt, 12790 // or neither. 12791 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 12792 12793 // An array of utterances (strings) that a user might say to signal the intent. 12794 // For example, "I want {PizzaSize} pizza", "Order {Quantity} {PizzaSize} pizzas". 12795 // 12796 // In each utterance, a slot name is enclosed in curly braces. 12797 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 12798 12799 // An array of intent slots. At runtime, Amazon Lex elicits required slot values 12800 // from the user using prompts defined in the slots. For more information, see 12801 // how-it-works. 12802 Slots []*Slot `locationName:"slots" type:"list"` 12803 } 12804 12805 // String returns the string representation. 12806 // 12807 // API parameter values that are decorated as "sensitive" in the API will not 12808 // be included in the string output. The member name will be present, but the 12809 // value will be replaced with "sensitive". 12810 func (s PutIntentInput) String() string { 12811 return awsutil.Prettify(s) 12812 } 12813 12814 // GoString returns the string representation. 12815 // 12816 // API parameter values that are decorated as "sensitive" in the API will not 12817 // be included in the string output. The member name will be present, but the 12818 // value will be replaced with "sensitive". 12819 func (s PutIntentInput) GoString() string { 12820 return s.String() 12821 } 12822 12823 // Validate inspects the fields of the type to determine if they are valid. 12824 func (s *PutIntentInput) Validate() error { 12825 invalidParams := request.ErrInvalidParams{Context: "PutIntentInput"} 12826 if s.Name == nil { 12827 invalidParams.Add(request.NewErrParamRequired("Name")) 12828 } 12829 if s.Name != nil && len(*s.Name) < 1 { 12830 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 12831 } 12832 if s.ConclusionStatement != nil { 12833 if err := s.ConclusionStatement.Validate(); err != nil { 12834 invalidParams.AddNested("ConclusionStatement", err.(request.ErrInvalidParams)) 12835 } 12836 } 12837 if s.ConfirmationPrompt != nil { 12838 if err := s.ConfirmationPrompt.Validate(); err != nil { 12839 invalidParams.AddNested("ConfirmationPrompt", err.(request.ErrInvalidParams)) 12840 } 12841 } 12842 if s.DialogCodeHook != nil { 12843 if err := s.DialogCodeHook.Validate(); err != nil { 12844 invalidParams.AddNested("DialogCodeHook", err.(request.ErrInvalidParams)) 12845 } 12846 } 12847 if s.FollowUpPrompt != nil { 12848 if err := s.FollowUpPrompt.Validate(); err != nil { 12849 invalidParams.AddNested("FollowUpPrompt", err.(request.ErrInvalidParams)) 12850 } 12851 } 12852 if s.FulfillmentActivity != nil { 12853 if err := s.FulfillmentActivity.Validate(); err != nil { 12854 invalidParams.AddNested("FulfillmentActivity", err.(request.ErrInvalidParams)) 12855 } 12856 } 12857 if s.InputContexts != nil { 12858 for i, v := range s.InputContexts { 12859 if v == nil { 12860 continue 12861 } 12862 if err := v.Validate(); err != nil { 12863 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputContexts", i), err.(request.ErrInvalidParams)) 12864 } 12865 } 12866 } 12867 if s.KendraConfiguration != nil { 12868 if err := s.KendraConfiguration.Validate(); err != nil { 12869 invalidParams.AddNested("KendraConfiguration", err.(request.ErrInvalidParams)) 12870 } 12871 } 12872 if s.OutputContexts != nil { 12873 for i, v := range s.OutputContexts { 12874 if v == nil { 12875 continue 12876 } 12877 if err := v.Validate(); err != nil { 12878 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputContexts", i), err.(request.ErrInvalidParams)) 12879 } 12880 } 12881 } 12882 if s.RejectionStatement != nil { 12883 if err := s.RejectionStatement.Validate(); err != nil { 12884 invalidParams.AddNested("RejectionStatement", err.(request.ErrInvalidParams)) 12885 } 12886 } 12887 if s.Slots != nil { 12888 for i, v := range s.Slots { 12889 if v == nil { 12890 continue 12891 } 12892 if err := v.Validate(); err != nil { 12893 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Slots", i), err.(request.ErrInvalidParams)) 12894 } 12895 } 12896 } 12897 12898 if invalidParams.Len() > 0 { 12899 return invalidParams 12900 } 12901 return nil 12902 } 12903 12904 // SetChecksum sets the Checksum field's value. 12905 func (s *PutIntentInput) SetChecksum(v string) *PutIntentInput { 12906 s.Checksum = &v 12907 return s 12908 } 12909 12910 // SetConclusionStatement sets the ConclusionStatement field's value. 12911 func (s *PutIntentInput) SetConclusionStatement(v *Statement) *PutIntentInput { 12912 s.ConclusionStatement = v 12913 return s 12914 } 12915 12916 // SetConfirmationPrompt sets the ConfirmationPrompt field's value. 12917 func (s *PutIntentInput) SetConfirmationPrompt(v *Prompt) *PutIntentInput { 12918 s.ConfirmationPrompt = v 12919 return s 12920 } 12921 12922 // SetCreateVersion sets the CreateVersion field's value. 12923 func (s *PutIntentInput) SetCreateVersion(v bool) *PutIntentInput { 12924 s.CreateVersion = &v 12925 return s 12926 } 12927 12928 // SetDescription sets the Description field's value. 12929 func (s *PutIntentInput) SetDescription(v string) *PutIntentInput { 12930 s.Description = &v 12931 return s 12932 } 12933 12934 // SetDialogCodeHook sets the DialogCodeHook field's value. 12935 func (s *PutIntentInput) SetDialogCodeHook(v *CodeHook) *PutIntentInput { 12936 s.DialogCodeHook = v 12937 return s 12938 } 12939 12940 // SetFollowUpPrompt sets the FollowUpPrompt field's value. 12941 func (s *PutIntentInput) SetFollowUpPrompt(v *FollowUpPrompt) *PutIntentInput { 12942 s.FollowUpPrompt = v 12943 return s 12944 } 12945 12946 // SetFulfillmentActivity sets the FulfillmentActivity field's value. 12947 func (s *PutIntentInput) SetFulfillmentActivity(v *FulfillmentActivity) *PutIntentInput { 12948 s.FulfillmentActivity = v 12949 return s 12950 } 12951 12952 // SetInputContexts sets the InputContexts field's value. 12953 func (s *PutIntentInput) SetInputContexts(v []*InputContext) *PutIntentInput { 12954 s.InputContexts = v 12955 return s 12956 } 12957 12958 // SetKendraConfiguration sets the KendraConfiguration field's value. 12959 func (s *PutIntentInput) SetKendraConfiguration(v *KendraConfiguration) *PutIntentInput { 12960 s.KendraConfiguration = v 12961 return s 12962 } 12963 12964 // SetName sets the Name field's value. 12965 func (s *PutIntentInput) SetName(v string) *PutIntentInput { 12966 s.Name = &v 12967 return s 12968 } 12969 12970 // SetOutputContexts sets the OutputContexts field's value. 12971 func (s *PutIntentInput) SetOutputContexts(v []*OutputContext) *PutIntentInput { 12972 s.OutputContexts = v 12973 return s 12974 } 12975 12976 // SetParentIntentSignature sets the ParentIntentSignature field's value. 12977 func (s *PutIntentInput) SetParentIntentSignature(v string) *PutIntentInput { 12978 s.ParentIntentSignature = &v 12979 return s 12980 } 12981 12982 // SetRejectionStatement sets the RejectionStatement field's value. 12983 func (s *PutIntentInput) SetRejectionStatement(v *Statement) *PutIntentInput { 12984 s.RejectionStatement = v 12985 return s 12986 } 12987 12988 // SetSampleUtterances sets the SampleUtterances field's value. 12989 func (s *PutIntentInput) SetSampleUtterances(v []*string) *PutIntentInput { 12990 s.SampleUtterances = v 12991 return s 12992 } 12993 12994 // SetSlots sets the Slots field's value. 12995 func (s *PutIntentInput) SetSlots(v []*Slot) *PutIntentInput { 12996 s.Slots = v 12997 return s 12998 } 12999 13000 type PutIntentOutput struct { 13001 _ struct{} `type:"structure"` 13002 13003 // Checksum of the $LATESTversion of the intent created or updated. 13004 Checksum *string `locationName:"checksum" type:"string"` 13005 13006 // After the Lambda function specified in thefulfillmentActivityintent fulfills 13007 // the intent, Amazon Lex conveys this statement to the user. 13008 ConclusionStatement *Statement `locationName:"conclusionStatement" type:"structure"` 13009 13010 // If defined in the intent, Amazon Lex prompts the user to confirm the intent 13011 // before fulfilling it. 13012 ConfirmationPrompt *Prompt `locationName:"confirmationPrompt" type:"structure"` 13013 13014 // True if a new version of the intent was created. If the createVersion field 13015 // was not specified in the request, the createVersion field is set to false 13016 // in the response. 13017 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 13018 13019 // The date that the intent was created. 13020 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 13021 13022 // A description of the intent. 13023 Description *string `locationName:"description" type:"string"` 13024 13025 // If defined in the intent, Amazon Lex invokes this Lambda function for each 13026 // user input. 13027 DialogCodeHook *CodeHook `locationName:"dialogCodeHook" type:"structure"` 13028 13029 // If defined in the intent, Amazon Lex uses this prompt to solicit additional 13030 // user activity after the intent is fulfilled. 13031 FollowUpPrompt *FollowUpPrompt `locationName:"followUpPrompt" type:"structure"` 13032 13033 // If defined in the intent, Amazon Lex invokes this Lambda function to fulfill 13034 // the intent after the user provides all of the information required by the 13035 // intent. 13036 FulfillmentActivity *FulfillmentActivity `locationName:"fulfillmentActivity" type:"structure"` 13037 13038 // An array of InputContext objects that lists the contexts that must be active 13039 // for Amazon Lex to choose the intent in a conversation with the user. 13040 InputContexts []*InputContext `locationName:"inputContexts" type:"list"` 13041 13042 // Configuration information, if any, required to connect to an Amazon Kendra 13043 // index and use the AMAZON.KendraSearchIntent intent. 13044 KendraConfiguration *KendraConfiguration `locationName:"kendraConfiguration" type:"structure"` 13045 13046 // The date that the intent was updated. When you create a resource, the creation 13047 // date and last update dates are the same. 13048 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 13049 13050 // The name of the intent. 13051 Name *string `locationName:"name" min:"1" type:"string"` 13052 13053 // An array of OutputContext objects that lists the contexts that the intent 13054 // activates when the intent is fulfilled. 13055 OutputContexts []*OutputContext `locationName:"outputContexts" type:"list"` 13056 13057 // A unique identifier for the built-in intent that this intent is based on. 13058 ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` 13059 13060 // If the user answers "no" to the question defined in confirmationPrompt Amazon 13061 // Lex responds with this statement to acknowledge that the intent was canceled. 13062 RejectionStatement *Statement `locationName:"rejectionStatement" type:"structure"` 13063 13064 // An array of sample utterances that are configured for the intent. 13065 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 13066 13067 // An array of intent slots that are configured for the intent. 13068 Slots []*Slot `locationName:"slots" type:"list"` 13069 13070 // The version of the intent. For a new intent, the version is always $LATEST. 13071 Version *string `locationName:"version" min:"1" type:"string"` 13072 } 13073 13074 // String returns the string representation. 13075 // 13076 // API parameter values that are decorated as "sensitive" in the API will not 13077 // be included in the string output. The member name will be present, but the 13078 // value will be replaced with "sensitive". 13079 func (s PutIntentOutput) String() string { 13080 return awsutil.Prettify(s) 13081 } 13082 13083 // GoString returns the string representation. 13084 // 13085 // API parameter values that are decorated as "sensitive" in the API will not 13086 // be included in the string output. The member name will be present, but the 13087 // value will be replaced with "sensitive". 13088 func (s PutIntentOutput) GoString() string { 13089 return s.String() 13090 } 13091 13092 // SetChecksum sets the Checksum field's value. 13093 func (s *PutIntentOutput) SetChecksum(v string) *PutIntentOutput { 13094 s.Checksum = &v 13095 return s 13096 } 13097 13098 // SetConclusionStatement sets the ConclusionStatement field's value. 13099 func (s *PutIntentOutput) SetConclusionStatement(v *Statement) *PutIntentOutput { 13100 s.ConclusionStatement = v 13101 return s 13102 } 13103 13104 // SetConfirmationPrompt sets the ConfirmationPrompt field's value. 13105 func (s *PutIntentOutput) SetConfirmationPrompt(v *Prompt) *PutIntentOutput { 13106 s.ConfirmationPrompt = v 13107 return s 13108 } 13109 13110 // SetCreateVersion sets the CreateVersion field's value. 13111 func (s *PutIntentOutput) SetCreateVersion(v bool) *PutIntentOutput { 13112 s.CreateVersion = &v 13113 return s 13114 } 13115 13116 // SetCreatedDate sets the CreatedDate field's value. 13117 func (s *PutIntentOutput) SetCreatedDate(v time.Time) *PutIntentOutput { 13118 s.CreatedDate = &v 13119 return s 13120 } 13121 13122 // SetDescription sets the Description field's value. 13123 func (s *PutIntentOutput) SetDescription(v string) *PutIntentOutput { 13124 s.Description = &v 13125 return s 13126 } 13127 13128 // SetDialogCodeHook sets the DialogCodeHook field's value. 13129 func (s *PutIntentOutput) SetDialogCodeHook(v *CodeHook) *PutIntentOutput { 13130 s.DialogCodeHook = v 13131 return s 13132 } 13133 13134 // SetFollowUpPrompt sets the FollowUpPrompt field's value. 13135 func (s *PutIntentOutput) SetFollowUpPrompt(v *FollowUpPrompt) *PutIntentOutput { 13136 s.FollowUpPrompt = v 13137 return s 13138 } 13139 13140 // SetFulfillmentActivity sets the FulfillmentActivity field's value. 13141 func (s *PutIntentOutput) SetFulfillmentActivity(v *FulfillmentActivity) *PutIntentOutput { 13142 s.FulfillmentActivity = v 13143 return s 13144 } 13145 13146 // SetInputContexts sets the InputContexts field's value. 13147 func (s *PutIntentOutput) SetInputContexts(v []*InputContext) *PutIntentOutput { 13148 s.InputContexts = v 13149 return s 13150 } 13151 13152 // SetKendraConfiguration sets the KendraConfiguration field's value. 13153 func (s *PutIntentOutput) SetKendraConfiguration(v *KendraConfiguration) *PutIntentOutput { 13154 s.KendraConfiguration = v 13155 return s 13156 } 13157 13158 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 13159 func (s *PutIntentOutput) SetLastUpdatedDate(v time.Time) *PutIntentOutput { 13160 s.LastUpdatedDate = &v 13161 return s 13162 } 13163 13164 // SetName sets the Name field's value. 13165 func (s *PutIntentOutput) SetName(v string) *PutIntentOutput { 13166 s.Name = &v 13167 return s 13168 } 13169 13170 // SetOutputContexts sets the OutputContexts field's value. 13171 func (s *PutIntentOutput) SetOutputContexts(v []*OutputContext) *PutIntentOutput { 13172 s.OutputContexts = v 13173 return s 13174 } 13175 13176 // SetParentIntentSignature sets the ParentIntentSignature field's value. 13177 func (s *PutIntentOutput) SetParentIntentSignature(v string) *PutIntentOutput { 13178 s.ParentIntentSignature = &v 13179 return s 13180 } 13181 13182 // SetRejectionStatement sets the RejectionStatement field's value. 13183 func (s *PutIntentOutput) SetRejectionStatement(v *Statement) *PutIntentOutput { 13184 s.RejectionStatement = v 13185 return s 13186 } 13187 13188 // SetSampleUtterances sets the SampleUtterances field's value. 13189 func (s *PutIntentOutput) SetSampleUtterances(v []*string) *PutIntentOutput { 13190 s.SampleUtterances = v 13191 return s 13192 } 13193 13194 // SetSlots sets the Slots field's value. 13195 func (s *PutIntentOutput) SetSlots(v []*Slot) *PutIntentOutput { 13196 s.Slots = v 13197 return s 13198 } 13199 13200 // SetVersion sets the Version field's value. 13201 func (s *PutIntentOutput) SetVersion(v string) *PutIntentOutput { 13202 s.Version = &v 13203 return s 13204 } 13205 13206 type PutSlotTypeInput struct { 13207 _ struct{} `type:"structure"` 13208 13209 // Identifies a specific revision of the $LATEST version. 13210 // 13211 // When you create a new slot type, leave the checksum field blank. If you specify 13212 // a checksum you get a BadRequestException exception. 13213 // 13214 // When you want to update a slot type, set the checksum field to the checksum 13215 // of the most recent revision of the $LATEST version. If you don't specify 13216 // the checksum field, or if the checksum does not match the $LATEST version, 13217 // you get a PreconditionFailedException exception. 13218 Checksum *string `locationName:"checksum" type:"string"` 13219 13220 // When set to true a new numbered version of the slot type is created. This 13221 // is the same as calling the CreateSlotTypeVersion operation. If you do not 13222 // specify createVersion, the default is false. 13223 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 13224 13225 // A description of the slot type. 13226 Description *string `locationName:"description" type:"string"` 13227 13228 // A list of EnumerationValue objects that defines the values that the slot 13229 // type can take. Each value can have a list of synonyms, which are additional 13230 // values that help train the machine learning model about the values that it 13231 // resolves for a slot. 13232 // 13233 // A regular expression slot type doesn't require enumeration values. All other 13234 // slot types require a list of enumeration values. 13235 // 13236 // When Amazon Lex resolves a slot value, it generates a resolution list that 13237 // contains up to five possible values for the slot. If you are using a Lambda 13238 // function, this resolution list is passed to the function. If you are not 13239 // using a Lambda function you can choose to return the value that the user 13240 // entered or the first value in the resolution list as the slot value. The 13241 // valueSelectionStrategy field indicates the option to use. 13242 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 13243 13244 // The name of the slot type. The name is not case sensitive. 13245 // 13246 // The name can't match a built-in slot type name, or a built-in slot type name 13247 // with "AMAZON." removed. For example, because there is a built-in slot type 13248 // called AMAZON.DATE, you can't create a custom slot type called DATE. 13249 // 13250 // 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) 13251 // in the Alexa Skills Kit. 13252 // 13253 // Name is a required field 13254 Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` 13255 13256 // The built-in slot type used as the parent of the slot type. When you define 13257 // a parent slot type, the new slot type has all of the same configuration as 13258 // the parent. 13259 // 13260 // Only AMAZON.AlphaNumeric is supported. 13261 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 13262 13263 // Configuration information that extends the parent built-in slot type. The 13264 // configuration is added to the settings for the parent slot type. 13265 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 13266 13267 // Determines the slot resolution strategy that Amazon Lex uses to return slot 13268 // type values. The field can be set to one of the following values: 13269 // 13270 // * ORIGINAL_VALUE - Returns the value entered by the user, if the user 13271 // value is similar to the slot value. 13272 // 13273 // * TOP_RESOLUTION - If there is a resolution list for the slot, return 13274 // the first value in the resolution list as the slot type value. If there 13275 // is no resolution list, null is returned. 13276 // 13277 // If you don't specify the valueSelectionStrategy, the default is ORIGINAL_VALUE. 13278 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 13279 } 13280 13281 // String returns the string representation. 13282 // 13283 // API parameter values that are decorated as "sensitive" in the API will not 13284 // be included in the string output. The member name will be present, but the 13285 // value will be replaced with "sensitive". 13286 func (s PutSlotTypeInput) String() string { 13287 return awsutil.Prettify(s) 13288 } 13289 13290 // GoString returns the string representation. 13291 // 13292 // API parameter values that are decorated as "sensitive" in the API will not 13293 // be included in the string output. The member name will be present, but the 13294 // value will be replaced with "sensitive". 13295 func (s PutSlotTypeInput) GoString() string { 13296 return s.String() 13297 } 13298 13299 // Validate inspects the fields of the type to determine if they are valid. 13300 func (s *PutSlotTypeInput) Validate() error { 13301 invalidParams := request.ErrInvalidParams{Context: "PutSlotTypeInput"} 13302 if s.Name == nil { 13303 invalidParams.Add(request.NewErrParamRequired("Name")) 13304 } 13305 if s.Name != nil && len(*s.Name) < 1 { 13306 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 13307 } 13308 if s.ParentSlotTypeSignature != nil && len(*s.ParentSlotTypeSignature) < 1 { 13309 invalidParams.Add(request.NewErrParamMinLen("ParentSlotTypeSignature", 1)) 13310 } 13311 if s.EnumerationValues != nil { 13312 for i, v := range s.EnumerationValues { 13313 if v == nil { 13314 continue 13315 } 13316 if err := v.Validate(); err != nil { 13317 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EnumerationValues", i), err.(request.ErrInvalidParams)) 13318 } 13319 } 13320 } 13321 if s.SlotTypeConfigurations != nil { 13322 for i, v := range s.SlotTypeConfigurations { 13323 if v == nil { 13324 continue 13325 } 13326 if err := v.Validate(); err != nil { 13327 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SlotTypeConfigurations", i), err.(request.ErrInvalidParams)) 13328 } 13329 } 13330 } 13331 13332 if invalidParams.Len() > 0 { 13333 return invalidParams 13334 } 13335 return nil 13336 } 13337 13338 // SetChecksum sets the Checksum field's value. 13339 func (s *PutSlotTypeInput) SetChecksum(v string) *PutSlotTypeInput { 13340 s.Checksum = &v 13341 return s 13342 } 13343 13344 // SetCreateVersion sets the CreateVersion field's value. 13345 func (s *PutSlotTypeInput) SetCreateVersion(v bool) *PutSlotTypeInput { 13346 s.CreateVersion = &v 13347 return s 13348 } 13349 13350 // SetDescription sets the Description field's value. 13351 func (s *PutSlotTypeInput) SetDescription(v string) *PutSlotTypeInput { 13352 s.Description = &v 13353 return s 13354 } 13355 13356 // SetEnumerationValues sets the EnumerationValues field's value. 13357 func (s *PutSlotTypeInput) SetEnumerationValues(v []*EnumerationValue) *PutSlotTypeInput { 13358 s.EnumerationValues = v 13359 return s 13360 } 13361 13362 // SetName sets the Name field's value. 13363 func (s *PutSlotTypeInput) SetName(v string) *PutSlotTypeInput { 13364 s.Name = &v 13365 return s 13366 } 13367 13368 // SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 13369 func (s *PutSlotTypeInput) SetParentSlotTypeSignature(v string) *PutSlotTypeInput { 13370 s.ParentSlotTypeSignature = &v 13371 return s 13372 } 13373 13374 // SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 13375 func (s *PutSlotTypeInput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *PutSlotTypeInput { 13376 s.SlotTypeConfigurations = v 13377 return s 13378 } 13379 13380 // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 13381 func (s *PutSlotTypeInput) SetValueSelectionStrategy(v string) *PutSlotTypeInput { 13382 s.ValueSelectionStrategy = &v 13383 return s 13384 } 13385 13386 type PutSlotTypeOutput struct { 13387 _ struct{} `type:"structure"` 13388 13389 // Checksum of the $LATEST version of the slot type. 13390 Checksum *string `locationName:"checksum" type:"string"` 13391 13392 // True if a new version of the slot type was created. If the createVersion 13393 // field was not specified in the request, the createVersion field is set to 13394 // false in the response. 13395 CreateVersion *bool `locationName:"createVersion" type:"boolean"` 13396 13397 // The date that the slot type was created. 13398 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 13399 13400 // A description of the slot type. 13401 Description *string `locationName:"description" type:"string"` 13402 13403 // A list of EnumerationValue objects that defines the values that the slot 13404 // type can take. 13405 EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` 13406 13407 // The date that the slot type was updated. When you create a slot type, the 13408 // creation date and last update date are the same. 13409 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 13410 13411 // The name of the slot type. 13412 Name *string `locationName:"name" min:"1" type:"string"` 13413 13414 // The built-in slot type used as the parent of the slot type. 13415 ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` 13416 13417 // Configuration information that extends the parent built-in slot type. 13418 SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` 13419 13420 // The slot resolution strategy that Amazon Lex uses to determine the value 13421 // of the slot. For more information, see PutSlotType. 13422 ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` 13423 13424 // The version of the slot type. For a new slot type, the version is always 13425 // $LATEST. 13426 Version *string `locationName:"version" min:"1" type:"string"` 13427 } 13428 13429 // String returns the string representation. 13430 // 13431 // API parameter values that are decorated as "sensitive" in the API will not 13432 // be included in the string output. The member name will be present, but the 13433 // value will be replaced with "sensitive". 13434 func (s PutSlotTypeOutput) String() string { 13435 return awsutil.Prettify(s) 13436 } 13437 13438 // GoString returns the string representation. 13439 // 13440 // API parameter values that are decorated as "sensitive" in the API will not 13441 // be included in the string output. The member name will be present, but the 13442 // value will be replaced with "sensitive". 13443 func (s PutSlotTypeOutput) GoString() string { 13444 return s.String() 13445 } 13446 13447 // SetChecksum sets the Checksum field's value. 13448 func (s *PutSlotTypeOutput) SetChecksum(v string) *PutSlotTypeOutput { 13449 s.Checksum = &v 13450 return s 13451 } 13452 13453 // SetCreateVersion sets the CreateVersion field's value. 13454 func (s *PutSlotTypeOutput) SetCreateVersion(v bool) *PutSlotTypeOutput { 13455 s.CreateVersion = &v 13456 return s 13457 } 13458 13459 // SetCreatedDate sets the CreatedDate field's value. 13460 func (s *PutSlotTypeOutput) SetCreatedDate(v time.Time) *PutSlotTypeOutput { 13461 s.CreatedDate = &v 13462 return s 13463 } 13464 13465 // SetDescription sets the Description field's value. 13466 func (s *PutSlotTypeOutput) SetDescription(v string) *PutSlotTypeOutput { 13467 s.Description = &v 13468 return s 13469 } 13470 13471 // SetEnumerationValues sets the EnumerationValues field's value. 13472 func (s *PutSlotTypeOutput) SetEnumerationValues(v []*EnumerationValue) *PutSlotTypeOutput { 13473 s.EnumerationValues = v 13474 return s 13475 } 13476 13477 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 13478 func (s *PutSlotTypeOutput) SetLastUpdatedDate(v time.Time) *PutSlotTypeOutput { 13479 s.LastUpdatedDate = &v 13480 return s 13481 } 13482 13483 // SetName sets the Name field's value. 13484 func (s *PutSlotTypeOutput) SetName(v string) *PutSlotTypeOutput { 13485 s.Name = &v 13486 return s 13487 } 13488 13489 // SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. 13490 func (s *PutSlotTypeOutput) SetParentSlotTypeSignature(v string) *PutSlotTypeOutput { 13491 s.ParentSlotTypeSignature = &v 13492 return s 13493 } 13494 13495 // SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. 13496 func (s *PutSlotTypeOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *PutSlotTypeOutput { 13497 s.SlotTypeConfigurations = v 13498 return s 13499 } 13500 13501 // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. 13502 func (s *PutSlotTypeOutput) SetValueSelectionStrategy(v string) *PutSlotTypeOutput { 13503 s.ValueSelectionStrategy = &v 13504 return s 13505 } 13506 13507 // SetVersion sets the Version field's value. 13508 func (s *PutSlotTypeOutput) SetVersion(v string) *PutSlotTypeOutput { 13509 s.Version = &v 13510 return s 13511 } 13512 13513 // The resource that you are attempting to delete is referred to by another 13514 // resource. Use this information to remove references to the resource that 13515 // you are trying to delete. 13516 // 13517 // The body of the exception contains a JSON object that describes the resource. 13518 // 13519 // { "resourceType": BOT | BOTALIAS | BOTCHANNEL | INTENT, 13520 // 13521 // "resourceReference": { 13522 // 13523 // "name": string, "version": string } } 13524 type ResourceInUseException struct { 13525 _ struct{} `type:"structure"` 13526 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 13527 13528 // Describes the resource that refers to the resource that you are attempting 13529 // to delete. This object is returned as part of the ResourceInUseException 13530 // exception. 13531 ExampleReference *ResourceReference `locationName:"exampleReference" type:"structure"` 13532 13533 Message_ *string `locationName:"message" type:"string"` 13534 13535 ReferenceType *string `locationName:"referenceType" type:"string" enum:"ReferenceType"` 13536 } 13537 13538 // String returns the string representation. 13539 // 13540 // API parameter values that are decorated as "sensitive" in the API will not 13541 // be included in the string output. The member name will be present, but the 13542 // value will be replaced with "sensitive". 13543 func (s ResourceInUseException) String() string { 13544 return awsutil.Prettify(s) 13545 } 13546 13547 // GoString returns the string representation. 13548 // 13549 // API parameter values that are decorated as "sensitive" in the API will not 13550 // be included in the string output. The member name will be present, but the 13551 // value will be replaced with "sensitive". 13552 func (s ResourceInUseException) GoString() string { 13553 return s.String() 13554 } 13555 13556 func newErrorResourceInUseException(v protocol.ResponseMetadata) error { 13557 return &ResourceInUseException{ 13558 RespMetadata: v, 13559 } 13560 } 13561 13562 // Code returns the exception type name. 13563 func (s *ResourceInUseException) Code() string { 13564 return "ResourceInUseException" 13565 } 13566 13567 // Message returns the exception's message. 13568 func (s *ResourceInUseException) Message() string { 13569 if s.Message_ != nil { 13570 return *s.Message_ 13571 } 13572 return "" 13573 } 13574 13575 // OrigErr always returns nil, satisfies awserr.Error interface. 13576 func (s *ResourceInUseException) OrigErr() error { 13577 return nil 13578 } 13579 13580 func (s *ResourceInUseException) Error() string { 13581 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 13582 } 13583 13584 // Status code returns the HTTP status code for the request's response error. 13585 func (s *ResourceInUseException) StatusCode() int { 13586 return s.RespMetadata.StatusCode 13587 } 13588 13589 // RequestID returns the service's response RequestID for request. 13590 func (s *ResourceInUseException) RequestID() string { 13591 return s.RespMetadata.RequestID 13592 } 13593 13594 // Describes the resource that refers to the resource that you are attempting 13595 // to delete. This object is returned as part of the ResourceInUseException 13596 // exception. 13597 type ResourceReference struct { 13598 _ struct{} `type:"structure"` 13599 13600 // The name of the resource that is using the resource that you are trying to 13601 // delete. 13602 Name *string `locationName:"name" min:"1" type:"string"` 13603 13604 // The version of the resource that is using the resource that you are trying 13605 // to delete. 13606 Version *string `locationName:"version" min:"1" type:"string"` 13607 } 13608 13609 // String returns the string representation. 13610 // 13611 // API parameter values that are decorated as "sensitive" in the API will not 13612 // be included in the string output. The member name will be present, but the 13613 // value will be replaced with "sensitive". 13614 func (s ResourceReference) String() string { 13615 return awsutil.Prettify(s) 13616 } 13617 13618 // GoString returns the string representation. 13619 // 13620 // API parameter values that are decorated as "sensitive" in the API will not 13621 // be included in the string output. The member name will be present, but the 13622 // value will be replaced with "sensitive". 13623 func (s ResourceReference) GoString() string { 13624 return s.String() 13625 } 13626 13627 // SetName sets the Name field's value. 13628 func (s *ResourceReference) SetName(v string) *ResourceReference { 13629 s.Name = &v 13630 return s 13631 } 13632 13633 // SetVersion sets the Version field's value. 13634 func (s *ResourceReference) SetVersion(v string) *ResourceReference { 13635 s.Version = &v 13636 return s 13637 } 13638 13639 // Identifies the version of a specific slot. 13640 type Slot struct { 13641 _ struct{} `type:"structure"` 13642 13643 // A list of default values for the slot. Default values are used when Amazon 13644 // Lex hasn't determined a value for a slot. You can specify default values 13645 // from context variables, session attributes, and defined values. 13646 DefaultValueSpec *SlotDefaultValueSpec `locationName:"defaultValueSpec" type:"structure"` 13647 13648 // A description of the slot. 13649 Description *string `locationName:"description" type:"string"` 13650 13651 // The name of the slot. 13652 // 13653 // Name is a required field 13654 Name *string `locationName:"name" min:"1" type:"string" required:"true"` 13655 13656 // Determines whether a slot is obfuscated in conversation logs and stored utterances. 13657 // When you obfuscate a slot, the value is replaced by the slot name in curly 13658 // braces ({}). For example, if the slot name is "full_name", obfuscated values 13659 // are replaced with "{full_name}". For more information, see Slot Obfuscation 13660 // (https://docs.aws.amazon.com/lex/latest/dg/how-obfuscate.html). 13661 ObfuscationSetting *string `locationName:"obfuscationSetting" type:"string" enum:"ObfuscationSetting"` 13662 13663 // Directs Amazon Lex the order in which to elicit this slot value from the 13664 // user. For example, if the intent has two slots with priorities 1 and 2, AWS 13665 // Amazon Lex first elicits a value for the slot with priority 1. 13666 // 13667 // If multiple slots share the same priority, the order in which Amazon Lex 13668 // elicits values is arbitrary. 13669 Priority *int64 `locationName:"priority" type:"integer"` 13670 13671 // A set of possible responses for the slot type used by text-based clients. 13672 // A user chooses an option from the response card, instead of using text to 13673 // reply. 13674 ResponseCard *string `locationName:"responseCard" min:"1" type:"string"` 13675 13676 // If you know a specific pattern with which users might respond to an Amazon 13677 // Lex request for a slot value, you can provide those utterances to improve 13678 // accuracy. This is optional. In most cases, Amazon Lex is capable of understanding 13679 // user utterances. 13680 SampleUtterances []*string `locationName:"sampleUtterances" type:"list"` 13681 13682 // Specifies whether the slot is required or optional. 13683 // 13684 // SlotConstraint is a required field 13685 SlotConstraint *string `locationName:"slotConstraint" type:"string" required:"true" enum:"SlotConstraint"` 13686 13687 // The type of the slot, either a custom slot type that you defined or one of 13688 // the built-in slot types. 13689 SlotType *string `locationName:"slotType" min:"1" type:"string"` 13690 13691 // The version of the slot type. 13692 SlotTypeVersion *string `locationName:"slotTypeVersion" min:"1" type:"string"` 13693 13694 // The prompt that Amazon Lex uses to elicit the slot value from the user. 13695 ValueElicitationPrompt *Prompt `locationName:"valueElicitationPrompt" type:"structure"` 13696 } 13697 13698 // String returns the string representation. 13699 // 13700 // API parameter values that are decorated as "sensitive" in the API will not 13701 // be included in the string output. The member name will be present, but the 13702 // value will be replaced with "sensitive". 13703 func (s Slot) String() string { 13704 return awsutil.Prettify(s) 13705 } 13706 13707 // GoString returns the string representation. 13708 // 13709 // API parameter values that are decorated as "sensitive" in the API will not 13710 // be included in the string output. The member name will be present, but the 13711 // value will be replaced with "sensitive". 13712 func (s Slot) GoString() string { 13713 return s.String() 13714 } 13715 13716 // Validate inspects the fields of the type to determine if they are valid. 13717 func (s *Slot) Validate() error { 13718 invalidParams := request.ErrInvalidParams{Context: "Slot"} 13719 if s.Name == nil { 13720 invalidParams.Add(request.NewErrParamRequired("Name")) 13721 } 13722 if s.Name != nil && len(*s.Name) < 1 { 13723 invalidParams.Add(request.NewErrParamMinLen("Name", 1)) 13724 } 13725 if s.ResponseCard != nil && len(*s.ResponseCard) < 1 { 13726 invalidParams.Add(request.NewErrParamMinLen("ResponseCard", 1)) 13727 } 13728 if s.SlotConstraint == nil { 13729 invalidParams.Add(request.NewErrParamRequired("SlotConstraint")) 13730 } 13731 if s.SlotType != nil && len(*s.SlotType) < 1 { 13732 invalidParams.Add(request.NewErrParamMinLen("SlotType", 1)) 13733 } 13734 if s.SlotTypeVersion != nil && len(*s.SlotTypeVersion) < 1 { 13735 invalidParams.Add(request.NewErrParamMinLen("SlotTypeVersion", 1)) 13736 } 13737 if s.DefaultValueSpec != nil { 13738 if err := s.DefaultValueSpec.Validate(); err != nil { 13739 invalidParams.AddNested("DefaultValueSpec", err.(request.ErrInvalidParams)) 13740 } 13741 } 13742 if s.ValueElicitationPrompt != nil { 13743 if err := s.ValueElicitationPrompt.Validate(); err != nil { 13744 invalidParams.AddNested("ValueElicitationPrompt", err.(request.ErrInvalidParams)) 13745 } 13746 } 13747 13748 if invalidParams.Len() > 0 { 13749 return invalidParams 13750 } 13751 return nil 13752 } 13753 13754 // SetDefaultValueSpec sets the DefaultValueSpec field's value. 13755 func (s *Slot) SetDefaultValueSpec(v *SlotDefaultValueSpec) *Slot { 13756 s.DefaultValueSpec = v 13757 return s 13758 } 13759 13760 // SetDescription sets the Description field's value. 13761 func (s *Slot) SetDescription(v string) *Slot { 13762 s.Description = &v 13763 return s 13764 } 13765 13766 // SetName sets the Name field's value. 13767 func (s *Slot) SetName(v string) *Slot { 13768 s.Name = &v 13769 return s 13770 } 13771 13772 // SetObfuscationSetting sets the ObfuscationSetting field's value. 13773 func (s *Slot) SetObfuscationSetting(v string) *Slot { 13774 s.ObfuscationSetting = &v 13775 return s 13776 } 13777 13778 // SetPriority sets the Priority field's value. 13779 func (s *Slot) SetPriority(v int64) *Slot { 13780 s.Priority = &v 13781 return s 13782 } 13783 13784 // SetResponseCard sets the ResponseCard field's value. 13785 func (s *Slot) SetResponseCard(v string) *Slot { 13786 s.ResponseCard = &v 13787 return s 13788 } 13789 13790 // SetSampleUtterances sets the SampleUtterances field's value. 13791 func (s *Slot) SetSampleUtterances(v []*string) *Slot { 13792 s.SampleUtterances = v 13793 return s 13794 } 13795 13796 // SetSlotConstraint sets the SlotConstraint field's value. 13797 func (s *Slot) SetSlotConstraint(v string) *Slot { 13798 s.SlotConstraint = &v 13799 return s 13800 } 13801 13802 // SetSlotType sets the SlotType field's value. 13803 func (s *Slot) SetSlotType(v string) *Slot { 13804 s.SlotType = &v 13805 return s 13806 } 13807 13808 // SetSlotTypeVersion sets the SlotTypeVersion field's value. 13809 func (s *Slot) SetSlotTypeVersion(v string) *Slot { 13810 s.SlotTypeVersion = &v 13811 return s 13812 } 13813 13814 // SetValueElicitationPrompt sets the ValueElicitationPrompt field's value. 13815 func (s *Slot) SetValueElicitationPrompt(v *Prompt) *Slot { 13816 s.ValueElicitationPrompt = v 13817 return s 13818 } 13819 13820 // A default value for a slot. 13821 type SlotDefaultValue struct { 13822 _ struct{} `type:"structure"` 13823 13824 // The default value for the slot. You can specify one of the following: 13825 // 13826 // * #context-name.slot-name - The slot value "slot-name" in the context 13827 // "context-name." 13828 // 13829 // * {attribute} - The slot value of the session attribute "attribute." 13830 // 13831 // * 'value' - The discrete value "value." 13832 // 13833 // DefaultValue is a required field 13834 DefaultValue *string `locationName:"defaultValue" min:"1" type:"string" required:"true"` 13835 } 13836 13837 // String returns the string representation. 13838 // 13839 // API parameter values that are decorated as "sensitive" in the API will not 13840 // be included in the string output. The member name will be present, but the 13841 // value will be replaced with "sensitive". 13842 func (s SlotDefaultValue) String() string { 13843 return awsutil.Prettify(s) 13844 } 13845 13846 // GoString returns the string representation. 13847 // 13848 // API parameter values that are decorated as "sensitive" in the API will not 13849 // be included in the string output. The member name will be present, but the 13850 // value will be replaced with "sensitive". 13851 func (s SlotDefaultValue) GoString() string { 13852 return s.String() 13853 } 13854 13855 // Validate inspects the fields of the type to determine if they are valid. 13856 func (s *SlotDefaultValue) Validate() error { 13857 invalidParams := request.ErrInvalidParams{Context: "SlotDefaultValue"} 13858 if s.DefaultValue == nil { 13859 invalidParams.Add(request.NewErrParamRequired("DefaultValue")) 13860 } 13861 if s.DefaultValue != nil && len(*s.DefaultValue) < 1 { 13862 invalidParams.Add(request.NewErrParamMinLen("DefaultValue", 1)) 13863 } 13864 13865 if invalidParams.Len() > 0 { 13866 return invalidParams 13867 } 13868 return nil 13869 } 13870 13871 // SetDefaultValue sets the DefaultValue field's value. 13872 func (s *SlotDefaultValue) SetDefaultValue(v string) *SlotDefaultValue { 13873 s.DefaultValue = &v 13874 return s 13875 } 13876 13877 // Contains the default values for a slot. Default values are used when Amazon 13878 // Lex hasn't determined a value for a slot. 13879 type SlotDefaultValueSpec struct { 13880 _ struct{} `type:"structure"` 13881 13882 // The default values for a slot. You can specify more than one default. For 13883 // example, you can specify a default value to use from a matching context variable, 13884 // a session attribute, or a fixed value. 13885 // 13886 // The default value chosen is selected based on the order that you specify 13887 // them in the list. For example, if you specify a context variable and a fixed 13888 // value in that order, Amazon Lex uses the context variable if it is available, 13889 // else it uses the fixed value. 13890 // 13891 // DefaultValueList is a required field 13892 DefaultValueList []*SlotDefaultValue `locationName:"defaultValueList" type:"list" required:"true"` 13893 } 13894 13895 // String returns the string representation. 13896 // 13897 // API parameter values that are decorated as "sensitive" in the API will not 13898 // be included in the string output. The member name will be present, but the 13899 // value will be replaced with "sensitive". 13900 func (s SlotDefaultValueSpec) String() string { 13901 return awsutil.Prettify(s) 13902 } 13903 13904 // GoString returns the string representation. 13905 // 13906 // API parameter values that are decorated as "sensitive" in the API will not 13907 // be included in the string output. The member name will be present, but the 13908 // value will be replaced with "sensitive". 13909 func (s SlotDefaultValueSpec) GoString() string { 13910 return s.String() 13911 } 13912 13913 // Validate inspects the fields of the type to determine if they are valid. 13914 func (s *SlotDefaultValueSpec) Validate() error { 13915 invalidParams := request.ErrInvalidParams{Context: "SlotDefaultValueSpec"} 13916 if s.DefaultValueList == nil { 13917 invalidParams.Add(request.NewErrParamRequired("DefaultValueList")) 13918 } 13919 if s.DefaultValueList != nil { 13920 for i, v := range s.DefaultValueList { 13921 if v == nil { 13922 continue 13923 } 13924 if err := v.Validate(); err != nil { 13925 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DefaultValueList", i), err.(request.ErrInvalidParams)) 13926 } 13927 } 13928 } 13929 13930 if invalidParams.Len() > 0 { 13931 return invalidParams 13932 } 13933 return nil 13934 } 13935 13936 // SetDefaultValueList sets the DefaultValueList field's value. 13937 func (s *SlotDefaultValueSpec) SetDefaultValueList(v []*SlotDefaultValue) *SlotDefaultValueSpec { 13938 s.DefaultValueList = v 13939 return s 13940 } 13941 13942 // Provides configuration information for a slot type. 13943 type SlotTypeConfiguration struct { 13944 _ struct{} `type:"structure"` 13945 13946 // A regular expression used to validate the value of a slot. 13947 RegexConfiguration *SlotTypeRegexConfiguration `locationName:"regexConfiguration" type:"structure"` 13948 } 13949 13950 // String returns the string representation. 13951 // 13952 // API parameter values that are decorated as "sensitive" in the API will not 13953 // be included in the string output. The member name will be present, but the 13954 // value will be replaced with "sensitive". 13955 func (s SlotTypeConfiguration) String() string { 13956 return awsutil.Prettify(s) 13957 } 13958 13959 // GoString returns the string representation. 13960 // 13961 // API parameter values that are decorated as "sensitive" in the API will not 13962 // be included in the string output. The member name will be present, but the 13963 // value will be replaced with "sensitive". 13964 func (s SlotTypeConfiguration) GoString() string { 13965 return s.String() 13966 } 13967 13968 // Validate inspects the fields of the type to determine if they are valid. 13969 func (s *SlotTypeConfiguration) Validate() error { 13970 invalidParams := request.ErrInvalidParams{Context: "SlotTypeConfiguration"} 13971 if s.RegexConfiguration != nil { 13972 if err := s.RegexConfiguration.Validate(); err != nil { 13973 invalidParams.AddNested("RegexConfiguration", err.(request.ErrInvalidParams)) 13974 } 13975 } 13976 13977 if invalidParams.Len() > 0 { 13978 return invalidParams 13979 } 13980 return nil 13981 } 13982 13983 // SetRegexConfiguration sets the RegexConfiguration field's value. 13984 func (s *SlotTypeConfiguration) SetRegexConfiguration(v *SlotTypeRegexConfiguration) *SlotTypeConfiguration { 13985 s.RegexConfiguration = v 13986 return s 13987 } 13988 13989 // Provides information about a slot type.. 13990 type SlotTypeMetadata struct { 13991 _ struct{} `type:"structure"` 13992 13993 // The date that the slot type was created. 13994 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 13995 13996 // A description of the slot type. 13997 Description *string `locationName:"description" type:"string"` 13998 13999 // The date that the slot type was updated. When you create a resource, the 14000 // creation date and last updated date are the same. 14001 LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"` 14002 14003 // The name of the slot type. 14004 Name *string `locationName:"name" min:"1" type:"string"` 14005 14006 // The version of the slot type. 14007 Version *string `locationName:"version" min:"1" type:"string"` 14008 } 14009 14010 // String returns the string representation. 14011 // 14012 // API parameter values that are decorated as "sensitive" in the API will not 14013 // be included in the string output. The member name will be present, but the 14014 // value will be replaced with "sensitive". 14015 func (s SlotTypeMetadata) String() string { 14016 return awsutil.Prettify(s) 14017 } 14018 14019 // GoString returns the string representation. 14020 // 14021 // API parameter values that are decorated as "sensitive" in the API will not 14022 // be included in the string output. The member name will be present, but the 14023 // value will be replaced with "sensitive". 14024 func (s SlotTypeMetadata) GoString() string { 14025 return s.String() 14026 } 14027 14028 // SetCreatedDate sets the CreatedDate field's value. 14029 func (s *SlotTypeMetadata) SetCreatedDate(v time.Time) *SlotTypeMetadata { 14030 s.CreatedDate = &v 14031 return s 14032 } 14033 14034 // SetDescription sets the Description field's value. 14035 func (s *SlotTypeMetadata) SetDescription(v string) *SlotTypeMetadata { 14036 s.Description = &v 14037 return s 14038 } 14039 14040 // SetLastUpdatedDate sets the LastUpdatedDate field's value. 14041 func (s *SlotTypeMetadata) SetLastUpdatedDate(v time.Time) *SlotTypeMetadata { 14042 s.LastUpdatedDate = &v 14043 return s 14044 } 14045 14046 // SetName sets the Name field's value. 14047 func (s *SlotTypeMetadata) SetName(v string) *SlotTypeMetadata { 14048 s.Name = &v 14049 return s 14050 } 14051 14052 // SetVersion sets the Version field's value. 14053 func (s *SlotTypeMetadata) SetVersion(v string) *SlotTypeMetadata { 14054 s.Version = &v 14055 return s 14056 } 14057 14058 // Provides a regular expression used to validate the value of a slot. 14059 type SlotTypeRegexConfiguration struct { 14060 _ struct{} `type:"structure"` 14061 14062 // A regular expression used to validate the value of a slot. 14063 // 14064 // Use a standard regular expression. Amazon Lex supports the following characters 14065 // in the regular expression: 14066 // 14067 // * A-Z, a-z 14068 // 14069 // * 0-9 14070 // 14071 // * Unicode characters ("\ u<Unicode>") 14072 // 14073 // Represent Unicode characters with four digits, for example "\u0041" or "\u005A". 14074 // 14075 // The following regular expression operators are not supported: 14076 // 14077 // * Infinite repeaters: *, +, or {x,} with no upper bound. 14078 // 14079 // * Wild card (.) 14080 // 14081 // Pattern is a required field 14082 Pattern *string `locationName:"pattern" min:"1" type:"string" required:"true"` 14083 } 14084 14085 // String returns the string representation. 14086 // 14087 // API parameter values that are decorated as "sensitive" in the API will not 14088 // be included in the string output. The member name will be present, but the 14089 // value will be replaced with "sensitive". 14090 func (s SlotTypeRegexConfiguration) String() string { 14091 return awsutil.Prettify(s) 14092 } 14093 14094 // GoString returns the string representation. 14095 // 14096 // API parameter values that are decorated as "sensitive" in the API will not 14097 // be included in the string output. The member name will be present, but the 14098 // value will be replaced with "sensitive". 14099 func (s SlotTypeRegexConfiguration) GoString() string { 14100 return s.String() 14101 } 14102 14103 // Validate inspects the fields of the type to determine if they are valid. 14104 func (s *SlotTypeRegexConfiguration) Validate() error { 14105 invalidParams := request.ErrInvalidParams{Context: "SlotTypeRegexConfiguration"} 14106 if s.Pattern == nil { 14107 invalidParams.Add(request.NewErrParamRequired("Pattern")) 14108 } 14109 if s.Pattern != nil && len(*s.Pattern) < 1 { 14110 invalidParams.Add(request.NewErrParamMinLen("Pattern", 1)) 14111 } 14112 14113 if invalidParams.Len() > 0 { 14114 return invalidParams 14115 } 14116 return nil 14117 } 14118 14119 // SetPattern sets the Pattern field's value. 14120 func (s *SlotTypeRegexConfiguration) SetPattern(v string) *SlotTypeRegexConfiguration { 14121 s.Pattern = &v 14122 return s 14123 } 14124 14125 type StartImportInput struct { 14126 _ struct{} `type:"structure"` 14127 14128 // Specifies the action that the StartImport operation should take when there 14129 // is an existing resource with the same name. 14130 // 14131 // * FAIL_ON_CONFLICT - The import operation is stopped on the first conflict 14132 // between a resource in the import file and an existing resource. The name 14133 // of the resource causing the conflict is in the failureReason field of 14134 // the response to the GetImport operation. OVERWRITE_LATEST - The import 14135 // operation proceeds even if there is a conflict with an existing resource. 14136 // The $LASTEST version of the existing resource is overwritten with the 14137 // data from the import file. 14138 // 14139 // MergeStrategy is a required field 14140 MergeStrategy *string `locationName:"mergeStrategy" type:"string" required:"true" enum:"MergeStrategy"` 14141 14142 // A zip archive in binary format. The archive should contain one file, a JSON 14143 // file containing the resource to import. The resource should match the type 14144 // specified in the resourceType field. 14145 // Payload is automatically base64 encoded/decoded by the SDK. 14146 // 14147 // Payload is a required field 14148 Payload []byte `locationName:"payload" type:"blob" required:"true"` 14149 14150 // Specifies the type of resource to export. Each resource also exports any 14151 // resources that it depends on. 14152 // 14153 // * A bot exports dependent intents. 14154 // 14155 // * An intent exports dependent slot types. 14156 // 14157 // ResourceType is a required field 14158 ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"` 14159 14160 // A list of tags to add to the imported bot. You can only add tags when you 14161 // import a bot, you can't add tags to an intent or slot type. 14162 Tags []*Tag `locationName:"tags" type:"list"` 14163 } 14164 14165 // String returns the string representation. 14166 // 14167 // API parameter values that are decorated as "sensitive" in the API will not 14168 // be included in the string output. The member name will be present, but the 14169 // value will be replaced with "sensitive". 14170 func (s StartImportInput) String() string { 14171 return awsutil.Prettify(s) 14172 } 14173 14174 // GoString returns the string representation. 14175 // 14176 // API parameter values that are decorated as "sensitive" in the API will not 14177 // be included in the string output. The member name will be present, but the 14178 // value will be replaced with "sensitive". 14179 func (s StartImportInput) GoString() string { 14180 return s.String() 14181 } 14182 14183 // Validate inspects the fields of the type to determine if they are valid. 14184 func (s *StartImportInput) Validate() error { 14185 invalidParams := request.ErrInvalidParams{Context: "StartImportInput"} 14186 if s.MergeStrategy == nil { 14187 invalidParams.Add(request.NewErrParamRequired("MergeStrategy")) 14188 } 14189 if s.Payload == nil { 14190 invalidParams.Add(request.NewErrParamRequired("Payload")) 14191 } 14192 if s.ResourceType == nil { 14193 invalidParams.Add(request.NewErrParamRequired("ResourceType")) 14194 } 14195 if s.Tags != nil { 14196 for i, v := range s.Tags { 14197 if v == nil { 14198 continue 14199 } 14200 if err := v.Validate(); err != nil { 14201 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 14202 } 14203 } 14204 } 14205 14206 if invalidParams.Len() > 0 { 14207 return invalidParams 14208 } 14209 return nil 14210 } 14211 14212 // SetMergeStrategy sets the MergeStrategy field's value. 14213 func (s *StartImportInput) SetMergeStrategy(v string) *StartImportInput { 14214 s.MergeStrategy = &v 14215 return s 14216 } 14217 14218 // SetPayload sets the Payload field's value. 14219 func (s *StartImportInput) SetPayload(v []byte) *StartImportInput { 14220 s.Payload = v 14221 return s 14222 } 14223 14224 // SetResourceType sets the ResourceType field's value. 14225 func (s *StartImportInput) SetResourceType(v string) *StartImportInput { 14226 s.ResourceType = &v 14227 return s 14228 } 14229 14230 // SetTags sets the Tags field's value. 14231 func (s *StartImportInput) SetTags(v []*Tag) *StartImportInput { 14232 s.Tags = v 14233 return s 14234 } 14235 14236 type StartImportOutput struct { 14237 _ struct{} `type:"structure"` 14238 14239 // A timestamp for the date and time that the import job was requested. 14240 CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"` 14241 14242 // The identifier for the specific import job. 14243 ImportId *string `locationName:"importId" type:"string"` 14244 14245 // The status of the import job. If the status is FAILED, you can get the reason 14246 // for the failure using the GetImport operation. 14247 ImportStatus *string `locationName:"importStatus" type:"string" enum:"ImportStatus"` 14248 14249 // The action to take when there is a merge conflict. 14250 MergeStrategy *string `locationName:"mergeStrategy" type:"string" enum:"MergeStrategy"` 14251 14252 // The name given to the import job. 14253 Name *string `locationName:"name" min:"1" type:"string"` 14254 14255 // The type of resource to import. 14256 ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` 14257 14258 // A list of tags added to the imported bot. 14259 Tags []*Tag `locationName:"tags" type:"list"` 14260 } 14261 14262 // String returns the string representation. 14263 // 14264 // API parameter values that are decorated as "sensitive" in the API will not 14265 // be included in the string output. The member name will be present, but the 14266 // value will be replaced with "sensitive". 14267 func (s StartImportOutput) String() string { 14268 return awsutil.Prettify(s) 14269 } 14270 14271 // GoString returns the string representation. 14272 // 14273 // API parameter values that are decorated as "sensitive" in the API will not 14274 // be included in the string output. The member name will be present, but the 14275 // value will be replaced with "sensitive". 14276 func (s StartImportOutput) GoString() string { 14277 return s.String() 14278 } 14279 14280 // SetCreatedDate sets the CreatedDate field's value. 14281 func (s *StartImportOutput) SetCreatedDate(v time.Time) *StartImportOutput { 14282 s.CreatedDate = &v 14283 return s 14284 } 14285 14286 // SetImportId sets the ImportId field's value. 14287 func (s *StartImportOutput) SetImportId(v string) *StartImportOutput { 14288 s.ImportId = &v 14289 return s 14290 } 14291 14292 // SetImportStatus sets the ImportStatus field's value. 14293 func (s *StartImportOutput) SetImportStatus(v string) *StartImportOutput { 14294 s.ImportStatus = &v 14295 return s 14296 } 14297 14298 // SetMergeStrategy sets the MergeStrategy field's value. 14299 func (s *StartImportOutput) SetMergeStrategy(v string) *StartImportOutput { 14300 s.MergeStrategy = &v 14301 return s 14302 } 14303 14304 // SetName sets the Name field's value. 14305 func (s *StartImportOutput) SetName(v string) *StartImportOutput { 14306 s.Name = &v 14307 return s 14308 } 14309 14310 // SetResourceType sets the ResourceType field's value. 14311 func (s *StartImportOutput) SetResourceType(v string) *StartImportOutput { 14312 s.ResourceType = &v 14313 return s 14314 } 14315 14316 // SetTags sets the Tags field's value. 14317 func (s *StartImportOutput) SetTags(v []*Tag) *StartImportOutput { 14318 s.Tags = v 14319 return s 14320 } 14321 14322 type StartMigrationInput struct { 14323 _ struct{} `type:"structure"` 14324 14325 // The strategy used to conduct the migration. 14326 // 14327 // * CREATE_NEW - Creates a new Amazon Lex V2 bot and migrates the Amazon 14328 // Lex V1 bot to the new bot. 14329 // 14330 // * UPDATE_EXISTING - Overwrites the existing Amazon Lex V2 bot metadata 14331 // and the locale being migrated. It doesn't change any other locales in 14332 // the Amazon Lex V2 bot. If the locale doesn't exist, a new locale is created 14333 // in the Amazon Lex V2 bot. 14334 // 14335 // MigrationStrategy is a required field 14336 MigrationStrategy *string `locationName:"migrationStrategy" type:"string" required:"true" enum:"MigrationStrategy"` 14337 14338 // The name of the Amazon Lex V1 bot that you are migrating to Amazon Lex V2. 14339 // 14340 // V1BotName is a required field 14341 V1BotName *string `locationName:"v1BotName" min:"2" type:"string" required:"true"` 14342 14343 // The version of the bot to migrate to Amazon Lex V2. You can migrate the $LATEST 14344 // version as well as any numbered version. 14345 // 14346 // V1BotVersion is a required field 14347 V1BotVersion *string `locationName:"v1BotVersion" min:"1" type:"string" required:"true"` 14348 14349 // The name of the Amazon Lex V2 bot that you are migrating the Amazon Lex V1 14350 // bot to. 14351 // 14352 // * If the Amazon Lex V2 bot doesn't exist, you must use the CREATE_NEW 14353 // migration strategy. 14354 // 14355 // * If the Amazon Lex V2 bot exists, you must use the UPDATE_EXISTING migration 14356 // strategy to change the contents of the Amazon Lex V2 bot. 14357 // 14358 // V2BotName is a required field 14359 V2BotName *string `locationName:"v2BotName" min:"1" type:"string" required:"true"` 14360 14361 // The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot. 14362 // 14363 // V2BotRole is a required field 14364 V2BotRole *string `locationName:"v2BotRole" min:"20" type:"string" required:"true"` 14365 } 14366 14367 // String returns the string representation. 14368 // 14369 // API parameter values that are decorated as "sensitive" in the API will not 14370 // be included in the string output. The member name will be present, but the 14371 // value will be replaced with "sensitive". 14372 func (s StartMigrationInput) String() string { 14373 return awsutil.Prettify(s) 14374 } 14375 14376 // GoString returns the string representation. 14377 // 14378 // API parameter values that are decorated as "sensitive" in the API will not 14379 // be included in the string output. The member name will be present, but the 14380 // value will be replaced with "sensitive". 14381 func (s StartMigrationInput) GoString() string { 14382 return s.String() 14383 } 14384 14385 // Validate inspects the fields of the type to determine if they are valid. 14386 func (s *StartMigrationInput) Validate() error { 14387 invalidParams := request.ErrInvalidParams{Context: "StartMigrationInput"} 14388 if s.MigrationStrategy == nil { 14389 invalidParams.Add(request.NewErrParamRequired("MigrationStrategy")) 14390 } 14391 if s.V1BotName == nil { 14392 invalidParams.Add(request.NewErrParamRequired("V1BotName")) 14393 } 14394 if s.V1BotName != nil && len(*s.V1BotName) < 2 { 14395 invalidParams.Add(request.NewErrParamMinLen("V1BotName", 2)) 14396 } 14397 if s.V1BotVersion == nil { 14398 invalidParams.Add(request.NewErrParamRequired("V1BotVersion")) 14399 } 14400 if s.V1BotVersion != nil && len(*s.V1BotVersion) < 1 { 14401 invalidParams.Add(request.NewErrParamMinLen("V1BotVersion", 1)) 14402 } 14403 if s.V2BotName == nil { 14404 invalidParams.Add(request.NewErrParamRequired("V2BotName")) 14405 } 14406 if s.V2BotName != nil && len(*s.V2BotName) < 1 { 14407 invalidParams.Add(request.NewErrParamMinLen("V2BotName", 1)) 14408 } 14409 if s.V2BotRole == nil { 14410 invalidParams.Add(request.NewErrParamRequired("V2BotRole")) 14411 } 14412 if s.V2BotRole != nil && len(*s.V2BotRole) < 20 { 14413 invalidParams.Add(request.NewErrParamMinLen("V2BotRole", 20)) 14414 } 14415 14416 if invalidParams.Len() > 0 { 14417 return invalidParams 14418 } 14419 return nil 14420 } 14421 14422 // SetMigrationStrategy sets the MigrationStrategy field's value. 14423 func (s *StartMigrationInput) SetMigrationStrategy(v string) *StartMigrationInput { 14424 s.MigrationStrategy = &v 14425 return s 14426 } 14427 14428 // SetV1BotName sets the V1BotName field's value. 14429 func (s *StartMigrationInput) SetV1BotName(v string) *StartMigrationInput { 14430 s.V1BotName = &v 14431 return s 14432 } 14433 14434 // SetV1BotVersion sets the V1BotVersion field's value. 14435 func (s *StartMigrationInput) SetV1BotVersion(v string) *StartMigrationInput { 14436 s.V1BotVersion = &v 14437 return s 14438 } 14439 14440 // SetV2BotName sets the V2BotName field's value. 14441 func (s *StartMigrationInput) SetV2BotName(v string) *StartMigrationInput { 14442 s.V2BotName = &v 14443 return s 14444 } 14445 14446 // SetV2BotRole sets the V2BotRole field's value. 14447 func (s *StartMigrationInput) SetV2BotRole(v string) *StartMigrationInput { 14448 s.V2BotRole = &v 14449 return s 14450 } 14451 14452 type StartMigrationOutput struct { 14453 _ struct{} `type:"structure"` 14454 14455 // The unique identifier that Amazon Lex assigned to the migration. 14456 MigrationId *string `locationName:"migrationId" min:"10" type:"string"` 14457 14458 // The strategy used to conduct the migration. 14459 MigrationStrategy *string `locationName:"migrationStrategy" type:"string" enum:"MigrationStrategy"` 14460 14461 // The date and time that the migration started. 14462 MigrationTimestamp *time.Time `locationName:"migrationTimestamp" type:"timestamp"` 14463 14464 // The locale used for the Amazon Lex V1 bot. 14465 V1BotLocale *string `locationName:"v1BotLocale" type:"string" enum:"Locale"` 14466 14467 // The name of the Amazon Lex V1 bot that you are migrating to Amazon Lex V2. 14468 V1BotName *string `locationName:"v1BotName" min:"2" type:"string"` 14469 14470 // The version of the bot to migrate to Amazon Lex V2. 14471 V1BotVersion *string `locationName:"v1BotVersion" min:"1" type:"string"` 14472 14473 // The unique identifier for the Amazon Lex V2 bot. 14474 V2BotId *string `locationName:"v2BotId" min:"10" type:"string"` 14475 14476 // The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot. 14477 V2BotRole *string `locationName:"v2BotRole" min:"20" type:"string"` 14478 } 14479 14480 // String returns the string representation. 14481 // 14482 // API parameter values that are decorated as "sensitive" in the API will not 14483 // be included in the string output. The member name will be present, but the 14484 // value will be replaced with "sensitive". 14485 func (s StartMigrationOutput) String() string { 14486 return awsutil.Prettify(s) 14487 } 14488 14489 // GoString returns the string representation. 14490 // 14491 // API parameter values that are decorated as "sensitive" in the API will not 14492 // be included in the string output. The member name will be present, but the 14493 // value will be replaced with "sensitive". 14494 func (s StartMigrationOutput) GoString() string { 14495 return s.String() 14496 } 14497 14498 // SetMigrationId sets the MigrationId field's value. 14499 func (s *StartMigrationOutput) SetMigrationId(v string) *StartMigrationOutput { 14500 s.MigrationId = &v 14501 return s 14502 } 14503 14504 // SetMigrationStrategy sets the MigrationStrategy field's value. 14505 func (s *StartMigrationOutput) SetMigrationStrategy(v string) *StartMigrationOutput { 14506 s.MigrationStrategy = &v 14507 return s 14508 } 14509 14510 // SetMigrationTimestamp sets the MigrationTimestamp field's value. 14511 func (s *StartMigrationOutput) SetMigrationTimestamp(v time.Time) *StartMigrationOutput { 14512 s.MigrationTimestamp = &v 14513 return s 14514 } 14515 14516 // SetV1BotLocale sets the V1BotLocale field's value. 14517 func (s *StartMigrationOutput) SetV1BotLocale(v string) *StartMigrationOutput { 14518 s.V1BotLocale = &v 14519 return s 14520 } 14521 14522 // SetV1BotName sets the V1BotName field's value. 14523 func (s *StartMigrationOutput) SetV1BotName(v string) *StartMigrationOutput { 14524 s.V1BotName = &v 14525 return s 14526 } 14527 14528 // SetV1BotVersion sets the V1BotVersion field's value. 14529 func (s *StartMigrationOutput) SetV1BotVersion(v string) *StartMigrationOutput { 14530 s.V1BotVersion = &v 14531 return s 14532 } 14533 14534 // SetV2BotId sets the V2BotId field's value. 14535 func (s *StartMigrationOutput) SetV2BotId(v string) *StartMigrationOutput { 14536 s.V2BotId = &v 14537 return s 14538 } 14539 14540 // SetV2BotRole sets the V2BotRole field's value. 14541 func (s *StartMigrationOutput) SetV2BotRole(v string) *StartMigrationOutput { 14542 s.V2BotRole = &v 14543 return s 14544 } 14545 14546 // A collection of messages that convey information to the user. At runtime, 14547 // Amazon Lex selects the message to convey. 14548 type Statement struct { 14549 _ struct{} `type:"structure"` 14550 14551 // A collection of message objects. 14552 // 14553 // Messages is a required field 14554 Messages []*Message `locationName:"messages" min:"1" type:"list" required:"true"` 14555 14556 // At runtime, if the client is using the PostText (http://docs.aws.amazon.com/lex/latest/dg/API_runtime_PostText.html) 14557 // API, Amazon Lex includes the response card in the response. It substitutes 14558 // all of the session attributes and slot values for placeholders in the response 14559 // card. 14560 ResponseCard *string `locationName:"responseCard" min:"1" type:"string"` 14561 } 14562 14563 // String returns the string representation. 14564 // 14565 // API parameter values that are decorated as "sensitive" in the API will not 14566 // be included in the string output. The member name will be present, but the 14567 // value will be replaced with "sensitive". 14568 func (s Statement) String() string { 14569 return awsutil.Prettify(s) 14570 } 14571 14572 // GoString returns the string representation. 14573 // 14574 // API parameter values that are decorated as "sensitive" in the API will not 14575 // be included in the string output. The member name will be present, but the 14576 // value will be replaced with "sensitive". 14577 func (s Statement) GoString() string { 14578 return s.String() 14579 } 14580 14581 // Validate inspects the fields of the type to determine if they are valid. 14582 func (s *Statement) Validate() error { 14583 invalidParams := request.ErrInvalidParams{Context: "Statement"} 14584 if s.Messages == nil { 14585 invalidParams.Add(request.NewErrParamRequired("Messages")) 14586 } 14587 if s.Messages != nil && len(s.Messages) < 1 { 14588 invalidParams.Add(request.NewErrParamMinLen("Messages", 1)) 14589 } 14590 if s.ResponseCard != nil && len(*s.ResponseCard) < 1 { 14591 invalidParams.Add(request.NewErrParamMinLen("ResponseCard", 1)) 14592 } 14593 if s.Messages != nil { 14594 for i, v := range s.Messages { 14595 if v == nil { 14596 continue 14597 } 14598 if err := v.Validate(); err != nil { 14599 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Messages", i), err.(request.ErrInvalidParams)) 14600 } 14601 } 14602 } 14603 14604 if invalidParams.Len() > 0 { 14605 return invalidParams 14606 } 14607 return nil 14608 } 14609 14610 // SetMessages sets the Messages field's value. 14611 func (s *Statement) SetMessages(v []*Message) *Statement { 14612 s.Messages = v 14613 return s 14614 } 14615 14616 // SetResponseCard sets the ResponseCard field's value. 14617 func (s *Statement) SetResponseCard(v string) *Statement { 14618 s.ResponseCard = &v 14619 return s 14620 } 14621 14622 // A list of key/value pairs that identify a bot, bot alias, or bot channel. 14623 // Tag keys and values can consist of Unicode letters, digits, white space, 14624 // and any of the following symbols: _ . : / = + - @. 14625 type Tag struct { 14626 _ struct{} `type:"structure"` 14627 14628 // The key for the tag. Keys are not case-sensitive and must be unique. 14629 // 14630 // Key is a required field 14631 Key *string `locationName:"key" min:"1" type:"string" required:"true"` 14632 14633 // The value associated with a key. The value may be an empty string but it 14634 // can't be null. 14635 // 14636 // Value is a required field 14637 Value *string `locationName:"value" type:"string" required:"true"` 14638 } 14639 14640 // String returns the string representation. 14641 // 14642 // API parameter values that are decorated as "sensitive" in the API will not 14643 // be included in the string output. The member name will be present, but the 14644 // value will be replaced with "sensitive". 14645 func (s Tag) String() string { 14646 return awsutil.Prettify(s) 14647 } 14648 14649 // GoString returns the string representation. 14650 // 14651 // API parameter values that are decorated as "sensitive" in the API will not 14652 // be included in the string output. The member name will be present, but the 14653 // value will be replaced with "sensitive". 14654 func (s Tag) GoString() string { 14655 return s.String() 14656 } 14657 14658 // Validate inspects the fields of the type to determine if they are valid. 14659 func (s *Tag) Validate() error { 14660 invalidParams := request.ErrInvalidParams{Context: "Tag"} 14661 if s.Key == nil { 14662 invalidParams.Add(request.NewErrParamRequired("Key")) 14663 } 14664 if s.Key != nil && len(*s.Key) < 1 { 14665 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 14666 } 14667 if s.Value == nil { 14668 invalidParams.Add(request.NewErrParamRequired("Value")) 14669 } 14670 14671 if invalidParams.Len() > 0 { 14672 return invalidParams 14673 } 14674 return nil 14675 } 14676 14677 // SetKey sets the Key field's value. 14678 func (s *Tag) SetKey(v string) *Tag { 14679 s.Key = &v 14680 return s 14681 } 14682 14683 // SetValue sets the Value field's value. 14684 func (s *Tag) SetValue(v string) *Tag { 14685 s.Value = &v 14686 return s 14687 } 14688 14689 type TagResourceInput struct { 14690 _ struct{} `type:"structure"` 14691 14692 // The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel to tag. 14693 // 14694 // ResourceArn is a required field 14695 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` 14696 14697 // A list of tag keys to add to the resource. If a tag key already exists, the 14698 // existing value is replaced with the new value. 14699 // 14700 // Tags is a required field 14701 Tags []*Tag `locationName:"tags" type:"list" required:"true"` 14702 } 14703 14704 // String returns the string representation. 14705 // 14706 // API parameter values that are decorated as "sensitive" in the API will not 14707 // be included in the string output. The member name will be present, but the 14708 // value will be replaced with "sensitive". 14709 func (s TagResourceInput) String() string { 14710 return awsutil.Prettify(s) 14711 } 14712 14713 // GoString returns the string representation. 14714 // 14715 // API parameter values that are decorated as "sensitive" in the API will not 14716 // be included in the string output. The member name will be present, but the 14717 // value will be replaced with "sensitive". 14718 func (s TagResourceInput) GoString() string { 14719 return s.String() 14720 } 14721 14722 // Validate inspects the fields of the type to determine if they are valid. 14723 func (s *TagResourceInput) Validate() error { 14724 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 14725 if s.ResourceArn == nil { 14726 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 14727 } 14728 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 14729 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 14730 } 14731 if s.Tags == nil { 14732 invalidParams.Add(request.NewErrParamRequired("Tags")) 14733 } 14734 if s.Tags != nil { 14735 for i, v := range s.Tags { 14736 if v == nil { 14737 continue 14738 } 14739 if err := v.Validate(); err != nil { 14740 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 14741 } 14742 } 14743 } 14744 14745 if invalidParams.Len() > 0 { 14746 return invalidParams 14747 } 14748 return nil 14749 } 14750 14751 // SetResourceArn sets the ResourceArn field's value. 14752 func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { 14753 s.ResourceArn = &v 14754 return s 14755 } 14756 14757 // SetTags sets the Tags field's value. 14758 func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { 14759 s.Tags = v 14760 return s 14761 } 14762 14763 type TagResourceOutput struct { 14764 _ struct{} `type:"structure" nopayload:"true"` 14765 } 14766 14767 // String returns the string representation. 14768 // 14769 // API parameter values that are decorated as "sensitive" in the API will not 14770 // be included in the string output. The member name will be present, but the 14771 // value will be replaced with "sensitive". 14772 func (s TagResourceOutput) String() string { 14773 return awsutil.Prettify(s) 14774 } 14775 14776 // GoString returns the string representation. 14777 // 14778 // API parameter values that are decorated as "sensitive" in the API will not 14779 // be included in the string output. The member name will be present, but the 14780 // value will be replaced with "sensitive". 14781 func (s TagResourceOutput) GoString() string { 14782 return s.String() 14783 } 14784 14785 type UntagResourceInput struct { 14786 _ struct{} `type:"structure" nopayload:"true"` 14787 14788 // The Amazon Resource Name (ARN) of the resource to remove the tags from. 14789 // 14790 // ResourceArn is a required field 14791 ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` 14792 14793 // A list of tag keys to remove from the resource. If a tag key does not exist 14794 // on the resource, it is ignored. 14795 // 14796 // TagKeys is a required field 14797 TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"` 14798 } 14799 14800 // String returns the string representation. 14801 // 14802 // API parameter values that are decorated as "sensitive" in the API will not 14803 // be included in the string output. The member name will be present, but the 14804 // value will be replaced with "sensitive". 14805 func (s UntagResourceInput) String() string { 14806 return awsutil.Prettify(s) 14807 } 14808 14809 // GoString returns the string representation. 14810 // 14811 // API parameter values that are decorated as "sensitive" in the API will not 14812 // be included in the string output. The member name will be present, but the 14813 // value will be replaced with "sensitive". 14814 func (s UntagResourceInput) GoString() string { 14815 return s.String() 14816 } 14817 14818 // Validate inspects the fields of the type to determine if they are valid. 14819 func (s *UntagResourceInput) Validate() error { 14820 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 14821 if s.ResourceArn == nil { 14822 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 14823 } 14824 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 14825 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 14826 } 14827 if s.TagKeys == nil { 14828 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 14829 } 14830 14831 if invalidParams.Len() > 0 { 14832 return invalidParams 14833 } 14834 return nil 14835 } 14836 14837 // SetResourceArn sets the ResourceArn field's value. 14838 func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { 14839 s.ResourceArn = &v 14840 return s 14841 } 14842 14843 // SetTagKeys sets the TagKeys field's value. 14844 func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 14845 s.TagKeys = v 14846 return s 14847 } 14848 14849 type UntagResourceOutput struct { 14850 _ struct{} `type:"structure" nopayload:"true"` 14851 } 14852 14853 // String returns the string representation. 14854 // 14855 // API parameter values that are decorated as "sensitive" in the API will not 14856 // be included in the string output. The member name will be present, but the 14857 // value will be replaced with "sensitive". 14858 func (s UntagResourceOutput) String() string { 14859 return awsutil.Prettify(s) 14860 } 14861 14862 // GoString returns the string representation. 14863 // 14864 // API parameter values that are decorated as "sensitive" in the API will not 14865 // be included in the string output. The member name will be present, but the 14866 // value will be replaced with "sensitive". 14867 func (s UntagResourceOutput) GoString() string { 14868 return s.String() 14869 } 14870 14871 // Provides information about a single utterance that was made to your bot. 14872 type UtteranceData struct { 14873 _ struct{} `type:"structure"` 14874 14875 // The number of times that the utterance was processed. 14876 Count *int64 `locationName:"count" type:"integer"` 14877 14878 // The total number of individuals that used the utterance. 14879 DistinctUsers *int64 `locationName:"distinctUsers" type:"integer"` 14880 14881 // The date that the utterance was first recorded. 14882 FirstUtteredDate *time.Time `locationName:"firstUtteredDate" type:"timestamp"` 14883 14884 // The date that the utterance was last recorded. 14885 LastUtteredDate *time.Time `locationName:"lastUtteredDate" type:"timestamp"` 14886 14887 // The text that was entered by the user or the text representation of an audio 14888 // clip. 14889 UtteranceString *string `locationName:"utteranceString" min:"1" type:"string"` 14890 } 14891 14892 // String returns the string representation. 14893 // 14894 // API parameter values that are decorated as "sensitive" in the API will not 14895 // be included in the string output. The member name will be present, but the 14896 // value will be replaced with "sensitive". 14897 func (s UtteranceData) String() string { 14898 return awsutil.Prettify(s) 14899 } 14900 14901 // GoString returns the string representation. 14902 // 14903 // API parameter values that are decorated as "sensitive" in the API will not 14904 // be included in the string output. The member name will be present, but the 14905 // value will be replaced with "sensitive". 14906 func (s UtteranceData) GoString() string { 14907 return s.String() 14908 } 14909 14910 // SetCount sets the Count field's value. 14911 func (s *UtteranceData) SetCount(v int64) *UtteranceData { 14912 s.Count = &v 14913 return s 14914 } 14915 14916 // SetDistinctUsers sets the DistinctUsers field's value. 14917 func (s *UtteranceData) SetDistinctUsers(v int64) *UtteranceData { 14918 s.DistinctUsers = &v 14919 return s 14920 } 14921 14922 // SetFirstUtteredDate sets the FirstUtteredDate field's value. 14923 func (s *UtteranceData) SetFirstUtteredDate(v time.Time) *UtteranceData { 14924 s.FirstUtteredDate = &v 14925 return s 14926 } 14927 14928 // SetLastUtteredDate sets the LastUtteredDate field's value. 14929 func (s *UtteranceData) SetLastUtteredDate(v time.Time) *UtteranceData { 14930 s.LastUtteredDate = &v 14931 return s 14932 } 14933 14934 // SetUtteranceString sets the UtteranceString field's value. 14935 func (s *UtteranceData) SetUtteranceString(v string) *UtteranceData { 14936 s.UtteranceString = &v 14937 return s 14938 } 14939 14940 // Provides a list of utterances that have been made to a specific version of 14941 // your bot. The list contains a maximum of 100 utterances. 14942 type UtteranceList struct { 14943 _ struct{} `type:"structure"` 14944 14945 // The version of the bot that processed the list. 14946 BotVersion *string `locationName:"botVersion" min:"1" type:"string"` 14947 14948 // One or more UtteranceData objects that contain information about the utterances 14949 // that have been made to a bot. The maximum number of object is 100. 14950 Utterances []*UtteranceData `locationName:"utterances" type:"list"` 14951 } 14952 14953 // String returns the string representation. 14954 // 14955 // API parameter values that are decorated as "sensitive" in the API will not 14956 // be included in the string output. The member name will be present, but the 14957 // value will be replaced with "sensitive". 14958 func (s UtteranceList) String() string { 14959 return awsutil.Prettify(s) 14960 } 14961 14962 // GoString returns the string representation. 14963 // 14964 // API parameter values that are decorated as "sensitive" in the API will not 14965 // be included in the string output. The member name will be present, but the 14966 // value will be replaced with "sensitive". 14967 func (s UtteranceList) GoString() string { 14968 return s.String() 14969 } 14970 14971 // SetBotVersion sets the BotVersion field's value. 14972 func (s *UtteranceList) SetBotVersion(v string) *UtteranceList { 14973 s.BotVersion = &v 14974 return s 14975 } 14976 14977 // SetUtterances sets the Utterances field's value. 14978 func (s *UtteranceList) SetUtterances(v []*UtteranceData) *UtteranceList { 14979 s.Utterances = v 14980 return s 14981 } 14982 14983 const ( 14984 // ChannelStatusInProgress is a ChannelStatus enum value 14985 ChannelStatusInProgress = "IN_PROGRESS" 14986 14987 // ChannelStatusCreated is a ChannelStatus enum value 14988 ChannelStatusCreated = "CREATED" 14989 14990 // ChannelStatusFailed is a ChannelStatus enum value 14991 ChannelStatusFailed = "FAILED" 14992 ) 14993 14994 // ChannelStatus_Values returns all elements of the ChannelStatus enum 14995 func ChannelStatus_Values() []string { 14996 return []string{ 14997 ChannelStatusInProgress, 14998 ChannelStatusCreated, 14999 ChannelStatusFailed, 15000 } 15001 } 15002 15003 const ( 15004 // ChannelTypeFacebook is a ChannelType enum value 15005 ChannelTypeFacebook = "Facebook" 15006 15007 // ChannelTypeSlack is a ChannelType enum value 15008 ChannelTypeSlack = "Slack" 15009 15010 // ChannelTypeTwilioSms is a ChannelType enum value 15011 ChannelTypeTwilioSms = "Twilio-Sms" 15012 15013 // ChannelTypeKik is a ChannelType enum value 15014 ChannelTypeKik = "Kik" 15015 ) 15016 15017 // ChannelType_Values returns all elements of the ChannelType enum 15018 func ChannelType_Values() []string { 15019 return []string{ 15020 ChannelTypeFacebook, 15021 ChannelTypeSlack, 15022 ChannelTypeTwilioSms, 15023 ChannelTypeKik, 15024 } 15025 } 15026 15027 const ( 15028 // ContentTypePlainText is a ContentType enum value 15029 ContentTypePlainText = "PlainText" 15030 15031 // ContentTypeSsml is a ContentType enum value 15032 ContentTypeSsml = "SSML" 15033 15034 // ContentTypeCustomPayload is a ContentType enum value 15035 ContentTypeCustomPayload = "CustomPayload" 15036 ) 15037 15038 // ContentType_Values returns all elements of the ContentType enum 15039 func ContentType_Values() []string { 15040 return []string{ 15041 ContentTypePlainText, 15042 ContentTypeSsml, 15043 ContentTypeCustomPayload, 15044 } 15045 } 15046 15047 const ( 15048 // DestinationCloudwatchLogs is a Destination enum value 15049 DestinationCloudwatchLogs = "CLOUDWATCH_LOGS" 15050 15051 // DestinationS3 is a Destination enum value 15052 DestinationS3 = "S3" 15053 ) 15054 15055 // Destination_Values returns all elements of the Destination enum 15056 func Destination_Values() []string { 15057 return []string{ 15058 DestinationCloudwatchLogs, 15059 DestinationS3, 15060 } 15061 } 15062 15063 const ( 15064 // ExportStatusInProgress is a ExportStatus enum value 15065 ExportStatusInProgress = "IN_PROGRESS" 15066 15067 // ExportStatusReady is a ExportStatus enum value 15068 ExportStatusReady = "READY" 15069 15070 // ExportStatusFailed is a ExportStatus enum value 15071 ExportStatusFailed = "FAILED" 15072 ) 15073 15074 // ExportStatus_Values returns all elements of the ExportStatus enum 15075 func ExportStatus_Values() []string { 15076 return []string{ 15077 ExportStatusInProgress, 15078 ExportStatusReady, 15079 ExportStatusFailed, 15080 } 15081 } 15082 15083 const ( 15084 // ExportTypeAlexaSkillsKit is a ExportType enum value 15085 ExportTypeAlexaSkillsKit = "ALEXA_SKILLS_KIT" 15086 15087 // ExportTypeLex is a ExportType enum value 15088 ExportTypeLex = "LEX" 15089 ) 15090 15091 // ExportType_Values returns all elements of the ExportType enum 15092 func ExportType_Values() []string { 15093 return []string{ 15094 ExportTypeAlexaSkillsKit, 15095 ExportTypeLex, 15096 } 15097 } 15098 15099 const ( 15100 // FulfillmentActivityTypeReturnIntent is a FulfillmentActivityType enum value 15101 FulfillmentActivityTypeReturnIntent = "ReturnIntent" 15102 15103 // FulfillmentActivityTypeCodeHook is a FulfillmentActivityType enum value 15104 FulfillmentActivityTypeCodeHook = "CodeHook" 15105 ) 15106 15107 // FulfillmentActivityType_Values returns all elements of the FulfillmentActivityType enum 15108 func FulfillmentActivityType_Values() []string { 15109 return []string{ 15110 FulfillmentActivityTypeReturnIntent, 15111 FulfillmentActivityTypeCodeHook, 15112 } 15113 } 15114 15115 const ( 15116 // ImportStatusInProgress is a ImportStatus enum value 15117 ImportStatusInProgress = "IN_PROGRESS" 15118 15119 // ImportStatusComplete is a ImportStatus enum value 15120 ImportStatusComplete = "COMPLETE" 15121 15122 // ImportStatusFailed is a ImportStatus enum value 15123 ImportStatusFailed = "FAILED" 15124 ) 15125 15126 // ImportStatus_Values returns all elements of the ImportStatus enum 15127 func ImportStatus_Values() []string { 15128 return []string{ 15129 ImportStatusInProgress, 15130 ImportStatusComplete, 15131 ImportStatusFailed, 15132 } 15133 } 15134 15135 const ( 15136 // LocaleDeDe is a Locale enum value 15137 LocaleDeDe = "de-DE" 15138 15139 // LocaleEnAu is a Locale enum value 15140 LocaleEnAu = "en-AU" 15141 15142 // LocaleEnGb is a Locale enum value 15143 LocaleEnGb = "en-GB" 15144 15145 // LocaleEnIn is a Locale enum value 15146 LocaleEnIn = "en-IN" 15147 15148 // LocaleEnUs is a Locale enum value 15149 LocaleEnUs = "en-US" 15150 15151 // LocaleEs419 is a Locale enum value 15152 LocaleEs419 = "es-419" 15153 15154 // LocaleEsEs is a Locale enum value 15155 LocaleEsEs = "es-ES" 15156 15157 // LocaleEsUs is a Locale enum value 15158 LocaleEsUs = "es-US" 15159 15160 // LocaleFrFr is a Locale enum value 15161 LocaleFrFr = "fr-FR" 15162 15163 // LocaleFrCa is a Locale enum value 15164 LocaleFrCa = "fr-CA" 15165 15166 // LocaleItIt is a Locale enum value 15167 LocaleItIt = "it-IT" 15168 15169 // LocaleJaJp is a Locale enum value 15170 LocaleJaJp = "ja-JP" 15171 15172 // LocaleKoKr is a Locale enum value 15173 LocaleKoKr = "ko-KR" 15174 ) 15175 15176 // Locale_Values returns all elements of the Locale enum 15177 func Locale_Values() []string { 15178 return []string{ 15179 LocaleDeDe, 15180 LocaleEnAu, 15181 LocaleEnGb, 15182 LocaleEnIn, 15183 LocaleEnUs, 15184 LocaleEs419, 15185 LocaleEsEs, 15186 LocaleEsUs, 15187 LocaleFrFr, 15188 LocaleFrCa, 15189 LocaleItIt, 15190 LocaleJaJp, 15191 LocaleKoKr, 15192 } 15193 } 15194 15195 const ( 15196 // LogTypeAudio is a LogType enum value 15197 LogTypeAudio = "AUDIO" 15198 15199 // LogTypeText is a LogType enum value 15200 LogTypeText = "TEXT" 15201 ) 15202 15203 // LogType_Values returns all elements of the LogType enum 15204 func LogType_Values() []string { 15205 return []string{ 15206 LogTypeAudio, 15207 LogTypeText, 15208 } 15209 } 15210 15211 const ( 15212 // MergeStrategyOverwriteLatest is a MergeStrategy enum value 15213 MergeStrategyOverwriteLatest = "OVERWRITE_LATEST" 15214 15215 // MergeStrategyFailOnConflict is a MergeStrategy enum value 15216 MergeStrategyFailOnConflict = "FAIL_ON_CONFLICT" 15217 ) 15218 15219 // MergeStrategy_Values returns all elements of the MergeStrategy enum 15220 func MergeStrategy_Values() []string { 15221 return []string{ 15222 MergeStrategyOverwriteLatest, 15223 MergeStrategyFailOnConflict, 15224 } 15225 } 15226 15227 const ( 15228 // MigrationAlertTypeError is a MigrationAlertType enum value 15229 MigrationAlertTypeError = "ERROR" 15230 15231 // MigrationAlertTypeWarn is a MigrationAlertType enum value 15232 MigrationAlertTypeWarn = "WARN" 15233 ) 15234 15235 // MigrationAlertType_Values returns all elements of the MigrationAlertType enum 15236 func MigrationAlertType_Values() []string { 15237 return []string{ 15238 MigrationAlertTypeError, 15239 MigrationAlertTypeWarn, 15240 } 15241 } 15242 15243 const ( 15244 // MigrationSortAttributeV1BotName is a MigrationSortAttribute enum value 15245 MigrationSortAttributeV1BotName = "V1_BOT_NAME" 15246 15247 // MigrationSortAttributeMigrationDateTime is a MigrationSortAttribute enum value 15248 MigrationSortAttributeMigrationDateTime = "MIGRATION_DATE_TIME" 15249 ) 15250 15251 // MigrationSortAttribute_Values returns all elements of the MigrationSortAttribute enum 15252 func MigrationSortAttribute_Values() []string { 15253 return []string{ 15254 MigrationSortAttributeV1BotName, 15255 MigrationSortAttributeMigrationDateTime, 15256 } 15257 } 15258 15259 const ( 15260 // MigrationStatusInProgress is a MigrationStatus enum value 15261 MigrationStatusInProgress = "IN_PROGRESS" 15262 15263 // MigrationStatusCompleted is a MigrationStatus enum value 15264 MigrationStatusCompleted = "COMPLETED" 15265 15266 // MigrationStatusFailed is a MigrationStatus enum value 15267 MigrationStatusFailed = "FAILED" 15268 ) 15269 15270 // MigrationStatus_Values returns all elements of the MigrationStatus enum 15271 func MigrationStatus_Values() []string { 15272 return []string{ 15273 MigrationStatusInProgress, 15274 MigrationStatusCompleted, 15275 MigrationStatusFailed, 15276 } 15277 } 15278 15279 const ( 15280 // MigrationStrategyCreateNew is a MigrationStrategy enum value 15281 MigrationStrategyCreateNew = "CREATE_NEW" 15282 15283 // MigrationStrategyUpdateExisting is a MigrationStrategy enum value 15284 MigrationStrategyUpdateExisting = "UPDATE_EXISTING" 15285 ) 15286 15287 // MigrationStrategy_Values returns all elements of the MigrationStrategy enum 15288 func MigrationStrategy_Values() []string { 15289 return []string{ 15290 MigrationStrategyCreateNew, 15291 MigrationStrategyUpdateExisting, 15292 } 15293 } 15294 15295 const ( 15296 // ObfuscationSettingNone is a ObfuscationSetting enum value 15297 ObfuscationSettingNone = "NONE" 15298 15299 // ObfuscationSettingDefaultObfuscation is a ObfuscationSetting enum value 15300 ObfuscationSettingDefaultObfuscation = "DEFAULT_OBFUSCATION" 15301 ) 15302 15303 // ObfuscationSetting_Values returns all elements of the ObfuscationSetting enum 15304 func ObfuscationSetting_Values() []string { 15305 return []string{ 15306 ObfuscationSettingNone, 15307 ObfuscationSettingDefaultObfuscation, 15308 } 15309 } 15310 15311 const ( 15312 // ProcessBehaviorSave is a ProcessBehavior enum value 15313 ProcessBehaviorSave = "SAVE" 15314 15315 // ProcessBehaviorBuild is a ProcessBehavior enum value 15316 ProcessBehaviorBuild = "BUILD" 15317 ) 15318 15319 // ProcessBehavior_Values returns all elements of the ProcessBehavior enum 15320 func ProcessBehavior_Values() []string { 15321 return []string{ 15322 ProcessBehaviorSave, 15323 ProcessBehaviorBuild, 15324 } 15325 } 15326 15327 const ( 15328 // ReferenceTypeIntent is a ReferenceType enum value 15329 ReferenceTypeIntent = "Intent" 15330 15331 // ReferenceTypeBot is a ReferenceType enum value 15332 ReferenceTypeBot = "Bot" 15333 15334 // ReferenceTypeBotAlias is a ReferenceType enum value 15335 ReferenceTypeBotAlias = "BotAlias" 15336 15337 // ReferenceTypeBotChannel is a ReferenceType enum value 15338 ReferenceTypeBotChannel = "BotChannel" 15339 ) 15340 15341 // ReferenceType_Values returns all elements of the ReferenceType enum 15342 func ReferenceType_Values() []string { 15343 return []string{ 15344 ReferenceTypeIntent, 15345 ReferenceTypeBot, 15346 ReferenceTypeBotAlias, 15347 ReferenceTypeBotChannel, 15348 } 15349 } 15350 15351 const ( 15352 // ResourceTypeBot is a ResourceType enum value 15353 ResourceTypeBot = "BOT" 15354 15355 // ResourceTypeIntent is a ResourceType enum value 15356 ResourceTypeIntent = "INTENT" 15357 15358 // ResourceTypeSlotType is a ResourceType enum value 15359 ResourceTypeSlotType = "SLOT_TYPE" 15360 ) 15361 15362 // ResourceType_Values returns all elements of the ResourceType enum 15363 func ResourceType_Values() []string { 15364 return []string{ 15365 ResourceTypeBot, 15366 ResourceTypeIntent, 15367 ResourceTypeSlotType, 15368 } 15369 } 15370 15371 const ( 15372 // SlotConstraintRequired is a SlotConstraint enum value 15373 SlotConstraintRequired = "Required" 15374 15375 // SlotConstraintOptional is a SlotConstraint enum value 15376 SlotConstraintOptional = "Optional" 15377 ) 15378 15379 // SlotConstraint_Values returns all elements of the SlotConstraint enum 15380 func SlotConstraint_Values() []string { 15381 return []string{ 15382 SlotConstraintRequired, 15383 SlotConstraintOptional, 15384 } 15385 } 15386 15387 const ( 15388 // SlotValueSelectionStrategyOriginalValue is a SlotValueSelectionStrategy enum value 15389 SlotValueSelectionStrategyOriginalValue = "ORIGINAL_VALUE" 15390 15391 // SlotValueSelectionStrategyTopResolution is a SlotValueSelectionStrategy enum value 15392 SlotValueSelectionStrategyTopResolution = "TOP_RESOLUTION" 15393 ) 15394 15395 // SlotValueSelectionStrategy_Values returns all elements of the SlotValueSelectionStrategy enum 15396 func SlotValueSelectionStrategy_Values() []string { 15397 return []string{ 15398 SlotValueSelectionStrategyOriginalValue, 15399 SlotValueSelectionStrategyTopResolution, 15400 } 15401 } 15402 15403 const ( 15404 // SortOrderAscending is a SortOrder enum value 15405 SortOrderAscending = "ASCENDING" 15406 15407 // SortOrderDescending is a SortOrder enum value 15408 SortOrderDescending = "DESCENDING" 15409 ) 15410 15411 // SortOrder_Values returns all elements of the SortOrder enum 15412 func SortOrder_Values() []string { 15413 return []string{ 15414 SortOrderAscending, 15415 SortOrderDescending, 15416 } 15417 } 15418 15419 const ( 15420 // StatusBuilding is a Status enum value 15421 StatusBuilding = "BUILDING" 15422 15423 // StatusReady is a Status enum value 15424 StatusReady = "READY" 15425 15426 // StatusReadyBasicTesting is a Status enum value 15427 StatusReadyBasicTesting = "READY_BASIC_TESTING" 15428 15429 // StatusFailed is a Status enum value 15430 StatusFailed = "FAILED" 15431 15432 // StatusNotBuilt is a Status enum value 15433 StatusNotBuilt = "NOT_BUILT" 15434 ) 15435 15436 // Status_Values returns all elements of the Status enum 15437 func Status_Values() []string { 15438 return []string{ 15439 StatusBuilding, 15440 StatusReady, 15441 StatusReadyBasicTesting, 15442 StatusFailed, 15443 StatusNotBuilt, 15444 } 15445 } 15446 15447 const ( 15448 // StatusTypeDetected is a StatusType enum value 15449 StatusTypeDetected = "Detected" 15450 15451 // StatusTypeMissed is a StatusType enum value 15452 StatusTypeMissed = "Missed" 15453 ) 15454 15455 // StatusType_Values returns all elements of the StatusType enum 15456 func StatusType_Values() []string { 15457 return []string{ 15458 StatusTypeDetected, 15459 StatusTypeMissed, 15460 } 15461 }