github.com/aavshr/aws-sdk-go@v1.41.3/service/transfer/api.go (about) 1 // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3 package transfer 4 5 import ( 6 "fmt" 7 "time" 8 9 "github.com/aavshr/aws-sdk-go/aws" 10 "github.com/aavshr/aws-sdk-go/aws/awsutil" 11 "github.com/aavshr/aws-sdk-go/aws/request" 12 "github.com/aavshr/aws-sdk-go/private/protocol" 13 "github.com/aavshr/aws-sdk-go/private/protocol/jsonrpc" 14 ) 15 16 const opCreateAccess = "CreateAccess" 17 18 // CreateAccessRequest generates a "aws/request.Request" representing the 19 // client's request for the CreateAccess 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 CreateAccess for more information on using the CreateAccess 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 CreateAccessRequest method. 34 // req, resp := client.CreateAccessRequest(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/transfer-2018-11-05/CreateAccess 42 func (c *Transfer) CreateAccessRequest(input *CreateAccessInput) (req *request.Request, output *CreateAccessOutput) { 43 op := &request.Operation{ 44 Name: opCreateAccess, 45 HTTPMethod: "POST", 46 HTTPPath: "/", 47 } 48 49 if input == nil { 50 input = &CreateAccessInput{} 51 } 52 53 output = &CreateAccessOutput{} 54 req = c.newRequest(op, input, output) 55 return 56 } 57 58 // CreateAccess API operation for AWS Transfer Family. 59 // 60 // Used by administrators to choose which groups in the directory should have 61 // access to upload and download files over the enabled protocols using Amazon 62 // Web Services Transfer Family. For example, a Microsoft Active Directory might 63 // contain 50,000 users, but only a small fraction might need the ability to 64 // transfer files to the server. An administrator can use CreateAccess to limit 65 // the access to the correct set of users who need this ability. 66 // 67 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 68 // with awserr.Error's Code and Message methods to get detailed information about 69 // the error. 70 // 71 // See the AWS API reference guide for AWS Transfer Family's 72 // API operation CreateAccess for usage and error information. 73 // 74 // Returned Error Types: 75 // * ServiceUnavailableException 76 // The request has failed because the Amazon Web ServicesTransfer Family service 77 // is not available. 78 // 79 // * InternalServiceError 80 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 81 // Family service. 82 // 83 // * InvalidRequestException 84 // This exception is thrown when the client submits a malformed request. 85 // 86 // * ResourceExistsException 87 // The requested resource does not exist. 88 // 89 // * ResourceNotFoundException 90 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 91 // Family service. 92 // 93 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateAccess 94 func (c *Transfer) CreateAccess(input *CreateAccessInput) (*CreateAccessOutput, error) { 95 req, out := c.CreateAccessRequest(input) 96 return out, req.Send() 97 } 98 99 // CreateAccessWithContext is the same as CreateAccess with the addition of 100 // the ability to pass a context and additional request options. 101 // 102 // See CreateAccess for details on how to use this API operation. 103 // 104 // The context must be non-nil and will be used for request cancellation. If 105 // the context is nil a panic will occur. In the future the SDK may create 106 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 107 // for more information on using Contexts. 108 func (c *Transfer) CreateAccessWithContext(ctx aws.Context, input *CreateAccessInput, opts ...request.Option) (*CreateAccessOutput, error) { 109 req, out := c.CreateAccessRequest(input) 110 req.SetContext(ctx) 111 req.ApplyOptions(opts...) 112 return out, req.Send() 113 } 114 115 const opCreateServer = "CreateServer" 116 117 // CreateServerRequest generates a "aws/request.Request" representing the 118 // client's request for the CreateServer operation. The "output" return 119 // value will be populated with the request's response once the request completes 120 // successfully. 121 // 122 // Use "Send" method on the returned Request to send the API call to the service. 123 // the "output" return value is not valid until after Send returns without error. 124 // 125 // See CreateServer for more information on using the CreateServer 126 // API call, and error handling. 127 // 128 // This method is useful when you want to inject custom logic or configuration 129 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 130 // 131 // 132 // // Example sending a request using the CreateServerRequest method. 133 // req, resp := client.CreateServerRequest(params) 134 // 135 // err := req.Send() 136 // if err == nil { // resp is now filled 137 // fmt.Println(resp) 138 // } 139 // 140 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServer 141 func (c *Transfer) CreateServerRequest(input *CreateServerInput) (req *request.Request, output *CreateServerOutput) { 142 op := &request.Operation{ 143 Name: opCreateServer, 144 HTTPMethod: "POST", 145 HTTPPath: "/", 146 } 147 148 if input == nil { 149 input = &CreateServerInput{} 150 } 151 152 output = &CreateServerOutput{} 153 req = c.newRequest(op, input, output) 154 return 155 } 156 157 // CreateServer API operation for AWS Transfer Family. 158 // 159 // Instantiates an auto-scaling virtual server based on the selected file transfer 160 // protocol in Amazon Web Services. When you make updates to your file transfer 161 // protocol-enabled server or when you work with users, use the service-generated 162 // ServerId property that is assigned to the newly created server. 163 // 164 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 165 // with awserr.Error's Code and Message methods to get detailed information about 166 // the error. 167 // 168 // See the AWS API reference guide for AWS Transfer Family's 169 // API operation CreateServer for usage and error information. 170 // 171 // Returned Error Types: 172 // * AccessDeniedException 173 // You do not have sufficient access to perform this action. 174 // 175 // * ServiceUnavailableException 176 // The request has failed because the Amazon Web ServicesTransfer Family service 177 // is not available. 178 // 179 // * InternalServiceError 180 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 181 // Family service. 182 // 183 // * InvalidRequestException 184 // This exception is thrown when the client submits a malformed request. 185 // 186 // * ResourceExistsException 187 // The requested resource does not exist. 188 // 189 // * ResourceNotFoundException 190 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 191 // Family service. 192 // 193 // * ThrottlingException 194 // The request was denied due to request throttling. 195 // 196 // HTTP Status Code: 400 197 // 198 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateServer 199 func (c *Transfer) CreateServer(input *CreateServerInput) (*CreateServerOutput, error) { 200 req, out := c.CreateServerRequest(input) 201 return out, req.Send() 202 } 203 204 // CreateServerWithContext is the same as CreateServer with the addition of 205 // the ability to pass a context and additional request options. 206 // 207 // See CreateServer for details on how to use this API operation. 208 // 209 // The context must be non-nil and will be used for request cancellation. If 210 // the context is nil a panic will occur. In the future the SDK may create 211 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 212 // for more information on using Contexts. 213 func (c *Transfer) CreateServerWithContext(ctx aws.Context, input *CreateServerInput, opts ...request.Option) (*CreateServerOutput, error) { 214 req, out := c.CreateServerRequest(input) 215 req.SetContext(ctx) 216 req.ApplyOptions(opts...) 217 return out, req.Send() 218 } 219 220 const opCreateUser = "CreateUser" 221 222 // CreateUserRequest generates a "aws/request.Request" representing the 223 // client's request for the CreateUser operation. The "output" return 224 // value will be populated with the request's response once the request completes 225 // successfully. 226 // 227 // Use "Send" method on the returned Request to send the API call to the service. 228 // the "output" return value is not valid until after Send returns without error. 229 // 230 // See CreateUser for more information on using the CreateUser 231 // API call, and error handling. 232 // 233 // This method is useful when you want to inject custom logic or configuration 234 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 235 // 236 // 237 // // Example sending a request using the CreateUserRequest method. 238 // req, resp := client.CreateUserRequest(params) 239 // 240 // err := req.Send() 241 // if err == nil { // resp is now filled 242 // fmt.Println(resp) 243 // } 244 // 245 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUser 246 func (c *Transfer) CreateUserRequest(input *CreateUserInput) (req *request.Request, output *CreateUserOutput) { 247 op := &request.Operation{ 248 Name: opCreateUser, 249 HTTPMethod: "POST", 250 HTTPPath: "/", 251 } 252 253 if input == nil { 254 input = &CreateUserInput{} 255 } 256 257 output = &CreateUserOutput{} 258 req = c.newRequest(op, input, output) 259 return 260 } 261 262 // CreateUser API operation for AWS Transfer Family. 263 // 264 // Creates a user and associates them with an existing file transfer protocol-enabled 265 // server. You can only create and associate users with servers that have the 266 // IdentityProviderType set to SERVICE_MANAGED. Using parameters for CreateUser, 267 // you can specify the user name, set the home directory, store the user's public 268 // key, and assign the user's Amazon Web Services Identity and Access Management 269 // (IAM) role. You can also optionally add a session policy, and assign metadata 270 // with tags that can be used to group and search for users. 271 // 272 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 273 // with awserr.Error's Code and Message methods to get detailed information about 274 // the error. 275 // 276 // See the AWS API reference guide for AWS Transfer Family's 277 // API operation CreateUser for usage and error information. 278 // 279 // Returned Error Types: 280 // * ServiceUnavailableException 281 // The request has failed because the Amazon Web ServicesTransfer Family service 282 // is not available. 283 // 284 // * InternalServiceError 285 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 286 // Family service. 287 // 288 // * InvalidRequestException 289 // This exception is thrown when the client submits a malformed request. 290 // 291 // * ResourceExistsException 292 // The requested resource does not exist. 293 // 294 // * ResourceNotFoundException 295 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 296 // Family service. 297 // 298 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateUser 299 func (c *Transfer) CreateUser(input *CreateUserInput) (*CreateUserOutput, error) { 300 req, out := c.CreateUserRequest(input) 301 return out, req.Send() 302 } 303 304 // CreateUserWithContext is the same as CreateUser with the addition of 305 // the ability to pass a context and additional request options. 306 // 307 // See CreateUser for details on how to use this API operation. 308 // 309 // The context must be non-nil and will be used for request cancellation. If 310 // the context is nil a panic will occur. In the future the SDK may create 311 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 312 // for more information on using Contexts. 313 func (c *Transfer) CreateUserWithContext(ctx aws.Context, input *CreateUserInput, opts ...request.Option) (*CreateUserOutput, error) { 314 req, out := c.CreateUserRequest(input) 315 req.SetContext(ctx) 316 req.ApplyOptions(opts...) 317 return out, req.Send() 318 } 319 320 const opCreateWorkflow = "CreateWorkflow" 321 322 // CreateWorkflowRequest generates a "aws/request.Request" representing the 323 // client's request for the CreateWorkflow operation. The "output" return 324 // value will be populated with the request's response once the request completes 325 // successfully. 326 // 327 // Use "Send" method on the returned Request to send the API call to the service. 328 // the "output" return value is not valid until after Send returns without error. 329 // 330 // See CreateWorkflow for more information on using the CreateWorkflow 331 // API call, and error handling. 332 // 333 // This method is useful when you want to inject custom logic or configuration 334 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 335 // 336 // 337 // // Example sending a request using the CreateWorkflowRequest method. 338 // req, resp := client.CreateWorkflowRequest(params) 339 // 340 // err := req.Send() 341 // if err == nil { // resp is now filled 342 // fmt.Println(resp) 343 // } 344 // 345 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateWorkflow 346 func (c *Transfer) CreateWorkflowRequest(input *CreateWorkflowInput) (req *request.Request, output *CreateWorkflowOutput) { 347 op := &request.Operation{ 348 Name: opCreateWorkflow, 349 HTTPMethod: "POST", 350 HTTPPath: "/", 351 } 352 353 if input == nil { 354 input = &CreateWorkflowInput{} 355 } 356 357 output = &CreateWorkflowOutput{} 358 req = c.newRequest(op, input, output) 359 return 360 } 361 362 // CreateWorkflow API operation for AWS Transfer Family. 363 // 364 // Allows you to create a workflow with specified steps and step details the 365 // workflow invokes after file transfer completes. After creating a workflow, 366 // you can associate the workflow created with any transfer servers by specifying 367 // the workflow-details field in CreateServer and UpdateServer operations. 368 // 369 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 370 // with awserr.Error's Code and Message methods to get detailed information about 371 // the error. 372 // 373 // See the AWS API reference guide for AWS Transfer Family's 374 // API operation CreateWorkflow for usage and error information. 375 // 376 // Returned Error Types: 377 // * AccessDeniedException 378 // You do not have sufficient access to perform this action. 379 // 380 // * ServiceUnavailableException 381 // The request has failed because the Amazon Web ServicesTransfer Family service 382 // is not available. 383 // 384 // * InternalServiceError 385 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 386 // Family service. 387 // 388 // * InvalidRequestException 389 // This exception is thrown when the client submits a malformed request. 390 // 391 // * ResourceExistsException 392 // The requested resource does not exist. 393 // 394 // * ThrottlingException 395 // The request was denied due to request throttling. 396 // 397 // HTTP Status Code: 400 398 // 399 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/CreateWorkflow 400 func (c *Transfer) CreateWorkflow(input *CreateWorkflowInput) (*CreateWorkflowOutput, error) { 401 req, out := c.CreateWorkflowRequest(input) 402 return out, req.Send() 403 } 404 405 // CreateWorkflowWithContext is the same as CreateWorkflow with the addition of 406 // the ability to pass a context and additional request options. 407 // 408 // See CreateWorkflow for details on how to use this API operation. 409 // 410 // The context must be non-nil and will be used for request cancellation. If 411 // the context is nil a panic will occur. In the future the SDK may create 412 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 413 // for more information on using Contexts. 414 func (c *Transfer) CreateWorkflowWithContext(ctx aws.Context, input *CreateWorkflowInput, opts ...request.Option) (*CreateWorkflowOutput, error) { 415 req, out := c.CreateWorkflowRequest(input) 416 req.SetContext(ctx) 417 req.ApplyOptions(opts...) 418 return out, req.Send() 419 } 420 421 const opDeleteAccess = "DeleteAccess" 422 423 // DeleteAccessRequest generates a "aws/request.Request" representing the 424 // client's request for the DeleteAccess operation. The "output" return 425 // value will be populated with the request's response once the request completes 426 // successfully. 427 // 428 // Use "Send" method on the returned Request to send the API call to the service. 429 // the "output" return value is not valid until after Send returns without error. 430 // 431 // See DeleteAccess for more information on using the DeleteAccess 432 // API call, and error handling. 433 // 434 // This method is useful when you want to inject custom logic or configuration 435 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 436 // 437 // 438 // // Example sending a request using the DeleteAccessRequest method. 439 // req, resp := client.DeleteAccessRequest(params) 440 // 441 // err := req.Send() 442 // if err == nil { // resp is now filled 443 // fmt.Println(resp) 444 // } 445 // 446 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteAccess 447 func (c *Transfer) DeleteAccessRequest(input *DeleteAccessInput) (req *request.Request, output *DeleteAccessOutput) { 448 op := &request.Operation{ 449 Name: opDeleteAccess, 450 HTTPMethod: "POST", 451 HTTPPath: "/", 452 } 453 454 if input == nil { 455 input = &DeleteAccessInput{} 456 } 457 458 output = &DeleteAccessOutput{} 459 req = c.newRequest(op, input, output) 460 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 461 return 462 } 463 464 // DeleteAccess API operation for AWS Transfer Family. 465 // 466 // Allows you to delete the access specified in the ServerID and ExternalID 467 // parameters. 468 // 469 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 470 // with awserr.Error's Code and Message methods to get detailed information about 471 // the error. 472 // 473 // See the AWS API reference guide for AWS Transfer Family's 474 // API operation DeleteAccess for usage and error information. 475 // 476 // Returned Error Types: 477 // * ServiceUnavailableException 478 // The request has failed because the Amazon Web ServicesTransfer Family service 479 // is not available. 480 // 481 // * InternalServiceError 482 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 483 // Family service. 484 // 485 // * InvalidRequestException 486 // This exception is thrown when the client submits a malformed request. 487 // 488 // * ResourceNotFoundException 489 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 490 // Family service. 491 // 492 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteAccess 493 func (c *Transfer) DeleteAccess(input *DeleteAccessInput) (*DeleteAccessOutput, error) { 494 req, out := c.DeleteAccessRequest(input) 495 return out, req.Send() 496 } 497 498 // DeleteAccessWithContext is the same as DeleteAccess with the addition of 499 // the ability to pass a context and additional request options. 500 // 501 // See DeleteAccess for details on how to use this API operation. 502 // 503 // The context must be non-nil and will be used for request cancellation. If 504 // the context is nil a panic will occur. In the future the SDK may create 505 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 506 // for more information on using Contexts. 507 func (c *Transfer) DeleteAccessWithContext(ctx aws.Context, input *DeleteAccessInput, opts ...request.Option) (*DeleteAccessOutput, error) { 508 req, out := c.DeleteAccessRequest(input) 509 req.SetContext(ctx) 510 req.ApplyOptions(opts...) 511 return out, req.Send() 512 } 513 514 const opDeleteServer = "DeleteServer" 515 516 // DeleteServerRequest generates a "aws/request.Request" representing the 517 // client's request for the DeleteServer operation. The "output" return 518 // value will be populated with the request's response once the request completes 519 // successfully. 520 // 521 // Use "Send" method on the returned Request to send the API call to the service. 522 // the "output" return value is not valid until after Send returns without error. 523 // 524 // See DeleteServer for more information on using the DeleteServer 525 // API call, and error handling. 526 // 527 // This method is useful when you want to inject custom logic or configuration 528 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 529 // 530 // 531 // // Example sending a request using the DeleteServerRequest method. 532 // req, resp := client.DeleteServerRequest(params) 533 // 534 // err := req.Send() 535 // if err == nil { // resp is now filled 536 // fmt.Println(resp) 537 // } 538 // 539 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteServer 540 func (c *Transfer) DeleteServerRequest(input *DeleteServerInput) (req *request.Request, output *DeleteServerOutput) { 541 op := &request.Operation{ 542 Name: opDeleteServer, 543 HTTPMethod: "POST", 544 HTTPPath: "/", 545 } 546 547 if input == nil { 548 input = &DeleteServerInput{} 549 } 550 551 output = &DeleteServerOutput{} 552 req = c.newRequest(op, input, output) 553 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 554 return 555 } 556 557 // DeleteServer API operation for AWS Transfer Family. 558 // 559 // Deletes the file transfer protocol-enabled server that you specify. 560 // 561 // No response returns from this operation. 562 // 563 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 564 // with awserr.Error's Code and Message methods to get detailed information about 565 // the error. 566 // 567 // See the AWS API reference guide for AWS Transfer Family's 568 // API operation DeleteServer for usage and error information. 569 // 570 // Returned Error Types: 571 // * AccessDeniedException 572 // You do not have sufficient access to perform this action. 573 // 574 // * ServiceUnavailableException 575 // The request has failed because the Amazon Web ServicesTransfer Family service 576 // is not available. 577 // 578 // * InternalServiceError 579 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 580 // Family service. 581 // 582 // * InvalidRequestException 583 // This exception is thrown when the client submits a malformed request. 584 // 585 // * ResourceNotFoundException 586 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 587 // Family service. 588 // 589 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteServer 590 func (c *Transfer) DeleteServer(input *DeleteServerInput) (*DeleteServerOutput, error) { 591 req, out := c.DeleteServerRequest(input) 592 return out, req.Send() 593 } 594 595 // DeleteServerWithContext is the same as DeleteServer with the addition of 596 // the ability to pass a context and additional request options. 597 // 598 // See DeleteServer for details on how to use this API operation. 599 // 600 // The context must be non-nil and will be used for request cancellation. If 601 // the context is nil a panic will occur. In the future the SDK may create 602 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 603 // for more information on using Contexts. 604 func (c *Transfer) DeleteServerWithContext(ctx aws.Context, input *DeleteServerInput, opts ...request.Option) (*DeleteServerOutput, error) { 605 req, out := c.DeleteServerRequest(input) 606 req.SetContext(ctx) 607 req.ApplyOptions(opts...) 608 return out, req.Send() 609 } 610 611 const opDeleteSshPublicKey = "DeleteSshPublicKey" 612 613 // DeleteSshPublicKeyRequest generates a "aws/request.Request" representing the 614 // client's request for the DeleteSshPublicKey operation. The "output" return 615 // value will be populated with the request's response once the request completes 616 // successfully. 617 // 618 // Use "Send" method on the returned Request to send the API call to the service. 619 // the "output" return value is not valid until after Send returns without error. 620 // 621 // See DeleteSshPublicKey for more information on using the DeleteSshPublicKey 622 // API call, and error handling. 623 // 624 // This method is useful when you want to inject custom logic or configuration 625 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 626 // 627 // 628 // // Example sending a request using the DeleteSshPublicKeyRequest method. 629 // req, resp := client.DeleteSshPublicKeyRequest(params) 630 // 631 // err := req.Send() 632 // if err == nil { // resp is now filled 633 // fmt.Println(resp) 634 // } 635 // 636 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteSshPublicKey 637 func (c *Transfer) DeleteSshPublicKeyRequest(input *DeleteSshPublicKeyInput) (req *request.Request, output *DeleteSshPublicKeyOutput) { 638 op := &request.Operation{ 639 Name: opDeleteSshPublicKey, 640 HTTPMethod: "POST", 641 HTTPPath: "/", 642 } 643 644 if input == nil { 645 input = &DeleteSshPublicKeyInput{} 646 } 647 648 output = &DeleteSshPublicKeyOutput{} 649 req = c.newRequest(op, input, output) 650 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 651 return 652 } 653 654 // DeleteSshPublicKey API operation for AWS Transfer Family. 655 // 656 // Deletes a user's Secure Shell (SSH) public key. 657 // 658 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 659 // with awserr.Error's Code and Message methods to get detailed information about 660 // the error. 661 // 662 // See the AWS API reference guide for AWS Transfer Family's 663 // API operation DeleteSshPublicKey for usage and error information. 664 // 665 // Returned Error Types: 666 // * ServiceUnavailableException 667 // The request has failed because the Amazon Web ServicesTransfer Family service 668 // is not available. 669 // 670 // * InternalServiceError 671 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 672 // Family service. 673 // 674 // * InvalidRequestException 675 // This exception is thrown when the client submits a malformed request. 676 // 677 // * ResourceNotFoundException 678 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 679 // Family service. 680 // 681 // * ThrottlingException 682 // The request was denied due to request throttling. 683 // 684 // HTTP Status Code: 400 685 // 686 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteSshPublicKey 687 func (c *Transfer) DeleteSshPublicKey(input *DeleteSshPublicKeyInput) (*DeleteSshPublicKeyOutput, error) { 688 req, out := c.DeleteSshPublicKeyRequest(input) 689 return out, req.Send() 690 } 691 692 // DeleteSshPublicKeyWithContext is the same as DeleteSshPublicKey with the addition of 693 // the ability to pass a context and additional request options. 694 // 695 // See DeleteSshPublicKey for details on how to use this API operation. 696 // 697 // The context must be non-nil and will be used for request cancellation. If 698 // the context is nil a panic will occur. In the future the SDK may create 699 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 700 // for more information on using Contexts. 701 func (c *Transfer) DeleteSshPublicKeyWithContext(ctx aws.Context, input *DeleteSshPublicKeyInput, opts ...request.Option) (*DeleteSshPublicKeyOutput, error) { 702 req, out := c.DeleteSshPublicKeyRequest(input) 703 req.SetContext(ctx) 704 req.ApplyOptions(opts...) 705 return out, req.Send() 706 } 707 708 const opDeleteUser = "DeleteUser" 709 710 // DeleteUserRequest generates a "aws/request.Request" representing the 711 // client's request for the DeleteUser operation. The "output" return 712 // value will be populated with the request's response once the request completes 713 // successfully. 714 // 715 // Use "Send" method on the returned Request to send the API call to the service. 716 // the "output" return value is not valid until after Send returns without error. 717 // 718 // See DeleteUser for more information on using the DeleteUser 719 // API call, and error handling. 720 // 721 // This method is useful when you want to inject custom logic or configuration 722 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 723 // 724 // 725 // // Example sending a request using the DeleteUserRequest method. 726 // req, resp := client.DeleteUserRequest(params) 727 // 728 // err := req.Send() 729 // if err == nil { // resp is now filled 730 // fmt.Println(resp) 731 // } 732 // 733 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteUser 734 func (c *Transfer) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) { 735 op := &request.Operation{ 736 Name: opDeleteUser, 737 HTTPMethod: "POST", 738 HTTPPath: "/", 739 } 740 741 if input == nil { 742 input = &DeleteUserInput{} 743 } 744 745 output = &DeleteUserOutput{} 746 req = c.newRequest(op, input, output) 747 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 748 return 749 } 750 751 // DeleteUser API operation for AWS Transfer Family. 752 // 753 // Deletes the user belonging to a file transfer protocol-enabled server you 754 // specify. 755 // 756 // No response returns from this operation. 757 // 758 // When you delete a user from a server, the user's information is lost. 759 // 760 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 761 // with awserr.Error's Code and Message methods to get detailed information about 762 // the error. 763 // 764 // See the AWS API reference guide for AWS Transfer Family's 765 // API operation DeleteUser for usage and error information. 766 // 767 // Returned Error Types: 768 // * ServiceUnavailableException 769 // The request has failed because the Amazon Web ServicesTransfer Family service 770 // is not available. 771 // 772 // * InternalServiceError 773 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 774 // Family service. 775 // 776 // * InvalidRequestException 777 // This exception is thrown when the client submits a malformed request. 778 // 779 // * ResourceNotFoundException 780 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 781 // Family service. 782 // 783 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteUser 784 func (c *Transfer) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) { 785 req, out := c.DeleteUserRequest(input) 786 return out, req.Send() 787 } 788 789 // DeleteUserWithContext is the same as DeleteUser with the addition of 790 // the ability to pass a context and additional request options. 791 // 792 // See DeleteUser for details on how to use this API operation. 793 // 794 // The context must be non-nil and will be used for request cancellation. If 795 // the context is nil a panic will occur. In the future the SDK may create 796 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 797 // for more information on using Contexts. 798 func (c *Transfer) DeleteUserWithContext(ctx aws.Context, input *DeleteUserInput, opts ...request.Option) (*DeleteUserOutput, error) { 799 req, out := c.DeleteUserRequest(input) 800 req.SetContext(ctx) 801 req.ApplyOptions(opts...) 802 return out, req.Send() 803 } 804 805 const opDeleteWorkflow = "DeleteWorkflow" 806 807 // DeleteWorkflowRequest generates a "aws/request.Request" representing the 808 // client's request for the DeleteWorkflow operation. The "output" return 809 // value will be populated with the request's response once the request completes 810 // successfully. 811 // 812 // Use "Send" method on the returned Request to send the API call to the service. 813 // the "output" return value is not valid until after Send returns without error. 814 // 815 // See DeleteWorkflow for more information on using the DeleteWorkflow 816 // API call, and error handling. 817 // 818 // This method is useful when you want to inject custom logic or configuration 819 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 820 // 821 // 822 // // Example sending a request using the DeleteWorkflowRequest method. 823 // req, resp := client.DeleteWorkflowRequest(params) 824 // 825 // err := req.Send() 826 // if err == nil { // resp is now filled 827 // fmt.Println(resp) 828 // } 829 // 830 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteWorkflow 831 func (c *Transfer) DeleteWorkflowRequest(input *DeleteWorkflowInput) (req *request.Request, output *DeleteWorkflowOutput) { 832 op := &request.Operation{ 833 Name: opDeleteWorkflow, 834 HTTPMethod: "POST", 835 HTTPPath: "/", 836 } 837 838 if input == nil { 839 input = &DeleteWorkflowInput{} 840 } 841 842 output = &DeleteWorkflowOutput{} 843 req = c.newRequest(op, input, output) 844 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 845 return 846 } 847 848 // DeleteWorkflow API operation for AWS Transfer Family. 849 // 850 // Deletes the specified workflow. 851 // 852 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 853 // with awserr.Error's Code and Message methods to get detailed information about 854 // the error. 855 // 856 // See the AWS API reference guide for AWS Transfer Family's 857 // API operation DeleteWorkflow for usage and error information. 858 // 859 // Returned Error Types: 860 // * AccessDeniedException 861 // You do not have sufficient access to perform this action. 862 // 863 // * ServiceUnavailableException 864 // The request has failed because the Amazon Web ServicesTransfer Family service 865 // is not available. 866 // 867 // * InternalServiceError 868 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 869 // Family service. 870 // 871 // * InvalidRequestException 872 // This exception is thrown when the client submits a malformed request. 873 // 874 // * ResourceNotFoundException 875 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 876 // Family service. 877 // 878 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DeleteWorkflow 879 func (c *Transfer) DeleteWorkflow(input *DeleteWorkflowInput) (*DeleteWorkflowOutput, error) { 880 req, out := c.DeleteWorkflowRequest(input) 881 return out, req.Send() 882 } 883 884 // DeleteWorkflowWithContext is the same as DeleteWorkflow with the addition of 885 // the ability to pass a context and additional request options. 886 // 887 // See DeleteWorkflow for details on how to use this API operation. 888 // 889 // The context must be non-nil and will be used for request cancellation. If 890 // the context is nil a panic will occur. In the future the SDK may create 891 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 892 // for more information on using Contexts. 893 func (c *Transfer) DeleteWorkflowWithContext(ctx aws.Context, input *DeleteWorkflowInput, opts ...request.Option) (*DeleteWorkflowOutput, error) { 894 req, out := c.DeleteWorkflowRequest(input) 895 req.SetContext(ctx) 896 req.ApplyOptions(opts...) 897 return out, req.Send() 898 } 899 900 const opDescribeAccess = "DescribeAccess" 901 902 // DescribeAccessRequest generates a "aws/request.Request" representing the 903 // client's request for the DescribeAccess operation. The "output" return 904 // value will be populated with the request's response once the request completes 905 // successfully. 906 // 907 // Use "Send" method on the returned Request to send the API call to the service. 908 // the "output" return value is not valid until after Send returns without error. 909 // 910 // See DescribeAccess for more information on using the DescribeAccess 911 // API call, and error handling. 912 // 913 // This method is useful when you want to inject custom logic or configuration 914 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 915 // 916 // 917 // // Example sending a request using the DescribeAccessRequest method. 918 // req, resp := client.DescribeAccessRequest(params) 919 // 920 // err := req.Send() 921 // if err == nil { // resp is now filled 922 // fmt.Println(resp) 923 // } 924 // 925 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeAccess 926 func (c *Transfer) DescribeAccessRequest(input *DescribeAccessInput) (req *request.Request, output *DescribeAccessOutput) { 927 op := &request.Operation{ 928 Name: opDescribeAccess, 929 HTTPMethod: "POST", 930 HTTPPath: "/", 931 } 932 933 if input == nil { 934 input = &DescribeAccessInput{} 935 } 936 937 output = &DescribeAccessOutput{} 938 req = c.newRequest(op, input, output) 939 return 940 } 941 942 // DescribeAccess API operation for AWS Transfer Family. 943 // 944 // Describes the access that is assigned to the specific file transfer protocol-enabled 945 // server, as identified by its ServerId property and its ExternalID. 946 // 947 // The response from this call returns the properties of the access that is 948 // associated with the ServerId value that was specified. 949 // 950 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 951 // with awserr.Error's Code and Message methods to get detailed information about 952 // the error. 953 // 954 // See the AWS API reference guide for AWS Transfer Family's 955 // API operation DescribeAccess for usage and error information. 956 // 957 // Returned Error Types: 958 // * ServiceUnavailableException 959 // The request has failed because the Amazon Web ServicesTransfer Family service 960 // is not available. 961 // 962 // * InternalServiceError 963 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 964 // Family service. 965 // 966 // * InvalidRequestException 967 // This exception is thrown when the client submits a malformed request. 968 // 969 // * ResourceNotFoundException 970 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 971 // Family service. 972 // 973 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeAccess 974 func (c *Transfer) DescribeAccess(input *DescribeAccessInput) (*DescribeAccessOutput, error) { 975 req, out := c.DescribeAccessRequest(input) 976 return out, req.Send() 977 } 978 979 // DescribeAccessWithContext is the same as DescribeAccess with the addition of 980 // the ability to pass a context and additional request options. 981 // 982 // See DescribeAccess for details on how to use this API operation. 983 // 984 // The context must be non-nil and will be used for request cancellation. If 985 // the context is nil a panic will occur. In the future the SDK may create 986 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 987 // for more information on using Contexts. 988 func (c *Transfer) DescribeAccessWithContext(ctx aws.Context, input *DescribeAccessInput, opts ...request.Option) (*DescribeAccessOutput, error) { 989 req, out := c.DescribeAccessRequest(input) 990 req.SetContext(ctx) 991 req.ApplyOptions(opts...) 992 return out, req.Send() 993 } 994 995 const opDescribeExecution = "DescribeExecution" 996 997 // DescribeExecutionRequest generates a "aws/request.Request" representing the 998 // client's request for the DescribeExecution operation. The "output" return 999 // value will be populated with the request's response once the request completes 1000 // successfully. 1001 // 1002 // Use "Send" method on the returned Request to send the API call to the service. 1003 // the "output" return value is not valid until after Send returns without error. 1004 // 1005 // See DescribeExecution for more information on using the DescribeExecution 1006 // API call, and error handling. 1007 // 1008 // This method is useful when you want to inject custom logic or configuration 1009 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1010 // 1011 // 1012 // // Example sending a request using the DescribeExecutionRequest method. 1013 // req, resp := client.DescribeExecutionRequest(params) 1014 // 1015 // err := req.Send() 1016 // if err == nil { // resp is now filled 1017 // fmt.Println(resp) 1018 // } 1019 // 1020 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeExecution 1021 func (c *Transfer) DescribeExecutionRequest(input *DescribeExecutionInput) (req *request.Request, output *DescribeExecutionOutput) { 1022 op := &request.Operation{ 1023 Name: opDescribeExecution, 1024 HTTPMethod: "POST", 1025 HTTPPath: "/", 1026 } 1027 1028 if input == nil { 1029 input = &DescribeExecutionInput{} 1030 } 1031 1032 output = &DescribeExecutionOutput{} 1033 req = c.newRequest(op, input, output) 1034 return 1035 } 1036 1037 // DescribeExecution API operation for AWS Transfer Family. 1038 // 1039 // You can use DescribeExecution to check the details of the execution of the 1040 // specified workflow. 1041 // 1042 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1043 // with awserr.Error's Code and Message methods to get detailed information about 1044 // the error. 1045 // 1046 // See the AWS API reference guide for AWS Transfer Family's 1047 // API operation DescribeExecution for usage and error information. 1048 // 1049 // Returned Error Types: 1050 // * ServiceUnavailableException 1051 // The request has failed because the Amazon Web ServicesTransfer Family service 1052 // is not available. 1053 // 1054 // * InternalServiceError 1055 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1056 // Family service. 1057 // 1058 // * InvalidRequestException 1059 // This exception is thrown when the client submits a malformed request. 1060 // 1061 // * ResourceNotFoundException 1062 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1063 // Family service. 1064 // 1065 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeExecution 1066 func (c *Transfer) DescribeExecution(input *DescribeExecutionInput) (*DescribeExecutionOutput, error) { 1067 req, out := c.DescribeExecutionRequest(input) 1068 return out, req.Send() 1069 } 1070 1071 // DescribeExecutionWithContext is the same as DescribeExecution with the addition of 1072 // the ability to pass a context and additional request options. 1073 // 1074 // See DescribeExecution for details on how to use this API operation. 1075 // 1076 // The context must be non-nil and will be used for request cancellation. If 1077 // the context is nil a panic will occur. In the future the SDK may create 1078 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1079 // for more information on using Contexts. 1080 func (c *Transfer) DescribeExecutionWithContext(ctx aws.Context, input *DescribeExecutionInput, opts ...request.Option) (*DescribeExecutionOutput, error) { 1081 req, out := c.DescribeExecutionRequest(input) 1082 req.SetContext(ctx) 1083 req.ApplyOptions(opts...) 1084 return out, req.Send() 1085 } 1086 1087 const opDescribeSecurityPolicy = "DescribeSecurityPolicy" 1088 1089 // DescribeSecurityPolicyRequest generates a "aws/request.Request" representing the 1090 // client's request for the DescribeSecurityPolicy operation. The "output" return 1091 // value will be populated with the request's response once the request completes 1092 // successfully. 1093 // 1094 // Use "Send" method on the returned Request to send the API call to the service. 1095 // the "output" return value is not valid until after Send returns without error. 1096 // 1097 // See DescribeSecurityPolicy for more information on using the DescribeSecurityPolicy 1098 // API call, and error handling. 1099 // 1100 // This method is useful when you want to inject custom logic or configuration 1101 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1102 // 1103 // 1104 // // Example sending a request using the DescribeSecurityPolicyRequest method. 1105 // req, resp := client.DescribeSecurityPolicyRequest(params) 1106 // 1107 // err := req.Send() 1108 // if err == nil { // resp is now filled 1109 // fmt.Println(resp) 1110 // } 1111 // 1112 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeSecurityPolicy 1113 func (c *Transfer) DescribeSecurityPolicyRequest(input *DescribeSecurityPolicyInput) (req *request.Request, output *DescribeSecurityPolicyOutput) { 1114 op := &request.Operation{ 1115 Name: opDescribeSecurityPolicy, 1116 HTTPMethod: "POST", 1117 HTTPPath: "/", 1118 } 1119 1120 if input == nil { 1121 input = &DescribeSecurityPolicyInput{} 1122 } 1123 1124 output = &DescribeSecurityPolicyOutput{} 1125 req = c.newRequest(op, input, output) 1126 return 1127 } 1128 1129 // DescribeSecurityPolicy API operation for AWS Transfer Family. 1130 // 1131 // Describes the security policy that is attached to your file transfer protocol-enabled 1132 // server. The response contains a description of the security policy's properties. 1133 // For more information about security policies, see Working with security policies 1134 // (https://docs.aws.amazon.com/transfer/latest/userguide/security-policies.html). 1135 // 1136 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1137 // with awserr.Error's Code and Message methods to get detailed information about 1138 // the error. 1139 // 1140 // See the AWS API reference guide for AWS Transfer Family's 1141 // API operation DescribeSecurityPolicy for usage and error information. 1142 // 1143 // Returned Error Types: 1144 // * ServiceUnavailableException 1145 // The request has failed because the Amazon Web ServicesTransfer Family service 1146 // is not available. 1147 // 1148 // * InternalServiceError 1149 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1150 // Family service. 1151 // 1152 // * InvalidRequestException 1153 // This exception is thrown when the client submits a malformed request. 1154 // 1155 // * ResourceNotFoundException 1156 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1157 // Family service. 1158 // 1159 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeSecurityPolicy 1160 func (c *Transfer) DescribeSecurityPolicy(input *DescribeSecurityPolicyInput) (*DescribeSecurityPolicyOutput, error) { 1161 req, out := c.DescribeSecurityPolicyRequest(input) 1162 return out, req.Send() 1163 } 1164 1165 // DescribeSecurityPolicyWithContext is the same as DescribeSecurityPolicy with the addition of 1166 // the ability to pass a context and additional request options. 1167 // 1168 // See DescribeSecurityPolicy for details on how to use this API operation. 1169 // 1170 // The context must be non-nil and will be used for request cancellation. If 1171 // the context is nil a panic will occur. In the future the SDK may create 1172 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1173 // for more information on using Contexts. 1174 func (c *Transfer) DescribeSecurityPolicyWithContext(ctx aws.Context, input *DescribeSecurityPolicyInput, opts ...request.Option) (*DescribeSecurityPolicyOutput, error) { 1175 req, out := c.DescribeSecurityPolicyRequest(input) 1176 req.SetContext(ctx) 1177 req.ApplyOptions(opts...) 1178 return out, req.Send() 1179 } 1180 1181 const opDescribeServer = "DescribeServer" 1182 1183 // DescribeServerRequest generates a "aws/request.Request" representing the 1184 // client's request for the DescribeServer operation. The "output" return 1185 // value will be populated with the request's response once the request completes 1186 // successfully. 1187 // 1188 // Use "Send" method on the returned Request to send the API call to the service. 1189 // the "output" return value is not valid until after Send returns without error. 1190 // 1191 // See DescribeServer for more information on using the DescribeServer 1192 // API call, and error handling. 1193 // 1194 // This method is useful when you want to inject custom logic or configuration 1195 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1196 // 1197 // 1198 // // Example sending a request using the DescribeServerRequest method. 1199 // req, resp := client.DescribeServerRequest(params) 1200 // 1201 // err := req.Send() 1202 // if err == nil { // resp is now filled 1203 // fmt.Println(resp) 1204 // } 1205 // 1206 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServer 1207 func (c *Transfer) DescribeServerRequest(input *DescribeServerInput) (req *request.Request, output *DescribeServerOutput) { 1208 op := &request.Operation{ 1209 Name: opDescribeServer, 1210 HTTPMethod: "POST", 1211 HTTPPath: "/", 1212 } 1213 1214 if input == nil { 1215 input = &DescribeServerInput{} 1216 } 1217 1218 output = &DescribeServerOutput{} 1219 req = c.newRequest(op, input, output) 1220 return 1221 } 1222 1223 // DescribeServer API operation for AWS Transfer Family. 1224 // 1225 // Describes a file transfer protocol-enabled server that you specify by passing 1226 // the ServerId parameter. 1227 // 1228 // The response contains a description of a server's properties. When you set 1229 // EndpointType to VPC, the response will contain the EndpointDetails. 1230 // 1231 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1232 // with awserr.Error's Code and Message methods to get detailed information about 1233 // the error. 1234 // 1235 // See the AWS API reference guide for AWS Transfer Family's 1236 // API operation DescribeServer for usage and error information. 1237 // 1238 // Returned Error Types: 1239 // * ServiceUnavailableException 1240 // The request has failed because the Amazon Web ServicesTransfer Family service 1241 // is not available. 1242 // 1243 // * InternalServiceError 1244 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1245 // Family service. 1246 // 1247 // * InvalidRequestException 1248 // This exception is thrown when the client submits a malformed request. 1249 // 1250 // * ResourceNotFoundException 1251 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1252 // Family service. 1253 // 1254 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeServer 1255 func (c *Transfer) DescribeServer(input *DescribeServerInput) (*DescribeServerOutput, error) { 1256 req, out := c.DescribeServerRequest(input) 1257 return out, req.Send() 1258 } 1259 1260 // DescribeServerWithContext is the same as DescribeServer with the addition of 1261 // the ability to pass a context and additional request options. 1262 // 1263 // See DescribeServer for details on how to use this API operation. 1264 // 1265 // The context must be non-nil and will be used for request cancellation. If 1266 // the context is nil a panic will occur. In the future the SDK may create 1267 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1268 // for more information on using Contexts. 1269 func (c *Transfer) DescribeServerWithContext(ctx aws.Context, input *DescribeServerInput, opts ...request.Option) (*DescribeServerOutput, error) { 1270 req, out := c.DescribeServerRequest(input) 1271 req.SetContext(ctx) 1272 req.ApplyOptions(opts...) 1273 return out, req.Send() 1274 } 1275 1276 const opDescribeUser = "DescribeUser" 1277 1278 // DescribeUserRequest generates a "aws/request.Request" representing the 1279 // client's request for the DescribeUser operation. The "output" return 1280 // value will be populated with the request's response once the request completes 1281 // successfully. 1282 // 1283 // Use "Send" method on the returned Request to send the API call to the service. 1284 // the "output" return value is not valid until after Send returns without error. 1285 // 1286 // See DescribeUser for more information on using the DescribeUser 1287 // API call, and error handling. 1288 // 1289 // This method is useful when you want to inject custom logic or configuration 1290 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1291 // 1292 // 1293 // // Example sending a request using the DescribeUserRequest method. 1294 // req, resp := client.DescribeUserRequest(params) 1295 // 1296 // err := req.Send() 1297 // if err == nil { // resp is now filled 1298 // fmt.Println(resp) 1299 // } 1300 // 1301 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeUser 1302 func (c *Transfer) DescribeUserRequest(input *DescribeUserInput) (req *request.Request, output *DescribeUserOutput) { 1303 op := &request.Operation{ 1304 Name: opDescribeUser, 1305 HTTPMethod: "POST", 1306 HTTPPath: "/", 1307 } 1308 1309 if input == nil { 1310 input = &DescribeUserInput{} 1311 } 1312 1313 output = &DescribeUserOutput{} 1314 req = c.newRequest(op, input, output) 1315 return 1316 } 1317 1318 // DescribeUser API operation for AWS Transfer Family. 1319 // 1320 // Describes the user assigned to the specific file transfer protocol-enabled 1321 // server, as identified by its ServerId property. 1322 // 1323 // The response from this call returns the properties of the user associated 1324 // with the ServerId value that was specified. 1325 // 1326 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1327 // with awserr.Error's Code and Message methods to get detailed information about 1328 // the error. 1329 // 1330 // See the AWS API reference guide for AWS Transfer Family's 1331 // API operation DescribeUser for usage and error information. 1332 // 1333 // Returned Error Types: 1334 // * ServiceUnavailableException 1335 // The request has failed because the Amazon Web ServicesTransfer Family service 1336 // is not available. 1337 // 1338 // * InternalServiceError 1339 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1340 // Family service. 1341 // 1342 // * InvalidRequestException 1343 // This exception is thrown when the client submits a malformed request. 1344 // 1345 // * ResourceNotFoundException 1346 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1347 // Family service. 1348 // 1349 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeUser 1350 func (c *Transfer) DescribeUser(input *DescribeUserInput) (*DescribeUserOutput, error) { 1351 req, out := c.DescribeUserRequest(input) 1352 return out, req.Send() 1353 } 1354 1355 // DescribeUserWithContext is the same as DescribeUser with the addition of 1356 // the ability to pass a context and additional request options. 1357 // 1358 // See DescribeUser for details on how to use this API operation. 1359 // 1360 // The context must be non-nil and will be used for request cancellation. If 1361 // the context is nil a panic will occur. In the future the SDK may create 1362 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1363 // for more information on using Contexts. 1364 func (c *Transfer) DescribeUserWithContext(ctx aws.Context, input *DescribeUserInput, opts ...request.Option) (*DescribeUserOutput, error) { 1365 req, out := c.DescribeUserRequest(input) 1366 req.SetContext(ctx) 1367 req.ApplyOptions(opts...) 1368 return out, req.Send() 1369 } 1370 1371 const opDescribeWorkflow = "DescribeWorkflow" 1372 1373 // DescribeWorkflowRequest generates a "aws/request.Request" representing the 1374 // client's request for the DescribeWorkflow operation. The "output" return 1375 // value will be populated with the request's response once the request completes 1376 // successfully. 1377 // 1378 // Use "Send" method on the returned Request to send the API call to the service. 1379 // the "output" return value is not valid until after Send returns without error. 1380 // 1381 // See DescribeWorkflow for more information on using the DescribeWorkflow 1382 // API call, and error handling. 1383 // 1384 // This method is useful when you want to inject custom logic or configuration 1385 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1386 // 1387 // 1388 // // Example sending a request using the DescribeWorkflowRequest method. 1389 // req, resp := client.DescribeWorkflowRequest(params) 1390 // 1391 // err := req.Send() 1392 // if err == nil { // resp is now filled 1393 // fmt.Println(resp) 1394 // } 1395 // 1396 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWorkflow 1397 func (c *Transfer) DescribeWorkflowRequest(input *DescribeWorkflowInput) (req *request.Request, output *DescribeWorkflowOutput) { 1398 op := &request.Operation{ 1399 Name: opDescribeWorkflow, 1400 HTTPMethod: "POST", 1401 HTTPPath: "/", 1402 } 1403 1404 if input == nil { 1405 input = &DescribeWorkflowInput{} 1406 } 1407 1408 output = &DescribeWorkflowOutput{} 1409 req = c.newRequest(op, input, output) 1410 return 1411 } 1412 1413 // DescribeWorkflow API operation for AWS Transfer Family. 1414 // 1415 // Describes the specified workflow. 1416 // 1417 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1418 // with awserr.Error's Code and Message methods to get detailed information about 1419 // the error. 1420 // 1421 // See the AWS API reference guide for AWS Transfer Family's 1422 // API operation DescribeWorkflow for usage and error information. 1423 // 1424 // Returned Error Types: 1425 // * ServiceUnavailableException 1426 // The request has failed because the Amazon Web ServicesTransfer Family service 1427 // is not available. 1428 // 1429 // * InternalServiceError 1430 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1431 // Family service. 1432 // 1433 // * InvalidRequestException 1434 // This exception is thrown when the client submits a malformed request. 1435 // 1436 // * ResourceNotFoundException 1437 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1438 // Family service. 1439 // 1440 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/DescribeWorkflow 1441 func (c *Transfer) DescribeWorkflow(input *DescribeWorkflowInput) (*DescribeWorkflowOutput, error) { 1442 req, out := c.DescribeWorkflowRequest(input) 1443 return out, req.Send() 1444 } 1445 1446 // DescribeWorkflowWithContext is the same as DescribeWorkflow with the addition of 1447 // the ability to pass a context and additional request options. 1448 // 1449 // See DescribeWorkflow for details on how to use this API operation. 1450 // 1451 // The context must be non-nil and will be used for request cancellation. If 1452 // the context is nil a panic will occur. In the future the SDK may create 1453 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1454 // for more information on using Contexts. 1455 func (c *Transfer) DescribeWorkflowWithContext(ctx aws.Context, input *DescribeWorkflowInput, opts ...request.Option) (*DescribeWorkflowOutput, error) { 1456 req, out := c.DescribeWorkflowRequest(input) 1457 req.SetContext(ctx) 1458 req.ApplyOptions(opts...) 1459 return out, req.Send() 1460 } 1461 1462 const opImportSshPublicKey = "ImportSshPublicKey" 1463 1464 // ImportSshPublicKeyRequest generates a "aws/request.Request" representing the 1465 // client's request for the ImportSshPublicKey operation. The "output" return 1466 // value will be populated with the request's response once the request completes 1467 // successfully. 1468 // 1469 // Use "Send" method on the returned Request to send the API call to the service. 1470 // the "output" return value is not valid until after Send returns without error. 1471 // 1472 // See ImportSshPublicKey for more information on using the ImportSshPublicKey 1473 // API call, and error handling. 1474 // 1475 // This method is useful when you want to inject custom logic or configuration 1476 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1477 // 1478 // 1479 // // Example sending a request using the ImportSshPublicKeyRequest method. 1480 // req, resp := client.ImportSshPublicKeyRequest(params) 1481 // 1482 // err := req.Send() 1483 // if err == nil { // resp is now filled 1484 // fmt.Println(resp) 1485 // } 1486 // 1487 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKey 1488 func (c *Transfer) ImportSshPublicKeyRequest(input *ImportSshPublicKeyInput) (req *request.Request, output *ImportSshPublicKeyOutput) { 1489 op := &request.Operation{ 1490 Name: opImportSshPublicKey, 1491 HTTPMethod: "POST", 1492 HTTPPath: "/", 1493 } 1494 1495 if input == nil { 1496 input = &ImportSshPublicKeyInput{} 1497 } 1498 1499 output = &ImportSshPublicKeyOutput{} 1500 req = c.newRequest(op, input, output) 1501 return 1502 } 1503 1504 // ImportSshPublicKey API operation for AWS Transfer Family. 1505 // 1506 // Adds a Secure Shell (SSH) public key to a user account identified by a UserName 1507 // value assigned to the specific file transfer protocol-enabled server, identified 1508 // by ServerId. 1509 // 1510 // The response returns the UserName value, the ServerId value, and the name 1511 // of the SshPublicKeyId. 1512 // 1513 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1514 // with awserr.Error's Code and Message methods to get detailed information about 1515 // the error. 1516 // 1517 // See the AWS API reference guide for AWS Transfer Family's 1518 // API operation ImportSshPublicKey for usage and error information. 1519 // 1520 // Returned Error Types: 1521 // * ServiceUnavailableException 1522 // The request has failed because the Amazon Web ServicesTransfer Family service 1523 // is not available. 1524 // 1525 // * InternalServiceError 1526 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1527 // Family service. 1528 // 1529 // * InvalidRequestException 1530 // This exception is thrown when the client submits a malformed request. 1531 // 1532 // * ResourceExistsException 1533 // The requested resource does not exist. 1534 // 1535 // * ResourceNotFoundException 1536 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1537 // Family service. 1538 // 1539 // * ThrottlingException 1540 // The request was denied due to request throttling. 1541 // 1542 // HTTP Status Code: 400 1543 // 1544 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ImportSshPublicKey 1545 func (c *Transfer) ImportSshPublicKey(input *ImportSshPublicKeyInput) (*ImportSshPublicKeyOutput, error) { 1546 req, out := c.ImportSshPublicKeyRequest(input) 1547 return out, req.Send() 1548 } 1549 1550 // ImportSshPublicKeyWithContext is the same as ImportSshPublicKey with the addition of 1551 // the ability to pass a context and additional request options. 1552 // 1553 // See ImportSshPublicKey for details on how to use this API operation. 1554 // 1555 // The context must be non-nil and will be used for request cancellation. If 1556 // the context is nil a panic will occur. In the future the SDK may create 1557 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1558 // for more information on using Contexts. 1559 func (c *Transfer) ImportSshPublicKeyWithContext(ctx aws.Context, input *ImportSshPublicKeyInput, opts ...request.Option) (*ImportSshPublicKeyOutput, error) { 1560 req, out := c.ImportSshPublicKeyRequest(input) 1561 req.SetContext(ctx) 1562 req.ApplyOptions(opts...) 1563 return out, req.Send() 1564 } 1565 1566 const opListAccesses = "ListAccesses" 1567 1568 // ListAccessesRequest generates a "aws/request.Request" representing the 1569 // client's request for the ListAccesses operation. The "output" return 1570 // value will be populated with the request's response once the request completes 1571 // successfully. 1572 // 1573 // Use "Send" method on the returned Request to send the API call to the service. 1574 // the "output" return value is not valid until after Send returns without error. 1575 // 1576 // See ListAccesses for more information on using the ListAccesses 1577 // API call, and error handling. 1578 // 1579 // This method is useful when you want to inject custom logic or configuration 1580 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1581 // 1582 // 1583 // // Example sending a request using the ListAccessesRequest method. 1584 // req, resp := client.ListAccessesRequest(params) 1585 // 1586 // err := req.Send() 1587 // if err == nil { // resp is now filled 1588 // fmt.Println(resp) 1589 // } 1590 // 1591 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListAccesses 1592 func (c *Transfer) ListAccessesRequest(input *ListAccessesInput) (req *request.Request, output *ListAccessesOutput) { 1593 op := &request.Operation{ 1594 Name: opListAccesses, 1595 HTTPMethod: "POST", 1596 HTTPPath: "/", 1597 Paginator: &request.Paginator{ 1598 InputTokens: []string{"NextToken"}, 1599 OutputTokens: []string{"NextToken"}, 1600 LimitToken: "MaxResults", 1601 TruncationToken: "", 1602 }, 1603 } 1604 1605 if input == nil { 1606 input = &ListAccessesInput{} 1607 } 1608 1609 output = &ListAccessesOutput{} 1610 req = c.newRequest(op, input, output) 1611 return 1612 } 1613 1614 // ListAccesses API operation for AWS Transfer Family. 1615 // 1616 // Lists the details for all the accesses you have on your server. 1617 // 1618 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1619 // with awserr.Error's Code and Message methods to get detailed information about 1620 // the error. 1621 // 1622 // See the AWS API reference guide for AWS Transfer Family's 1623 // API operation ListAccesses for usage and error information. 1624 // 1625 // Returned Error Types: 1626 // * ServiceUnavailableException 1627 // The request has failed because the Amazon Web ServicesTransfer Family service 1628 // is not available. 1629 // 1630 // * InternalServiceError 1631 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1632 // Family service. 1633 // 1634 // * InvalidNextTokenException 1635 // The NextToken parameter that was passed is invalid. 1636 // 1637 // * InvalidRequestException 1638 // This exception is thrown when the client submits a malformed request. 1639 // 1640 // * ResourceNotFoundException 1641 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1642 // Family service. 1643 // 1644 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListAccesses 1645 func (c *Transfer) ListAccesses(input *ListAccessesInput) (*ListAccessesOutput, error) { 1646 req, out := c.ListAccessesRequest(input) 1647 return out, req.Send() 1648 } 1649 1650 // ListAccessesWithContext is the same as ListAccesses with the addition of 1651 // the ability to pass a context and additional request options. 1652 // 1653 // See ListAccesses for details on how to use this API operation. 1654 // 1655 // The context must be non-nil and will be used for request cancellation. If 1656 // the context is nil a panic will occur. In the future the SDK may create 1657 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1658 // for more information on using Contexts. 1659 func (c *Transfer) ListAccessesWithContext(ctx aws.Context, input *ListAccessesInput, opts ...request.Option) (*ListAccessesOutput, error) { 1660 req, out := c.ListAccessesRequest(input) 1661 req.SetContext(ctx) 1662 req.ApplyOptions(opts...) 1663 return out, req.Send() 1664 } 1665 1666 // ListAccessesPages iterates over the pages of a ListAccesses operation, 1667 // calling the "fn" function with the response data for each page. To stop 1668 // iterating, return false from the fn function. 1669 // 1670 // See ListAccesses method for more information on how to use this operation. 1671 // 1672 // Note: This operation can generate multiple requests to a service. 1673 // 1674 // // Example iterating over at most 3 pages of a ListAccesses operation. 1675 // pageNum := 0 1676 // err := client.ListAccessesPages(params, 1677 // func(page *transfer.ListAccessesOutput, lastPage bool) bool { 1678 // pageNum++ 1679 // fmt.Println(page) 1680 // return pageNum <= 3 1681 // }) 1682 // 1683 func (c *Transfer) ListAccessesPages(input *ListAccessesInput, fn func(*ListAccessesOutput, bool) bool) error { 1684 return c.ListAccessesPagesWithContext(aws.BackgroundContext(), input, fn) 1685 } 1686 1687 // ListAccessesPagesWithContext same as ListAccessesPages except 1688 // it takes a Context and allows setting request options on the pages. 1689 // 1690 // The context must be non-nil and will be used for request cancellation. If 1691 // the context is nil a panic will occur. In the future the SDK may create 1692 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1693 // for more information on using Contexts. 1694 func (c *Transfer) ListAccessesPagesWithContext(ctx aws.Context, input *ListAccessesInput, fn func(*ListAccessesOutput, bool) bool, opts ...request.Option) error { 1695 p := request.Pagination{ 1696 NewRequest: func() (*request.Request, error) { 1697 var inCpy *ListAccessesInput 1698 if input != nil { 1699 tmp := *input 1700 inCpy = &tmp 1701 } 1702 req, _ := c.ListAccessesRequest(inCpy) 1703 req.SetContext(ctx) 1704 req.ApplyOptions(opts...) 1705 return req, nil 1706 }, 1707 } 1708 1709 for p.Next() { 1710 if !fn(p.Page().(*ListAccessesOutput), !p.HasNextPage()) { 1711 break 1712 } 1713 } 1714 1715 return p.Err() 1716 } 1717 1718 const opListExecutions = "ListExecutions" 1719 1720 // ListExecutionsRequest generates a "aws/request.Request" representing the 1721 // client's request for the ListExecutions operation. The "output" return 1722 // value will be populated with the request's response once the request completes 1723 // successfully. 1724 // 1725 // Use "Send" method on the returned Request to send the API call to the service. 1726 // the "output" return value is not valid until after Send returns without error. 1727 // 1728 // See ListExecutions for more information on using the ListExecutions 1729 // API call, and error handling. 1730 // 1731 // This method is useful when you want to inject custom logic or configuration 1732 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1733 // 1734 // 1735 // // Example sending a request using the ListExecutionsRequest method. 1736 // req, resp := client.ListExecutionsRequest(params) 1737 // 1738 // err := req.Send() 1739 // if err == nil { // resp is now filled 1740 // fmt.Println(resp) 1741 // } 1742 // 1743 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListExecutions 1744 func (c *Transfer) ListExecutionsRequest(input *ListExecutionsInput) (req *request.Request, output *ListExecutionsOutput) { 1745 op := &request.Operation{ 1746 Name: opListExecutions, 1747 HTTPMethod: "POST", 1748 HTTPPath: "/", 1749 Paginator: &request.Paginator{ 1750 InputTokens: []string{"NextToken"}, 1751 OutputTokens: []string{"NextToken"}, 1752 LimitToken: "MaxResults", 1753 TruncationToken: "", 1754 }, 1755 } 1756 1757 if input == nil { 1758 input = &ListExecutionsInput{} 1759 } 1760 1761 output = &ListExecutionsOutput{} 1762 req = c.newRequest(op, input, output) 1763 return 1764 } 1765 1766 // ListExecutions API operation for AWS Transfer Family. 1767 // 1768 // Lists all executions for the specified workflow. 1769 // 1770 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1771 // with awserr.Error's Code and Message methods to get detailed information about 1772 // the error. 1773 // 1774 // See the AWS API reference guide for AWS Transfer Family's 1775 // API operation ListExecutions for usage and error information. 1776 // 1777 // Returned Error Types: 1778 // * ServiceUnavailableException 1779 // The request has failed because the Amazon Web ServicesTransfer Family service 1780 // is not available. 1781 // 1782 // * InternalServiceError 1783 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1784 // Family service. 1785 // 1786 // * InvalidNextTokenException 1787 // The NextToken parameter that was passed is invalid. 1788 // 1789 // * InvalidRequestException 1790 // This exception is thrown when the client submits a malformed request. 1791 // 1792 // * ResourceNotFoundException 1793 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 1794 // Family service. 1795 // 1796 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListExecutions 1797 func (c *Transfer) ListExecutions(input *ListExecutionsInput) (*ListExecutionsOutput, error) { 1798 req, out := c.ListExecutionsRequest(input) 1799 return out, req.Send() 1800 } 1801 1802 // ListExecutionsWithContext is the same as ListExecutions with the addition of 1803 // the ability to pass a context and additional request options. 1804 // 1805 // See ListExecutions for details on how to use this API operation. 1806 // 1807 // The context must be non-nil and will be used for request cancellation. If 1808 // the context is nil a panic will occur. In the future the SDK may create 1809 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1810 // for more information on using Contexts. 1811 func (c *Transfer) ListExecutionsWithContext(ctx aws.Context, input *ListExecutionsInput, opts ...request.Option) (*ListExecutionsOutput, error) { 1812 req, out := c.ListExecutionsRequest(input) 1813 req.SetContext(ctx) 1814 req.ApplyOptions(opts...) 1815 return out, req.Send() 1816 } 1817 1818 // ListExecutionsPages iterates over the pages of a ListExecutions operation, 1819 // calling the "fn" function with the response data for each page. To stop 1820 // iterating, return false from the fn function. 1821 // 1822 // See ListExecutions method for more information on how to use this operation. 1823 // 1824 // Note: This operation can generate multiple requests to a service. 1825 // 1826 // // Example iterating over at most 3 pages of a ListExecutions operation. 1827 // pageNum := 0 1828 // err := client.ListExecutionsPages(params, 1829 // func(page *transfer.ListExecutionsOutput, lastPage bool) bool { 1830 // pageNum++ 1831 // fmt.Println(page) 1832 // return pageNum <= 3 1833 // }) 1834 // 1835 func (c *Transfer) ListExecutionsPages(input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool) error { 1836 return c.ListExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) 1837 } 1838 1839 // ListExecutionsPagesWithContext same as ListExecutionsPages except 1840 // it takes a Context and allows setting request options on the pages. 1841 // 1842 // The context must be non-nil and will be used for request cancellation. If 1843 // the context is nil a panic will occur. In the future the SDK may create 1844 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1845 // for more information on using Contexts. 1846 func (c *Transfer) ListExecutionsPagesWithContext(ctx aws.Context, input *ListExecutionsInput, fn func(*ListExecutionsOutput, bool) bool, opts ...request.Option) error { 1847 p := request.Pagination{ 1848 NewRequest: func() (*request.Request, error) { 1849 var inCpy *ListExecutionsInput 1850 if input != nil { 1851 tmp := *input 1852 inCpy = &tmp 1853 } 1854 req, _ := c.ListExecutionsRequest(inCpy) 1855 req.SetContext(ctx) 1856 req.ApplyOptions(opts...) 1857 return req, nil 1858 }, 1859 } 1860 1861 for p.Next() { 1862 if !fn(p.Page().(*ListExecutionsOutput), !p.HasNextPage()) { 1863 break 1864 } 1865 } 1866 1867 return p.Err() 1868 } 1869 1870 const opListSecurityPolicies = "ListSecurityPolicies" 1871 1872 // ListSecurityPoliciesRequest generates a "aws/request.Request" representing the 1873 // client's request for the ListSecurityPolicies operation. The "output" return 1874 // value will be populated with the request's response once the request completes 1875 // successfully. 1876 // 1877 // Use "Send" method on the returned Request to send the API call to the service. 1878 // the "output" return value is not valid until after Send returns without error. 1879 // 1880 // See ListSecurityPolicies for more information on using the ListSecurityPolicies 1881 // API call, and error handling. 1882 // 1883 // This method is useful when you want to inject custom logic or configuration 1884 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 1885 // 1886 // 1887 // // Example sending a request using the ListSecurityPoliciesRequest method. 1888 // req, resp := client.ListSecurityPoliciesRequest(params) 1889 // 1890 // err := req.Send() 1891 // if err == nil { // resp is now filled 1892 // fmt.Println(resp) 1893 // } 1894 // 1895 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListSecurityPolicies 1896 func (c *Transfer) ListSecurityPoliciesRequest(input *ListSecurityPoliciesInput) (req *request.Request, output *ListSecurityPoliciesOutput) { 1897 op := &request.Operation{ 1898 Name: opListSecurityPolicies, 1899 HTTPMethod: "POST", 1900 HTTPPath: "/", 1901 Paginator: &request.Paginator{ 1902 InputTokens: []string{"NextToken"}, 1903 OutputTokens: []string{"NextToken"}, 1904 LimitToken: "MaxResults", 1905 TruncationToken: "", 1906 }, 1907 } 1908 1909 if input == nil { 1910 input = &ListSecurityPoliciesInput{} 1911 } 1912 1913 output = &ListSecurityPoliciesOutput{} 1914 req = c.newRequest(op, input, output) 1915 return 1916 } 1917 1918 // ListSecurityPolicies API operation for AWS Transfer Family. 1919 // 1920 // Lists the security policies that are attached to your file transfer protocol-enabled 1921 // servers. 1922 // 1923 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1924 // with awserr.Error's Code and Message methods to get detailed information about 1925 // the error. 1926 // 1927 // See the AWS API reference guide for AWS Transfer Family's 1928 // API operation ListSecurityPolicies for usage and error information. 1929 // 1930 // Returned Error Types: 1931 // * ServiceUnavailableException 1932 // The request has failed because the Amazon Web ServicesTransfer Family service 1933 // is not available. 1934 // 1935 // * InternalServiceError 1936 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 1937 // Family service. 1938 // 1939 // * InvalidNextTokenException 1940 // The NextToken parameter that was passed is invalid. 1941 // 1942 // * InvalidRequestException 1943 // This exception is thrown when the client submits a malformed request. 1944 // 1945 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListSecurityPolicies 1946 func (c *Transfer) ListSecurityPolicies(input *ListSecurityPoliciesInput) (*ListSecurityPoliciesOutput, error) { 1947 req, out := c.ListSecurityPoliciesRequest(input) 1948 return out, req.Send() 1949 } 1950 1951 // ListSecurityPoliciesWithContext is the same as ListSecurityPolicies with the addition of 1952 // the ability to pass a context and additional request options. 1953 // 1954 // See ListSecurityPolicies for details on how to use this API operation. 1955 // 1956 // The context must be non-nil and will be used for request cancellation. If 1957 // the context is nil a panic will occur. In the future the SDK may create 1958 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1959 // for more information on using Contexts. 1960 func (c *Transfer) ListSecurityPoliciesWithContext(ctx aws.Context, input *ListSecurityPoliciesInput, opts ...request.Option) (*ListSecurityPoliciesOutput, error) { 1961 req, out := c.ListSecurityPoliciesRequest(input) 1962 req.SetContext(ctx) 1963 req.ApplyOptions(opts...) 1964 return out, req.Send() 1965 } 1966 1967 // ListSecurityPoliciesPages iterates over the pages of a ListSecurityPolicies operation, 1968 // calling the "fn" function with the response data for each page. To stop 1969 // iterating, return false from the fn function. 1970 // 1971 // See ListSecurityPolicies method for more information on how to use this operation. 1972 // 1973 // Note: This operation can generate multiple requests to a service. 1974 // 1975 // // Example iterating over at most 3 pages of a ListSecurityPolicies operation. 1976 // pageNum := 0 1977 // err := client.ListSecurityPoliciesPages(params, 1978 // func(page *transfer.ListSecurityPoliciesOutput, lastPage bool) bool { 1979 // pageNum++ 1980 // fmt.Println(page) 1981 // return pageNum <= 3 1982 // }) 1983 // 1984 func (c *Transfer) ListSecurityPoliciesPages(input *ListSecurityPoliciesInput, fn func(*ListSecurityPoliciesOutput, bool) bool) error { 1985 return c.ListSecurityPoliciesPagesWithContext(aws.BackgroundContext(), input, fn) 1986 } 1987 1988 // ListSecurityPoliciesPagesWithContext same as ListSecurityPoliciesPages except 1989 // it takes a Context and allows setting request options on the pages. 1990 // 1991 // The context must be non-nil and will be used for request cancellation. If 1992 // the context is nil a panic will occur. In the future the SDK may create 1993 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1994 // for more information on using Contexts. 1995 func (c *Transfer) ListSecurityPoliciesPagesWithContext(ctx aws.Context, input *ListSecurityPoliciesInput, fn func(*ListSecurityPoliciesOutput, bool) bool, opts ...request.Option) error { 1996 p := request.Pagination{ 1997 NewRequest: func() (*request.Request, error) { 1998 var inCpy *ListSecurityPoliciesInput 1999 if input != nil { 2000 tmp := *input 2001 inCpy = &tmp 2002 } 2003 req, _ := c.ListSecurityPoliciesRequest(inCpy) 2004 req.SetContext(ctx) 2005 req.ApplyOptions(opts...) 2006 return req, nil 2007 }, 2008 } 2009 2010 for p.Next() { 2011 if !fn(p.Page().(*ListSecurityPoliciesOutput), !p.HasNextPage()) { 2012 break 2013 } 2014 } 2015 2016 return p.Err() 2017 } 2018 2019 const opListServers = "ListServers" 2020 2021 // ListServersRequest generates a "aws/request.Request" representing the 2022 // client's request for the ListServers operation. The "output" return 2023 // value will be populated with the request's response once the request completes 2024 // successfully. 2025 // 2026 // Use "Send" method on the returned Request to send the API call to the service. 2027 // the "output" return value is not valid until after Send returns without error. 2028 // 2029 // See ListServers for more information on using the ListServers 2030 // API call, and error handling. 2031 // 2032 // This method is useful when you want to inject custom logic or configuration 2033 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2034 // 2035 // 2036 // // Example sending a request using the ListServersRequest method. 2037 // req, resp := client.ListServersRequest(params) 2038 // 2039 // err := req.Send() 2040 // if err == nil { // resp is now filled 2041 // fmt.Println(resp) 2042 // } 2043 // 2044 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListServers 2045 func (c *Transfer) ListServersRequest(input *ListServersInput) (req *request.Request, output *ListServersOutput) { 2046 op := &request.Operation{ 2047 Name: opListServers, 2048 HTTPMethod: "POST", 2049 HTTPPath: "/", 2050 Paginator: &request.Paginator{ 2051 InputTokens: []string{"NextToken"}, 2052 OutputTokens: []string{"NextToken"}, 2053 LimitToken: "MaxResults", 2054 TruncationToken: "", 2055 }, 2056 } 2057 2058 if input == nil { 2059 input = &ListServersInput{} 2060 } 2061 2062 output = &ListServersOutput{} 2063 req = c.newRequest(op, input, output) 2064 return 2065 } 2066 2067 // ListServers API operation for AWS Transfer Family. 2068 // 2069 // Lists the file transfer protocol-enabled servers that are associated with 2070 // your Amazon Web Services account. 2071 // 2072 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2073 // with awserr.Error's Code and Message methods to get detailed information about 2074 // the error. 2075 // 2076 // See the AWS API reference guide for AWS Transfer Family's 2077 // API operation ListServers for usage and error information. 2078 // 2079 // Returned Error Types: 2080 // * ServiceUnavailableException 2081 // The request has failed because the Amazon Web ServicesTransfer Family service 2082 // is not available. 2083 // 2084 // * InternalServiceError 2085 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 2086 // Family service. 2087 // 2088 // * InvalidNextTokenException 2089 // The NextToken parameter that was passed is invalid. 2090 // 2091 // * InvalidRequestException 2092 // This exception is thrown when the client submits a malformed request. 2093 // 2094 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListServers 2095 func (c *Transfer) ListServers(input *ListServersInput) (*ListServersOutput, error) { 2096 req, out := c.ListServersRequest(input) 2097 return out, req.Send() 2098 } 2099 2100 // ListServersWithContext is the same as ListServers with the addition of 2101 // the ability to pass a context and additional request options. 2102 // 2103 // See ListServers for details on how to use this API operation. 2104 // 2105 // The context must be non-nil and will be used for request cancellation. If 2106 // the context is nil a panic will occur. In the future the SDK may create 2107 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2108 // for more information on using Contexts. 2109 func (c *Transfer) ListServersWithContext(ctx aws.Context, input *ListServersInput, opts ...request.Option) (*ListServersOutput, error) { 2110 req, out := c.ListServersRequest(input) 2111 req.SetContext(ctx) 2112 req.ApplyOptions(opts...) 2113 return out, req.Send() 2114 } 2115 2116 // ListServersPages iterates over the pages of a ListServers operation, 2117 // calling the "fn" function with the response data for each page. To stop 2118 // iterating, return false from the fn function. 2119 // 2120 // See ListServers method for more information on how to use this operation. 2121 // 2122 // Note: This operation can generate multiple requests to a service. 2123 // 2124 // // Example iterating over at most 3 pages of a ListServers operation. 2125 // pageNum := 0 2126 // err := client.ListServersPages(params, 2127 // func(page *transfer.ListServersOutput, lastPage bool) bool { 2128 // pageNum++ 2129 // fmt.Println(page) 2130 // return pageNum <= 3 2131 // }) 2132 // 2133 func (c *Transfer) ListServersPages(input *ListServersInput, fn func(*ListServersOutput, bool) bool) error { 2134 return c.ListServersPagesWithContext(aws.BackgroundContext(), input, fn) 2135 } 2136 2137 // ListServersPagesWithContext same as ListServersPages except 2138 // it takes a Context and allows setting request options on the pages. 2139 // 2140 // The context must be non-nil and will be used for request cancellation. If 2141 // the context is nil a panic will occur. In the future the SDK may create 2142 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2143 // for more information on using Contexts. 2144 func (c *Transfer) ListServersPagesWithContext(ctx aws.Context, input *ListServersInput, fn func(*ListServersOutput, bool) bool, opts ...request.Option) error { 2145 p := request.Pagination{ 2146 NewRequest: func() (*request.Request, error) { 2147 var inCpy *ListServersInput 2148 if input != nil { 2149 tmp := *input 2150 inCpy = &tmp 2151 } 2152 req, _ := c.ListServersRequest(inCpy) 2153 req.SetContext(ctx) 2154 req.ApplyOptions(opts...) 2155 return req, nil 2156 }, 2157 } 2158 2159 for p.Next() { 2160 if !fn(p.Page().(*ListServersOutput), !p.HasNextPage()) { 2161 break 2162 } 2163 } 2164 2165 return p.Err() 2166 } 2167 2168 const opListTagsForResource = "ListTagsForResource" 2169 2170 // ListTagsForResourceRequest generates a "aws/request.Request" representing the 2171 // client's request for the ListTagsForResource operation. The "output" return 2172 // value will be populated with the request's response once the request completes 2173 // successfully. 2174 // 2175 // Use "Send" method on the returned Request to send the API call to the service. 2176 // the "output" return value is not valid until after Send returns without error. 2177 // 2178 // See ListTagsForResource for more information on using the ListTagsForResource 2179 // API call, and error handling. 2180 // 2181 // This method is useful when you want to inject custom logic or configuration 2182 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2183 // 2184 // 2185 // // Example sending a request using the ListTagsForResourceRequest method. 2186 // req, resp := client.ListTagsForResourceRequest(params) 2187 // 2188 // err := req.Send() 2189 // if err == nil { // resp is now filled 2190 // fmt.Println(resp) 2191 // } 2192 // 2193 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListTagsForResource 2194 func (c *Transfer) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 2195 op := &request.Operation{ 2196 Name: opListTagsForResource, 2197 HTTPMethod: "POST", 2198 HTTPPath: "/", 2199 Paginator: &request.Paginator{ 2200 InputTokens: []string{"NextToken"}, 2201 OutputTokens: []string{"NextToken"}, 2202 LimitToken: "MaxResults", 2203 TruncationToken: "", 2204 }, 2205 } 2206 2207 if input == nil { 2208 input = &ListTagsForResourceInput{} 2209 } 2210 2211 output = &ListTagsForResourceOutput{} 2212 req = c.newRequest(op, input, output) 2213 return 2214 } 2215 2216 // ListTagsForResource API operation for AWS Transfer Family. 2217 // 2218 // Lists all of the tags associated with the Amazon Resource Name (ARN) that 2219 // you specify. The resource can be a user, server, or role. 2220 // 2221 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2222 // with awserr.Error's Code and Message methods to get detailed information about 2223 // the error. 2224 // 2225 // See the AWS API reference guide for AWS Transfer Family's 2226 // API operation ListTagsForResource for usage and error information. 2227 // 2228 // Returned Error Types: 2229 // * ServiceUnavailableException 2230 // The request has failed because the Amazon Web ServicesTransfer Family service 2231 // is not available. 2232 // 2233 // * InternalServiceError 2234 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 2235 // Family service. 2236 // 2237 // * InvalidNextTokenException 2238 // The NextToken parameter that was passed is invalid. 2239 // 2240 // * InvalidRequestException 2241 // This exception is thrown when the client submits a malformed request. 2242 // 2243 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListTagsForResource 2244 func (c *Transfer) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 2245 req, out := c.ListTagsForResourceRequest(input) 2246 return out, req.Send() 2247 } 2248 2249 // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 2250 // the ability to pass a context and additional request options. 2251 // 2252 // See ListTagsForResource for details on how to use this API operation. 2253 // 2254 // The context must be non-nil and will be used for request cancellation. If 2255 // the context is nil a panic will occur. In the future the SDK may create 2256 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2257 // for more information on using Contexts. 2258 func (c *Transfer) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 2259 req, out := c.ListTagsForResourceRequest(input) 2260 req.SetContext(ctx) 2261 req.ApplyOptions(opts...) 2262 return out, req.Send() 2263 } 2264 2265 // ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation, 2266 // calling the "fn" function with the response data for each page. To stop 2267 // iterating, return false from the fn function. 2268 // 2269 // See ListTagsForResource method for more information on how to use this operation. 2270 // 2271 // Note: This operation can generate multiple requests to a service. 2272 // 2273 // // Example iterating over at most 3 pages of a ListTagsForResource operation. 2274 // pageNum := 0 2275 // err := client.ListTagsForResourcePages(params, 2276 // func(page *transfer.ListTagsForResourceOutput, lastPage bool) bool { 2277 // pageNum++ 2278 // fmt.Println(page) 2279 // return pageNum <= 3 2280 // }) 2281 // 2282 func (c *Transfer) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error { 2283 return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn) 2284 } 2285 2286 // ListTagsForResourcePagesWithContext same as ListTagsForResourcePages except 2287 // it takes a Context and allows setting request options on the pages. 2288 // 2289 // The context must be non-nil and will be used for request cancellation. If 2290 // the context is nil a panic will occur. In the future the SDK may create 2291 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2292 // for more information on using Contexts. 2293 func (c *Transfer) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error { 2294 p := request.Pagination{ 2295 NewRequest: func() (*request.Request, error) { 2296 var inCpy *ListTagsForResourceInput 2297 if input != nil { 2298 tmp := *input 2299 inCpy = &tmp 2300 } 2301 req, _ := c.ListTagsForResourceRequest(inCpy) 2302 req.SetContext(ctx) 2303 req.ApplyOptions(opts...) 2304 return req, nil 2305 }, 2306 } 2307 2308 for p.Next() { 2309 if !fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) { 2310 break 2311 } 2312 } 2313 2314 return p.Err() 2315 } 2316 2317 const opListUsers = "ListUsers" 2318 2319 // ListUsersRequest generates a "aws/request.Request" representing the 2320 // client's request for the ListUsers operation. The "output" return 2321 // value will be populated with the request's response once the request completes 2322 // successfully. 2323 // 2324 // Use "Send" method on the returned Request to send the API call to the service. 2325 // the "output" return value is not valid until after Send returns without error. 2326 // 2327 // See ListUsers for more information on using the ListUsers 2328 // API call, and error handling. 2329 // 2330 // This method is useful when you want to inject custom logic or configuration 2331 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2332 // 2333 // 2334 // // Example sending a request using the ListUsersRequest method. 2335 // req, resp := client.ListUsersRequest(params) 2336 // 2337 // err := req.Send() 2338 // if err == nil { // resp is now filled 2339 // fmt.Println(resp) 2340 // } 2341 // 2342 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListUsers 2343 func (c *Transfer) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput) { 2344 op := &request.Operation{ 2345 Name: opListUsers, 2346 HTTPMethod: "POST", 2347 HTTPPath: "/", 2348 Paginator: &request.Paginator{ 2349 InputTokens: []string{"NextToken"}, 2350 OutputTokens: []string{"NextToken"}, 2351 LimitToken: "MaxResults", 2352 TruncationToken: "", 2353 }, 2354 } 2355 2356 if input == nil { 2357 input = &ListUsersInput{} 2358 } 2359 2360 output = &ListUsersOutput{} 2361 req = c.newRequest(op, input, output) 2362 return 2363 } 2364 2365 // ListUsers API operation for AWS Transfer Family. 2366 // 2367 // Lists the users for a file transfer protocol-enabled server that you specify 2368 // by passing the ServerId parameter. 2369 // 2370 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2371 // with awserr.Error's Code and Message methods to get detailed information about 2372 // the error. 2373 // 2374 // See the AWS API reference guide for AWS Transfer Family's 2375 // API operation ListUsers for usage and error information. 2376 // 2377 // Returned Error Types: 2378 // * ServiceUnavailableException 2379 // The request has failed because the Amazon Web ServicesTransfer Family service 2380 // is not available. 2381 // 2382 // * InternalServiceError 2383 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 2384 // Family service. 2385 // 2386 // * InvalidNextTokenException 2387 // The NextToken parameter that was passed is invalid. 2388 // 2389 // * InvalidRequestException 2390 // This exception is thrown when the client submits a malformed request. 2391 // 2392 // * ResourceNotFoundException 2393 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 2394 // Family service. 2395 // 2396 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListUsers 2397 func (c *Transfer) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) { 2398 req, out := c.ListUsersRequest(input) 2399 return out, req.Send() 2400 } 2401 2402 // ListUsersWithContext is the same as ListUsers with the addition of 2403 // the ability to pass a context and additional request options. 2404 // 2405 // See ListUsers for details on how to use this API operation. 2406 // 2407 // The context must be non-nil and will be used for request cancellation. If 2408 // the context is nil a panic will occur. In the future the SDK may create 2409 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2410 // for more information on using Contexts. 2411 func (c *Transfer) ListUsersWithContext(ctx aws.Context, input *ListUsersInput, opts ...request.Option) (*ListUsersOutput, error) { 2412 req, out := c.ListUsersRequest(input) 2413 req.SetContext(ctx) 2414 req.ApplyOptions(opts...) 2415 return out, req.Send() 2416 } 2417 2418 // ListUsersPages iterates over the pages of a ListUsers operation, 2419 // calling the "fn" function with the response data for each page. To stop 2420 // iterating, return false from the fn function. 2421 // 2422 // See ListUsers method for more information on how to use this operation. 2423 // 2424 // Note: This operation can generate multiple requests to a service. 2425 // 2426 // // Example iterating over at most 3 pages of a ListUsers operation. 2427 // pageNum := 0 2428 // err := client.ListUsersPages(params, 2429 // func(page *transfer.ListUsersOutput, lastPage bool) bool { 2430 // pageNum++ 2431 // fmt.Println(page) 2432 // return pageNum <= 3 2433 // }) 2434 // 2435 func (c *Transfer) ListUsersPages(input *ListUsersInput, fn func(*ListUsersOutput, bool) bool) error { 2436 return c.ListUsersPagesWithContext(aws.BackgroundContext(), input, fn) 2437 } 2438 2439 // ListUsersPagesWithContext same as ListUsersPages except 2440 // it takes a Context and allows setting request options on the pages. 2441 // 2442 // The context must be non-nil and will be used for request cancellation. If 2443 // the context is nil a panic will occur. In the future the SDK may create 2444 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2445 // for more information on using Contexts. 2446 func (c *Transfer) ListUsersPagesWithContext(ctx aws.Context, input *ListUsersInput, fn func(*ListUsersOutput, bool) bool, opts ...request.Option) error { 2447 p := request.Pagination{ 2448 NewRequest: func() (*request.Request, error) { 2449 var inCpy *ListUsersInput 2450 if input != nil { 2451 tmp := *input 2452 inCpy = &tmp 2453 } 2454 req, _ := c.ListUsersRequest(inCpy) 2455 req.SetContext(ctx) 2456 req.ApplyOptions(opts...) 2457 return req, nil 2458 }, 2459 } 2460 2461 for p.Next() { 2462 if !fn(p.Page().(*ListUsersOutput), !p.HasNextPage()) { 2463 break 2464 } 2465 } 2466 2467 return p.Err() 2468 } 2469 2470 const opListWorkflows = "ListWorkflows" 2471 2472 // ListWorkflowsRequest generates a "aws/request.Request" representing the 2473 // client's request for the ListWorkflows operation. The "output" return 2474 // value will be populated with the request's response once the request completes 2475 // successfully. 2476 // 2477 // Use "Send" method on the returned Request to send the API call to the service. 2478 // the "output" return value is not valid until after Send returns without error. 2479 // 2480 // See ListWorkflows for more information on using the ListWorkflows 2481 // API call, and error handling. 2482 // 2483 // This method is useful when you want to inject custom logic or configuration 2484 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2485 // 2486 // 2487 // // Example sending a request using the ListWorkflowsRequest method. 2488 // req, resp := client.ListWorkflowsRequest(params) 2489 // 2490 // err := req.Send() 2491 // if err == nil { // resp is now filled 2492 // fmt.Println(resp) 2493 // } 2494 // 2495 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListWorkflows 2496 func (c *Transfer) ListWorkflowsRequest(input *ListWorkflowsInput) (req *request.Request, output *ListWorkflowsOutput) { 2497 op := &request.Operation{ 2498 Name: opListWorkflows, 2499 HTTPMethod: "POST", 2500 HTTPPath: "/", 2501 Paginator: &request.Paginator{ 2502 InputTokens: []string{"NextToken"}, 2503 OutputTokens: []string{"NextToken"}, 2504 LimitToken: "MaxResults", 2505 TruncationToken: "", 2506 }, 2507 } 2508 2509 if input == nil { 2510 input = &ListWorkflowsInput{} 2511 } 2512 2513 output = &ListWorkflowsOutput{} 2514 req = c.newRequest(op, input, output) 2515 return 2516 } 2517 2518 // ListWorkflows API operation for AWS Transfer Family. 2519 // 2520 // Lists all of your workflows. 2521 // 2522 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2523 // with awserr.Error's Code and Message methods to get detailed information about 2524 // the error. 2525 // 2526 // See the AWS API reference guide for AWS Transfer Family's 2527 // API operation ListWorkflows for usage and error information. 2528 // 2529 // Returned Error Types: 2530 // * ServiceUnavailableException 2531 // The request has failed because the Amazon Web ServicesTransfer Family service 2532 // is not available. 2533 // 2534 // * InternalServiceError 2535 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 2536 // Family service. 2537 // 2538 // * InvalidNextTokenException 2539 // The NextToken parameter that was passed is invalid. 2540 // 2541 // * InvalidRequestException 2542 // This exception is thrown when the client submits a malformed request. 2543 // 2544 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/ListWorkflows 2545 func (c *Transfer) ListWorkflows(input *ListWorkflowsInput) (*ListWorkflowsOutput, error) { 2546 req, out := c.ListWorkflowsRequest(input) 2547 return out, req.Send() 2548 } 2549 2550 // ListWorkflowsWithContext is the same as ListWorkflows with the addition of 2551 // the ability to pass a context and additional request options. 2552 // 2553 // See ListWorkflows for details on how to use this API operation. 2554 // 2555 // The context must be non-nil and will be used for request cancellation. If 2556 // the context is nil a panic will occur. In the future the SDK may create 2557 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2558 // for more information on using Contexts. 2559 func (c *Transfer) ListWorkflowsWithContext(ctx aws.Context, input *ListWorkflowsInput, opts ...request.Option) (*ListWorkflowsOutput, error) { 2560 req, out := c.ListWorkflowsRequest(input) 2561 req.SetContext(ctx) 2562 req.ApplyOptions(opts...) 2563 return out, req.Send() 2564 } 2565 2566 // ListWorkflowsPages iterates over the pages of a ListWorkflows operation, 2567 // calling the "fn" function with the response data for each page. To stop 2568 // iterating, return false from the fn function. 2569 // 2570 // See ListWorkflows method for more information on how to use this operation. 2571 // 2572 // Note: This operation can generate multiple requests to a service. 2573 // 2574 // // Example iterating over at most 3 pages of a ListWorkflows operation. 2575 // pageNum := 0 2576 // err := client.ListWorkflowsPages(params, 2577 // func(page *transfer.ListWorkflowsOutput, lastPage bool) bool { 2578 // pageNum++ 2579 // fmt.Println(page) 2580 // return pageNum <= 3 2581 // }) 2582 // 2583 func (c *Transfer) ListWorkflowsPages(input *ListWorkflowsInput, fn func(*ListWorkflowsOutput, bool) bool) error { 2584 return c.ListWorkflowsPagesWithContext(aws.BackgroundContext(), input, fn) 2585 } 2586 2587 // ListWorkflowsPagesWithContext same as ListWorkflowsPages except 2588 // it takes a Context and allows setting request options on the pages. 2589 // 2590 // The context must be non-nil and will be used for request cancellation. If 2591 // the context is nil a panic will occur. In the future the SDK may create 2592 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2593 // for more information on using Contexts. 2594 func (c *Transfer) ListWorkflowsPagesWithContext(ctx aws.Context, input *ListWorkflowsInput, fn func(*ListWorkflowsOutput, bool) bool, opts ...request.Option) error { 2595 p := request.Pagination{ 2596 NewRequest: func() (*request.Request, error) { 2597 var inCpy *ListWorkflowsInput 2598 if input != nil { 2599 tmp := *input 2600 inCpy = &tmp 2601 } 2602 req, _ := c.ListWorkflowsRequest(inCpy) 2603 req.SetContext(ctx) 2604 req.ApplyOptions(opts...) 2605 return req, nil 2606 }, 2607 } 2608 2609 for p.Next() { 2610 if !fn(p.Page().(*ListWorkflowsOutput), !p.HasNextPage()) { 2611 break 2612 } 2613 } 2614 2615 return p.Err() 2616 } 2617 2618 const opSendWorkflowStepState = "SendWorkflowStepState" 2619 2620 // SendWorkflowStepStateRequest generates a "aws/request.Request" representing the 2621 // client's request for the SendWorkflowStepState operation. The "output" return 2622 // value will be populated with the request's response once the request completes 2623 // successfully. 2624 // 2625 // Use "Send" method on the returned Request to send the API call to the service. 2626 // the "output" return value is not valid until after Send returns without error. 2627 // 2628 // See SendWorkflowStepState for more information on using the SendWorkflowStepState 2629 // API call, and error handling. 2630 // 2631 // This method is useful when you want to inject custom logic or configuration 2632 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2633 // 2634 // 2635 // // Example sending a request using the SendWorkflowStepStateRequest method. 2636 // req, resp := client.SendWorkflowStepStateRequest(params) 2637 // 2638 // err := req.Send() 2639 // if err == nil { // resp is now filled 2640 // fmt.Println(resp) 2641 // } 2642 // 2643 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SendWorkflowStepState 2644 func (c *Transfer) SendWorkflowStepStateRequest(input *SendWorkflowStepStateInput) (req *request.Request, output *SendWorkflowStepStateOutput) { 2645 op := &request.Operation{ 2646 Name: opSendWorkflowStepState, 2647 HTTPMethod: "POST", 2648 HTTPPath: "/", 2649 } 2650 2651 if input == nil { 2652 input = &SendWorkflowStepStateInput{} 2653 } 2654 2655 output = &SendWorkflowStepStateOutput{} 2656 req = c.newRequest(op, input, output) 2657 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2658 return 2659 } 2660 2661 // SendWorkflowStepState API operation for AWS Transfer Family. 2662 // 2663 // Sends a callback for asynchronous custom steps. 2664 // 2665 // The ExecutionId, WorkflowId, and Token are passed to the target resource 2666 // during execution of a custom step of a workflow. You must include those with 2667 // their callback as well as providing a status. 2668 // 2669 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2670 // with awserr.Error's Code and Message methods to get detailed information about 2671 // the error. 2672 // 2673 // See the AWS API reference guide for AWS Transfer Family's 2674 // API operation SendWorkflowStepState for usage and error information. 2675 // 2676 // Returned Error Types: 2677 // * AccessDeniedException 2678 // You do not have sufficient access to perform this action. 2679 // 2680 // * ServiceUnavailableException 2681 // The request has failed because the Amazon Web ServicesTransfer Family service 2682 // is not available. 2683 // 2684 // * InternalServiceError 2685 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 2686 // Family service. 2687 // 2688 // * InvalidRequestException 2689 // This exception is thrown when the client submits a malformed request. 2690 // 2691 // * ResourceNotFoundException 2692 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 2693 // Family service. 2694 // 2695 // * ThrottlingException 2696 // The request was denied due to request throttling. 2697 // 2698 // HTTP Status Code: 400 2699 // 2700 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/SendWorkflowStepState 2701 func (c *Transfer) SendWorkflowStepState(input *SendWorkflowStepStateInput) (*SendWorkflowStepStateOutput, error) { 2702 req, out := c.SendWorkflowStepStateRequest(input) 2703 return out, req.Send() 2704 } 2705 2706 // SendWorkflowStepStateWithContext is the same as SendWorkflowStepState with the addition of 2707 // the ability to pass a context and additional request options. 2708 // 2709 // See SendWorkflowStepState for details on how to use this API operation. 2710 // 2711 // The context must be non-nil and will be used for request cancellation. If 2712 // the context is nil a panic will occur. In the future the SDK may create 2713 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2714 // for more information on using Contexts. 2715 func (c *Transfer) SendWorkflowStepStateWithContext(ctx aws.Context, input *SendWorkflowStepStateInput, opts ...request.Option) (*SendWorkflowStepStateOutput, error) { 2716 req, out := c.SendWorkflowStepStateRequest(input) 2717 req.SetContext(ctx) 2718 req.ApplyOptions(opts...) 2719 return out, req.Send() 2720 } 2721 2722 const opStartServer = "StartServer" 2723 2724 // StartServerRequest generates a "aws/request.Request" representing the 2725 // client's request for the StartServer operation. The "output" return 2726 // value will be populated with the request's response once the request completes 2727 // successfully. 2728 // 2729 // Use "Send" method on the returned Request to send the API call to the service. 2730 // the "output" return value is not valid until after Send returns without error. 2731 // 2732 // See StartServer for more information on using the StartServer 2733 // API call, and error handling. 2734 // 2735 // This method is useful when you want to inject custom logic or configuration 2736 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2737 // 2738 // 2739 // // Example sending a request using the StartServerRequest method. 2740 // req, resp := client.StartServerRequest(params) 2741 // 2742 // err := req.Send() 2743 // if err == nil { // resp is now filled 2744 // fmt.Println(resp) 2745 // } 2746 // 2747 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartServer 2748 func (c *Transfer) StartServerRequest(input *StartServerInput) (req *request.Request, output *StartServerOutput) { 2749 op := &request.Operation{ 2750 Name: opStartServer, 2751 HTTPMethod: "POST", 2752 HTTPPath: "/", 2753 } 2754 2755 if input == nil { 2756 input = &StartServerInput{} 2757 } 2758 2759 output = &StartServerOutput{} 2760 req = c.newRequest(op, input, output) 2761 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2762 return 2763 } 2764 2765 // StartServer API operation for AWS Transfer Family. 2766 // 2767 // Changes the state of a file transfer protocol-enabled server from OFFLINE 2768 // to ONLINE. It has no impact on a server that is already ONLINE. An ONLINE 2769 // server can accept and process file transfer jobs. 2770 // 2771 // The state of STARTING indicates that the server is in an intermediate state, 2772 // either not fully able to respond, or not fully online. The values of START_FAILED 2773 // can indicate an error condition. 2774 // 2775 // No response is returned from this call. 2776 // 2777 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2778 // with awserr.Error's Code and Message methods to get detailed information about 2779 // the error. 2780 // 2781 // See the AWS API reference guide for AWS Transfer Family's 2782 // API operation StartServer for usage and error information. 2783 // 2784 // Returned Error Types: 2785 // * ServiceUnavailableException 2786 // The request has failed because the Amazon Web ServicesTransfer Family service 2787 // is not available. 2788 // 2789 // * InternalServiceError 2790 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 2791 // Family service. 2792 // 2793 // * InvalidRequestException 2794 // This exception is thrown when the client submits a malformed request. 2795 // 2796 // * ResourceNotFoundException 2797 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 2798 // Family service. 2799 // 2800 // * ThrottlingException 2801 // The request was denied due to request throttling. 2802 // 2803 // HTTP Status Code: 400 2804 // 2805 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StartServer 2806 func (c *Transfer) StartServer(input *StartServerInput) (*StartServerOutput, error) { 2807 req, out := c.StartServerRequest(input) 2808 return out, req.Send() 2809 } 2810 2811 // StartServerWithContext is the same as StartServer with the addition of 2812 // the ability to pass a context and additional request options. 2813 // 2814 // See StartServer for details on how to use this API operation. 2815 // 2816 // The context must be non-nil and will be used for request cancellation. If 2817 // the context is nil a panic will occur. In the future the SDK may create 2818 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2819 // for more information on using Contexts. 2820 func (c *Transfer) StartServerWithContext(ctx aws.Context, input *StartServerInput, opts ...request.Option) (*StartServerOutput, error) { 2821 req, out := c.StartServerRequest(input) 2822 req.SetContext(ctx) 2823 req.ApplyOptions(opts...) 2824 return out, req.Send() 2825 } 2826 2827 const opStopServer = "StopServer" 2828 2829 // StopServerRequest generates a "aws/request.Request" representing the 2830 // client's request for the StopServer operation. The "output" return 2831 // value will be populated with the request's response once the request completes 2832 // successfully. 2833 // 2834 // Use "Send" method on the returned Request to send the API call to the service. 2835 // the "output" return value is not valid until after Send returns without error. 2836 // 2837 // See StopServer for more information on using the StopServer 2838 // API call, and error handling. 2839 // 2840 // This method is useful when you want to inject custom logic or configuration 2841 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2842 // 2843 // 2844 // // Example sending a request using the StopServerRequest method. 2845 // req, resp := client.StopServerRequest(params) 2846 // 2847 // err := req.Send() 2848 // if err == nil { // resp is now filled 2849 // fmt.Println(resp) 2850 // } 2851 // 2852 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StopServer 2853 func (c *Transfer) StopServerRequest(input *StopServerInput) (req *request.Request, output *StopServerOutput) { 2854 op := &request.Operation{ 2855 Name: opStopServer, 2856 HTTPMethod: "POST", 2857 HTTPPath: "/", 2858 } 2859 2860 if input == nil { 2861 input = &StopServerInput{} 2862 } 2863 2864 output = &StopServerOutput{} 2865 req = c.newRequest(op, input, output) 2866 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2867 return 2868 } 2869 2870 // StopServer API operation for AWS Transfer Family. 2871 // 2872 // Changes the state of a file transfer protocol-enabled server from ONLINE 2873 // to OFFLINE. An OFFLINE server cannot accept and process file transfer jobs. 2874 // Information tied to your server, such as server and user properties, are 2875 // not affected by stopping your server. 2876 // 2877 // Stopping the server will not reduce or impact your file transfer protocol 2878 // endpoint billing; you must delete the server to stop being billed. 2879 // 2880 // The state of STOPPING indicates that the server is in an intermediate state, 2881 // either not fully able to respond, or not fully offline. The values of STOP_FAILED 2882 // can indicate an error condition. 2883 // 2884 // No response is returned from this call. 2885 // 2886 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2887 // with awserr.Error's Code and Message methods to get detailed information about 2888 // the error. 2889 // 2890 // See the AWS API reference guide for AWS Transfer Family's 2891 // API operation StopServer for usage and error information. 2892 // 2893 // Returned Error Types: 2894 // * ServiceUnavailableException 2895 // The request has failed because the Amazon Web ServicesTransfer Family service 2896 // is not available. 2897 // 2898 // * InternalServiceError 2899 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 2900 // Family service. 2901 // 2902 // * InvalidRequestException 2903 // This exception is thrown when the client submits a malformed request. 2904 // 2905 // * ResourceNotFoundException 2906 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 2907 // Family service. 2908 // 2909 // * ThrottlingException 2910 // The request was denied due to request throttling. 2911 // 2912 // HTTP Status Code: 400 2913 // 2914 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/StopServer 2915 func (c *Transfer) StopServer(input *StopServerInput) (*StopServerOutput, error) { 2916 req, out := c.StopServerRequest(input) 2917 return out, req.Send() 2918 } 2919 2920 // StopServerWithContext is the same as StopServer with the addition of 2921 // the ability to pass a context and additional request options. 2922 // 2923 // See StopServer for details on how to use this API operation. 2924 // 2925 // The context must be non-nil and will be used for request cancellation. If 2926 // the context is nil a panic will occur. In the future the SDK may create 2927 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2928 // for more information on using Contexts. 2929 func (c *Transfer) StopServerWithContext(ctx aws.Context, input *StopServerInput, opts ...request.Option) (*StopServerOutput, error) { 2930 req, out := c.StopServerRequest(input) 2931 req.SetContext(ctx) 2932 req.ApplyOptions(opts...) 2933 return out, req.Send() 2934 } 2935 2936 const opTagResource = "TagResource" 2937 2938 // TagResourceRequest generates a "aws/request.Request" representing the 2939 // client's request for the TagResource operation. The "output" return 2940 // value will be populated with the request's response once the request completes 2941 // successfully. 2942 // 2943 // Use "Send" method on the returned Request to send the API call to the service. 2944 // the "output" return value is not valid until after Send returns without error. 2945 // 2946 // See TagResource for more information on using the TagResource 2947 // API call, and error handling. 2948 // 2949 // This method is useful when you want to inject custom logic or configuration 2950 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 2951 // 2952 // 2953 // // Example sending a request using the TagResourceRequest method. 2954 // req, resp := client.TagResourceRequest(params) 2955 // 2956 // err := req.Send() 2957 // if err == nil { // resp is now filled 2958 // fmt.Println(resp) 2959 // } 2960 // 2961 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TagResource 2962 func (c *Transfer) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 2963 op := &request.Operation{ 2964 Name: opTagResource, 2965 HTTPMethod: "POST", 2966 HTTPPath: "/", 2967 } 2968 2969 if input == nil { 2970 input = &TagResourceInput{} 2971 } 2972 2973 output = &TagResourceOutput{} 2974 req = c.newRequest(op, input, output) 2975 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2976 return 2977 } 2978 2979 // TagResource API operation for AWS Transfer Family. 2980 // 2981 // Attaches a key-value pair to a resource, as identified by its Amazon Resource 2982 // Name (ARN). Resources are users, servers, roles, and other entities. 2983 // 2984 // There is no response returned from this call. 2985 // 2986 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2987 // with awserr.Error's Code and Message methods to get detailed information about 2988 // the error. 2989 // 2990 // See the AWS API reference guide for AWS Transfer Family's 2991 // API operation TagResource for usage and error information. 2992 // 2993 // Returned Error Types: 2994 // * ServiceUnavailableException 2995 // The request has failed because the Amazon Web ServicesTransfer Family service 2996 // is not available. 2997 // 2998 // * InternalServiceError 2999 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 3000 // Family service. 3001 // 3002 // * InvalidRequestException 3003 // This exception is thrown when the client submits a malformed request. 3004 // 3005 // * ResourceNotFoundException 3006 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 3007 // Family service. 3008 // 3009 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TagResource 3010 func (c *Transfer) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 3011 req, out := c.TagResourceRequest(input) 3012 return out, req.Send() 3013 } 3014 3015 // TagResourceWithContext is the same as TagResource with the addition of 3016 // the ability to pass a context and additional request options. 3017 // 3018 // See TagResource for details on how to use this API operation. 3019 // 3020 // The context must be non-nil and will be used for request cancellation. If 3021 // the context is nil a panic will occur. In the future the SDK may create 3022 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3023 // for more information on using Contexts. 3024 func (c *Transfer) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 3025 req, out := c.TagResourceRequest(input) 3026 req.SetContext(ctx) 3027 req.ApplyOptions(opts...) 3028 return out, req.Send() 3029 } 3030 3031 const opTestIdentityProvider = "TestIdentityProvider" 3032 3033 // TestIdentityProviderRequest generates a "aws/request.Request" representing the 3034 // client's request for the TestIdentityProvider operation. The "output" return 3035 // value will be populated with the request's response once the request completes 3036 // successfully. 3037 // 3038 // Use "Send" method on the returned Request to send the API call to the service. 3039 // the "output" return value is not valid until after Send returns without error. 3040 // 3041 // See TestIdentityProvider for more information on using the TestIdentityProvider 3042 // API call, and error handling. 3043 // 3044 // This method is useful when you want to inject custom logic or configuration 3045 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3046 // 3047 // 3048 // // Example sending a request using the TestIdentityProviderRequest method. 3049 // req, resp := client.TestIdentityProviderRequest(params) 3050 // 3051 // err := req.Send() 3052 // if err == nil { // resp is now filled 3053 // fmt.Println(resp) 3054 // } 3055 // 3056 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TestIdentityProvider 3057 func (c *Transfer) TestIdentityProviderRequest(input *TestIdentityProviderInput) (req *request.Request, output *TestIdentityProviderOutput) { 3058 op := &request.Operation{ 3059 Name: opTestIdentityProvider, 3060 HTTPMethod: "POST", 3061 HTTPPath: "/", 3062 } 3063 3064 if input == nil { 3065 input = &TestIdentityProviderInput{} 3066 } 3067 3068 output = &TestIdentityProviderOutput{} 3069 req = c.newRequest(op, input, output) 3070 return 3071 } 3072 3073 // TestIdentityProvider API operation for AWS Transfer Family. 3074 // 3075 // If the IdentityProviderType of a file transfer protocol-enabled server is 3076 // AWS_DIRECTORY_SERVICE or API_Gateway, tests whether your identity provider 3077 // is set up successfully. We highly recommend that you call this operation 3078 // to test your authentication method as soon as you create your server. By 3079 // doing so, you can troubleshoot issues with the identity provider integration 3080 // to ensure that your users can successfully use the service. 3081 // 3082 // The ServerId and UserName parameters are required. The ServerProtocol, SourceIp, 3083 // and UserPassword are all optional. 3084 // 3085 // You cannot use TestIdentityProvider if the IdentityProviderType of your server 3086 // is SERVICE_MANAGED. 3087 // 3088 // * If you provide any incorrect values for any parameters, the Response 3089 // field is empty. 3090 // 3091 // * If you provide a server ID for a server that uses service-managed users, 3092 // you get an error: An error occurred (InvalidRequestException) when calling 3093 // the TestIdentityProvider operation: s-server-ID not configured for external 3094 // auth 3095 // 3096 // * If you enter a Server ID for the --server-id parameter that does not 3097 // identify an actual Transfer server, you receive the following error: An 3098 // error occurred (ResourceNotFoundException) when calling the TestIdentityProvider 3099 // operation: Unknown server 3100 // 3101 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3102 // with awserr.Error's Code and Message methods to get detailed information about 3103 // the error. 3104 // 3105 // See the AWS API reference guide for AWS Transfer Family's 3106 // API operation TestIdentityProvider for usage and error information. 3107 // 3108 // Returned Error Types: 3109 // * ServiceUnavailableException 3110 // The request has failed because the Amazon Web ServicesTransfer Family service 3111 // is not available. 3112 // 3113 // * InternalServiceError 3114 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 3115 // Family service. 3116 // 3117 // * InvalidRequestException 3118 // This exception is thrown when the client submits a malformed request. 3119 // 3120 // * ResourceNotFoundException 3121 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 3122 // Family service. 3123 // 3124 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/TestIdentityProvider 3125 func (c *Transfer) TestIdentityProvider(input *TestIdentityProviderInput) (*TestIdentityProviderOutput, error) { 3126 req, out := c.TestIdentityProviderRequest(input) 3127 return out, req.Send() 3128 } 3129 3130 // TestIdentityProviderWithContext is the same as TestIdentityProvider with the addition of 3131 // the ability to pass a context and additional request options. 3132 // 3133 // See TestIdentityProvider for details on how to use this API operation. 3134 // 3135 // The context must be non-nil and will be used for request cancellation. If 3136 // the context is nil a panic will occur. In the future the SDK may create 3137 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3138 // for more information on using Contexts. 3139 func (c *Transfer) TestIdentityProviderWithContext(ctx aws.Context, input *TestIdentityProviderInput, opts ...request.Option) (*TestIdentityProviderOutput, error) { 3140 req, out := c.TestIdentityProviderRequest(input) 3141 req.SetContext(ctx) 3142 req.ApplyOptions(opts...) 3143 return out, req.Send() 3144 } 3145 3146 const opUntagResource = "UntagResource" 3147 3148 // UntagResourceRequest generates a "aws/request.Request" representing the 3149 // client's request for the UntagResource operation. The "output" return 3150 // value will be populated with the request's response once the request completes 3151 // successfully. 3152 // 3153 // Use "Send" method on the returned Request to send the API call to the service. 3154 // the "output" return value is not valid until after Send returns without error. 3155 // 3156 // See UntagResource for more information on using the UntagResource 3157 // API call, and error handling. 3158 // 3159 // This method is useful when you want to inject custom logic or configuration 3160 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3161 // 3162 // 3163 // // Example sending a request using the UntagResourceRequest method. 3164 // req, resp := client.UntagResourceRequest(params) 3165 // 3166 // err := req.Send() 3167 // if err == nil { // resp is now filled 3168 // fmt.Println(resp) 3169 // } 3170 // 3171 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UntagResource 3172 func (c *Transfer) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 3173 op := &request.Operation{ 3174 Name: opUntagResource, 3175 HTTPMethod: "POST", 3176 HTTPPath: "/", 3177 } 3178 3179 if input == nil { 3180 input = &UntagResourceInput{} 3181 } 3182 3183 output = &UntagResourceOutput{} 3184 req = c.newRequest(op, input, output) 3185 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 3186 return 3187 } 3188 3189 // UntagResource API operation for AWS Transfer Family. 3190 // 3191 // Detaches a key-value pair from a resource, as identified by its Amazon Resource 3192 // Name (ARN). Resources are users, servers, roles, and other entities. 3193 // 3194 // No response is returned from this call. 3195 // 3196 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3197 // with awserr.Error's Code and Message methods to get detailed information about 3198 // the error. 3199 // 3200 // See the AWS API reference guide for AWS Transfer Family's 3201 // API operation UntagResource for usage and error information. 3202 // 3203 // Returned Error Types: 3204 // * ServiceUnavailableException 3205 // The request has failed because the Amazon Web ServicesTransfer Family service 3206 // is not available. 3207 // 3208 // * InternalServiceError 3209 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 3210 // Family service. 3211 // 3212 // * InvalidRequestException 3213 // This exception is thrown when the client submits a malformed request. 3214 // 3215 // * ResourceNotFoundException 3216 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 3217 // Family service. 3218 // 3219 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UntagResource 3220 func (c *Transfer) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 3221 req, out := c.UntagResourceRequest(input) 3222 return out, req.Send() 3223 } 3224 3225 // UntagResourceWithContext is the same as UntagResource with the addition of 3226 // the ability to pass a context and additional request options. 3227 // 3228 // See UntagResource for details on how to use this API operation. 3229 // 3230 // The context must be non-nil and will be used for request cancellation. If 3231 // the context is nil a panic will occur. In the future the SDK may create 3232 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3233 // for more information on using Contexts. 3234 func (c *Transfer) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 3235 req, out := c.UntagResourceRequest(input) 3236 req.SetContext(ctx) 3237 req.ApplyOptions(opts...) 3238 return out, req.Send() 3239 } 3240 3241 const opUpdateAccess = "UpdateAccess" 3242 3243 // UpdateAccessRequest generates a "aws/request.Request" representing the 3244 // client's request for the UpdateAccess operation. The "output" return 3245 // value will be populated with the request's response once the request completes 3246 // successfully. 3247 // 3248 // Use "Send" method on the returned Request to send the API call to the service. 3249 // the "output" return value is not valid until after Send returns without error. 3250 // 3251 // See UpdateAccess for more information on using the UpdateAccess 3252 // API call, and error handling. 3253 // 3254 // This method is useful when you want to inject custom logic or configuration 3255 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3256 // 3257 // 3258 // // Example sending a request using the UpdateAccessRequest method. 3259 // req, resp := client.UpdateAccessRequest(params) 3260 // 3261 // err := req.Send() 3262 // if err == nil { // resp is now filled 3263 // fmt.Println(resp) 3264 // } 3265 // 3266 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateAccess 3267 func (c *Transfer) UpdateAccessRequest(input *UpdateAccessInput) (req *request.Request, output *UpdateAccessOutput) { 3268 op := &request.Operation{ 3269 Name: opUpdateAccess, 3270 HTTPMethod: "POST", 3271 HTTPPath: "/", 3272 } 3273 3274 if input == nil { 3275 input = &UpdateAccessInput{} 3276 } 3277 3278 output = &UpdateAccessOutput{} 3279 req = c.newRequest(op, input, output) 3280 return 3281 } 3282 3283 // UpdateAccess API operation for AWS Transfer Family. 3284 // 3285 // Allows you to update parameters for the access specified in the ServerID 3286 // and ExternalID parameters. 3287 // 3288 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3289 // with awserr.Error's Code and Message methods to get detailed information about 3290 // the error. 3291 // 3292 // See the AWS API reference guide for AWS Transfer Family's 3293 // API operation UpdateAccess for usage and error information. 3294 // 3295 // Returned Error Types: 3296 // * ServiceUnavailableException 3297 // The request has failed because the Amazon Web ServicesTransfer Family service 3298 // is not available. 3299 // 3300 // * InternalServiceError 3301 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 3302 // Family service. 3303 // 3304 // * InvalidRequestException 3305 // This exception is thrown when the client submits a malformed request. 3306 // 3307 // * ResourceExistsException 3308 // The requested resource does not exist. 3309 // 3310 // * ResourceNotFoundException 3311 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 3312 // Family service. 3313 // 3314 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateAccess 3315 func (c *Transfer) UpdateAccess(input *UpdateAccessInput) (*UpdateAccessOutput, error) { 3316 req, out := c.UpdateAccessRequest(input) 3317 return out, req.Send() 3318 } 3319 3320 // UpdateAccessWithContext is the same as UpdateAccess with the addition of 3321 // the ability to pass a context and additional request options. 3322 // 3323 // See UpdateAccess for details on how to use this API operation. 3324 // 3325 // The context must be non-nil and will be used for request cancellation. If 3326 // the context is nil a panic will occur. In the future the SDK may create 3327 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3328 // for more information on using Contexts. 3329 func (c *Transfer) UpdateAccessWithContext(ctx aws.Context, input *UpdateAccessInput, opts ...request.Option) (*UpdateAccessOutput, error) { 3330 req, out := c.UpdateAccessRequest(input) 3331 req.SetContext(ctx) 3332 req.ApplyOptions(opts...) 3333 return out, req.Send() 3334 } 3335 3336 const opUpdateServer = "UpdateServer" 3337 3338 // UpdateServerRequest generates a "aws/request.Request" representing the 3339 // client's request for the UpdateServer operation. The "output" return 3340 // value will be populated with the request's response once the request completes 3341 // successfully. 3342 // 3343 // Use "Send" method on the returned Request to send the API call to the service. 3344 // the "output" return value is not valid until after Send returns without error. 3345 // 3346 // See UpdateServer for more information on using the UpdateServer 3347 // API call, and error handling. 3348 // 3349 // This method is useful when you want to inject custom logic or configuration 3350 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3351 // 3352 // 3353 // // Example sending a request using the UpdateServerRequest method. 3354 // req, resp := client.UpdateServerRequest(params) 3355 // 3356 // err := req.Send() 3357 // if err == nil { // resp is now filled 3358 // fmt.Println(resp) 3359 // } 3360 // 3361 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServer 3362 func (c *Transfer) UpdateServerRequest(input *UpdateServerInput) (req *request.Request, output *UpdateServerOutput) { 3363 op := &request.Operation{ 3364 Name: opUpdateServer, 3365 HTTPMethod: "POST", 3366 HTTPPath: "/", 3367 } 3368 3369 if input == nil { 3370 input = &UpdateServerInput{} 3371 } 3372 3373 output = &UpdateServerOutput{} 3374 req = c.newRequest(op, input, output) 3375 return 3376 } 3377 3378 // UpdateServer API operation for AWS Transfer Family. 3379 // 3380 // Updates the file transfer protocol-enabled server's properties after that 3381 // server has been created. 3382 // 3383 // The UpdateServer call returns the ServerId of the server you updated. 3384 // 3385 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3386 // with awserr.Error's Code and Message methods to get detailed information about 3387 // the error. 3388 // 3389 // See the AWS API reference guide for AWS Transfer Family's 3390 // API operation UpdateServer for usage and error information. 3391 // 3392 // Returned Error Types: 3393 // * AccessDeniedException 3394 // You do not have sufficient access to perform this action. 3395 // 3396 // * ServiceUnavailableException 3397 // The request has failed because the Amazon Web ServicesTransfer Family service 3398 // is not available. 3399 // 3400 // * ConflictException 3401 // This exception is thrown when the UpdateServer is called for a file transfer 3402 // protocol-enabled server that has VPC as the endpoint type and the server's 3403 // VpcEndpointID is not in the available state. 3404 // 3405 // * InternalServiceError 3406 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 3407 // Family service. 3408 // 3409 // * InvalidRequestException 3410 // This exception is thrown when the client submits a malformed request. 3411 // 3412 // * ResourceExistsException 3413 // The requested resource does not exist. 3414 // 3415 // * ResourceNotFoundException 3416 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 3417 // Family service. 3418 // 3419 // * ThrottlingException 3420 // The request was denied due to request throttling. 3421 // 3422 // HTTP Status Code: 400 3423 // 3424 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateServer 3425 func (c *Transfer) UpdateServer(input *UpdateServerInput) (*UpdateServerOutput, error) { 3426 req, out := c.UpdateServerRequest(input) 3427 return out, req.Send() 3428 } 3429 3430 // UpdateServerWithContext is the same as UpdateServer with the addition of 3431 // the ability to pass a context and additional request options. 3432 // 3433 // See UpdateServer for details on how to use this API operation. 3434 // 3435 // The context must be non-nil and will be used for request cancellation. If 3436 // the context is nil a panic will occur. In the future the SDK may create 3437 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3438 // for more information on using Contexts. 3439 func (c *Transfer) UpdateServerWithContext(ctx aws.Context, input *UpdateServerInput, opts ...request.Option) (*UpdateServerOutput, error) { 3440 req, out := c.UpdateServerRequest(input) 3441 req.SetContext(ctx) 3442 req.ApplyOptions(opts...) 3443 return out, req.Send() 3444 } 3445 3446 const opUpdateUser = "UpdateUser" 3447 3448 // UpdateUserRequest generates a "aws/request.Request" representing the 3449 // client's request for the UpdateUser operation. The "output" return 3450 // value will be populated with the request's response once the request completes 3451 // successfully. 3452 // 3453 // Use "Send" method on the returned Request to send the API call to the service. 3454 // the "output" return value is not valid until after Send returns without error. 3455 // 3456 // See UpdateUser for more information on using the UpdateUser 3457 // API call, and error handling. 3458 // 3459 // This method is useful when you want to inject custom logic or configuration 3460 // into the SDK's request lifecycle. Such as custom headers, or retry logic. 3461 // 3462 // 3463 // // Example sending a request using the UpdateUserRequest method. 3464 // req, resp := client.UpdateUserRequest(params) 3465 // 3466 // err := req.Send() 3467 // if err == nil { // resp is now filled 3468 // fmt.Println(resp) 3469 // } 3470 // 3471 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateUser 3472 func (c *Transfer) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, output *UpdateUserOutput) { 3473 op := &request.Operation{ 3474 Name: opUpdateUser, 3475 HTTPMethod: "POST", 3476 HTTPPath: "/", 3477 } 3478 3479 if input == nil { 3480 input = &UpdateUserInput{} 3481 } 3482 3483 output = &UpdateUserOutput{} 3484 req = c.newRequest(op, input, output) 3485 return 3486 } 3487 3488 // UpdateUser API operation for AWS Transfer Family. 3489 // 3490 // Assigns new properties to a user. Parameters you pass modify any or all of 3491 // the following: the home directory, role, and policy for the UserName and 3492 // ServerId you specify. 3493 // 3494 // The response returns the ServerId and the UserName for the updated user. 3495 // 3496 // Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3497 // with awserr.Error's Code and Message methods to get detailed information about 3498 // the error. 3499 // 3500 // See the AWS API reference guide for AWS Transfer Family's 3501 // API operation UpdateUser for usage and error information. 3502 // 3503 // Returned Error Types: 3504 // * ServiceUnavailableException 3505 // The request has failed because the Amazon Web ServicesTransfer Family service 3506 // is not available. 3507 // 3508 // * InternalServiceError 3509 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 3510 // Family service. 3511 // 3512 // * InvalidRequestException 3513 // This exception is thrown when the client submits a malformed request. 3514 // 3515 // * ResourceNotFoundException 3516 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 3517 // Family service. 3518 // 3519 // * ThrottlingException 3520 // The request was denied due to request throttling. 3521 // 3522 // HTTP Status Code: 400 3523 // 3524 // See also, https://docs.aws.amazon.com/goto/WebAPI/transfer-2018-11-05/UpdateUser 3525 func (c *Transfer) UpdateUser(input *UpdateUserInput) (*UpdateUserOutput, error) { 3526 req, out := c.UpdateUserRequest(input) 3527 return out, req.Send() 3528 } 3529 3530 // UpdateUserWithContext is the same as UpdateUser with the addition of 3531 // the ability to pass a context and additional request options. 3532 // 3533 // See UpdateUser for details on how to use this API operation. 3534 // 3535 // The context must be non-nil and will be used for request cancellation. If 3536 // the context is nil a panic will occur. In the future the SDK may create 3537 // sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3538 // for more information on using Contexts. 3539 func (c *Transfer) UpdateUserWithContext(ctx aws.Context, input *UpdateUserInput, opts ...request.Option) (*UpdateUserOutput, error) { 3540 req, out := c.UpdateUserRequest(input) 3541 req.SetContext(ctx) 3542 req.ApplyOptions(opts...) 3543 return out, req.Send() 3544 } 3545 3546 // You do not have sufficient access to perform this action. 3547 type AccessDeniedException struct { 3548 _ struct{} `type:"structure"` 3549 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3550 3551 Message_ *string `locationName:"Message" type:"string"` 3552 } 3553 3554 // String returns the string representation. 3555 // 3556 // API parameter values that are decorated as "sensitive" in the API will not 3557 // be included in the string output. The member name will be present, but the 3558 // value will be replaced with "sensitive". 3559 func (s AccessDeniedException) String() string { 3560 return awsutil.Prettify(s) 3561 } 3562 3563 // GoString returns the string representation. 3564 // 3565 // API parameter values that are decorated as "sensitive" in the API will not 3566 // be included in the string output. The member name will be present, but the 3567 // value will be replaced with "sensitive". 3568 func (s AccessDeniedException) GoString() string { 3569 return s.String() 3570 } 3571 3572 func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { 3573 return &AccessDeniedException{ 3574 RespMetadata: v, 3575 } 3576 } 3577 3578 // Code returns the exception type name. 3579 func (s *AccessDeniedException) Code() string { 3580 return "AccessDeniedException" 3581 } 3582 3583 // Message returns the exception's message. 3584 func (s *AccessDeniedException) Message() string { 3585 if s.Message_ != nil { 3586 return *s.Message_ 3587 } 3588 return "" 3589 } 3590 3591 // OrigErr always returns nil, satisfies awserr.Error interface. 3592 func (s *AccessDeniedException) OrigErr() error { 3593 return nil 3594 } 3595 3596 func (s *AccessDeniedException) Error() string { 3597 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3598 } 3599 3600 // Status code returns the HTTP status code for the request's response error. 3601 func (s *AccessDeniedException) StatusCode() int { 3602 return s.RespMetadata.StatusCode 3603 } 3604 3605 // RequestID returns the service's response RequestID for request. 3606 func (s *AccessDeniedException) RequestID() string { 3607 return s.RespMetadata.RequestID 3608 } 3609 3610 // This exception is thrown when the UpdateServer is called for a file transfer 3611 // protocol-enabled server that has VPC as the endpoint type and the server's 3612 // VpcEndpointID is not in the available state. 3613 type ConflictException struct { 3614 _ struct{} `type:"structure"` 3615 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3616 3617 Message_ *string `locationName:"Message" type:"string"` 3618 } 3619 3620 // String returns the string representation. 3621 // 3622 // API parameter values that are decorated as "sensitive" in the API will not 3623 // be included in the string output. The member name will be present, but the 3624 // value will be replaced with "sensitive". 3625 func (s ConflictException) String() string { 3626 return awsutil.Prettify(s) 3627 } 3628 3629 // GoString returns the string representation. 3630 // 3631 // API parameter values that are decorated as "sensitive" in the API will not 3632 // be included in the string output. The member name will be present, but the 3633 // value will be replaced with "sensitive". 3634 func (s ConflictException) GoString() string { 3635 return s.String() 3636 } 3637 3638 func newErrorConflictException(v protocol.ResponseMetadata) error { 3639 return &ConflictException{ 3640 RespMetadata: v, 3641 } 3642 } 3643 3644 // Code returns the exception type name. 3645 func (s *ConflictException) Code() string { 3646 return "ConflictException" 3647 } 3648 3649 // Message returns the exception's message. 3650 func (s *ConflictException) Message() string { 3651 if s.Message_ != nil { 3652 return *s.Message_ 3653 } 3654 return "" 3655 } 3656 3657 // OrigErr always returns nil, satisfies awserr.Error interface. 3658 func (s *ConflictException) OrigErr() error { 3659 return nil 3660 } 3661 3662 func (s *ConflictException) Error() string { 3663 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3664 } 3665 3666 // Status code returns the HTTP status code for the request's response error. 3667 func (s *ConflictException) StatusCode() int { 3668 return s.RespMetadata.StatusCode 3669 } 3670 3671 // RequestID returns the service's response RequestID for request. 3672 func (s *ConflictException) RequestID() string { 3673 return s.RespMetadata.RequestID 3674 } 3675 3676 // Each step type has its own StepDetails structure. 3677 type CopyStepDetails struct { 3678 _ struct{} `type:"structure"` 3679 3680 // Specifies the location for the file being copied. Only applicable for the 3681 // Copy type of workflow steps. 3682 DestinationFileLocation *InputFileLocation `type:"structure"` 3683 3684 // The name of the step, used as an identifier. 3685 Name *string `type:"string"` 3686 3687 // A flag that indicates whether or not to overwrite an existing file of the 3688 // same name. The default is FALSE. 3689 OverwriteExisting *string `type:"string" enum:"OverwriteExisting"` 3690 } 3691 3692 // String returns the string representation. 3693 // 3694 // API parameter values that are decorated as "sensitive" in the API will not 3695 // be included in the string output. The member name will be present, but the 3696 // value will be replaced with "sensitive". 3697 func (s CopyStepDetails) String() string { 3698 return awsutil.Prettify(s) 3699 } 3700 3701 // GoString returns the string representation. 3702 // 3703 // API parameter values that are decorated as "sensitive" in the API will not 3704 // be included in the string output. The member name will be present, but the 3705 // value will be replaced with "sensitive". 3706 func (s CopyStepDetails) GoString() string { 3707 return s.String() 3708 } 3709 3710 // Validate inspects the fields of the type to determine if they are valid. 3711 func (s *CopyStepDetails) Validate() error { 3712 invalidParams := request.ErrInvalidParams{Context: "CopyStepDetails"} 3713 if s.DestinationFileLocation != nil { 3714 if err := s.DestinationFileLocation.Validate(); err != nil { 3715 invalidParams.AddNested("DestinationFileLocation", err.(request.ErrInvalidParams)) 3716 } 3717 } 3718 3719 if invalidParams.Len() > 0 { 3720 return invalidParams 3721 } 3722 return nil 3723 } 3724 3725 // SetDestinationFileLocation sets the DestinationFileLocation field's value. 3726 func (s *CopyStepDetails) SetDestinationFileLocation(v *InputFileLocation) *CopyStepDetails { 3727 s.DestinationFileLocation = v 3728 return s 3729 } 3730 3731 // SetName sets the Name field's value. 3732 func (s *CopyStepDetails) SetName(v string) *CopyStepDetails { 3733 s.Name = &v 3734 return s 3735 } 3736 3737 // SetOverwriteExisting sets the OverwriteExisting field's value. 3738 func (s *CopyStepDetails) SetOverwriteExisting(v string) *CopyStepDetails { 3739 s.OverwriteExisting = &v 3740 return s 3741 } 3742 3743 type CreateAccessInput struct { 3744 _ struct{} `type:"structure"` 3745 3746 // A unique identifier that is required to identify specific groups within your 3747 // directory. The users of the group that you associate have access to your 3748 // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon 3749 // Web Services Transfer Family. If you know the group name, you can view the 3750 // SID values by running the following command using Windows PowerShell. 3751 // 3752 // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * 3753 // | Select SamAccountName,ObjectSid 3754 // 3755 // In that command, replace YourGroupName with the name of your Active Directory 3756 // group. 3757 // 3758 // The regex used to validate this parameter is a string of characters consisting 3759 // of uppercase and lowercase alphanumeric characters with no spaces. You can 3760 // also include underscores or any of the following characters: =,.@:/- 3761 // 3762 // ExternalId is a required field 3763 ExternalId *string `min:"1" type:"string" required:"true"` 3764 3765 // The landing directory (folder) for a user when they log in to the server 3766 // using the client. 3767 // 3768 // A HomeDirectory example is /bucket_name/home/mydirectory. 3769 HomeDirectory *string `type:"string"` 3770 3771 // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths 3772 // and keys should be visible to your user and how you want to make them visible. 3773 // You must specify the Entry and Target pair, where Entry shows how the path 3774 // is made visible and Target is the actual Amazon S3 or Amazon EFS path. If 3775 // you only specify a target, it is displayed as is. You also must ensure that 3776 // your Amazon Web Services Identity and Access Management (IAM) role provides 3777 // access to paths in Target. This value can only be set when HomeDirectoryType 3778 // is set to LOGICAL. 3779 // 3780 // The following is an Entry and Target pair example. 3781 // 3782 // [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ] 3783 // 3784 // In most cases, you can use this value instead of the session policy to lock 3785 // down your user to the designated home directory ("chroot"). To do this, you 3786 // can set Entry to / and set Target to the HomeDirectory parameter value. 3787 // 3788 // The following is an Entry and Target pair example for chroot. 3789 // 3790 // [ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ] 3791 // 3792 // If the target of a logical directory entry does not exist in Amazon S3 or 3793 // EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API 3794 // or EFS API to create 0 byte objects as place holders for your directory. 3795 // If using the CLI, use the s3api or efsapi call instead of s3 or efs so you 3796 // can use the put-object operation. For example, you use the following: aws 3797 // s3api put-object --bucket bucketname --key path/to/folder/. Make sure that 3798 // the end of the key name ends in a / for it to be considered a folder. 3799 HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` 3800 3801 // The type of landing directory (folder) you want your users' home directory 3802 // to be when they log into the server. If you set it to PATH, the user will 3803 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 3804 // protocol clients. If you set it LOGICAL, you need to provide mappings in 3805 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 3806 // visible to your users. 3807 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 3808 3809 // A session policy for your user so that you can use the same IAM role across 3810 // multiple users. This policy scopes down user access to portions of their 3811 // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, 3812 // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. 3813 // 3814 // This only applies when the domain of ServerId is S3. EFS does not use session 3815 // policies. 3816 // 3817 // For session policies, Amazon Web Services Transfer Family stores the policy 3818 // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. 3819 // You save the policy as a JSON blob and pass it in the Policy argument. 3820 // 3821 // For an example of a session policy, see Example session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html). 3822 // 3823 // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) 3824 // in the Amazon Web Services Security Token Service API Reference. 3825 Policy *string `type:"string"` 3826 3827 // The full POSIX identity, including user ID (Uid), group ID (Gid), and any 3828 // secondary groups IDs (SecondaryGids), that controls your users' access to 3829 // your Amazon EFS file systems. The POSIX permissions that are set on files 3830 // and directories in your file system determine the level of access your users 3831 // get when transferring files into and out of your Amazon EFS file systems. 3832 PosixProfile *PosixProfile `type:"structure"` 3833 3834 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 3835 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 3836 // to this role determine the level of access that you want to provide your 3837 // users when transferring files into and out of your Amazon S3 bucket or EFS 3838 // file system. The IAM role should also contain a trust relationship that allows 3839 // the server to access your resources when servicing your users' transfer requests. 3840 // 3841 // Role is a required field 3842 Role *string `min:"20" type:"string" required:"true"` 3843 3844 // A system-assigned unique identifier for a server instance. This is the specific 3845 // server that you added your user to. 3846 // 3847 // ServerId is a required field 3848 ServerId *string `min:"19" type:"string" required:"true"` 3849 } 3850 3851 // String returns the string representation. 3852 // 3853 // API parameter values that are decorated as "sensitive" in the API will not 3854 // be included in the string output. The member name will be present, but the 3855 // value will be replaced with "sensitive". 3856 func (s CreateAccessInput) String() string { 3857 return awsutil.Prettify(s) 3858 } 3859 3860 // GoString returns the string representation. 3861 // 3862 // API parameter values that are decorated as "sensitive" in the API will not 3863 // be included in the string output. The member name will be present, but the 3864 // value will be replaced with "sensitive". 3865 func (s CreateAccessInput) GoString() string { 3866 return s.String() 3867 } 3868 3869 // Validate inspects the fields of the type to determine if they are valid. 3870 func (s *CreateAccessInput) Validate() error { 3871 invalidParams := request.ErrInvalidParams{Context: "CreateAccessInput"} 3872 if s.ExternalId == nil { 3873 invalidParams.Add(request.NewErrParamRequired("ExternalId")) 3874 } 3875 if s.ExternalId != nil && len(*s.ExternalId) < 1 { 3876 invalidParams.Add(request.NewErrParamMinLen("ExternalId", 1)) 3877 } 3878 if s.HomeDirectoryMappings != nil && len(s.HomeDirectoryMappings) < 1 { 3879 invalidParams.Add(request.NewErrParamMinLen("HomeDirectoryMappings", 1)) 3880 } 3881 if s.Role == nil { 3882 invalidParams.Add(request.NewErrParamRequired("Role")) 3883 } 3884 if s.Role != nil && len(*s.Role) < 20 { 3885 invalidParams.Add(request.NewErrParamMinLen("Role", 20)) 3886 } 3887 if s.ServerId == nil { 3888 invalidParams.Add(request.NewErrParamRequired("ServerId")) 3889 } 3890 if s.ServerId != nil && len(*s.ServerId) < 19 { 3891 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 3892 } 3893 if s.HomeDirectoryMappings != nil { 3894 for i, v := range s.HomeDirectoryMappings { 3895 if v == nil { 3896 continue 3897 } 3898 if err := v.Validate(); err != nil { 3899 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "HomeDirectoryMappings", i), err.(request.ErrInvalidParams)) 3900 } 3901 } 3902 } 3903 if s.PosixProfile != nil { 3904 if err := s.PosixProfile.Validate(); err != nil { 3905 invalidParams.AddNested("PosixProfile", err.(request.ErrInvalidParams)) 3906 } 3907 } 3908 3909 if invalidParams.Len() > 0 { 3910 return invalidParams 3911 } 3912 return nil 3913 } 3914 3915 // SetExternalId sets the ExternalId field's value. 3916 func (s *CreateAccessInput) SetExternalId(v string) *CreateAccessInput { 3917 s.ExternalId = &v 3918 return s 3919 } 3920 3921 // SetHomeDirectory sets the HomeDirectory field's value. 3922 func (s *CreateAccessInput) SetHomeDirectory(v string) *CreateAccessInput { 3923 s.HomeDirectory = &v 3924 return s 3925 } 3926 3927 // SetHomeDirectoryMappings sets the HomeDirectoryMappings field's value. 3928 func (s *CreateAccessInput) SetHomeDirectoryMappings(v []*HomeDirectoryMapEntry) *CreateAccessInput { 3929 s.HomeDirectoryMappings = v 3930 return s 3931 } 3932 3933 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 3934 func (s *CreateAccessInput) SetHomeDirectoryType(v string) *CreateAccessInput { 3935 s.HomeDirectoryType = &v 3936 return s 3937 } 3938 3939 // SetPolicy sets the Policy field's value. 3940 func (s *CreateAccessInput) SetPolicy(v string) *CreateAccessInput { 3941 s.Policy = &v 3942 return s 3943 } 3944 3945 // SetPosixProfile sets the PosixProfile field's value. 3946 func (s *CreateAccessInput) SetPosixProfile(v *PosixProfile) *CreateAccessInput { 3947 s.PosixProfile = v 3948 return s 3949 } 3950 3951 // SetRole sets the Role field's value. 3952 func (s *CreateAccessInput) SetRole(v string) *CreateAccessInput { 3953 s.Role = &v 3954 return s 3955 } 3956 3957 // SetServerId sets the ServerId field's value. 3958 func (s *CreateAccessInput) SetServerId(v string) *CreateAccessInput { 3959 s.ServerId = &v 3960 return s 3961 } 3962 3963 type CreateAccessOutput struct { 3964 _ struct{} `type:"structure"` 3965 3966 // The external ID of the group whose users have access to your Amazon S3 or 3967 // Amazon EFS resources over the enabled protocols using Amazon Web Services 3968 // Transfer Family. 3969 // 3970 // ExternalId is a required field 3971 ExternalId *string `min:"1" type:"string" required:"true"` 3972 3973 // The ID of the server that the user is attached to. 3974 // 3975 // ServerId is a required field 3976 ServerId *string `min:"19" type:"string" required:"true"` 3977 } 3978 3979 // String returns the string representation. 3980 // 3981 // API parameter values that are decorated as "sensitive" in the API will not 3982 // be included in the string output. The member name will be present, but the 3983 // value will be replaced with "sensitive". 3984 func (s CreateAccessOutput) String() string { 3985 return awsutil.Prettify(s) 3986 } 3987 3988 // GoString returns the string representation. 3989 // 3990 // API parameter values that are decorated as "sensitive" in the API will not 3991 // be included in the string output. The member name will be present, but the 3992 // value will be replaced with "sensitive". 3993 func (s CreateAccessOutput) GoString() string { 3994 return s.String() 3995 } 3996 3997 // SetExternalId sets the ExternalId field's value. 3998 func (s *CreateAccessOutput) SetExternalId(v string) *CreateAccessOutput { 3999 s.ExternalId = &v 4000 return s 4001 } 4002 4003 // SetServerId sets the ServerId field's value. 4004 func (s *CreateAccessOutput) SetServerId(v string) *CreateAccessOutput { 4005 s.ServerId = &v 4006 return s 4007 } 4008 4009 type CreateServerInput struct { 4010 _ struct{} `type:"structure"` 4011 4012 // The Amazon Resource Name (ARN) of the Amazon Web Services Certificate Manager 4013 // (ACM) certificate. Required when Protocols is set to FTPS. 4014 // 4015 // To request a new public certificate, see Request a public certificate (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html) 4016 // in the Amazon Web Services Certificate Manager User Guide. 4017 // 4018 // To import an existing certificate into ACM, see Importing certificates into 4019 // ACM (https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) 4020 // in the Amazon Web Services Certificate Manager User Guide. 4021 // 4022 // To request a private certificate to use FTPS through private IP addresses, 4023 // see Request a private certificate (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html) 4024 // in the Amazon Web Services Certificate Manager User Guide. 4025 // 4026 // Certificates with the following cryptographic algorithms and key sizes are 4027 // supported: 4028 // 4029 // * 2048-bit RSA (RSA_2048) 4030 // 4031 // * 4096-bit RSA (RSA_4096) 4032 // 4033 // * Elliptic Prime Curve 256 bit (EC_prime256v1) 4034 // 4035 // * Elliptic Prime Curve 384 bit (EC_secp384r1) 4036 // 4037 // * Elliptic Prime Curve 521 bit (EC_secp521r1) 4038 // 4039 // The certificate must be a valid SSL/TLS X.509 version 3 certificate with 4040 // FQDN or IP address specified and information about the issuer. 4041 Certificate *string `type:"string"` 4042 4043 // The domain of the storage system that is used for file transfers. There are 4044 // two domains available: Amazon Simple Storage Service (Amazon S3) and Amazon 4045 // Elastic File System (Amazon EFS). The default value is S3. 4046 // 4047 // After the server is created, the domain cannot be changed. 4048 Domain *string `type:"string" enum:"Domain"` 4049 4050 // The virtual private cloud (VPC) endpoint settings that are configured for 4051 // your server. When you host your endpoint within your VPC, you can make it 4052 // accessible only to resources within your VPC, or you can attach Elastic IP 4053 // addresses and make it accessible to clients over the internet. Your VPC's 4054 // default security groups are automatically assigned to your endpoint. 4055 EndpointDetails *EndpointDetails `type:"structure"` 4056 4057 // The type of endpoint that you want your server to use. You can choose to 4058 // make your server's endpoint publicly accessible (PUBLIC) or host it inside 4059 // your VPC. With an endpoint that is hosted in a VPC, you can restrict access 4060 // to your server and resources only within your VPC or choose to make it internet 4061 // facing by attaching Elastic IP addresses directly to it. 4062 // 4063 // After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT 4064 // in your Amazon Web Services account if your account hasn't already done so 4065 // before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT 4066 // in your Amazon Web Services account on or before May 19, 2021, you will not 4067 // be affected. After this date, use EndpointType=VPC. 4068 // 4069 // For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. 4070 // 4071 // It is recommended that you use VPC as the EndpointType. With this endpoint 4072 // type, you have the option to directly associate up to three Elastic IPv4 4073 // addresses (BYO IP included) with your server's endpoint and use VPC security 4074 // groups to restrict traffic by the client's public IP address. This is not 4075 // possible with EndpointType set to VPC_ENDPOINT. 4076 EndpointType *string `type:"string" enum:"EndpointType"` 4077 4078 // The RSA private key as generated by the ssh-keygen -N "" -m PEM -f my-new-server-key 4079 // command. 4080 // 4081 // If you aren't planning to migrate existing users from an existing SFTP-enabled 4082 // server to a new server, don't update the host key. Accidentally changing 4083 // a server's host key can be disruptive. 4084 // 4085 // For more information, see Change the host key for your SFTP-enabled server 4086 // (https://docs.aws.amazon.com/transfer/latest/userguide/edit-server-config.html#configuring-servers-change-host-key) 4087 // in the Amazon Web Services Transfer Family User Guide. 4088 // 4089 // HostKey is a sensitive parameter and its value will be 4090 // replaced with "sensitive" in string returned by CreateServerInput's 4091 // String and GoString methods. 4092 HostKey *string `type:"string" sensitive:"true"` 4093 4094 // Required when IdentityProviderType is set to AWS_DIRECTORY_SERVICE or API_GATEWAY. 4095 // Accepts an array containing all of the information required to use a directory 4096 // in AWS_DIRECTORY_SERVICE or invoke a customer-supplied authentication API, 4097 // including the API Gateway URL. Not required when IdentityProviderType is 4098 // set to SERVICE_MANAGED. 4099 IdentityProviderDetails *IdentityProviderDetails `type:"structure"` 4100 4101 // Specifies the mode of authentication for a server. The default value is SERVICE_MANAGED, 4102 // which allows you to store and access user credentials within the Amazon Web 4103 // Services Transfer Family service. 4104 // 4105 // Use AWS_DIRECTORY_SERVICE to provide access to Active Directory groups in 4106 // Amazon Web Services Managed Active Directory or Microsoft Active Directory 4107 // in your on-premises environment or in Amazon Web Services using AD Connectors. 4108 // This option also requires you to provide a Directory ID using the IdentityProviderDetails 4109 // parameter. 4110 // 4111 // Use the API_GATEWAY value to integrate with an identity provider of your 4112 // choosing. The API_GATEWAY setting requires you to provide an API Gateway 4113 // endpoint URL to call for authentication using the IdentityProviderDetails 4114 // parameter. 4115 IdentityProviderType *string `type:"string" enum:"IdentityProviderType"` 4116 4117 // Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 4118 // and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch 4119 // logging for Amazon S3 or Amazon EFS events. When set, user activity can be 4120 // viewed in your CloudWatch logs. 4121 LoggingRole *string `min:"20" type:"string"` 4122 4123 // Specifies the file transfer protocol or protocols over which your file transfer 4124 // protocol client can connect to your server's endpoint. The available protocols 4125 // are: 4126 // 4127 // * SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over 4128 // SSH 4129 // 4130 // * FTPS (File Transfer Protocol Secure): File transfer with TLS encryption 4131 // 4132 // * FTP (File Transfer Protocol): Unencrypted file transfer 4133 // 4134 // If you select FTPS, you must choose a certificate stored in Amazon Web Services 4135 // Certificate Manager (ACM) which is used to identify your server when clients 4136 // connect to it over FTPS. 4137 // 4138 // If Protocol includes either FTP or FTPS, then the EndpointType must be VPC 4139 // and the IdentityProviderType must be AWS_DIRECTORY_SERVICE or API_GATEWAY. 4140 // 4141 // If Protocol includes FTP, then AddressAllocationIds cannot be associated. 4142 // 4143 // If Protocol is set only to SFTP, the EndpointType can be set to PUBLIC and 4144 // the IdentityProviderType can be set to SERVICE_MANAGED. 4145 Protocols []*string `min:"1" type:"list"` 4146 4147 // Specifies the name of the security policy that is attached to the server. 4148 SecurityPolicyName *string `type:"string"` 4149 4150 // Key-value pairs that can be used to group and search for servers. 4151 Tags []*Tag `min:"1" type:"list"` 4152 4153 // Specifies the workflow ID for the workflow to assign and the execution role 4154 // used for executing the workflow. 4155 WorkflowDetails *WorkflowDetails `type:"structure"` 4156 } 4157 4158 // String returns the string representation. 4159 // 4160 // API parameter values that are decorated as "sensitive" in the API will not 4161 // be included in the string output. The member name will be present, but the 4162 // value will be replaced with "sensitive". 4163 func (s CreateServerInput) String() string { 4164 return awsutil.Prettify(s) 4165 } 4166 4167 // GoString returns the string representation. 4168 // 4169 // API parameter values that are decorated as "sensitive" in the API will not 4170 // be included in the string output. The member name will be present, but the 4171 // value will be replaced with "sensitive". 4172 func (s CreateServerInput) GoString() string { 4173 return s.String() 4174 } 4175 4176 // Validate inspects the fields of the type to determine if they are valid. 4177 func (s *CreateServerInput) Validate() error { 4178 invalidParams := request.ErrInvalidParams{Context: "CreateServerInput"} 4179 if s.LoggingRole != nil && len(*s.LoggingRole) < 20 { 4180 invalidParams.Add(request.NewErrParamMinLen("LoggingRole", 20)) 4181 } 4182 if s.Protocols != nil && len(s.Protocols) < 1 { 4183 invalidParams.Add(request.NewErrParamMinLen("Protocols", 1)) 4184 } 4185 if s.Tags != nil && len(s.Tags) < 1 { 4186 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 4187 } 4188 if s.EndpointDetails != nil { 4189 if err := s.EndpointDetails.Validate(); err != nil { 4190 invalidParams.AddNested("EndpointDetails", err.(request.ErrInvalidParams)) 4191 } 4192 } 4193 if s.IdentityProviderDetails != nil { 4194 if err := s.IdentityProviderDetails.Validate(); err != nil { 4195 invalidParams.AddNested("IdentityProviderDetails", err.(request.ErrInvalidParams)) 4196 } 4197 } 4198 if s.Tags != nil { 4199 for i, v := range s.Tags { 4200 if v == nil { 4201 continue 4202 } 4203 if err := v.Validate(); err != nil { 4204 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4205 } 4206 } 4207 } 4208 if s.WorkflowDetails != nil { 4209 if err := s.WorkflowDetails.Validate(); err != nil { 4210 invalidParams.AddNested("WorkflowDetails", err.(request.ErrInvalidParams)) 4211 } 4212 } 4213 4214 if invalidParams.Len() > 0 { 4215 return invalidParams 4216 } 4217 return nil 4218 } 4219 4220 // SetCertificate sets the Certificate field's value. 4221 func (s *CreateServerInput) SetCertificate(v string) *CreateServerInput { 4222 s.Certificate = &v 4223 return s 4224 } 4225 4226 // SetDomain sets the Domain field's value. 4227 func (s *CreateServerInput) SetDomain(v string) *CreateServerInput { 4228 s.Domain = &v 4229 return s 4230 } 4231 4232 // SetEndpointDetails sets the EndpointDetails field's value. 4233 func (s *CreateServerInput) SetEndpointDetails(v *EndpointDetails) *CreateServerInput { 4234 s.EndpointDetails = v 4235 return s 4236 } 4237 4238 // SetEndpointType sets the EndpointType field's value. 4239 func (s *CreateServerInput) SetEndpointType(v string) *CreateServerInput { 4240 s.EndpointType = &v 4241 return s 4242 } 4243 4244 // SetHostKey sets the HostKey field's value. 4245 func (s *CreateServerInput) SetHostKey(v string) *CreateServerInput { 4246 s.HostKey = &v 4247 return s 4248 } 4249 4250 // SetIdentityProviderDetails sets the IdentityProviderDetails field's value. 4251 func (s *CreateServerInput) SetIdentityProviderDetails(v *IdentityProviderDetails) *CreateServerInput { 4252 s.IdentityProviderDetails = v 4253 return s 4254 } 4255 4256 // SetIdentityProviderType sets the IdentityProviderType field's value. 4257 func (s *CreateServerInput) SetIdentityProviderType(v string) *CreateServerInput { 4258 s.IdentityProviderType = &v 4259 return s 4260 } 4261 4262 // SetLoggingRole sets the LoggingRole field's value. 4263 func (s *CreateServerInput) SetLoggingRole(v string) *CreateServerInput { 4264 s.LoggingRole = &v 4265 return s 4266 } 4267 4268 // SetProtocols sets the Protocols field's value. 4269 func (s *CreateServerInput) SetProtocols(v []*string) *CreateServerInput { 4270 s.Protocols = v 4271 return s 4272 } 4273 4274 // SetSecurityPolicyName sets the SecurityPolicyName field's value. 4275 func (s *CreateServerInput) SetSecurityPolicyName(v string) *CreateServerInput { 4276 s.SecurityPolicyName = &v 4277 return s 4278 } 4279 4280 // SetTags sets the Tags field's value. 4281 func (s *CreateServerInput) SetTags(v []*Tag) *CreateServerInput { 4282 s.Tags = v 4283 return s 4284 } 4285 4286 // SetWorkflowDetails sets the WorkflowDetails field's value. 4287 func (s *CreateServerInput) SetWorkflowDetails(v *WorkflowDetails) *CreateServerInput { 4288 s.WorkflowDetails = v 4289 return s 4290 } 4291 4292 type CreateServerOutput struct { 4293 _ struct{} `type:"structure"` 4294 4295 // The service-assigned ID of the server that is created. 4296 // 4297 // ServerId is a required field 4298 ServerId *string `min:"19" type:"string" required:"true"` 4299 } 4300 4301 // String returns the string representation. 4302 // 4303 // API parameter values that are decorated as "sensitive" in the API will not 4304 // be included in the string output. The member name will be present, but the 4305 // value will be replaced with "sensitive". 4306 func (s CreateServerOutput) String() string { 4307 return awsutil.Prettify(s) 4308 } 4309 4310 // GoString returns the string representation. 4311 // 4312 // API parameter values that are decorated as "sensitive" in the API will not 4313 // be included in the string output. The member name will be present, but the 4314 // value will be replaced with "sensitive". 4315 func (s CreateServerOutput) GoString() string { 4316 return s.String() 4317 } 4318 4319 // SetServerId sets the ServerId field's value. 4320 func (s *CreateServerOutput) SetServerId(v string) *CreateServerOutput { 4321 s.ServerId = &v 4322 return s 4323 } 4324 4325 type CreateUserInput struct { 4326 _ struct{} `type:"structure"` 4327 4328 // The landing directory (folder) for a user when they log in to the server 4329 // using the client. 4330 // 4331 // A HomeDirectory example is /bucket_name/home/mydirectory. 4332 HomeDirectory *string `type:"string"` 4333 4334 // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths 4335 // and keys should be visible to your user and how you want to make them visible. 4336 // You must specify the Entry and Target pair, where Entry shows how the path 4337 // is made visible and Target is the actual Amazon S3 or Amazon EFS path. If 4338 // you only specify a target, it is displayed as is. You also must ensure that 4339 // your Amazon Web Services Identity and Access Management (IAM) role provides 4340 // access to paths in Target. This value can only be set when HomeDirectoryType 4341 // is set to LOGICAL. 4342 // 4343 // The following is an Entry and Target pair example. 4344 // 4345 // [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ] 4346 // 4347 // In most cases, you can use this value instead of the session policy to lock 4348 // your user down to the designated home directory ("chroot"). To do this, you 4349 // can set Entry to / and set Target to the HomeDirectory parameter value. 4350 // 4351 // The following is an Entry and Target pair example for chroot. 4352 // 4353 // [ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ] 4354 // 4355 // If the target of a logical directory entry does not exist in Amazon S3 or 4356 // EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API 4357 // or EFS API to create 0 byte objects as place holders for your directory. 4358 // If using the CLI, use the s3api or efsapi call instead of s3 or efs so you 4359 // can use the put-object operation. For example, you use the following: aws 4360 // s3api put-object --bucket bucketname --key path/to/folder/. Make sure that 4361 // the end of the key name ends in a / for it to be considered a folder. 4362 HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` 4363 4364 // The type of landing directory (folder) you want your users' home directory 4365 // to be when they log into the server. If you set it to PATH, the user will 4366 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 4367 // protocol clients. If you set it LOGICAL, you need to provide mappings in 4368 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 4369 // visible to your users. 4370 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 4371 4372 // A session policy for your user so that you can use the same IAM role across 4373 // multiple users. This policy scopes down user access to portions of their 4374 // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, 4375 // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. 4376 // 4377 // This only applies when the domain of ServerId is S3. EFS does not use session 4378 // policies. 4379 // 4380 // For session policies, Amazon Web Services Transfer Family stores the policy 4381 // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. 4382 // You save the policy as a JSON blob and pass it in the Policy argument. 4383 // 4384 // For an example of a session policy, see Example session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html). 4385 // 4386 // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) 4387 // in the Amazon Web Services Security Token Service API Reference. 4388 Policy *string `type:"string"` 4389 4390 // Specifies the full POSIX identity, including user ID (Uid), group ID (Gid), 4391 // and any secondary groups IDs (SecondaryGids), that controls your users' access 4392 // to your Amazon EFS file systems. The POSIX permissions that are set on files 4393 // and directories in Amazon EFS determine the level of access your users get 4394 // when transferring files into and out of your Amazon EFS file systems. 4395 PosixProfile *PosixProfile `type:"structure"` 4396 4397 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 4398 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 4399 // to this role determine the level of access that you want to provide your 4400 // users when transferring files into and out of your Amazon S3 bucket or EFS 4401 // file system. The IAM role should also contain a trust relationship that allows 4402 // the server to access your resources when servicing your users' transfer requests. 4403 // 4404 // Role is a required field 4405 Role *string `min:"20" type:"string" required:"true"` 4406 4407 // A system-assigned unique identifier for a server instance. This is the specific 4408 // server that you added your user to. 4409 // 4410 // ServerId is a required field 4411 ServerId *string `min:"19" type:"string" required:"true"` 4412 4413 // The public portion of the Secure Shell (SSH) key used to authenticate the 4414 // user to the server. 4415 SshPublicKeyBody *string `type:"string"` 4416 4417 // Key-value pairs that can be used to group and search for users. Tags are 4418 // metadata attached to users for any purpose. 4419 Tags []*Tag `min:"1" type:"list"` 4420 4421 // A unique string that identifies a user and is associated with a ServerId. 4422 // This user name must be a minimum of 3 and a maximum of 100 characters long. 4423 // The following are valid characters: a-z, A-Z, 0-9, underscore '_', hyphen 4424 // '-', period '.', and at sign '@'. The user name can't start with a hyphen, 4425 // period, or at sign. 4426 // 4427 // UserName is a required field 4428 UserName *string `min:"3" type:"string" required:"true"` 4429 } 4430 4431 // String returns the string representation. 4432 // 4433 // API parameter values that are decorated as "sensitive" in the API will not 4434 // be included in the string output. The member name will be present, but the 4435 // value will be replaced with "sensitive". 4436 func (s CreateUserInput) String() string { 4437 return awsutil.Prettify(s) 4438 } 4439 4440 // GoString returns the string representation. 4441 // 4442 // API parameter values that are decorated as "sensitive" in the API will not 4443 // be included in the string output. The member name will be present, but the 4444 // value will be replaced with "sensitive". 4445 func (s CreateUserInput) GoString() string { 4446 return s.String() 4447 } 4448 4449 // Validate inspects the fields of the type to determine if they are valid. 4450 func (s *CreateUserInput) Validate() error { 4451 invalidParams := request.ErrInvalidParams{Context: "CreateUserInput"} 4452 if s.HomeDirectoryMappings != nil && len(s.HomeDirectoryMappings) < 1 { 4453 invalidParams.Add(request.NewErrParamMinLen("HomeDirectoryMappings", 1)) 4454 } 4455 if s.Role == nil { 4456 invalidParams.Add(request.NewErrParamRequired("Role")) 4457 } 4458 if s.Role != nil && len(*s.Role) < 20 { 4459 invalidParams.Add(request.NewErrParamMinLen("Role", 20)) 4460 } 4461 if s.ServerId == nil { 4462 invalidParams.Add(request.NewErrParamRequired("ServerId")) 4463 } 4464 if s.ServerId != nil && len(*s.ServerId) < 19 { 4465 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 4466 } 4467 if s.Tags != nil && len(s.Tags) < 1 { 4468 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 4469 } 4470 if s.UserName == nil { 4471 invalidParams.Add(request.NewErrParamRequired("UserName")) 4472 } 4473 if s.UserName != nil && len(*s.UserName) < 3 { 4474 invalidParams.Add(request.NewErrParamMinLen("UserName", 3)) 4475 } 4476 if s.HomeDirectoryMappings != nil { 4477 for i, v := range s.HomeDirectoryMappings { 4478 if v == nil { 4479 continue 4480 } 4481 if err := v.Validate(); err != nil { 4482 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "HomeDirectoryMappings", i), err.(request.ErrInvalidParams)) 4483 } 4484 } 4485 } 4486 if s.PosixProfile != nil { 4487 if err := s.PosixProfile.Validate(); err != nil { 4488 invalidParams.AddNested("PosixProfile", err.(request.ErrInvalidParams)) 4489 } 4490 } 4491 if s.Tags != nil { 4492 for i, v := range s.Tags { 4493 if v == nil { 4494 continue 4495 } 4496 if err := v.Validate(); err != nil { 4497 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4498 } 4499 } 4500 } 4501 4502 if invalidParams.Len() > 0 { 4503 return invalidParams 4504 } 4505 return nil 4506 } 4507 4508 // SetHomeDirectory sets the HomeDirectory field's value. 4509 func (s *CreateUserInput) SetHomeDirectory(v string) *CreateUserInput { 4510 s.HomeDirectory = &v 4511 return s 4512 } 4513 4514 // SetHomeDirectoryMappings sets the HomeDirectoryMappings field's value. 4515 func (s *CreateUserInput) SetHomeDirectoryMappings(v []*HomeDirectoryMapEntry) *CreateUserInput { 4516 s.HomeDirectoryMappings = v 4517 return s 4518 } 4519 4520 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 4521 func (s *CreateUserInput) SetHomeDirectoryType(v string) *CreateUserInput { 4522 s.HomeDirectoryType = &v 4523 return s 4524 } 4525 4526 // SetPolicy sets the Policy field's value. 4527 func (s *CreateUserInput) SetPolicy(v string) *CreateUserInput { 4528 s.Policy = &v 4529 return s 4530 } 4531 4532 // SetPosixProfile sets the PosixProfile field's value. 4533 func (s *CreateUserInput) SetPosixProfile(v *PosixProfile) *CreateUserInput { 4534 s.PosixProfile = v 4535 return s 4536 } 4537 4538 // SetRole sets the Role field's value. 4539 func (s *CreateUserInput) SetRole(v string) *CreateUserInput { 4540 s.Role = &v 4541 return s 4542 } 4543 4544 // SetServerId sets the ServerId field's value. 4545 func (s *CreateUserInput) SetServerId(v string) *CreateUserInput { 4546 s.ServerId = &v 4547 return s 4548 } 4549 4550 // SetSshPublicKeyBody sets the SshPublicKeyBody field's value. 4551 func (s *CreateUserInput) SetSshPublicKeyBody(v string) *CreateUserInput { 4552 s.SshPublicKeyBody = &v 4553 return s 4554 } 4555 4556 // SetTags sets the Tags field's value. 4557 func (s *CreateUserInput) SetTags(v []*Tag) *CreateUserInput { 4558 s.Tags = v 4559 return s 4560 } 4561 4562 // SetUserName sets the UserName field's value. 4563 func (s *CreateUserInput) SetUserName(v string) *CreateUserInput { 4564 s.UserName = &v 4565 return s 4566 } 4567 4568 type CreateUserOutput struct { 4569 _ struct{} `type:"structure"` 4570 4571 // The ID of the server that the user is attached to. 4572 // 4573 // ServerId is a required field 4574 ServerId *string `min:"19" type:"string" required:"true"` 4575 4576 // A unique string that identifies a user account associated with a server. 4577 // 4578 // UserName is a required field 4579 UserName *string `min:"3" type:"string" required:"true"` 4580 } 4581 4582 // String returns the string representation. 4583 // 4584 // API parameter values that are decorated as "sensitive" in the API will not 4585 // be included in the string output. The member name will be present, but the 4586 // value will be replaced with "sensitive". 4587 func (s CreateUserOutput) String() string { 4588 return awsutil.Prettify(s) 4589 } 4590 4591 // GoString returns the string representation. 4592 // 4593 // API parameter values that are decorated as "sensitive" in the API will not 4594 // be included in the string output. The member name will be present, but the 4595 // value will be replaced with "sensitive". 4596 func (s CreateUserOutput) GoString() string { 4597 return s.String() 4598 } 4599 4600 // SetServerId sets the ServerId field's value. 4601 func (s *CreateUserOutput) SetServerId(v string) *CreateUserOutput { 4602 s.ServerId = &v 4603 return s 4604 } 4605 4606 // SetUserName sets the UserName field's value. 4607 func (s *CreateUserOutput) SetUserName(v string) *CreateUserOutput { 4608 s.UserName = &v 4609 return s 4610 } 4611 4612 type CreateWorkflowInput struct { 4613 _ struct{} `type:"structure"` 4614 4615 // A textual description for the workflow. 4616 Description *string `type:"string"` 4617 4618 // Specifies the steps (actions) to take if errors are encountered during execution 4619 // of the workflow. 4620 // 4621 // For custom steps, the lambda function needs to send FAILURE to the call back 4622 // API to kick off the exception steps. Additionally, if the lambda does not 4623 // send SUCCESS before it times out, the exception steps are executed. 4624 OnExceptionSteps []*WorkflowStep `type:"list"` 4625 4626 // Specifies the details for the steps that are in the specified workflow. 4627 // 4628 // The TYPE specifies which of the following actions is being taken for this 4629 // step. 4630 // 4631 // * Copy: copy the file to another location 4632 // 4633 // * Custom: custom step with a lambda target 4634 // 4635 // * Delete: delete the file 4636 // 4637 // * Tag: add a tag to the file 4638 // 4639 // Currently, copying and tagging are supported only on S3. 4640 // 4641 // For file location, you specify either the S3 bucket and key, or the EFS filesystem 4642 // ID and path. 4643 // 4644 // Steps is a required field 4645 Steps []*WorkflowStep `type:"list" required:"true"` 4646 4647 // Key-value pairs that can be used to group and search for workflows. Tags 4648 // are metadata attached to workflows for any purpose. 4649 Tags []*Tag `min:"1" type:"list"` 4650 } 4651 4652 // String returns the string representation. 4653 // 4654 // API parameter values that are decorated as "sensitive" in the API will not 4655 // be included in the string output. The member name will be present, but the 4656 // value will be replaced with "sensitive". 4657 func (s CreateWorkflowInput) String() string { 4658 return awsutil.Prettify(s) 4659 } 4660 4661 // GoString returns the string representation. 4662 // 4663 // API parameter values that are decorated as "sensitive" in the API will not 4664 // be included in the string output. The member name will be present, but the 4665 // value will be replaced with "sensitive". 4666 func (s CreateWorkflowInput) GoString() string { 4667 return s.String() 4668 } 4669 4670 // Validate inspects the fields of the type to determine if they are valid. 4671 func (s *CreateWorkflowInput) Validate() error { 4672 invalidParams := request.ErrInvalidParams{Context: "CreateWorkflowInput"} 4673 if s.Steps == nil { 4674 invalidParams.Add(request.NewErrParamRequired("Steps")) 4675 } 4676 if s.Tags != nil && len(s.Tags) < 1 { 4677 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 4678 } 4679 if s.OnExceptionSteps != nil { 4680 for i, v := range s.OnExceptionSteps { 4681 if v == nil { 4682 continue 4683 } 4684 if err := v.Validate(); err != nil { 4685 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnExceptionSteps", i), err.(request.ErrInvalidParams)) 4686 } 4687 } 4688 } 4689 if s.Steps != nil { 4690 for i, v := range s.Steps { 4691 if v == nil { 4692 continue 4693 } 4694 if err := v.Validate(); err != nil { 4695 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Steps", i), err.(request.ErrInvalidParams)) 4696 } 4697 } 4698 } 4699 if s.Tags != nil { 4700 for i, v := range s.Tags { 4701 if v == nil { 4702 continue 4703 } 4704 if err := v.Validate(); err != nil { 4705 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4706 } 4707 } 4708 } 4709 4710 if invalidParams.Len() > 0 { 4711 return invalidParams 4712 } 4713 return nil 4714 } 4715 4716 // SetDescription sets the Description field's value. 4717 func (s *CreateWorkflowInput) SetDescription(v string) *CreateWorkflowInput { 4718 s.Description = &v 4719 return s 4720 } 4721 4722 // SetOnExceptionSteps sets the OnExceptionSteps field's value. 4723 func (s *CreateWorkflowInput) SetOnExceptionSteps(v []*WorkflowStep) *CreateWorkflowInput { 4724 s.OnExceptionSteps = v 4725 return s 4726 } 4727 4728 // SetSteps sets the Steps field's value. 4729 func (s *CreateWorkflowInput) SetSteps(v []*WorkflowStep) *CreateWorkflowInput { 4730 s.Steps = v 4731 return s 4732 } 4733 4734 // SetTags sets the Tags field's value. 4735 func (s *CreateWorkflowInput) SetTags(v []*Tag) *CreateWorkflowInput { 4736 s.Tags = v 4737 return s 4738 } 4739 4740 type CreateWorkflowOutput struct { 4741 _ struct{} `type:"structure"` 4742 4743 // A unique identifier for the workflow. 4744 // 4745 // WorkflowId is a required field 4746 WorkflowId *string `min:"19" type:"string" required:"true"` 4747 } 4748 4749 // String returns the string representation. 4750 // 4751 // API parameter values that are decorated as "sensitive" in the API will not 4752 // be included in the string output. The member name will be present, but the 4753 // value will be replaced with "sensitive". 4754 func (s CreateWorkflowOutput) String() string { 4755 return awsutil.Prettify(s) 4756 } 4757 4758 // GoString returns the string representation. 4759 // 4760 // API parameter values that are decorated as "sensitive" in the API will not 4761 // be included in the string output. The member name will be present, but the 4762 // value will be replaced with "sensitive". 4763 func (s CreateWorkflowOutput) GoString() string { 4764 return s.String() 4765 } 4766 4767 // SetWorkflowId sets the WorkflowId field's value. 4768 func (s *CreateWorkflowOutput) SetWorkflowId(v string) *CreateWorkflowOutput { 4769 s.WorkflowId = &v 4770 return s 4771 } 4772 4773 // Each step type has its own StepDetails structure. 4774 type CustomStepDetails struct { 4775 _ struct{} `type:"structure"` 4776 4777 // The name of the step, used as an identifier. 4778 Name *string `type:"string"` 4779 4780 // The ARN for the lambda function that is being called. 4781 Target *string `type:"string"` 4782 4783 // Timeout, in seconds, for the step. 4784 TimeoutSeconds *int64 `min:"1" type:"integer"` 4785 } 4786 4787 // String returns the string representation. 4788 // 4789 // API parameter values that are decorated as "sensitive" in the API will not 4790 // be included in the string output. The member name will be present, but the 4791 // value will be replaced with "sensitive". 4792 func (s CustomStepDetails) String() string { 4793 return awsutil.Prettify(s) 4794 } 4795 4796 // GoString returns the string representation. 4797 // 4798 // API parameter values that are decorated as "sensitive" in the API will not 4799 // be included in the string output. The member name will be present, but the 4800 // value will be replaced with "sensitive". 4801 func (s CustomStepDetails) GoString() string { 4802 return s.String() 4803 } 4804 4805 // Validate inspects the fields of the type to determine if they are valid. 4806 func (s *CustomStepDetails) Validate() error { 4807 invalidParams := request.ErrInvalidParams{Context: "CustomStepDetails"} 4808 if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 1 { 4809 invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 1)) 4810 } 4811 4812 if invalidParams.Len() > 0 { 4813 return invalidParams 4814 } 4815 return nil 4816 } 4817 4818 // SetName sets the Name field's value. 4819 func (s *CustomStepDetails) SetName(v string) *CustomStepDetails { 4820 s.Name = &v 4821 return s 4822 } 4823 4824 // SetTarget sets the Target field's value. 4825 func (s *CustomStepDetails) SetTarget(v string) *CustomStepDetails { 4826 s.Target = &v 4827 return s 4828 } 4829 4830 // SetTimeoutSeconds sets the TimeoutSeconds field's value. 4831 func (s *CustomStepDetails) SetTimeoutSeconds(v int64) *CustomStepDetails { 4832 s.TimeoutSeconds = &v 4833 return s 4834 } 4835 4836 type DeleteAccessInput struct { 4837 _ struct{} `type:"structure"` 4838 4839 // A unique identifier that is required to identify specific groups within your 4840 // directory. The users of the group that you associate have access to your 4841 // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon 4842 // Web Services Transfer Family. If you know the group name, you can view the 4843 // SID values by running the following command using Windows PowerShell. 4844 // 4845 // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * 4846 // | Select SamAccountName,ObjectSid 4847 // 4848 // In that command, replace YourGroupName with the name of your Active Directory 4849 // group. 4850 // 4851 // The regex used to validate this parameter is a string of characters consisting 4852 // of uppercase and lowercase alphanumeric characters with no spaces. You can 4853 // also include underscores or any of the following characters: =,.@:/- 4854 // 4855 // ExternalId is a required field 4856 ExternalId *string `min:"1" type:"string" required:"true"` 4857 4858 // A system-assigned unique identifier for a server that has this user assigned. 4859 // 4860 // ServerId is a required field 4861 ServerId *string `min:"19" type:"string" required:"true"` 4862 } 4863 4864 // String returns the string representation. 4865 // 4866 // API parameter values that are decorated as "sensitive" in the API will not 4867 // be included in the string output. The member name will be present, but the 4868 // value will be replaced with "sensitive". 4869 func (s DeleteAccessInput) String() string { 4870 return awsutil.Prettify(s) 4871 } 4872 4873 // GoString returns the string representation. 4874 // 4875 // API parameter values that are decorated as "sensitive" in the API will not 4876 // be included in the string output. The member name will be present, but the 4877 // value will be replaced with "sensitive". 4878 func (s DeleteAccessInput) GoString() string { 4879 return s.String() 4880 } 4881 4882 // Validate inspects the fields of the type to determine if they are valid. 4883 func (s *DeleteAccessInput) Validate() error { 4884 invalidParams := request.ErrInvalidParams{Context: "DeleteAccessInput"} 4885 if s.ExternalId == nil { 4886 invalidParams.Add(request.NewErrParamRequired("ExternalId")) 4887 } 4888 if s.ExternalId != nil && len(*s.ExternalId) < 1 { 4889 invalidParams.Add(request.NewErrParamMinLen("ExternalId", 1)) 4890 } 4891 if s.ServerId == nil { 4892 invalidParams.Add(request.NewErrParamRequired("ServerId")) 4893 } 4894 if s.ServerId != nil && len(*s.ServerId) < 19 { 4895 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 4896 } 4897 4898 if invalidParams.Len() > 0 { 4899 return invalidParams 4900 } 4901 return nil 4902 } 4903 4904 // SetExternalId sets the ExternalId field's value. 4905 func (s *DeleteAccessInput) SetExternalId(v string) *DeleteAccessInput { 4906 s.ExternalId = &v 4907 return s 4908 } 4909 4910 // SetServerId sets the ServerId field's value. 4911 func (s *DeleteAccessInput) SetServerId(v string) *DeleteAccessInput { 4912 s.ServerId = &v 4913 return s 4914 } 4915 4916 type DeleteAccessOutput struct { 4917 _ struct{} `type:"structure"` 4918 } 4919 4920 // String returns the string representation. 4921 // 4922 // API parameter values that are decorated as "sensitive" in the API will not 4923 // be included in the string output. The member name will be present, but the 4924 // value will be replaced with "sensitive". 4925 func (s DeleteAccessOutput) String() string { 4926 return awsutil.Prettify(s) 4927 } 4928 4929 // GoString returns the string representation. 4930 // 4931 // API parameter values that are decorated as "sensitive" in the API will not 4932 // be included in the string output. The member name will be present, but the 4933 // value will be replaced with "sensitive". 4934 func (s DeleteAccessOutput) GoString() string { 4935 return s.String() 4936 } 4937 4938 type DeleteServerInput struct { 4939 _ struct{} `type:"structure"` 4940 4941 // A unique system-assigned identifier for a server instance. 4942 // 4943 // ServerId is a required field 4944 ServerId *string `min:"19" type:"string" required:"true"` 4945 } 4946 4947 // String returns the string representation. 4948 // 4949 // API parameter values that are decorated as "sensitive" in the API will not 4950 // be included in the string output. The member name will be present, but the 4951 // value will be replaced with "sensitive". 4952 func (s DeleteServerInput) String() string { 4953 return awsutil.Prettify(s) 4954 } 4955 4956 // GoString returns the string representation. 4957 // 4958 // API parameter values that are decorated as "sensitive" in the API will not 4959 // be included in the string output. The member name will be present, but the 4960 // value will be replaced with "sensitive". 4961 func (s DeleteServerInput) GoString() string { 4962 return s.String() 4963 } 4964 4965 // Validate inspects the fields of the type to determine if they are valid. 4966 func (s *DeleteServerInput) Validate() error { 4967 invalidParams := request.ErrInvalidParams{Context: "DeleteServerInput"} 4968 if s.ServerId == nil { 4969 invalidParams.Add(request.NewErrParamRequired("ServerId")) 4970 } 4971 if s.ServerId != nil && len(*s.ServerId) < 19 { 4972 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 4973 } 4974 4975 if invalidParams.Len() > 0 { 4976 return invalidParams 4977 } 4978 return nil 4979 } 4980 4981 // SetServerId sets the ServerId field's value. 4982 func (s *DeleteServerInput) SetServerId(v string) *DeleteServerInput { 4983 s.ServerId = &v 4984 return s 4985 } 4986 4987 type DeleteServerOutput struct { 4988 _ struct{} `type:"structure"` 4989 } 4990 4991 // String returns the string representation. 4992 // 4993 // API parameter values that are decorated as "sensitive" in the API will not 4994 // be included in the string output. The member name will be present, but the 4995 // value will be replaced with "sensitive". 4996 func (s DeleteServerOutput) String() string { 4997 return awsutil.Prettify(s) 4998 } 4999 5000 // GoString returns the string representation. 5001 // 5002 // API parameter values that are decorated as "sensitive" in the API will not 5003 // be included in the string output. The member name will be present, but the 5004 // value will be replaced with "sensitive". 5005 func (s DeleteServerOutput) GoString() string { 5006 return s.String() 5007 } 5008 5009 type DeleteSshPublicKeyInput struct { 5010 _ struct{} `type:"structure"` 5011 5012 // A system-assigned unique identifier for a file transfer protocol-enabled 5013 // server instance that has the user assigned to it. 5014 // 5015 // ServerId is a required field 5016 ServerId *string `min:"19" type:"string" required:"true"` 5017 5018 // A unique identifier used to reference your user's specific SSH key. 5019 // 5020 // SshPublicKeyId is a required field 5021 SshPublicKeyId *string `min:"21" type:"string" required:"true"` 5022 5023 // A unique string that identifies a user whose public key is being deleted. 5024 // 5025 // UserName is a required field 5026 UserName *string `min:"3" type:"string" required:"true"` 5027 } 5028 5029 // String returns the string representation. 5030 // 5031 // API parameter values that are decorated as "sensitive" in the API will not 5032 // be included in the string output. The member name will be present, but the 5033 // value will be replaced with "sensitive". 5034 func (s DeleteSshPublicKeyInput) String() string { 5035 return awsutil.Prettify(s) 5036 } 5037 5038 // GoString returns the string representation. 5039 // 5040 // API parameter values that are decorated as "sensitive" in the API will not 5041 // be included in the string output. The member name will be present, but the 5042 // value will be replaced with "sensitive". 5043 func (s DeleteSshPublicKeyInput) GoString() string { 5044 return s.String() 5045 } 5046 5047 // Validate inspects the fields of the type to determine if they are valid. 5048 func (s *DeleteSshPublicKeyInput) Validate() error { 5049 invalidParams := request.ErrInvalidParams{Context: "DeleteSshPublicKeyInput"} 5050 if s.ServerId == nil { 5051 invalidParams.Add(request.NewErrParamRequired("ServerId")) 5052 } 5053 if s.ServerId != nil && len(*s.ServerId) < 19 { 5054 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 5055 } 5056 if s.SshPublicKeyId == nil { 5057 invalidParams.Add(request.NewErrParamRequired("SshPublicKeyId")) 5058 } 5059 if s.SshPublicKeyId != nil && len(*s.SshPublicKeyId) < 21 { 5060 invalidParams.Add(request.NewErrParamMinLen("SshPublicKeyId", 21)) 5061 } 5062 if s.UserName == nil { 5063 invalidParams.Add(request.NewErrParamRequired("UserName")) 5064 } 5065 if s.UserName != nil && len(*s.UserName) < 3 { 5066 invalidParams.Add(request.NewErrParamMinLen("UserName", 3)) 5067 } 5068 5069 if invalidParams.Len() > 0 { 5070 return invalidParams 5071 } 5072 return nil 5073 } 5074 5075 // SetServerId sets the ServerId field's value. 5076 func (s *DeleteSshPublicKeyInput) SetServerId(v string) *DeleteSshPublicKeyInput { 5077 s.ServerId = &v 5078 return s 5079 } 5080 5081 // SetSshPublicKeyId sets the SshPublicKeyId field's value. 5082 func (s *DeleteSshPublicKeyInput) SetSshPublicKeyId(v string) *DeleteSshPublicKeyInput { 5083 s.SshPublicKeyId = &v 5084 return s 5085 } 5086 5087 // SetUserName sets the UserName field's value. 5088 func (s *DeleteSshPublicKeyInput) SetUserName(v string) *DeleteSshPublicKeyInput { 5089 s.UserName = &v 5090 return s 5091 } 5092 5093 type DeleteSshPublicKeyOutput struct { 5094 _ struct{} `type:"structure"` 5095 } 5096 5097 // String returns the string representation. 5098 // 5099 // API parameter values that are decorated as "sensitive" in the API will not 5100 // be included in the string output. The member name will be present, but the 5101 // value will be replaced with "sensitive". 5102 func (s DeleteSshPublicKeyOutput) String() string { 5103 return awsutil.Prettify(s) 5104 } 5105 5106 // GoString returns the string representation. 5107 // 5108 // API parameter values that are decorated as "sensitive" in the API will not 5109 // be included in the string output. The member name will be present, but the 5110 // value will be replaced with "sensitive". 5111 func (s DeleteSshPublicKeyOutput) GoString() string { 5112 return s.String() 5113 } 5114 5115 // The name of the step, used to identify the delete step. 5116 type DeleteStepDetails struct { 5117 _ struct{} `type:"structure"` 5118 5119 // The name of the step, used as an identifier. 5120 Name *string `type:"string"` 5121 } 5122 5123 // String returns the string representation. 5124 // 5125 // API parameter values that are decorated as "sensitive" in the API will not 5126 // be included in the string output. The member name will be present, but the 5127 // value will be replaced with "sensitive". 5128 func (s DeleteStepDetails) String() string { 5129 return awsutil.Prettify(s) 5130 } 5131 5132 // GoString returns the string representation. 5133 // 5134 // API parameter values that are decorated as "sensitive" in the API will not 5135 // be included in the string output. The member name will be present, but the 5136 // value will be replaced with "sensitive". 5137 func (s DeleteStepDetails) GoString() string { 5138 return s.String() 5139 } 5140 5141 // SetName sets the Name field's value. 5142 func (s *DeleteStepDetails) SetName(v string) *DeleteStepDetails { 5143 s.Name = &v 5144 return s 5145 } 5146 5147 type DeleteUserInput struct { 5148 _ struct{} `type:"structure"` 5149 5150 // A system-assigned unique identifier for a server instance that has the user 5151 // assigned to it. 5152 // 5153 // ServerId is a required field 5154 ServerId *string `min:"19" type:"string" required:"true"` 5155 5156 // A unique string that identifies a user that is being deleted from a server. 5157 // 5158 // UserName is a required field 5159 UserName *string `min:"3" type:"string" required:"true"` 5160 } 5161 5162 // String returns the string representation. 5163 // 5164 // API parameter values that are decorated as "sensitive" in the API will not 5165 // be included in the string output. The member name will be present, but the 5166 // value will be replaced with "sensitive". 5167 func (s DeleteUserInput) String() string { 5168 return awsutil.Prettify(s) 5169 } 5170 5171 // GoString returns the string representation. 5172 // 5173 // API parameter values that are decorated as "sensitive" in the API will not 5174 // be included in the string output. The member name will be present, but the 5175 // value will be replaced with "sensitive". 5176 func (s DeleteUserInput) GoString() string { 5177 return s.String() 5178 } 5179 5180 // Validate inspects the fields of the type to determine if they are valid. 5181 func (s *DeleteUserInput) Validate() error { 5182 invalidParams := request.ErrInvalidParams{Context: "DeleteUserInput"} 5183 if s.ServerId == nil { 5184 invalidParams.Add(request.NewErrParamRequired("ServerId")) 5185 } 5186 if s.ServerId != nil && len(*s.ServerId) < 19 { 5187 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 5188 } 5189 if s.UserName == nil { 5190 invalidParams.Add(request.NewErrParamRequired("UserName")) 5191 } 5192 if s.UserName != nil && len(*s.UserName) < 3 { 5193 invalidParams.Add(request.NewErrParamMinLen("UserName", 3)) 5194 } 5195 5196 if invalidParams.Len() > 0 { 5197 return invalidParams 5198 } 5199 return nil 5200 } 5201 5202 // SetServerId sets the ServerId field's value. 5203 func (s *DeleteUserInput) SetServerId(v string) *DeleteUserInput { 5204 s.ServerId = &v 5205 return s 5206 } 5207 5208 // SetUserName sets the UserName field's value. 5209 func (s *DeleteUserInput) SetUserName(v string) *DeleteUserInput { 5210 s.UserName = &v 5211 return s 5212 } 5213 5214 type DeleteUserOutput struct { 5215 _ struct{} `type:"structure"` 5216 } 5217 5218 // String returns the string representation. 5219 // 5220 // API parameter values that are decorated as "sensitive" in the API will not 5221 // be included in the string output. The member name will be present, but the 5222 // value will be replaced with "sensitive". 5223 func (s DeleteUserOutput) String() string { 5224 return awsutil.Prettify(s) 5225 } 5226 5227 // GoString returns the string representation. 5228 // 5229 // API parameter values that are decorated as "sensitive" in the API will not 5230 // be included in the string output. The member name will be present, but the 5231 // value will be replaced with "sensitive". 5232 func (s DeleteUserOutput) GoString() string { 5233 return s.String() 5234 } 5235 5236 type DeleteWorkflowInput struct { 5237 _ struct{} `type:"structure"` 5238 5239 // A unique identifier for the workflow. 5240 // 5241 // WorkflowId is a required field 5242 WorkflowId *string `min:"19" type:"string" required:"true"` 5243 } 5244 5245 // String returns the string representation. 5246 // 5247 // API parameter values that are decorated as "sensitive" in the API will not 5248 // be included in the string output. The member name will be present, but the 5249 // value will be replaced with "sensitive". 5250 func (s DeleteWorkflowInput) String() string { 5251 return awsutil.Prettify(s) 5252 } 5253 5254 // GoString returns the string representation. 5255 // 5256 // API parameter values that are decorated as "sensitive" in the API will not 5257 // be included in the string output. The member name will be present, but the 5258 // value will be replaced with "sensitive". 5259 func (s DeleteWorkflowInput) GoString() string { 5260 return s.String() 5261 } 5262 5263 // Validate inspects the fields of the type to determine if they are valid. 5264 func (s *DeleteWorkflowInput) Validate() error { 5265 invalidParams := request.ErrInvalidParams{Context: "DeleteWorkflowInput"} 5266 if s.WorkflowId == nil { 5267 invalidParams.Add(request.NewErrParamRequired("WorkflowId")) 5268 } 5269 if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { 5270 invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) 5271 } 5272 5273 if invalidParams.Len() > 0 { 5274 return invalidParams 5275 } 5276 return nil 5277 } 5278 5279 // SetWorkflowId sets the WorkflowId field's value. 5280 func (s *DeleteWorkflowInput) SetWorkflowId(v string) *DeleteWorkflowInput { 5281 s.WorkflowId = &v 5282 return s 5283 } 5284 5285 type DeleteWorkflowOutput struct { 5286 _ struct{} `type:"structure"` 5287 } 5288 5289 // String returns the string representation. 5290 // 5291 // API parameter values that are decorated as "sensitive" in the API will not 5292 // be included in the string output. The member name will be present, but the 5293 // value will be replaced with "sensitive". 5294 func (s DeleteWorkflowOutput) String() string { 5295 return awsutil.Prettify(s) 5296 } 5297 5298 // GoString returns the string representation. 5299 // 5300 // API parameter values that are decorated as "sensitive" in the API will not 5301 // be included in the string output. The member name will be present, but the 5302 // value will be replaced with "sensitive". 5303 func (s DeleteWorkflowOutput) GoString() string { 5304 return s.String() 5305 } 5306 5307 type DescribeAccessInput struct { 5308 _ struct{} `type:"structure"` 5309 5310 // A unique identifier that is required to identify specific groups within your 5311 // directory. The users of the group that you associate have access to your 5312 // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon 5313 // Web Services Transfer Family. If you know the group name, you can view the 5314 // SID values by running the following command using Windows PowerShell. 5315 // 5316 // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * 5317 // | Select SamAccountName,ObjectSid 5318 // 5319 // In that command, replace YourGroupName with the name of your Active Directory 5320 // group. 5321 // 5322 // The regex used to validate this parameter is a string of characters consisting 5323 // of uppercase and lowercase alphanumeric characters with no spaces. You can 5324 // also include underscores or any of the following characters: =,.@:/- 5325 // 5326 // ExternalId is a required field 5327 ExternalId *string `min:"1" type:"string" required:"true"` 5328 5329 // A system-assigned unique identifier for a server that has this access assigned. 5330 // 5331 // ServerId is a required field 5332 ServerId *string `min:"19" type:"string" required:"true"` 5333 } 5334 5335 // String returns the string representation. 5336 // 5337 // API parameter values that are decorated as "sensitive" in the API will not 5338 // be included in the string output. The member name will be present, but the 5339 // value will be replaced with "sensitive". 5340 func (s DescribeAccessInput) String() string { 5341 return awsutil.Prettify(s) 5342 } 5343 5344 // GoString returns the string representation. 5345 // 5346 // API parameter values that are decorated as "sensitive" in the API will not 5347 // be included in the string output. The member name will be present, but the 5348 // value will be replaced with "sensitive". 5349 func (s DescribeAccessInput) GoString() string { 5350 return s.String() 5351 } 5352 5353 // Validate inspects the fields of the type to determine if they are valid. 5354 func (s *DescribeAccessInput) Validate() error { 5355 invalidParams := request.ErrInvalidParams{Context: "DescribeAccessInput"} 5356 if s.ExternalId == nil { 5357 invalidParams.Add(request.NewErrParamRequired("ExternalId")) 5358 } 5359 if s.ExternalId != nil && len(*s.ExternalId) < 1 { 5360 invalidParams.Add(request.NewErrParamMinLen("ExternalId", 1)) 5361 } 5362 if s.ServerId == nil { 5363 invalidParams.Add(request.NewErrParamRequired("ServerId")) 5364 } 5365 if s.ServerId != nil && len(*s.ServerId) < 19 { 5366 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 5367 } 5368 5369 if invalidParams.Len() > 0 { 5370 return invalidParams 5371 } 5372 return nil 5373 } 5374 5375 // SetExternalId sets the ExternalId field's value. 5376 func (s *DescribeAccessInput) SetExternalId(v string) *DescribeAccessInput { 5377 s.ExternalId = &v 5378 return s 5379 } 5380 5381 // SetServerId sets the ServerId field's value. 5382 func (s *DescribeAccessInput) SetServerId(v string) *DescribeAccessInput { 5383 s.ServerId = &v 5384 return s 5385 } 5386 5387 type DescribeAccessOutput struct { 5388 _ struct{} `type:"structure"` 5389 5390 // The external ID of the server that the access is attached to. 5391 // 5392 // Access is a required field 5393 Access *DescribedAccess `type:"structure" required:"true"` 5394 5395 // A system-assigned unique identifier for a server that has this access assigned. 5396 // 5397 // ServerId is a required field 5398 ServerId *string `min:"19" type:"string" required:"true"` 5399 } 5400 5401 // String returns the string representation. 5402 // 5403 // API parameter values that are decorated as "sensitive" in the API will not 5404 // be included in the string output. The member name will be present, but the 5405 // value will be replaced with "sensitive". 5406 func (s DescribeAccessOutput) String() string { 5407 return awsutil.Prettify(s) 5408 } 5409 5410 // GoString returns the string representation. 5411 // 5412 // API parameter values that are decorated as "sensitive" in the API will not 5413 // be included in the string output. The member name will be present, but the 5414 // value will be replaced with "sensitive". 5415 func (s DescribeAccessOutput) GoString() string { 5416 return s.String() 5417 } 5418 5419 // SetAccess sets the Access field's value. 5420 func (s *DescribeAccessOutput) SetAccess(v *DescribedAccess) *DescribeAccessOutput { 5421 s.Access = v 5422 return s 5423 } 5424 5425 // SetServerId sets the ServerId field's value. 5426 func (s *DescribeAccessOutput) SetServerId(v string) *DescribeAccessOutput { 5427 s.ServerId = &v 5428 return s 5429 } 5430 5431 type DescribeExecutionInput struct { 5432 _ struct{} `type:"structure"` 5433 5434 // A unique identifier for the execution of a workflow. 5435 // 5436 // ExecutionId is a required field 5437 ExecutionId *string `min:"36" type:"string" required:"true"` 5438 5439 // A unique identifier for the workflow. 5440 // 5441 // WorkflowId is a required field 5442 WorkflowId *string `min:"19" type:"string" required:"true"` 5443 } 5444 5445 // String returns the string representation. 5446 // 5447 // API parameter values that are decorated as "sensitive" in the API will not 5448 // be included in the string output. The member name will be present, but the 5449 // value will be replaced with "sensitive". 5450 func (s DescribeExecutionInput) String() string { 5451 return awsutil.Prettify(s) 5452 } 5453 5454 // GoString returns the string representation. 5455 // 5456 // API parameter values that are decorated as "sensitive" in the API will not 5457 // be included in the string output. The member name will be present, but the 5458 // value will be replaced with "sensitive". 5459 func (s DescribeExecutionInput) GoString() string { 5460 return s.String() 5461 } 5462 5463 // Validate inspects the fields of the type to determine if they are valid. 5464 func (s *DescribeExecutionInput) Validate() error { 5465 invalidParams := request.ErrInvalidParams{Context: "DescribeExecutionInput"} 5466 if s.ExecutionId == nil { 5467 invalidParams.Add(request.NewErrParamRequired("ExecutionId")) 5468 } 5469 if s.ExecutionId != nil && len(*s.ExecutionId) < 36 { 5470 invalidParams.Add(request.NewErrParamMinLen("ExecutionId", 36)) 5471 } 5472 if s.WorkflowId == nil { 5473 invalidParams.Add(request.NewErrParamRequired("WorkflowId")) 5474 } 5475 if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { 5476 invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) 5477 } 5478 5479 if invalidParams.Len() > 0 { 5480 return invalidParams 5481 } 5482 return nil 5483 } 5484 5485 // SetExecutionId sets the ExecutionId field's value. 5486 func (s *DescribeExecutionInput) SetExecutionId(v string) *DescribeExecutionInput { 5487 s.ExecutionId = &v 5488 return s 5489 } 5490 5491 // SetWorkflowId sets the WorkflowId field's value. 5492 func (s *DescribeExecutionInput) SetWorkflowId(v string) *DescribeExecutionInput { 5493 s.WorkflowId = &v 5494 return s 5495 } 5496 5497 type DescribeExecutionOutput struct { 5498 _ struct{} `type:"structure"` 5499 5500 // The structure that contains the details of the workflow' execution. 5501 // 5502 // Execution is a required field 5503 Execution *DescribedExecution `type:"structure" required:"true"` 5504 5505 // A unique identifier for the workflow. 5506 // 5507 // WorkflowId is a required field 5508 WorkflowId *string `min:"19" type:"string" required:"true"` 5509 } 5510 5511 // String 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 DescribeExecutionOutput) String() string { 5517 return awsutil.Prettify(s) 5518 } 5519 5520 // GoString returns the string representation. 5521 // 5522 // API parameter values that are decorated as "sensitive" in the API will not 5523 // be included in the string output. The member name will be present, but the 5524 // value will be replaced with "sensitive". 5525 func (s DescribeExecutionOutput) GoString() string { 5526 return s.String() 5527 } 5528 5529 // SetExecution sets the Execution field's value. 5530 func (s *DescribeExecutionOutput) SetExecution(v *DescribedExecution) *DescribeExecutionOutput { 5531 s.Execution = v 5532 return s 5533 } 5534 5535 // SetWorkflowId sets the WorkflowId field's value. 5536 func (s *DescribeExecutionOutput) SetWorkflowId(v string) *DescribeExecutionOutput { 5537 s.WorkflowId = &v 5538 return s 5539 } 5540 5541 type DescribeSecurityPolicyInput struct { 5542 _ struct{} `type:"structure"` 5543 5544 // Specifies the name of the security policy that is attached to the server. 5545 // 5546 // SecurityPolicyName is a required field 5547 SecurityPolicyName *string `type:"string" required:"true"` 5548 } 5549 5550 // String returns the string representation. 5551 // 5552 // API parameter values that are decorated as "sensitive" in the API will not 5553 // be included in the string output. The member name will be present, but the 5554 // value will be replaced with "sensitive". 5555 func (s DescribeSecurityPolicyInput) String() string { 5556 return awsutil.Prettify(s) 5557 } 5558 5559 // GoString returns the string representation. 5560 // 5561 // API parameter values that are decorated as "sensitive" in the API will not 5562 // be included in the string output. The member name will be present, but the 5563 // value will be replaced with "sensitive". 5564 func (s DescribeSecurityPolicyInput) GoString() string { 5565 return s.String() 5566 } 5567 5568 // Validate inspects the fields of the type to determine if they are valid. 5569 func (s *DescribeSecurityPolicyInput) Validate() error { 5570 invalidParams := request.ErrInvalidParams{Context: "DescribeSecurityPolicyInput"} 5571 if s.SecurityPolicyName == nil { 5572 invalidParams.Add(request.NewErrParamRequired("SecurityPolicyName")) 5573 } 5574 5575 if invalidParams.Len() > 0 { 5576 return invalidParams 5577 } 5578 return nil 5579 } 5580 5581 // SetSecurityPolicyName sets the SecurityPolicyName field's value. 5582 func (s *DescribeSecurityPolicyInput) SetSecurityPolicyName(v string) *DescribeSecurityPolicyInput { 5583 s.SecurityPolicyName = &v 5584 return s 5585 } 5586 5587 type DescribeSecurityPolicyOutput struct { 5588 _ struct{} `type:"structure"` 5589 5590 // An array containing the properties of the security policy. 5591 // 5592 // SecurityPolicy is a required field 5593 SecurityPolicy *DescribedSecurityPolicy `type:"structure" required:"true"` 5594 } 5595 5596 // String returns the string representation. 5597 // 5598 // API parameter values that are decorated as "sensitive" in the API will not 5599 // be included in the string output. The member name will be present, but the 5600 // value will be replaced with "sensitive". 5601 func (s DescribeSecurityPolicyOutput) String() string { 5602 return awsutil.Prettify(s) 5603 } 5604 5605 // GoString returns the string representation. 5606 // 5607 // API parameter values that are decorated as "sensitive" in the API will not 5608 // be included in the string output. The member name will be present, but the 5609 // value will be replaced with "sensitive". 5610 func (s DescribeSecurityPolicyOutput) GoString() string { 5611 return s.String() 5612 } 5613 5614 // SetSecurityPolicy sets the SecurityPolicy field's value. 5615 func (s *DescribeSecurityPolicyOutput) SetSecurityPolicy(v *DescribedSecurityPolicy) *DescribeSecurityPolicyOutput { 5616 s.SecurityPolicy = v 5617 return s 5618 } 5619 5620 type DescribeServerInput struct { 5621 _ struct{} `type:"structure"` 5622 5623 // A system-assigned unique identifier for a server. 5624 // 5625 // ServerId is a required field 5626 ServerId *string `min:"19" type:"string" required:"true"` 5627 } 5628 5629 // String returns the string representation. 5630 // 5631 // API parameter values that are decorated as "sensitive" in the API will not 5632 // be included in the string output. The member name will be present, but the 5633 // value will be replaced with "sensitive". 5634 func (s DescribeServerInput) String() string { 5635 return awsutil.Prettify(s) 5636 } 5637 5638 // GoString returns the string representation. 5639 // 5640 // API parameter values that are decorated as "sensitive" in the API will not 5641 // be included in the string output. The member name will be present, but the 5642 // value will be replaced with "sensitive". 5643 func (s DescribeServerInput) GoString() string { 5644 return s.String() 5645 } 5646 5647 // Validate inspects the fields of the type to determine if they are valid. 5648 func (s *DescribeServerInput) Validate() error { 5649 invalidParams := request.ErrInvalidParams{Context: "DescribeServerInput"} 5650 if s.ServerId == nil { 5651 invalidParams.Add(request.NewErrParamRequired("ServerId")) 5652 } 5653 if s.ServerId != nil && len(*s.ServerId) < 19 { 5654 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 5655 } 5656 5657 if invalidParams.Len() > 0 { 5658 return invalidParams 5659 } 5660 return nil 5661 } 5662 5663 // SetServerId sets the ServerId field's value. 5664 func (s *DescribeServerInput) SetServerId(v string) *DescribeServerInput { 5665 s.ServerId = &v 5666 return s 5667 } 5668 5669 type DescribeServerOutput struct { 5670 _ struct{} `type:"structure"` 5671 5672 // An array containing the properties of a server with the ServerID you specified. 5673 // 5674 // Server is a required field 5675 Server *DescribedServer `type:"structure" required:"true"` 5676 } 5677 5678 // String returns the string representation. 5679 // 5680 // API parameter values that are decorated as "sensitive" in the API will not 5681 // be included in the string output. The member name will be present, but the 5682 // value will be replaced with "sensitive". 5683 func (s DescribeServerOutput) String() string { 5684 return awsutil.Prettify(s) 5685 } 5686 5687 // GoString returns the string representation. 5688 // 5689 // API parameter values that are decorated as "sensitive" in the API will not 5690 // be included in the string output. The member name will be present, but the 5691 // value will be replaced with "sensitive". 5692 func (s DescribeServerOutput) GoString() string { 5693 return s.String() 5694 } 5695 5696 // SetServer sets the Server field's value. 5697 func (s *DescribeServerOutput) SetServer(v *DescribedServer) *DescribeServerOutput { 5698 s.Server = v 5699 return s 5700 } 5701 5702 type DescribeUserInput struct { 5703 _ struct{} `type:"structure"` 5704 5705 // A system-assigned unique identifier for a server that has this user assigned. 5706 // 5707 // ServerId is a required field 5708 ServerId *string `min:"19" type:"string" required:"true"` 5709 5710 // The name of the user assigned to one or more servers. User names are part 5711 // of the sign-in credentials to use the Amazon Web Services Transfer Family 5712 // service and perform file transfer tasks. 5713 // 5714 // UserName is a required field 5715 UserName *string `min:"3" type:"string" required:"true"` 5716 } 5717 5718 // String returns the string representation. 5719 // 5720 // API parameter values that are decorated as "sensitive" in the API will not 5721 // be included in the string output. The member name will be present, but the 5722 // value will be replaced with "sensitive". 5723 func (s DescribeUserInput) String() string { 5724 return awsutil.Prettify(s) 5725 } 5726 5727 // GoString returns the string representation. 5728 // 5729 // API parameter values that are decorated as "sensitive" in the API will not 5730 // be included in the string output. The member name will be present, but the 5731 // value will be replaced with "sensitive". 5732 func (s DescribeUserInput) GoString() string { 5733 return s.String() 5734 } 5735 5736 // Validate inspects the fields of the type to determine if they are valid. 5737 func (s *DescribeUserInput) Validate() error { 5738 invalidParams := request.ErrInvalidParams{Context: "DescribeUserInput"} 5739 if s.ServerId == nil { 5740 invalidParams.Add(request.NewErrParamRequired("ServerId")) 5741 } 5742 if s.ServerId != nil && len(*s.ServerId) < 19 { 5743 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 5744 } 5745 if s.UserName == nil { 5746 invalidParams.Add(request.NewErrParamRequired("UserName")) 5747 } 5748 if s.UserName != nil && len(*s.UserName) < 3 { 5749 invalidParams.Add(request.NewErrParamMinLen("UserName", 3)) 5750 } 5751 5752 if invalidParams.Len() > 0 { 5753 return invalidParams 5754 } 5755 return nil 5756 } 5757 5758 // SetServerId sets the ServerId field's value. 5759 func (s *DescribeUserInput) SetServerId(v string) *DescribeUserInput { 5760 s.ServerId = &v 5761 return s 5762 } 5763 5764 // SetUserName sets the UserName field's value. 5765 func (s *DescribeUserInput) SetUserName(v string) *DescribeUserInput { 5766 s.UserName = &v 5767 return s 5768 } 5769 5770 type DescribeUserOutput struct { 5771 _ struct{} `type:"structure"` 5772 5773 // A system-assigned unique identifier for a server that has this user assigned. 5774 // 5775 // ServerId is a required field 5776 ServerId *string `min:"19" type:"string" required:"true"` 5777 5778 // An array containing the properties of the user account for the ServerID value 5779 // that you specified. 5780 // 5781 // User is a required field 5782 User *DescribedUser `type:"structure" required:"true"` 5783 } 5784 5785 // String returns the string representation. 5786 // 5787 // API parameter values that are decorated as "sensitive" in the API will not 5788 // be included in the string output. The member name will be present, but the 5789 // value will be replaced with "sensitive". 5790 func (s DescribeUserOutput) String() string { 5791 return awsutil.Prettify(s) 5792 } 5793 5794 // GoString returns the string representation. 5795 // 5796 // API parameter values that are decorated as "sensitive" in the API will not 5797 // be included in the string output. The member name will be present, but the 5798 // value will be replaced with "sensitive". 5799 func (s DescribeUserOutput) GoString() string { 5800 return s.String() 5801 } 5802 5803 // SetServerId sets the ServerId field's value. 5804 func (s *DescribeUserOutput) SetServerId(v string) *DescribeUserOutput { 5805 s.ServerId = &v 5806 return s 5807 } 5808 5809 // SetUser sets the User field's value. 5810 func (s *DescribeUserOutput) SetUser(v *DescribedUser) *DescribeUserOutput { 5811 s.User = v 5812 return s 5813 } 5814 5815 type DescribeWorkflowInput struct { 5816 _ struct{} `type:"structure"` 5817 5818 // A unique identifier for the workflow. 5819 // 5820 // WorkflowId is a required field 5821 WorkflowId *string `min:"19" type:"string" required:"true"` 5822 } 5823 5824 // String returns the string representation. 5825 // 5826 // API parameter values that are decorated as "sensitive" in the API will not 5827 // be included in the string output. The member name will be present, but the 5828 // value will be replaced with "sensitive". 5829 func (s DescribeWorkflowInput) String() string { 5830 return awsutil.Prettify(s) 5831 } 5832 5833 // GoString returns the string representation. 5834 // 5835 // API parameter values that are decorated as "sensitive" in the API will not 5836 // be included in the string output. The member name will be present, but the 5837 // value will be replaced with "sensitive". 5838 func (s DescribeWorkflowInput) GoString() string { 5839 return s.String() 5840 } 5841 5842 // Validate inspects the fields of the type to determine if they are valid. 5843 func (s *DescribeWorkflowInput) Validate() error { 5844 invalidParams := request.ErrInvalidParams{Context: "DescribeWorkflowInput"} 5845 if s.WorkflowId == nil { 5846 invalidParams.Add(request.NewErrParamRequired("WorkflowId")) 5847 } 5848 if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { 5849 invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) 5850 } 5851 5852 if invalidParams.Len() > 0 { 5853 return invalidParams 5854 } 5855 return nil 5856 } 5857 5858 // SetWorkflowId sets the WorkflowId field's value. 5859 func (s *DescribeWorkflowInput) SetWorkflowId(v string) *DescribeWorkflowInput { 5860 s.WorkflowId = &v 5861 return s 5862 } 5863 5864 type DescribeWorkflowOutput struct { 5865 _ struct{} `type:"structure"` 5866 5867 // The structure that contains the details of the workflow. 5868 // 5869 // Workflow is a required field 5870 Workflow *DescribedWorkflow `type:"structure" required:"true"` 5871 } 5872 5873 // String returns the string representation. 5874 // 5875 // API parameter values that are decorated as "sensitive" in the API will not 5876 // be included in the string output. The member name will be present, but the 5877 // value will be replaced with "sensitive". 5878 func (s DescribeWorkflowOutput) String() string { 5879 return awsutil.Prettify(s) 5880 } 5881 5882 // GoString returns the string representation. 5883 // 5884 // API parameter values that are decorated as "sensitive" in the API will not 5885 // be included in the string output. The member name will be present, but the 5886 // value will be replaced with "sensitive". 5887 func (s DescribeWorkflowOutput) GoString() string { 5888 return s.String() 5889 } 5890 5891 // SetWorkflow sets the Workflow field's value. 5892 func (s *DescribeWorkflowOutput) SetWorkflow(v *DescribedWorkflow) *DescribeWorkflowOutput { 5893 s.Workflow = v 5894 return s 5895 } 5896 5897 // Describes the properties of the access that was specified. 5898 type DescribedAccess struct { 5899 _ struct{} `type:"structure"` 5900 5901 // A unique identifier that is required to identify specific groups within your 5902 // directory. The users of the group that you associate have access to your 5903 // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon 5904 // Web Services Transfer Family. If you know the group name, you can view the 5905 // SID values by running the following command using Windows PowerShell. 5906 // 5907 // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * 5908 // | Select SamAccountName,ObjectSid 5909 // 5910 // In that command, replace YourGroupName with the name of your Active Directory 5911 // group. 5912 // 5913 // The regex used to validate this parameter is a string of characters consisting 5914 // of uppercase and lowercase alphanumeric characters with no spaces. You can 5915 // also include underscores or any of the following characters: =,.@:/- 5916 ExternalId *string `min:"1" type:"string"` 5917 5918 // The landing directory (folder) for a user when they log in to the server 5919 // using the client. 5920 // 5921 // A HomeDirectory example is /bucket_name/home/mydirectory. 5922 HomeDirectory *string `type:"string"` 5923 5924 // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths 5925 // and keys should be visible to your user and how you want to make them visible. 5926 // You must specify the Entry and Target pair, where Entry shows how the path 5927 // is made visible and Target is the actual Amazon S3 or Amazon EFS path. If 5928 // you only specify a target, it is displayed as is. You also must ensure that 5929 // your Amazon Web Services Identity and Access Management (IAM) role provides 5930 // access to paths in Target. This value can only be set when HomeDirectoryType 5931 // is set to LOGICAL. 5932 // 5933 // In most cases, you can use this value instead of the session policy to lock 5934 // down the associated access to the designated home directory ("chroot"). To 5935 // do this, you can set Entry to '/' and set Target to the HomeDirectory parameter 5936 // value. 5937 HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` 5938 5939 // The type of landing directory (folder) you want your users' home directory 5940 // to be when they log into the server. If you set it to PATH, the user will 5941 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 5942 // protocol clients. If you set it LOGICAL, you need to provide mappings in 5943 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 5944 // visible to your users. 5945 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 5946 5947 // A session policy for your user so that you can use the same IAM role across 5948 // multiple users. This policy scopes down user access to portions of their 5949 // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, 5950 // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. 5951 Policy *string `type:"string"` 5952 5953 // The full POSIX identity, including user ID (Uid), group ID (Gid), and any 5954 // secondary groups IDs (SecondaryGids), that controls your users' access to 5955 // your Amazon EFS file systems. The POSIX permissions that are set on files 5956 // and directories in your file system determine the level of access your users 5957 // get when transferring files into and out of your Amazon EFS file systems. 5958 PosixProfile *PosixProfile `type:"structure"` 5959 5960 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 5961 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 5962 // to this role determine the level of access that you want to provide your 5963 // users when transferring files into and out of your Amazon S3 bucket or EFS 5964 // file system. The IAM role should also contain a trust relationship that allows 5965 // the server to access your resources when servicing your users' transfer requests. 5966 Role *string `min:"20" type:"string"` 5967 } 5968 5969 // String returns the string representation. 5970 // 5971 // API parameter values that are decorated as "sensitive" in the API will not 5972 // be included in the string output. The member name will be present, but the 5973 // value will be replaced with "sensitive". 5974 func (s DescribedAccess) String() string { 5975 return awsutil.Prettify(s) 5976 } 5977 5978 // GoString returns the string representation. 5979 // 5980 // API parameter values that are decorated as "sensitive" in the API will not 5981 // be included in the string output. The member name will be present, but the 5982 // value will be replaced with "sensitive". 5983 func (s DescribedAccess) GoString() string { 5984 return s.String() 5985 } 5986 5987 // SetExternalId sets the ExternalId field's value. 5988 func (s *DescribedAccess) SetExternalId(v string) *DescribedAccess { 5989 s.ExternalId = &v 5990 return s 5991 } 5992 5993 // SetHomeDirectory sets the HomeDirectory field's value. 5994 func (s *DescribedAccess) SetHomeDirectory(v string) *DescribedAccess { 5995 s.HomeDirectory = &v 5996 return s 5997 } 5998 5999 // SetHomeDirectoryMappings sets the HomeDirectoryMappings field's value. 6000 func (s *DescribedAccess) SetHomeDirectoryMappings(v []*HomeDirectoryMapEntry) *DescribedAccess { 6001 s.HomeDirectoryMappings = v 6002 return s 6003 } 6004 6005 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 6006 func (s *DescribedAccess) SetHomeDirectoryType(v string) *DescribedAccess { 6007 s.HomeDirectoryType = &v 6008 return s 6009 } 6010 6011 // SetPolicy sets the Policy field's value. 6012 func (s *DescribedAccess) SetPolicy(v string) *DescribedAccess { 6013 s.Policy = &v 6014 return s 6015 } 6016 6017 // SetPosixProfile sets the PosixProfile field's value. 6018 func (s *DescribedAccess) SetPosixProfile(v *PosixProfile) *DescribedAccess { 6019 s.PosixProfile = v 6020 return s 6021 } 6022 6023 // SetRole sets the Role field's value. 6024 func (s *DescribedAccess) SetRole(v string) *DescribedAccess { 6025 s.Role = &v 6026 return s 6027 } 6028 6029 // The details for an execution object. 6030 type DescribedExecution struct { 6031 _ struct{} `type:"structure"` 6032 6033 // A unique identifier for the execution of a workflow. 6034 ExecutionId *string `min:"36" type:"string"` 6035 6036 // The IAM role associated with the execution. 6037 ExecutionRole *string `min:"20" type:"string"` 6038 6039 // A structure that describes the Amazon S3 or EFS file location. This is the 6040 // file location when the execution begins: if the file is being copied, this 6041 // is the initial (as opposed to destination) file location. 6042 InitialFileLocation *FileLocation `type:"structure"` 6043 6044 // The IAM logging role associated with the execution. 6045 LoggingConfiguration *LoggingConfiguration `type:"structure"` 6046 6047 // The full POSIX identity, including user ID (Uid), group ID (Gid), and any 6048 // secondary groups IDs (SecondaryGids), that controls your users' access to 6049 // your Amazon EFS file systems. The POSIX permissions that are set on files 6050 // and directories in your file system determine the level of access your users 6051 // get when transferring files into and out of your Amazon EFS file systems. 6052 PosixProfile *PosixProfile `type:"structure"` 6053 6054 // A structure that describes the execution results. This includes a list of 6055 // the steps along with the details of each step, error type and message (if 6056 // any), and the OnExceptionSteps structure. 6057 Results *ExecutionResults `type:"structure"` 6058 6059 // A container object for the session details associated with a workflow. 6060 ServiceMetadata *ServiceMetadata `type:"structure"` 6061 6062 // The status is one of the execution. Can be in progress, completed, exception 6063 // encountered, or handling the exception. 6064 Status *string `type:"string" enum:"ExecutionStatus"` 6065 } 6066 6067 // String returns the string representation. 6068 // 6069 // API parameter values that are decorated as "sensitive" in the API will not 6070 // be included in the string output. The member name will be present, but the 6071 // value will be replaced with "sensitive". 6072 func (s DescribedExecution) String() string { 6073 return awsutil.Prettify(s) 6074 } 6075 6076 // GoString returns the string representation. 6077 // 6078 // API parameter values that are decorated as "sensitive" in the API will not 6079 // be included in the string output. The member name will be present, but the 6080 // value will be replaced with "sensitive". 6081 func (s DescribedExecution) GoString() string { 6082 return s.String() 6083 } 6084 6085 // SetExecutionId sets the ExecutionId field's value. 6086 func (s *DescribedExecution) SetExecutionId(v string) *DescribedExecution { 6087 s.ExecutionId = &v 6088 return s 6089 } 6090 6091 // SetExecutionRole sets the ExecutionRole field's value. 6092 func (s *DescribedExecution) SetExecutionRole(v string) *DescribedExecution { 6093 s.ExecutionRole = &v 6094 return s 6095 } 6096 6097 // SetInitialFileLocation sets the InitialFileLocation field's value. 6098 func (s *DescribedExecution) SetInitialFileLocation(v *FileLocation) *DescribedExecution { 6099 s.InitialFileLocation = v 6100 return s 6101 } 6102 6103 // SetLoggingConfiguration sets the LoggingConfiguration field's value. 6104 func (s *DescribedExecution) SetLoggingConfiguration(v *LoggingConfiguration) *DescribedExecution { 6105 s.LoggingConfiguration = v 6106 return s 6107 } 6108 6109 // SetPosixProfile sets the PosixProfile field's value. 6110 func (s *DescribedExecution) SetPosixProfile(v *PosixProfile) *DescribedExecution { 6111 s.PosixProfile = v 6112 return s 6113 } 6114 6115 // SetResults sets the Results field's value. 6116 func (s *DescribedExecution) SetResults(v *ExecutionResults) *DescribedExecution { 6117 s.Results = v 6118 return s 6119 } 6120 6121 // SetServiceMetadata sets the ServiceMetadata field's value. 6122 func (s *DescribedExecution) SetServiceMetadata(v *ServiceMetadata) *DescribedExecution { 6123 s.ServiceMetadata = v 6124 return s 6125 } 6126 6127 // SetStatus sets the Status field's value. 6128 func (s *DescribedExecution) SetStatus(v string) *DescribedExecution { 6129 s.Status = &v 6130 return s 6131 } 6132 6133 // Describes the properties of a security policy that was specified. For more 6134 // information about security policies, see Working with security policies (https://docs.aws.amazon.com/transfer/latest/userguide/security-policies.html). 6135 type DescribedSecurityPolicy struct { 6136 _ struct{} `type:"structure"` 6137 6138 // Specifies whether this policy enables Federal Information Processing Standards 6139 // (FIPS). 6140 Fips *bool `type:"boolean"` 6141 6142 // Specifies the name of the security policy that is attached to the server. 6143 // 6144 // SecurityPolicyName is a required field 6145 SecurityPolicyName *string `type:"string" required:"true"` 6146 6147 // Specifies the enabled Secure Shell (SSH) cipher encryption algorithms in 6148 // the security policy that is attached to the server. 6149 SshCiphers []*string `type:"list"` 6150 6151 // Specifies the enabled SSH key exchange (KEX) encryption algorithms in the 6152 // security policy that is attached to the server. 6153 SshKexs []*string `type:"list"` 6154 6155 // Specifies the enabled SSH message authentication code (MAC) encryption algorithms 6156 // in the security policy that is attached to the server. 6157 SshMacs []*string `type:"list"` 6158 6159 // Specifies the enabled Transport Layer Security (TLS) cipher encryption algorithms 6160 // in the security policy that is attached to the server. 6161 TlsCiphers []*string `type:"list"` 6162 } 6163 6164 // String returns the string representation. 6165 // 6166 // API parameter values that are decorated as "sensitive" in the API will not 6167 // be included in the string output. The member name will be present, but the 6168 // value will be replaced with "sensitive". 6169 func (s DescribedSecurityPolicy) String() string { 6170 return awsutil.Prettify(s) 6171 } 6172 6173 // GoString returns the string representation. 6174 // 6175 // API parameter values that are decorated as "sensitive" in the API will not 6176 // be included in the string output. The member name will be present, but the 6177 // value will be replaced with "sensitive". 6178 func (s DescribedSecurityPolicy) GoString() string { 6179 return s.String() 6180 } 6181 6182 // SetFips sets the Fips field's value. 6183 func (s *DescribedSecurityPolicy) SetFips(v bool) *DescribedSecurityPolicy { 6184 s.Fips = &v 6185 return s 6186 } 6187 6188 // SetSecurityPolicyName sets the SecurityPolicyName field's value. 6189 func (s *DescribedSecurityPolicy) SetSecurityPolicyName(v string) *DescribedSecurityPolicy { 6190 s.SecurityPolicyName = &v 6191 return s 6192 } 6193 6194 // SetSshCiphers sets the SshCiphers field's value. 6195 func (s *DescribedSecurityPolicy) SetSshCiphers(v []*string) *DescribedSecurityPolicy { 6196 s.SshCiphers = v 6197 return s 6198 } 6199 6200 // SetSshKexs sets the SshKexs field's value. 6201 func (s *DescribedSecurityPolicy) SetSshKexs(v []*string) *DescribedSecurityPolicy { 6202 s.SshKexs = v 6203 return s 6204 } 6205 6206 // SetSshMacs sets the SshMacs field's value. 6207 func (s *DescribedSecurityPolicy) SetSshMacs(v []*string) *DescribedSecurityPolicy { 6208 s.SshMacs = v 6209 return s 6210 } 6211 6212 // SetTlsCiphers sets the TlsCiphers field's value. 6213 func (s *DescribedSecurityPolicy) SetTlsCiphers(v []*string) *DescribedSecurityPolicy { 6214 s.TlsCiphers = v 6215 return s 6216 } 6217 6218 // Describes the properties of a file transfer protocol-enabled server that 6219 // was specified. 6220 type DescribedServer struct { 6221 _ struct{} `type:"structure"` 6222 6223 // Specifies the unique Amazon Resource Name (ARN) of the server. 6224 // 6225 // Arn is a required field 6226 Arn *string `min:"20" type:"string" required:"true"` 6227 6228 // Specifies the ARN of the Amazon Web ServicesCertificate Manager (ACM) certificate. 6229 // Required when Protocols is set to FTPS. 6230 Certificate *string `type:"string"` 6231 6232 // Specifies the domain of the storage system that is used for file transfers. 6233 Domain *string `type:"string" enum:"Domain"` 6234 6235 // The virtual private cloud (VPC) endpoint settings that are configured for 6236 // your server. When you host your endpoint within your VPC, you can make it 6237 // accessible only to resources within your VPC, or you can attach Elastic IP 6238 // addresses and make it accessible to clients over the internet. Your VPC's 6239 // default security groups are automatically assigned to your endpoint. 6240 EndpointDetails *EndpointDetails `type:"structure"` 6241 6242 // Defines the type of endpoint that your server is connected to. If your server 6243 // is connected to a VPC endpoint, your server isn't accessible over the public 6244 // internet. 6245 EndpointType *string `type:"string" enum:"EndpointType"` 6246 6247 // Specifies the Base64-encoded SHA256 fingerprint of the server's host key. 6248 // This value is equivalent to the output of the ssh-keygen -l -f my-new-server-key 6249 // command. 6250 HostKeyFingerprint *string `type:"string"` 6251 6252 // Specifies information to call a customer-supplied authentication API. This 6253 // field is not populated when the IdentityProviderType of a server is AWS_DIRECTORY_SERVICE 6254 // or SERVICE_MANAGED. 6255 IdentityProviderDetails *IdentityProviderDetails `type:"structure"` 6256 6257 // Specifies the mode of authentication for a server. The default value is SERVICE_MANAGED, 6258 // which allows you to store and access user credentials within the Amazon Web 6259 // Services Transfer Family service. 6260 // 6261 // Use AWS_DIRECTORY_SERVICE to provide access to Active Directory groups in 6262 // Amazon Web Services Managed Active Directory or Microsoft Active Directory 6263 // in your on-premises environment or in Amazon Web Services using AD Connectors. 6264 // This option also requires you to provide a Directory ID using the IdentityProviderDetails 6265 // parameter. 6266 // 6267 // Use the API_GATEWAY value to integrate with an identity provider of your 6268 // choosing. The API_GATEWAY setting requires you to provide an API Gateway 6269 // endpoint URL to call for authentication using the IdentityProviderDetails 6270 // parameter. 6271 IdentityProviderType *string `type:"string" enum:"IdentityProviderType"` 6272 6273 // Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 6274 // and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch 6275 // logging for Amazon S3 or Amazon EFS events. When set, user activity can be 6276 // viewed in your CloudWatch logs. 6277 LoggingRole *string `min:"20" type:"string"` 6278 6279 // The protocol settings that are configured for your server. 6280 // 6281 // Use the PassiveIp parameter to indicate passive mode. Enter a single dotted-quad 6282 // IPv4 address, such as the external IP address of a firewall, router, or load 6283 // balancer. 6284 ProtocolDetails *ProtocolDetails `type:"structure"` 6285 6286 // Specifies the file transfer protocol or protocols over which your file transfer 6287 // protocol client can connect to your server's endpoint. The available protocols 6288 // are: 6289 // 6290 // * SFTP (Secure Shell (SSH) File Transfer Protocol): File transfer over 6291 // SSH 6292 // 6293 // * FTPS (File Transfer Protocol Secure): File transfer with TLS encryption 6294 // 6295 // * FTP (File Transfer Protocol): Unencrypted file transfer 6296 Protocols []*string `min:"1" type:"list"` 6297 6298 // Specifies the name of the security policy that is attached to the server. 6299 SecurityPolicyName *string `type:"string"` 6300 6301 // Specifies the unique system-assigned identifier for a server that you instantiate. 6302 ServerId *string `min:"19" type:"string"` 6303 6304 // Specifies the condition of a server for the server that was described. A 6305 // value of ONLINE indicates that the server can accept jobs and transfer files. 6306 // A State value of OFFLINE means that the server cannot perform file transfer 6307 // operations. 6308 // 6309 // The states of STARTING and STOPPING indicate that the server is in an intermediate 6310 // state, either not fully able to respond, or not fully offline. The values 6311 // of START_FAILED or STOP_FAILED can indicate an error condition. 6312 State *string `type:"string" enum:"State"` 6313 6314 // Specifies the key-value pairs that you can use to search for and group servers 6315 // that were assigned to the server that was described. 6316 Tags []*Tag `min:"1" type:"list"` 6317 6318 // Specifies the number of users that are assigned to a server you specified 6319 // with the ServerId. 6320 UserCount *int64 `type:"integer"` 6321 6322 // Specifies the workflow ID for the workflow to assign and the execution role 6323 // used for executing the workflow. 6324 WorkflowDetails *WorkflowDetails `type:"structure"` 6325 } 6326 6327 // String returns the string representation. 6328 // 6329 // API parameter values that are decorated as "sensitive" in the API will not 6330 // be included in the string output. The member name will be present, but the 6331 // value will be replaced with "sensitive". 6332 func (s DescribedServer) String() string { 6333 return awsutil.Prettify(s) 6334 } 6335 6336 // GoString returns the string representation. 6337 // 6338 // API parameter values that are decorated as "sensitive" in the API will not 6339 // be included in the string output. The member name will be present, but the 6340 // value will be replaced with "sensitive". 6341 func (s DescribedServer) GoString() string { 6342 return s.String() 6343 } 6344 6345 // SetArn sets the Arn field's value. 6346 func (s *DescribedServer) SetArn(v string) *DescribedServer { 6347 s.Arn = &v 6348 return s 6349 } 6350 6351 // SetCertificate sets the Certificate field's value. 6352 func (s *DescribedServer) SetCertificate(v string) *DescribedServer { 6353 s.Certificate = &v 6354 return s 6355 } 6356 6357 // SetDomain sets the Domain field's value. 6358 func (s *DescribedServer) SetDomain(v string) *DescribedServer { 6359 s.Domain = &v 6360 return s 6361 } 6362 6363 // SetEndpointDetails sets the EndpointDetails field's value. 6364 func (s *DescribedServer) SetEndpointDetails(v *EndpointDetails) *DescribedServer { 6365 s.EndpointDetails = v 6366 return s 6367 } 6368 6369 // SetEndpointType sets the EndpointType field's value. 6370 func (s *DescribedServer) SetEndpointType(v string) *DescribedServer { 6371 s.EndpointType = &v 6372 return s 6373 } 6374 6375 // SetHostKeyFingerprint sets the HostKeyFingerprint field's value. 6376 func (s *DescribedServer) SetHostKeyFingerprint(v string) *DescribedServer { 6377 s.HostKeyFingerprint = &v 6378 return s 6379 } 6380 6381 // SetIdentityProviderDetails sets the IdentityProviderDetails field's value. 6382 func (s *DescribedServer) SetIdentityProviderDetails(v *IdentityProviderDetails) *DescribedServer { 6383 s.IdentityProviderDetails = v 6384 return s 6385 } 6386 6387 // SetIdentityProviderType sets the IdentityProviderType field's value. 6388 func (s *DescribedServer) SetIdentityProviderType(v string) *DescribedServer { 6389 s.IdentityProviderType = &v 6390 return s 6391 } 6392 6393 // SetLoggingRole sets the LoggingRole field's value. 6394 func (s *DescribedServer) SetLoggingRole(v string) *DescribedServer { 6395 s.LoggingRole = &v 6396 return s 6397 } 6398 6399 // SetProtocolDetails sets the ProtocolDetails field's value. 6400 func (s *DescribedServer) SetProtocolDetails(v *ProtocolDetails) *DescribedServer { 6401 s.ProtocolDetails = v 6402 return s 6403 } 6404 6405 // SetProtocols sets the Protocols field's value. 6406 func (s *DescribedServer) SetProtocols(v []*string) *DescribedServer { 6407 s.Protocols = v 6408 return s 6409 } 6410 6411 // SetSecurityPolicyName sets the SecurityPolicyName field's value. 6412 func (s *DescribedServer) SetSecurityPolicyName(v string) *DescribedServer { 6413 s.SecurityPolicyName = &v 6414 return s 6415 } 6416 6417 // SetServerId sets the ServerId field's value. 6418 func (s *DescribedServer) SetServerId(v string) *DescribedServer { 6419 s.ServerId = &v 6420 return s 6421 } 6422 6423 // SetState sets the State field's value. 6424 func (s *DescribedServer) SetState(v string) *DescribedServer { 6425 s.State = &v 6426 return s 6427 } 6428 6429 // SetTags sets the Tags field's value. 6430 func (s *DescribedServer) SetTags(v []*Tag) *DescribedServer { 6431 s.Tags = v 6432 return s 6433 } 6434 6435 // SetUserCount sets the UserCount field's value. 6436 func (s *DescribedServer) SetUserCount(v int64) *DescribedServer { 6437 s.UserCount = &v 6438 return s 6439 } 6440 6441 // SetWorkflowDetails sets the WorkflowDetails field's value. 6442 func (s *DescribedServer) SetWorkflowDetails(v *WorkflowDetails) *DescribedServer { 6443 s.WorkflowDetails = v 6444 return s 6445 } 6446 6447 // Describes the properties of a user that was specified. 6448 type DescribedUser struct { 6449 _ struct{} `type:"structure"` 6450 6451 // Specifies the unique Amazon Resource Name (ARN) for the user that was requested 6452 // to be described. 6453 // 6454 // Arn is a required field 6455 Arn *string `min:"20" type:"string" required:"true"` 6456 6457 // The landing directory (folder) for a user when they log in to the server 6458 // using the client. 6459 // 6460 // A HomeDirectory example is /bucket_name/home/mydirectory. 6461 HomeDirectory *string `type:"string"` 6462 6463 // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths 6464 // and keys should be visible to your user and how you want to make them visible. 6465 // You must specify the Entry and Target pair, where Entry shows how the path 6466 // is made visible and Target is the actual Amazon S3 or Amazon EFS path. If 6467 // you only specify a target, it is displayed as is. You also must ensure that 6468 // your Amazon Web Services Identity and Access Management (IAM) role provides 6469 // access to paths in Target. This value can only be set when HomeDirectoryType 6470 // is set to LOGICAL. 6471 // 6472 // In most cases, you can use this value instead of the session policy to lock 6473 // your user down to the designated home directory ("chroot"). To do this, you 6474 // can set Entry to '/' and set Target to the HomeDirectory parameter value. 6475 HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` 6476 6477 // The type of landing directory (folder) you want your users' home directory 6478 // to be when they log into the server. If you set it to PATH, the user will 6479 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 6480 // protocol clients. If you set it LOGICAL, you need to provide mappings in 6481 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 6482 // visible to your users. 6483 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 6484 6485 // A session policy for your user so that you can use the same IAM role across 6486 // multiple users. This policy scopes down user access to portions of their 6487 // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, 6488 // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. 6489 Policy *string `type:"string"` 6490 6491 // Specifies the full POSIX identity, including user ID (Uid), group ID (Gid), 6492 // and any secondary groups IDs (SecondaryGids), that controls your users' access 6493 // to your Amazon Elastic File System (Amazon EFS) file systems. The POSIX permissions 6494 // that are set on files and directories in your file system determine the level 6495 // of access your users get when transferring files into and out of your Amazon 6496 // EFS file systems. 6497 PosixProfile *PosixProfile `type:"structure"` 6498 6499 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 6500 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 6501 // to this role determine the level of access that you want to provide your 6502 // users when transferring files into and out of your Amazon S3 bucket or EFS 6503 // file system. The IAM role should also contain a trust relationship that allows 6504 // the server to access your resources when servicing your users' transfer requests. 6505 Role *string `min:"20" type:"string"` 6506 6507 // Specifies the public key portion of the Secure Shell (SSH) keys stored for 6508 // the described user. 6509 SshPublicKeys []*SshPublicKey `type:"list"` 6510 6511 // Specifies the key-value pairs for the user requested. Tag can be used to 6512 // search for and group users for a variety of purposes. 6513 Tags []*Tag `min:"1" type:"list"` 6514 6515 // Specifies the name of the user that was requested to be described. User names 6516 // are used for authentication purposes. This is the string that will be used 6517 // by your user when they log in to your server. 6518 UserName *string `min:"3" type:"string"` 6519 } 6520 6521 // String returns the string representation. 6522 // 6523 // API parameter values that are decorated as "sensitive" in the API will not 6524 // be included in the string output. The member name will be present, but the 6525 // value will be replaced with "sensitive". 6526 func (s DescribedUser) String() string { 6527 return awsutil.Prettify(s) 6528 } 6529 6530 // GoString returns the string representation. 6531 // 6532 // API parameter values that are decorated as "sensitive" in the API will not 6533 // be included in the string output. The member name will be present, but the 6534 // value will be replaced with "sensitive". 6535 func (s DescribedUser) GoString() string { 6536 return s.String() 6537 } 6538 6539 // SetArn sets the Arn field's value. 6540 func (s *DescribedUser) SetArn(v string) *DescribedUser { 6541 s.Arn = &v 6542 return s 6543 } 6544 6545 // SetHomeDirectory sets the HomeDirectory field's value. 6546 func (s *DescribedUser) SetHomeDirectory(v string) *DescribedUser { 6547 s.HomeDirectory = &v 6548 return s 6549 } 6550 6551 // SetHomeDirectoryMappings sets the HomeDirectoryMappings field's value. 6552 func (s *DescribedUser) SetHomeDirectoryMappings(v []*HomeDirectoryMapEntry) *DescribedUser { 6553 s.HomeDirectoryMappings = v 6554 return s 6555 } 6556 6557 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 6558 func (s *DescribedUser) SetHomeDirectoryType(v string) *DescribedUser { 6559 s.HomeDirectoryType = &v 6560 return s 6561 } 6562 6563 // SetPolicy sets the Policy field's value. 6564 func (s *DescribedUser) SetPolicy(v string) *DescribedUser { 6565 s.Policy = &v 6566 return s 6567 } 6568 6569 // SetPosixProfile sets the PosixProfile field's value. 6570 func (s *DescribedUser) SetPosixProfile(v *PosixProfile) *DescribedUser { 6571 s.PosixProfile = v 6572 return s 6573 } 6574 6575 // SetRole sets the Role field's value. 6576 func (s *DescribedUser) SetRole(v string) *DescribedUser { 6577 s.Role = &v 6578 return s 6579 } 6580 6581 // SetSshPublicKeys sets the SshPublicKeys field's value. 6582 func (s *DescribedUser) SetSshPublicKeys(v []*SshPublicKey) *DescribedUser { 6583 s.SshPublicKeys = v 6584 return s 6585 } 6586 6587 // SetTags sets the Tags field's value. 6588 func (s *DescribedUser) SetTags(v []*Tag) *DescribedUser { 6589 s.Tags = v 6590 return s 6591 } 6592 6593 // SetUserName sets the UserName field's value. 6594 func (s *DescribedUser) SetUserName(v string) *DescribedUser { 6595 s.UserName = &v 6596 return s 6597 } 6598 6599 // Describes the properties of the specified workflow 6600 type DescribedWorkflow struct { 6601 _ struct{} `type:"structure"` 6602 6603 // Specifies the unique Amazon Resource Name (ARN) for the workflow. 6604 // 6605 // Arn is a required field 6606 Arn *string `min:"20" type:"string" required:"true"` 6607 6608 // Specifies the text description for the workflow. 6609 Description *string `type:"string"` 6610 6611 // Specifies the steps (actions) to take if errors are encountered during execution 6612 // of the workflow. 6613 OnExceptionSteps []*WorkflowStep `type:"list"` 6614 6615 // Specifies the details for the steps that are in the specified workflow. 6616 Steps []*WorkflowStep `type:"list"` 6617 6618 // Key-value pairs that can be used to group and search for workflows. Tags 6619 // are metadata attached to workflows for any purpose. 6620 Tags []*Tag `min:"1" type:"list"` 6621 6622 // A unique identifier for the workflow. 6623 WorkflowId *string `min:"19" type:"string"` 6624 } 6625 6626 // String returns the string representation. 6627 // 6628 // API parameter values that are decorated as "sensitive" in the API will not 6629 // be included in the string output. The member name will be present, but the 6630 // value will be replaced with "sensitive". 6631 func (s DescribedWorkflow) String() string { 6632 return awsutil.Prettify(s) 6633 } 6634 6635 // GoString returns the string representation. 6636 // 6637 // API parameter values that are decorated as "sensitive" in the API will not 6638 // be included in the string output. The member name will be present, but the 6639 // value will be replaced with "sensitive". 6640 func (s DescribedWorkflow) GoString() string { 6641 return s.String() 6642 } 6643 6644 // SetArn sets the Arn field's value. 6645 func (s *DescribedWorkflow) SetArn(v string) *DescribedWorkflow { 6646 s.Arn = &v 6647 return s 6648 } 6649 6650 // SetDescription sets the Description field's value. 6651 func (s *DescribedWorkflow) SetDescription(v string) *DescribedWorkflow { 6652 s.Description = &v 6653 return s 6654 } 6655 6656 // SetOnExceptionSteps sets the OnExceptionSteps field's value. 6657 func (s *DescribedWorkflow) SetOnExceptionSteps(v []*WorkflowStep) *DescribedWorkflow { 6658 s.OnExceptionSteps = v 6659 return s 6660 } 6661 6662 // SetSteps sets the Steps field's value. 6663 func (s *DescribedWorkflow) SetSteps(v []*WorkflowStep) *DescribedWorkflow { 6664 s.Steps = v 6665 return s 6666 } 6667 6668 // SetTags sets the Tags field's value. 6669 func (s *DescribedWorkflow) SetTags(v []*Tag) *DescribedWorkflow { 6670 s.Tags = v 6671 return s 6672 } 6673 6674 // SetWorkflowId sets the WorkflowId field's value. 6675 func (s *DescribedWorkflow) SetWorkflowId(v string) *DescribedWorkflow { 6676 s.WorkflowId = &v 6677 return s 6678 } 6679 6680 // Reserved for future use. 6681 type EfsFileLocation struct { 6682 _ struct{} `type:"structure"` 6683 6684 // The ID of the file system, assigned by Amazon EFS. 6685 FileSystemId *string `type:"string"` 6686 6687 // The pathname for the folder being used by a workflow. 6688 Path *string `min:"1" type:"string"` 6689 } 6690 6691 // String returns the string representation. 6692 // 6693 // API parameter values that are decorated as "sensitive" in the API will not 6694 // be included in the string output. The member name will be present, but the 6695 // value will be replaced with "sensitive". 6696 func (s EfsFileLocation) String() string { 6697 return awsutil.Prettify(s) 6698 } 6699 6700 // GoString returns the string representation. 6701 // 6702 // API parameter values that are decorated as "sensitive" in the API will not 6703 // be included in the string output. The member name will be present, but the 6704 // value will be replaced with "sensitive". 6705 func (s EfsFileLocation) GoString() string { 6706 return s.String() 6707 } 6708 6709 // Validate inspects the fields of the type to determine if they are valid. 6710 func (s *EfsFileLocation) Validate() error { 6711 invalidParams := request.ErrInvalidParams{Context: "EfsFileLocation"} 6712 if s.Path != nil && len(*s.Path) < 1 { 6713 invalidParams.Add(request.NewErrParamMinLen("Path", 1)) 6714 } 6715 6716 if invalidParams.Len() > 0 { 6717 return invalidParams 6718 } 6719 return nil 6720 } 6721 6722 // SetFileSystemId sets the FileSystemId field's value. 6723 func (s *EfsFileLocation) SetFileSystemId(v string) *EfsFileLocation { 6724 s.FileSystemId = &v 6725 return s 6726 } 6727 6728 // SetPath sets the Path field's value. 6729 func (s *EfsFileLocation) SetPath(v string) *EfsFileLocation { 6730 s.Path = &v 6731 return s 6732 } 6733 6734 // The virtual private cloud (VPC) endpoint settings that are configured for 6735 // your file transfer protocol-enabled server. With a VPC endpoint, you can 6736 // restrict access to your server and resources only within your VPC. To control 6737 // incoming internet traffic, invoke the UpdateServer API and attach an Elastic 6738 // IP address to your server's endpoint. 6739 // 6740 // After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT 6741 // in your Amazon Web Servicesaccount if your account hasn't already done so 6742 // before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT 6743 // in your Amazon Web Servicesaccount on or before May 19, 2021, you will not 6744 // be affected. After this date, use EndpointType=VPC. 6745 // 6746 // For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. 6747 type EndpointDetails struct { 6748 _ struct{} `type:"structure"` 6749 6750 // A list of address allocation IDs that are required to attach an Elastic IP 6751 // address to your server's endpoint. 6752 // 6753 // This property can only be set when EndpointType is set to VPC and it is only 6754 // valid in the UpdateServer API. 6755 AddressAllocationIds []*string `type:"list"` 6756 6757 // A list of security groups IDs that are available to attach to your server's 6758 // endpoint. 6759 // 6760 // This property can only be set when EndpointType is set to VPC. 6761 // 6762 // You can edit the SecurityGroupIds property in the UpdateServer (https://docs.aws.amazon.com/transfer/latest/userguide/API_UpdateServer.html) 6763 // API only if you are changing the EndpointType from PUBLIC or VPC_ENDPOINT 6764 // to VPC. To change security groups associated with your server's VPC endpoint 6765 // after creation, use the Amazon EC2 ModifyVpcEndpoint (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyVpcEndpoint.html) 6766 // API. 6767 SecurityGroupIds []*string `type:"list"` 6768 6769 // A list of subnet IDs that are required to host your server endpoint in your 6770 // VPC. 6771 // 6772 // This property can only be set when EndpointType is set to VPC. 6773 SubnetIds []*string `type:"list"` 6774 6775 // The ID of the VPC endpoint. 6776 // 6777 // This property can only be set when EndpointType is set to VPC_ENDPOINT. 6778 // 6779 // For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. 6780 VpcEndpointId *string `min:"22" type:"string"` 6781 6782 // The VPC ID of the VPC in which a server's endpoint will be hosted. 6783 // 6784 // This property can only be set when EndpointType is set to VPC. 6785 VpcId *string `type:"string"` 6786 } 6787 6788 // String returns the string representation. 6789 // 6790 // API parameter values that are decorated as "sensitive" in the API will not 6791 // be included in the string output. The member name will be present, but the 6792 // value will be replaced with "sensitive". 6793 func (s EndpointDetails) String() string { 6794 return awsutil.Prettify(s) 6795 } 6796 6797 // GoString returns the string representation. 6798 // 6799 // API parameter values that are decorated as "sensitive" in the API will not 6800 // be included in the string output. The member name will be present, but the 6801 // value will be replaced with "sensitive". 6802 func (s EndpointDetails) GoString() string { 6803 return s.String() 6804 } 6805 6806 // Validate inspects the fields of the type to determine if they are valid. 6807 func (s *EndpointDetails) Validate() error { 6808 invalidParams := request.ErrInvalidParams{Context: "EndpointDetails"} 6809 if s.VpcEndpointId != nil && len(*s.VpcEndpointId) < 22 { 6810 invalidParams.Add(request.NewErrParamMinLen("VpcEndpointId", 22)) 6811 } 6812 6813 if invalidParams.Len() > 0 { 6814 return invalidParams 6815 } 6816 return nil 6817 } 6818 6819 // SetAddressAllocationIds sets the AddressAllocationIds field's value. 6820 func (s *EndpointDetails) SetAddressAllocationIds(v []*string) *EndpointDetails { 6821 s.AddressAllocationIds = v 6822 return s 6823 } 6824 6825 // SetSecurityGroupIds sets the SecurityGroupIds field's value. 6826 func (s *EndpointDetails) SetSecurityGroupIds(v []*string) *EndpointDetails { 6827 s.SecurityGroupIds = v 6828 return s 6829 } 6830 6831 // SetSubnetIds sets the SubnetIds field's value. 6832 func (s *EndpointDetails) SetSubnetIds(v []*string) *EndpointDetails { 6833 s.SubnetIds = v 6834 return s 6835 } 6836 6837 // SetVpcEndpointId sets the VpcEndpointId field's value. 6838 func (s *EndpointDetails) SetVpcEndpointId(v string) *EndpointDetails { 6839 s.VpcEndpointId = &v 6840 return s 6841 } 6842 6843 // SetVpcId sets the VpcId field's value. 6844 func (s *EndpointDetails) SetVpcId(v string) *EndpointDetails { 6845 s.VpcId = &v 6846 return s 6847 } 6848 6849 // Specifies the error message and type, for an error that occurs during the 6850 // execution of the workflow. 6851 type ExecutionError struct { 6852 _ struct{} `type:"structure"` 6853 6854 // Specifies the descriptive message that corresponds to the ErrorType. 6855 // 6856 // Message is a required field 6857 Message *string `type:"string" required:"true"` 6858 6859 // Specifies the error type: currently, the only valid value is PERMISSION_DENIED, 6860 // which occurs if your policy does not contain the correct permissions to complete 6861 // one or more of the steps in the workflow. 6862 // 6863 // Type is a required field 6864 Type *string `type:"string" required:"true" enum:"ExecutionErrorType"` 6865 } 6866 6867 // String returns the string representation. 6868 // 6869 // API parameter values that are decorated as "sensitive" in the API will not 6870 // be included in the string output. The member name will be present, but the 6871 // value will be replaced with "sensitive". 6872 func (s ExecutionError) String() string { 6873 return awsutil.Prettify(s) 6874 } 6875 6876 // GoString returns the string representation. 6877 // 6878 // API parameter values that are decorated as "sensitive" in the API will not 6879 // be included in the string output. The member name will be present, but the 6880 // value will be replaced with "sensitive". 6881 func (s ExecutionError) GoString() string { 6882 return s.String() 6883 } 6884 6885 // SetMessage sets the Message field's value. 6886 func (s *ExecutionError) SetMessage(v string) *ExecutionError { 6887 s.Message = &v 6888 return s 6889 } 6890 6891 // SetType sets the Type field's value. 6892 func (s *ExecutionError) SetType(v string) *ExecutionError { 6893 s.Type = &v 6894 return s 6895 } 6896 6897 // Specifies the steps in the workflow, as well as the steps to execute in case 6898 // of any errors during workflow execution. 6899 type ExecutionResults struct { 6900 _ struct{} `type:"structure"` 6901 6902 // Specifies the steps (actions) to take if errors are encountered during execution 6903 // of the workflow. 6904 OnExceptionSteps []*ExecutionStepResult `min:"1" type:"list"` 6905 6906 // Specifies the details for the steps that are in the specified workflow. 6907 Steps []*ExecutionStepResult `min:"1" type:"list"` 6908 } 6909 6910 // String returns the string representation. 6911 // 6912 // API parameter values that are decorated as "sensitive" in the API will not 6913 // be included in the string output. The member name will be present, but the 6914 // value will be replaced with "sensitive". 6915 func (s ExecutionResults) String() string { 6916 return awsutil.Prettify(s) 6917 } 6918 6919 // GoString returns the string representation. 6920 // 6921 // API parameter values that are decorated as "sensitive" in the API will not 6922 // be included in the string output. The member name will be present, but the 6923 // value will be replaced with "sensitive". 6924 func (s ExecutionResults) GoString() string { 6925 return s.String() 6926 } 6927 6928 // SetOnExceptionSteps sets the OnExceptionSteps field's value. 6929 func (s *ExecutionResults) SetOnExceptionSteps(v []*ExecutionStepResult) *ExecutionResults { 6930 s.OnExceptionSteps = v 6931 return s 6932 } 6933 6934 // SetSteps sets the Steps field's value. 6935 func (s *ExecutionResults) SetSteps(v []*ExecutionStepResult) *ExecutionResults { 6936 s.Steps = v 6937 return s 6938 } 6939 6940 // Specifies the following details for the step: error (if any), outputs (if 6941 // any), and the step type. 6942 type ExecutionStepResult struct { 6943 _ struct{} `type:"structure"` 6944 6945 // Specifies the details for an error, if it occurred during execution of the 6946 // specified workfow step. 6947 Error *ExecutionError `type:"structure"` 6948 6949 // The values for the key/value pair applied as a tag to the file. Only applicable 6950 // if the step type is TAG. 6951 Outputs *string `type:"string"` 6952 6953 // One of the available step types. 6954 // 6955 // * Copy: copy the file to another location 6956 // 6957 // * Custom: custom step with a lambda target 6958 // 6959 // * Delete: delete the file 6960 // 6961 // * Tag: add a tag to the file 6962 StepType *string `type:"string" enum:"WorkflowStepType"` 6963 } 6964 6965 // String returns the string representation. 6966 // 6967 // API parameter values that are decorated as "sensitive" in the API will not 6968 // be included in the string output. The member name will be present, but the 6969 // value will be replaced with "sensitive". 6970 func (s ExecutionStepResult) String() string { 6971 return awsutil.Prettify(s) 6972 } 6973 6974 // GoString returns the string representation. 6975 // 6976 // API parameter values that are decorated as "sensitive" in the API will not 6977 // be included in the string output. The member name will be present, but the 6978 // value will be replaced with "sensitive". 6979 func (s ExecutionStepResult) GoString() string { 6980 return s.String() 6981 } 6982 6983 // SetError sets the Error field's value. 6984 func (s *ExecutionStepResult) SetError(v *ExecutionError) *ExecutionStepResult { 6985 s.Error = v 6986 return s 6987 } 6988 6989 // SetOutputs sets the Outputs field's value. 6990 func (s *ExecutionStepResult) SetOutputs(v string) *ExecutionStepResult { 6991 s.Outputs = &v 6992 return s 6993 } 6994 6995 // SetStepType sets the StepType field's value. 6996 func (s *ExecutionStepResult) SetStepType(v string) *ExecutionStepResult { 6997 s.StepType = &v 6998 return s 6999 } 7000 7001 // Specifies the Amazon S3 or EFS file details to be used in the step. 7002 type FileLocation struct { 7003 _ struct{} `type:"structure"` 7004 7005 // Specifies the Amazon EFS ID and the path for the file being used. 7006 EfsFileLocation *EfsFileLocation `type:"structure"` 7007 7008 // Specifies the S3 details for the file being used, such as bucket, Etag, and 7009 // so forth. 7010 S3FileLocation *S3FileLocation `type:"structure"` 7011 } 7012 7013 // String returns the string representation. 7014 // 7015 // API parameter values that are decorated as "sensitive" in the API will not 7016 // be included in the string output. The member name will be present, but the 7017 // value will be replaced with "sensitive". 7018 func (s FileLocation) String() string { 7019 return awsutil.Prettify(s) 7020 } 7021 7022 // GoString returns the string representation. 7023 // 7024 // API parameter values that are decorated as "sensitive" in the API will not 7025 // be included in the string output. The member name will be present, but the 7026 // value will be replaced with "sensitive". 7027 func (s FileLocation) GoString() string { 7028 return s.String() 7029 } 7030 7031 // SetEfsFileLocation sets the EfsFileLocation field's value. 7032 func (s *FileLocation) SetEfsFileLocation(v *EfsFileLocation) *FileLocation { 7033 s.EfsFileLocation = v 7034 return s 7035 } 7036 7037 // SetS3FileLocation sets the S3FileLocation field's value. 7038 func (s *FileLocation) SetS3FileLocation(v *S3FileLocation) *FileLocation { 7039 s.S3FileLocation = v 7040 return s 7041 } 7042 7043 // Represents an object that contains entries and targets for HomeDirectoryMappings. 7044 // 7045 // The following is an Entry and Target pair example for chroot. 7046 // 7047 // [ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ] 7048 // 7049 // If the target of a logical directory entry does not exist in Amazon S3 or 7050 // EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API 7051 // or EFS API to create 0 byte objects as place holders for your directory. 7052 // If using the CLI, use the s3api or efsapi call instead of s3 or efs so you 7053 // can use the put-object operation. For example, you use the following: aws 7054 // s3api put-object --bucket bucketname --key path/to/folder/. Make sure that 7055 // the end of the key name ends in a / for it to be considered a folder. 7056 type HomeDirectoryMapEntry struct { 7057 _ struct{} `type:"structure"` 7058 7059 // Represents an entry for HomeDirectoryMappings. 7060 // 7061 // Entry is a required field 7062 Entry *string `type:"string" required:"true"` 7063 7064 // Represents the map target that is used in a HomeDirectorymapEntry. 7065 // 7066 // Target is a required field 7067 Target *string `type:"string" required:"true"` 7068 } 7069 7070 // String returns the string representation. 7071 // 7072 // API parameter values that are decorated as "sensitive" in the API will not 7073 // be included in the string output. The member name will be present, but the 7074 // value will be replaced with "sensitive". 7075 func (s HomeDirectoryMapEntry) String() string { 7076 return awsutil.Prettify(s) 7077 } 7078 7079 // GoString returns the string representation. 7080 // 7081 // API parameter values that are decorated as "sensitive" in the API will not 7082 // be included in the string output. The member name will be present, but the 7083 // value will be replaced with "sensitive". 7084 func (s HomeDirectoryMapEntry) GoString() string { 7085 return s.String() 7086 } 7087 7088 // Validate inspects the fields of the type to determine if they are valid. 7089 func (s *HomeDirectoryMapEntry) Validate() error { 7090 invalidParams := request.ErrInvalidParams{Context: "HomeDirectoryMapEntry"} 7091 if s.Entry == nil { 7092 invalidParams.Add(request.NewErrParamRequired("Entry")) 7093 } 7094 if s.Target == nil { 7095 invalidParams.Add(request.NewErrParamRequired("Target")) 7096 } 7097 7098 if invalidParams.Len() > 0 { 7099 return invalidParams 7100 } 7101 return nil 7102 } 7103 7104 // SetEntry sets the Entry field's value. 7105 func (s *HomeDirectoryMapEntry) SetEntry(v string) *HomeDirectoryMapEntry { 7106 s.Entry = &v 7107 return s 7108 } 7109 7110 // SetTarget sets the Target field's value. 7111 func (s *HomeDirectoryMapEntry) SetTarget(v string) *HomeDirectoryMapEntry { 7112 s.Target = &v 7113 return s 7114 } 7115 7116 // Returns information related to the type of user authentication that is in 7117 // use for a file transfer protocol-enabled server's users. A server can have 7118 // only one method of authentication. 7119 type IdentityProviderDetails struct { 7120 _ struct{} `type:"structure"` 7121 7122 // The identifier of the Amazon Web ServicesDirectory Service directory that 7123 // you want to stop sharing. 7124 DirectoryId *string `min:"12" type:"string"` 7125 7126 // Provides the type of InvocationRole used to authenticate the user account. 7127 InvocationRole *string `min:"20" type:"string"` 7128 7129 // Provides the location of the service endpoint used to authenticate users. 7130 Url *string `type:"string"` 7131 } 7132 7133 // String returns the string representation. 7134 // 7135 // API parameter values that are decorated as "sensitive" in the API will not 7136 // be included in the string output. The member name will be present, but the 7137 // value will be replaced with "sensitive". 7138 func (s IdentityProviderDetails) String() string { 7139 return awsutil.Prettify(s) 7140 } 7141 7142 // GoString returns the string representation. 7143 // 7144 // API parameter values that are decorated as "sensitive" in the API will not 7145 // be included in the string output. The member name will be present, but the 7146 // value will be replaced with "sensitive". 7147 func (s IdentityProviderDetails) GoString() string { 7148 return s.String() 7149 } 7150 7151 // Validate inspects the fields of the type to determine if they are valid. 7152 func (s *IdentityProviderDetails) Validate() error { 7153 invalidParams := request.ErrInvalidParams{Context: "IdentityProviderDetails"} 7154 if s.DirectoryId != nil && len(*s.DirectoryId) < 12 { 7155 invalidParams.Add(request.NewErrParamMinLen("DirectoryId", 12)) 7156 } 7157 if s.InvocationRole != nil && len(*s.InvocationRole) < 20 { 7158 invalidParams.Add(request.NewErrParamMinLen("InvocationRole", 20)) 7159 } 7160 7161 if invalidParams.Len() > 0 { 7162 return invalidParams 7163 } 7164 return nil 7165 } 7166 7167 // SetDirectoryId sets the DirectoryId field's value. 7168 func (s *IdentityProviderDetails) SetDirectoryId(v string) *IdentityProviderDetails { 7169 s.DirectoryId = &v 7170 return s 7171 } 7172 7173 // SetInvocationRole sets the InvocationRole field's value. 7174 func (s *IdentityProviderDetails) SetInvocationRole(v string) *IdentityProviderDetails { 7175 s.InvocationRole = &v 7176 return s 7177 } 7178 7179 // SetUrl sets the Url field's value. 7180 func (s *IdentityProviderDetails) SetUrl(v string) *IdentityProviderDetails { 7181 s.Url = &v 7182 return s 7183 } 7184 7185 type ImportSshPublicKeyInput struct { 7186 _ struct{} `type:"structure"` 7187 7188 // A system-assigned unique identifier for a server. 7189 // 7190 // ServerId is a required field 7191 ServerId *string `min:"19" type:"string" required:"true"` 7192 7193 // The public key portion of an SSH key pair. 7194 // 7195 // SshPublicKeyBody is a required field 7196 SshPublicKeyBody *string `type:"string" required:"true"` 7197 7198 // The name of the user account that is assigned to one or more servers. 7199 // 7200 // UserName is a required field 7201 UserName *string `min:"3" type:"string" required:"true"` 7202 } 7203 7204 // String returns the string representation. 7205 // 7206 // API parameter values that are decorated as "sensitive" in the API will not 7207 // be included in the string output. The member name will be present, but the 7208 // value will be replaced with "sensitive". 7209 func (s ImportSshPublicKeyInput) String() string { 7210 return awsutil.Prettify(s) 7211 } 7212 7213 // GoString returns the string representation. 7214 // 7215 // API parameter values that are decorated as "sensitive" in the API will not 7216 // be included in the string output. The member name will be present, but the 7217 // value will be replaced with "sensitive". 7218 func (s ImportSshPublicKeyInput) GoString() string { 7219 return s.String() 7220 } 7221 7222 // Validate inspects the fields of the type to determine if they are valid. 7223 func (s *ImportSshPublicKeyInput) Validate() error { 7224 invalidParams := request.ErrInvalidParams{Context: "ImportSshPublicKeyInput"} 7225 if s.ServerId == nil { 7226 invalidParams.Add(request.NewErrParamRequired("ServerId")) 7227 } 7228 if s.ServerId != nil && len(*s.ServerId) < 19 { 7229 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 7230 } 7231 if s.SshPublicKeyBody == nil { 7232 invalidParams.Add(request.NewErrParamRequired("SshPublicKeyBody")) 7233 } 7234 if s.UserName == nil { 7235 invalidParams.Add(request.NewErrParamRequired("UserName")) 7236 } 7237 if s.UserName != nil && len(*s.UserName) < 3 { 7238 invalidParams.Add(request.NewErrParamMinLen("UserName", 3)) 7239 } 7240 7241 if invalidParams.Len() > 0 { 7242 return invalidParams 7243 } 7244 return nil 7245 } 7246 7247 // SetServerId sets the ServerId field's value. 7248 func (s *ImportSshPublicKeyInput) SetServerId(v string) *ImportSshPublicKeyInput { 7249 s.ServerId = &v 7250 return s 7251 } 7252 7253 // SetSshPublicKeyBody sets the SshPublicKeyBody field's value. 7254 func (s *ImportSshPublicKeyInput) SetSshPublicKeyBody(v string) *ImportSshPublicKeyInput { 7255 s.SshPublicKeyBody = &v 7256 return s 7257 } 7258 7259 // SetUserName sets the UserName field's value. 7260 func (s *ImportSshPublicKeyInput) SetUserName(v string) *ImportSshPublicKeyInput { 7261 s.UserName = &v 7262 return s 7263 } 7264 7265 // Identifies the user, the server they belong to, and the identifier of the 7266 // SSH public key associated with that user. A user can have more than one key 7267 // on each server that they are associated with. 7268 type ImportSshPublicKeyOutput struct { 7269 _ struct{} `type:"structure"` 7270 7271 // A system-assigned unique identifier for a server. 7272 // 7273 // ServerId is a required field 7274 ServerId *string `min:"19" type:"string" required:"true"` 7275 7276 // The name given to a public key by the system that was imported. 7277 // 7278 // SshPublicKeyId is a required field 7279 SshPublicKeyId *string `min:"21" type:"string" required:"true"` 7280 7281 // A user name assigned to the ServerID value that you specified. 7282 // 7283 // UserName is a required field 7284 UserName *string `min:"3" type:"string" required:"true"` 7285 } 7286 7287 // String returns the string representation. 7288 // 7289 // API parameter values that are decorated as "sensitive" in the API will not 7290 // be included in the string output. The member name will be present, but the 7291 // value will be replaced with "sensitive". 7292 func (s ImportSshPublicKeyOutput) String() string { 7293 return awsutil.Prettify(s) 7294 } 7295 7296 // GoString returns the string representation. 7297 // 7298 // API parameter values that are decorated as "sensitive" in the API will not 7299 // be included in the string output. The member name will be present, but the 7300 // value will be replaced with "sensitive". 7301 func (s ImportSshPublicKeyOutput) GoString() string { 7302 return s.String() 7303 } 7304 7305 // SetServerId sets the ServerId field's value. 7306 func (s *ImportSshPublicKeyOutput) SetServerId(v string) *ImportSshPublicKeyOutput { 7307 s.ServerId = &v 7308 return s 7309 } 7310 7311 // SetSshPublicKeyId sets the SshPublicKeyId field's value. 7312 func (s *ImportSshPublicKeyOutput) SetSshPublicKeyId(v string) *ImportSshPublicKeyOutput { 7313 s.SshPublicKeyId = &v 7314 return s 7315 } 7316 7317 // SetUserName sets the UserName field's value. 7318 func (s *ImportSshPublicKeyOutput) SetUserName(v string) *ImportSshPublicKeyOutput { 7319 s.UserName = &v 7320 return s 7321 } 7322 7323 // Specifies the location for the file being copied. Only applicable for the 7324 // Copy type of workflow steps. 7325 type InputFileLocation struct { 7326 _ struct{} `type:"structure"` 7327 7328 // Reserved for future use. 7329 EfsFileLocation *EfsFileLocation `type:"structure"` 7330 7331 // Specifies the details for the S3 file being copied. 7332 S3FileLocation *S3InputFileLocation `type:"structure"` 7333 } 7334 7335 // String returns the string representation. 7336 // 7337 // API parameter values that are decorated as "sensitive" in the API will not 7338 // be included in the string output. The member name will be present, but the 7339 // value will be replaced with "sensitive". 7340 func (s InputFileLocation) String() string { 7341 return awsutil.Prettify(s) 7342 } 7343 7344 // GoString returns the string representation. 7345 // 7346 // API parameter values that are decorated as "sensitive" in the API will not 7347 // be included in the string output. The member name will be present, but the 7348 // value will be replaced with "sensitive". 7349 func (s InputFileLocation) GoString() string { 7350 return s.String() 7351 } 7352 7353 // Validate inspects the fields of the type to determine if they are valid. 7354 func (s *InputFileLocation) Validate() error { 7355 invalidParams := request.ErrInvalidParams{Context: "InputFileLocation"} 7356 if s.EfsFileLocation != nil { 7357 if err := s.EfsFileLocation.Validate(); err != nil { 7358 invalidParams.AddNested("EfsFileLocation", err.(request.ErrInvalidParams)) 7359 } 7360 } 7361 if s.S3FileLocation != nil { 7362 if err := s.S3FileLocation.Validate(); err != nil { 7363 invalidParams.AddNested("S3FileLocation", err.(request.ErrInvalidParams)) 7364 } 7365 } 7366 7367 if invalidParams.Len() > 0 { 7368 return invalidParams 7369 } 7370 return nil 7371 } 7372 7373 // SetEfsFileLocation sets the EfsFileLocation field's value. 7374 func (s *InputFileLocation) SetEfsFileLocation(v *EfsFileLocation) *InputFileLocation { 7375 s.EfsFileLocation = v 7376 return s 7377 } 7378 7379 // SetS3FileLocation sets the S3FileLocation field's value. 7380 func (s *InputFileLocation) SetS3FileLocation(v *S3InputFileLocation) *InputFileLocation { 7381 s.S3FileLocation = v 7382 return s 7383 } 7384 7385 // This exception is thrown when an error occurs in the Amazon Web ServicesTransfer 7386 // Family service. 7387 type InternalServiceError struct { 7388 _ struct{} `type:"structure"` 7389 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7390 7391 Message_ *string `locationName:"Message" type:"string"` 7392 } 7393 7394 // String returns the string representation. 7395 // 7396 // API parameter values that are decorated as "sensitive" in the API will not 7397 // be included in the string output. The member name will be present, but the 7398 // value will be replaced with "sensitive". 7399 func (s InternalServiceError) String() string { 7400 return awsutil.Prettify(s) 7401 } 7402 7403 // GoString returns the string representation. 7404 // 7405 // API parameter values that are decorated as "sensitive" in the API will not 7406 // be included in the string output. The member name will be present, but the 7407 // value will be replaced with "sensitive". 7408 func (s InternalServiceError) GoString() string { 7409 return s.String() 7410 } 7411 7412 func newErrorInternalServiceError(v protocol.ResponseMetadata) error { 7413 return &InternalServiceError{ 7414 RespMetadata: v, 7415 } 7416 } 7417 7418 // Code returns the exception type name. 7419 func (s *InternalServiceError) Code() string { 7420 return "InternalServiceError" 7421 } 7422 7423 // Message returns the exception's message. 7424 func (s *InternalServiceError) Message() string { 7425 if s.Message_ != nil { 7426 return *s.Message_ 7427 } 7428 return "" 7429 } 7430 7431 // OrigErr always returns nil, satisfies awserr.Error interface. 7432 func (s *InternalServiceError) OrigErr() error { 7433 return nil 7434 } 7435 7436 func (s *InternalServiceError) Error() string { 7437 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 7438 } 7439 7440 // Status code returns the HTTP status code for the request's response error. 7441 func (s *InternalServiceError) StatusCode() int { 7442 return s.RespMetadata.StatusCode 7443 } 7444 7445 // RequestID returns the service's response RequestID for request. 7446 func (s *InternalServiceError) RequestID() string { 7447 return s.RespMetadata.RequestID 7448 } 7449 7450 // The NextToken parameter that was passed is invalid. 7451 type InvalidNextTokenException struct { 7452 _ struct{} `type:"structure"` 7453 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7454 7455 Message_ *string `locationName:"Message" type:"string"` 7456 } 7457 7458 // String returns the string representation. 7459 // 7460 // API parameter values that are decorated as "sensitive" in the API will not 7461 // be included in the string output. The member name will be present, but the 7462 // value will be replaced with "sensitive". 7463 func (s InvalidNextTokenException) String() string { 7464 return awsutil.Prettify(s) 7465 } 7466 7467 // GoString returns the string representation. 7468 // 7469 // API parameter values that are decorated as "sensitive" in the API will not 7470 // be included in the string output. The member name will be present, but the 7471 // value will be replaced with "sensitive". 7472 func (s InvalidNextTokenException) GoString() string { 7473 return s.String() 7474 } 7475 7476 func newErrorInvalidNextTokenException(v protocol.ResponseMetadata) error { 7477 return &InvalidNextTokenException{ 7478 RespMetadata: v, 7479 } 7480 } 7481 7482 // Code returns the exception type name. 7483 func (s *InvalidNextTokenException) Code() string { 7484 return "InvalidNextTokenException" 7485 } 7486 7487 // Message returns the exception's message. 7488 func (s *InvalidNextTokenException) Message() string { 7489 if s.Message_ != nil { 7490 return *s.Message_ 7491 } 7492 return "" 7493 } 7494 7495 // OrigErr always returns nil, satisfies awserr.Error interface. 7496 func (s *InvalidNextTokenException) OrigErr() error { 7497 return nil 7498 } 7499 7500 func (s *InvalidNextTokenException) Error() string { 7501 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 7502 } 7503 7504 // Status code returns the HTTP status code for the request's response error. 7505 func (s *InvalidNextTokenException) StatusCode() int { 7506 return s.RespMetadata.StatusCode 7507 } 7508 7509 // RequestID returns the service's response RequestID for request. 7510 func (s *InvalidNextTokenException) RequestID() string { 7511 return s.RespMetadata.RequestID 7512 } 7513 7514 // This exception is thrown when the client submits a malformed request. 7515 type InvalidRequestException struct { 7516 _ struct{} `type:"structure"` 7517 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 7518 7519 Message_ *string `locationName:"Message" type:"string"` 7520 } 7521 7522 // String returns the string representation. 7523 // 7524 // API parameter values that are decorated as "sensitive" in the API will not 7525 // be included in the string output. The member name will be present, but the 7526 // value will be replaced with "sensitive". 7527 func (s InvalidRequestException) String() string { 7528 return awsutil.Prettify(s) 7529 } 7530 7531 // GoString returns the string representation. 7532 // 7533 // API parameter values that are decorated as "sensitive" in the API will not 7534 // be included in the string output. The member name will be present, but the 7535 // value will be replaced with "sensitive". 7536 func (s InvalidRequestException) GoString() string { 7537 return s.String() 7538 } 7539 7540 func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { 7541 return &InvalidRequestException{ 7542 RespMetadata: v, 7543 } 7544 } 7545 7546 // Code returns the exception type name. 7547 func (s *InvalidRequestException) Code() string { 7548 return "InvalidRequestException" 7549 } 7550 7551 // Message returns the exception's message. 7552 func (s *InvalidRequestException) Message() string { 7553 if s.Message_ != nil { 7554 return *s.Message_ 7555 } 7556 return "" 7557 } 7558 7559 // OrigErr always returns nil, satisfies awserr.Error interface. 7560 func (s *InvalidRequestException) OrigErr() error { 7561 return nil 7562 } 7563 7564 func (s *InvalidRequestException) Error() string { 7565 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 7566 } 7567 7568 // Status code returns the HTTP status code for the request's response error. 7569 func (s *InvalidRequestException) StatusCode() int { 7570 return s.RespMetadata.StatusCode 7571 } 7572 7573 // RequestID returns the service's response RequestID for request. 7574 func (s *InvalidRequestException) RequestID() string { 7575 return s.RespMetadata.RequestID 7576 } 7577 7578 type ListAccessesInput struct { 7579 _ struct{} `type:"structure"` 7580 7581 // Specifies the maximum number of access SIDs to return. 7582 MaxResults *int64 `min:"1" type:"integer"` 7583 7584 // When you can get additional results from the ListAccesses call, a NextToken 7585 // parameter is returned in the output. You can then pass in a subsequent command 7586 // to the NextToken parameter to continue listing additional accesses. 7587 NextToken *string `min:"1" type:"string"` 7588 7589 // A system-assigned unique identifier for a server that has users assigned 7590 // to it. 7591 // 7592 // ServerId is a required field 7593 ServerId *string `min:"19" type:"string" required:"true"` 7594 } 7595 7596 // String returns the string representation. 7597 // 7598 // API parameter values that are decorated as "sensitive" in the API will not 7599 // be included in the string output. The member name will be present, but the 7600 // value will be replaced with "sensitive". 7601 func (s ListAccessesInput) String() string { 7602 return awsutil.Prettify(s) 7603 } 7604 7605 // GoString returns the string representation. 7606 // 7607 // API parameter values that are decorated as "sensitive" in the API will not 7608 // be included in the string output. The member name will be present, but the 7609 // value will be replaced with "sensitive". 7610 func (s ListAccessesInput) GoString() string { 7611 return s.String() 7612 } 7613 7614 // Validate inspects the fields of the type to determine if they are valid. 7615 func (s *ListAccessesInput) Validate() error { 7616 invalidParams := request.ErrInvalidParams{Context: "ListAccessesInput"} 7617 if s.MaxResults != nil && *s.MaxResults < 1 { 7618 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7619 } 7620 if s.NextToken != nil && len(*s.NextToken) < 1 { 7621 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 7622 } 7623 if s.ServerId == nil { 7624 invalidParams.Add(request.NewErrParamRequired("ServerId")) 7625 } 7626 if s.ServerId != nil && len(*s.ServerId) < 19 { 7627 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 7628 } 7629 7630 if invalidParams.Len() > 0 { 7631 return invalidParams 7632 } 7633 return nil 7634 } 7635 7636 // SetMaxResults sets the MaxResults field's value. 7637 func (s *ListAccessesInput) SetMaxResults(v int64) *ListAccessesInput { 7638 s.MaxResults = &v 7639 return s 7640 } 7641 7642 // SetNextToken sets the NextToken field's value. 7643 func (s *ListAccessesInput) SetNextToken(v string) *ListAccessesInput { 7644 s.NextToken = &v 7645 return s 7646 } 7647 7648 // SetServerId sets the ServerId field's value. 7649 func (s *ListAccessesInput) SetServerId(v string) *ListAccessesInput { 7650 s.ServerId = &v 7651 return s 7652 } 7653 7654 type ListAccessesOutput struct { 7655 _ struct{} `type:"structure"` 7656 7657 // Returns the accesses and their properties for the ServerId value that you 7658 // specify. 7659 // 7660 // Accesses is a required field 7661 Accesses []*ListedAccess `type:"list" required:"true"` 7662 7663 // When you can get additional results from the ListAccesses call, a NextToken 7664 // parameter is returned in the output. You can then pass in a subsequent command 7665 // to the NextToken parameter to continue listing additional accesses. 7666 NextToken *string `min:"1" type:"string"` 7667 7668 // A system-assigned unique identifier for a server that has users assigned 7669 // to it. 7670 // 7671 // ServerId is a required field 7672 ServerId *string `min:"19" type:"string" required:"true"` 7673 } 7674 7675 // String returns the string representation. 7676 // 7677 // API parameter values that are decorated as "sensitive" in the API will not 7678 // be included in the string output. The member name will be present, but the 7679 // value will be replaced with "sensitive". 7680 func (s ListAccessesOutput) String() string { 7681 return awsutil.Prettify(s) 7682 } 7683 7684 // GoString returns the string representation. 7685 // 7686 // API parameter values that are decorated as "sensitive" in the API will not 7687 // be included in the string output. The member name will be present, but the 7688 // value will be replaced with "sensitive". 7689 func (s ListAccessesOutput) GoString() string { 7690 return s.String() 7691 } 7692 7693 // SetAccesses sets the Accesses field's value. 7694 func (s *ListAccessesOutput) SetAccesses(v []*ListedAccess) *ListAccessesOutput { 7695 s.Accesses = v 7696 return s 7697 } 7698 7699 // SetNextToken sets the NextToken field's value. 7700 func (s *ListAccessesOutput) SetNextToken(v string) *ListAccessesOutput { 7701 s.NextToken = &v 7702 return s 7703 } 7704 7705 // SetServerId sets the ServerId field's value. 7706 func (s *ListAccessesOutput) SetServerId(v string) *ListAccessesOutput { 7707 s.ServerId = &v 7708 return s 7709 } 7710 7711 type ListExecutionsInput struct { 7712 _ struct{} `type:"structure"` 7713 7714 // Specifies the aximum number of executions to return. 7715 MaxResults *int64 `min:"1" type:"integer"` 7716 7717 // ListExecutions returns the NextToken parameter in the output. You can then 7718 // pass the NextToken parameter in a subsequent command to continue listing 7719 // additional executions. 7720 // 7721 // This is useful for pagination, for instance. If you have 100 executions for 7722 // a workflow, you might only want to list first 10. If so, callthe API by specifing 7723 // the max-results: 7724 // 7725 // aws transfer list-executions --max-results 10 7726 // 7727 // This returns details for the first 10 executions, as well as the pointer 7728 // (NextToken) to the eleventh execution. You can now call the API again, suppling 7729 // the NextToken value you received: 7730 // 7731 // aws transfer list-executions --max-results 10 --next-token $somePointerReturnedFromPreviousListResult 7732 // 7733 // This call returns the next 10 executions, the 11th through the 20th. You 7734 // can then repeat the call until the details for all 100 executions have been 7735 // returned. 7736 NextToken *string `min:"1" type:"string"` 7737 7738 // A unique identifier for the workflow. 7739 // 7740 // WorkflowId is a required field 7741 WorkflowId *string `min:"19" type:"string" required:"true"` 7742 } 7743 7744 // String returns the string representation. 7745 // 7746 // API parameter values that are decorated as "sensitive" in the API will not 7747 // be included in the string output. The member name will be present, but the 7748 // value will be replaced with "sensitive". 7749 func (s ListExecutionsInput) String() string { 7750 return awsutil.Prettify(s) 7751 } 7752 7753 // GoString returns the string representation. 7754 // 7755 // API parameter values that are decorated as "sensitive" in the API will not 7756 // be included in the string output. The member name will be present, but the 7757 // value will be replaced with "sensitive". 7758 func (s ListExecutionsInput) GoString() string { 7759 return s.String() 7760 } 7761 7762 // Validate inspects the fields of the type to determine if they are valid. 7763 func (s *ListExecutionsInput) Validate() error { 7764 invalidParams := request.ErrInvalidParams{Context: "ListExecutionsInput"} 7765 if s.MaxResults != nil && *s.MaxResults < 1 { 7766 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7767 } 7768 if s.NextToken != nil && len(*s.NextToken) < 1 { 7769 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 7770 } 7771 if s.WorkflowId == nil { 7772 invalidParams.Add(request.NewErrParamRequired("WorkflowId")) 7773 } 7774 if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { 7775 invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) 7776 } 7777 7778 if invalidParams.Len() > 0 { 7779 return invalidParams 7780 } 7781 return nil 7782 } 7783 7784 // SetMaxResults sets the MaxResults field's value. 7785 func (s *ListExecutionsInput) SetMaxResults(v int64) *ListExecutionsInput { 7786 s.MaxResults = &v 7787 return s 7788 } 7789 7790 // SetNextToken sets the NextToken field's value. 7791 func (s *ListExecutionsInput) SetNextToken(v string) *ListExecutionsInput { 7792 s.NextToken = &v 7793 return s 7794 } 7795 7796 // SetWorkflowId sets the WorkflowId field's value. 7797 func (s *ListExecutionsInput) SetWorkflowId(v string) *ListExecutionsInput { 7798 s.WorkflowId = &v 7799 return s 7800 } 7801 7802 type ListExecutionsOutput struct { 7803 _ struct{} `type:"structure"` 7804 7805 // Returns the details for each execution. 7806 // 7807 // * NextToken: returned from a call to several APIs, you can use pass it 7808 // to a subsequent command to continue listing additional executions. 7809 // 7810 // * StartTime: timestamp indicating when the execution began. 7811 // 7812 // * Executions: details of the execution, including the execution ID, initial 7813 // file location, and Service metadata. 7814 // 7815 // * Status: one of the following values: IN_PROGRESS, COMPLETED, EXCEPTION, 7816 // HANDLING_EXEPTION. 7817 // 7818 // Executions is a required field 7819 Executions []*ListedExecution `type:"list" required:"true"` 7820 7821 // ListExecutions returns the NextToken parameter in the output. You can then 7822 // pass the NextToken parameter in a subsequent command to continue listing 7823 // additional executions. 7824 NextToken *string `min:"1" type:"string"` 7825 7826 // A unique identifier for the workflow. 7827 // 7828 // WorkflowId is a required field 7829 WorkflowId *string `min:"19" type:"string" required:"true"` 7830 } 7831 7832 // String returns the string representation. 7833 // 7834 // API parameter values that are decorated as "sensitive" in the API will not 7835 // be included in the string output. The member name will be present, but the 7836 // value will be replaced with "sensitive". 7837 func (s ListExecutionsOutput) String() string { 7838 return awsutil.Prettify(s) 7839 } 7840 7841 // GoString returns the string representation. 7842 // 7843 // API parameter values that are decorated as "sensitive" in the API will not 7844 // be included in the string output. The member name will be present, but the 7845 // value will be replaced with "sensitive". 7846 func (s ListExecutionsOutput) GoString() string { 7847 return s.String() 7848 } 7849 7850 // SetExecutions sets the Executions field's value. 7851 func (s *ListExecutionsOutput) SetExecutions(v []*ListedExecution) *ListExecutionsOutput { 7852 s.Executions = v 7853 return s 7854 } 7855 7856 // SetNextToken sets the NextToken field's value. 7857 func (s *ListExecutionsOutput) SetNextToken(v string) *ListExecutionsOutput { 7858 s.NextToken = &v 7859 return s 7860 } 7861 7862 // SetWorkflowId sets the WorkflowId field's value. 7863 func (s *ListExecutionsOutput) SetWorkflowId(v string) *ListExecutionsOutput { 7864 s.WorkflowId = &v 7865 return s 7866 } 7867 7868 type ListSecurityPoliciesInput struct { 7869 _ struct{} `type:"structure"` 7870 7871 // Specifies the number of security policies to return as a response to the 7872 // ListSecurityPolicies query. 7873 MaxResults *int64 `min:"1" type:"integer"` 7874 7875 // When additional results are obtained from the ListSecurityPolicies command, 7876 // a NextToken parameter is returned in the output. You can then pass the NextToken 7877 // parameter in a subsequent command to continue listing additional security 7878 // policies. 7879 NextToken *string `min:"1" type:"string"` 7880 } 7881 7882 // String returns the string representation. 7883 // 7884 // API parameter values that are decorated as "sensitive" in the API will not 7885 // be included in the string output. The member name will be present, but the 7886 // value will be replaced with "sensitive". 7887 func (s ListSecurityPoliciesInput) String() string { 7888 return awsutil.Prettify(s) 7889 } 7890 7891 // GoString returns the string representation. 7892 // 7893 // API parameter values that are decorated as "sensitive" in the API will not 7894 // be included in the string output. The member name will be present, but the 7895 // value will be replaced with "sensitive". 7896 func (s ListSecurityPoliciesInput) GoString() string { 7897 return s.String() 7898 } 7899 7900 // Validate inspects the fields of the type to determine if they are valid. 7901 func (s *ListSecurityPoliciesInput) Validate() error { 7902 invalidParams := request.ErrInvalidParams{Context: "ListSecurityPoliciesInput"} 7903 if s.MaxResults != nil && *s.MaxResults < 1 { 7904 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 7905 } 7906 if s.NextToken != nil && len(*s.NextToken) < 1 { 7907 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 7908 } 7909 7910 if invalidParams.Len() > 0 { 7911 return invalidParams 7912 } 7913 return nil 7914 } 7915 7916 // SetMaxResults sets the MaxResults field's value. 7917 func (s *ListSecurityPoliciesInput) SetMaxResults(v int64) *ListSecurityPoliciesInput { 7918 s.MaxResults = &v 7919 return s 7920 } 7921 7922 // SetNextToken sets the NextToken field's value. 7923 func (s *ListSecurityPoliciesInput) SetNextToken(v string) *ListSecurityPoliciesInput { 7924 s.NextToken = &v 7925 return s 7926 } 7927 7928 type ListSecurityPoliciesOutput struct { 7929 _ struct{} `type:"structure"` 7930 7931 // When you can get additional results from the ListSecurityPolicies operation, 7932 // a NextToken parameter is returned in the output. In a following command, 7933 // you can pass in the NextToken parameter to continue listing security policies. 7934 NextToken *string `min:"1" type:"string"` 7935 7936 // An array of security policies that were listed. 7937 // 7938 // SecurityPolicyNames is a required field 7939 SecurityPolicyNames []*string `type:"list" required:"true"` 7940 } 7941 7942 // String returns the string representation. 7943 // 7944 // API parameter values that are decorated as "sensitive" in the API will not 7945 // be included in the string output. The member name will be present, but the 7946 // value will be replaced with "sensitive". 7947 func (s ListSecurityPoliciesOutput) String() string { 7948 return awsutil.Prettify(s) 7949 } 7950 7951 // GoString returns the string representation. 7952 // 7953 // API parameter values that are decorated as "sensitive" in the API will not 7954 // be included in the string output. The member name will be present, but the 7955 // value will be replaced with "sensitive". 7956 func (s ListSecurityPoliciesOutput) GoString() string { 7957 return s.String() 7958 } 7959 7960 // SetNextToken sets the NextToken field's value. 7961 func (s *ListSecurityPoliciesOutput) SetNextToken(v string) *ListSecurityPoliciesOutput { 7962 s.NextToken = &v 7963 return s 7964 } 7965 7966 // SetSecurityPolicyNames sets the SecurityPolicyNames field's value. 7967 func (s *ListSecurityPoliciesOutput) SetSecurityPolicyNames(v []*string) *ListSecurityPoliciesOutput { 7968 s.SecurityPolicyNames = v 7969 return s 7970 } 7971 7972 type ListServersInput struct { 7973 _ struct{} `type:"structure"` 7974 7975 // Specifies the number of servers to return as a response to the ListServers 7976 // query. 7977 MaxResults *int64 `min:"1" type:"integer"` 7978 7979 // When additional results are obtained from the ListServers command, a NextToken 7980 // parameter is returned in the output. You can then pass the NextToken parameter 7981 // in a subsequent command to continue listing additional servers. 7982 NextToken *string `min:"1" 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 ListServersInput) 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 ListServersInput) GoString() string { 8000 return s.String() 8001 } 8002 8003 // Validate inspects the fields of the type to determine if they are valid. 8004 func (s *ListServersInput) Validate() error { 8005 invalidParams := request.ErrInvalidParams{Context: "ListServersInput"} 8006 if s.MaxResults != nil && *s.MaxResults < 1 { 8007 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8008 } 8009 if s.NextToken != nil && len(*s.NextToken) < 1 { 8010 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 8011 } 8012 8013 if invalidParams.Len() > 0 { 8014 return invalidParams 8015 } 8016 return nil 8017 } 8018 8019 // SetMaxResults sets the MaxResults field's value. 8020 func (s *ListServersInput) SetMaxResults(v int64) *ListServersInput { 8021 s.MaxResults = &v 8022 return s 8023 } 8024 8025 // SetNextToken sets the NextToken field's value. 8026 func (s *ListServersInput) SetNextToken(v string) *ListServersInput { 8027 s.NextToken = &v 8028 return s 8029 } 8030 8031 type ListServersOutput struct { 8032 _ struct{} `type:"structure"` 8033 8034 // When you can get additional results from the ListServers operation, a NextToken 8035 // parameter is returned in the output. In a following command, you can pass 8036 // in the NextToken parameter to continue listing additional servers. 8037 NextToken *string `min:"1" type:"string"` 8038 8039 // An array of servers that were listed. 8040 // 8041 // Servers is a required field 8042 Servers []*ListedServer `type:"list" required:"true"` 8043 } 8044 8045 // String returns the string representation. 8046 // 8047 // API parameter values that are decorated as "sensitive" in the API will not 8048 // be included in the string output. The member name will be present, but the 8049 // value will be replaced with "sensitive". 8050 func (s ListServersOutput) String() string { 8051 return awsutil.Prettify(s) 8052 } 8053 8054 // GoString returns the string representation. 8055 // 8056 // API parameter values that are decorated as "sensitive" in the API will not 8057 // be included in the string output. The member name will be present, but the 8058 // value will be replaced with "sensitive". 8059 func (s ListServersOutput) GoString() string { 8060 return s.String() 8061 } 8062 8063 // SetNextToken sets the NextToken field's value. 8064 func (s *ListServersOutput) SetNextToken(v string) *ListServersOutput { 8065 s.NextToken = &v 8066 return s 8067 } 8068 8069 // SetServers sets the Servers field's value. 8070 func (s *ListServersOutput) SetServers(v []*ListedServer) *ListServersOutput { 8071 s.Servers = v 8072 return s 8073 } 8074 8075 type ListTagsForResourceInput struct { 8076 _ struct{} `type:"structure"` 8077 8078 // Requests the tags associated with a particular Amazon Resource Name (ARN). 8079 // An ARN is an identifier for a specific Amazon Web Services resource, such 8080 // as a server, user, or role. 8081 // 8082 // Arn is a required field 8083 Arn *string `min:"20" type:"string" required:"true"` 8084 8085 // Specifies the number of tags to return as a response to the ListTagsForResource 8086 // request. 8087 MaxResults *int64 `min:"1" type:"integer"` 8088 8089 // When you request additional results from the ListTagsForResource operation, 8090 // a NextToken parameter is returned in the input. You can then pass in a subsequent 8091 // command to the NextToken parameter to continue listing additional tags. 8092 NextToken *string `min:"1" type:"string"` 8093 } 8094 8095 // String returns the string representation. 8096 // 8097 // API parameter values that are decorated as "sensitive" in the API will not 8098 // be included in the string output. The member name will be present, but the 8099 // value will be replaced with "sensitive". 8100 func (s ListTagsForResourceInput) String() string { 8101 return awsutil.Prettify(s) 8102 } 8103 8104 // GoString returns the string representation. 8105 // 8106 // API parameter values that are decorated as "sensitive" in the API will not 8107 // be included in the string output. The member name will be present, but the 8108 // value will be replaced with "sensitive". 8109 func (s ListTagsForResourceInput) GoString() string { 8110 return s.String() 8111 } 8112 8113 // Validate inspects the fields of the type to determine if they are valid. 8114 func (s *ListTagsForResourceInput) Validate() error { 8115 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 8116 if s.Arn == nil { 8117 invalidParams.Add(request.NewErrParamRequired("Arn")) 8118 } 8119 if s.Arn != nil && len(*s.Arn) < 20 { 8120 invalidParams.Add(request.NewErrParamMinLen("Arn", 20)) 8121 } 8122 if s.MaxResults != nil && *s.MaxResults < 1 { 8123 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8124 } 8125 if s.NextToken != nil && len(*s.NextToken) < 1 { 8126 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 8127 } 8128 8129 if invalidParams.Len() > 0 { 8130 return invalidParams 8131 } 8132 return nil 8133 } 8134 8135 // SetArn sets the Arn field's value. 8136 func (s *ListTagsForResourceInput) SetArn(v string) *ListTagsForResourceInput { 8137 s.Arn = &v 8138 return s 8139 } 8140 8141 // SetMaxResults sets the MaxResults field's value. 8142 func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput { 8143 s.MaxResults = &v 8144 return s 8145 } 8146 8147 // SetNextToken sets the NextToken field's value. 8148 func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { 8149 s.NextToken = &v 8150 return s 8151 } 8152 8153 type ListTagsForResourceOutput struct { 8154 _ struct{} `type:"structure"` 8155 8156 // The ARN you specified to list the tags of. 8157 Arn *string `min:"20" type:"string"` 8158 8159 // When you can get additional results from the ListTagsForResource call, a 8160 // NextToken parameter is returned in the output. You can then pass in a subsequent 8161 // command to the NextToken parameter to continue listing additional tags. 8162 NextToken *string `min:"1" type:"string"` 8163 8164 // Key-value pairs that are assigned to a resource, usually for the purpose 8165 // of grouping and searching for items. Tags are metadata that you define. 8166 Tags []*Tag `min:"1" type:"list"` 8167 } 8168 8169 // String returns the string representation. 8170 // 8171 // API parameter values that are decorated as "sensitive" in the API will not 8172 // be included in the string output. The member name will be present, but the 8173 // value will be replaced with "sensitive". 8174 func (s ListTagsForResourceOutput) String() string { 8175 return awsutil.Prettify(s) 8176 } 8177 8178 // GoString returns the string representation. 8179 // 8180 // API parameter values that are decorated as "sensitive" in the API will not 8181 // be included in the string output. The member name will be present, but the 8182 // value will be replaced with "sensitive". 8183 func (s ListTagsForResourceOutput) GoString() string { 8184 return s.String() 8185 } 8186 8187 // SetArn sets the Arn field's value. 8188 func (s *ListTagsForResourceOutput) SetArn(v string) *ListTagsForResourceOutput { 8189 s.Arn = &v 8190 return s 8191 } 8192 8193 // SetNextToken sets the NextToken field's value. 8194 func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { 8195 s.NextToken = &v 8196 return s 8197 } 8198 8199 // SetTags sets the Tags field's value. 8200 func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { 8201 s.Tags = v 8202 return s 8203 } 8204 8205 type ListUsersInput struct { 8206 _ struct{} `type:"structure"` 8207 8208 // Specifies the number of users to return as a response to the ListUsers request. 8209 MaxResults *int64 `min:"1" type:"integer"` 8210 8211 // When you can get additional results from the ListUsers call, a NextToken 8212 // parameter is returned in the output. You can then pass in a subsequent command 8213 // to the NextToken parameter to continue listing additional users. 8214 NextToken *string `min:"1" type:"string"` 8215 8216 // A system-assigned unique identifier for a server that has users assigned 8217 // to it. 8218 // 8219 // ServerId is a required field 8220 ServerId *string `min:"19" type:"string" required:"true"` 8221 } 8222 8223 // String returns the string representation. 8224 // 8225 // API parameter values that are decorated as "sensitive" in the API will not 8226 // be included in the string output. The member name will be present, but the 8227 // value will be replaced with "sensitive". 8228 func (s ListUsersInput) String() string { 8229 return awsutil.Prettify(s) 8230 } 8231 8232 // GoString returns the string representation. 8233 // 8234 // API parameter values that are decorated as "sensitive" in the API will not 8235 // be included in the string output. The member name will be present, but the 8236 // value will be replaced with "sensitive". 8237 func (s ListUsersInput) GoString() string { 8238 return s.String() 8239 } 8240 8241 // Validate inspects the fields of the type to determine if they are valid. 8242 func (s *ListUsersInput) Validate() error { 8243 invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"} 8244 if s.MaxResults != nil && *s.MaxResults < 1 { 8245 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8246 } 8247 if s.NextToken != nil && len(*s.NextToken) < 1 { 8248 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 8249 } 8250 if s.ServerId == nil { 8251 invalidParams.Add(request.NewErrParamRequired("ServerId")) 8252 } 8253 if s.ServerId != nil && len(*s.ServerId) < 19 { 8254 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 8255 } 8256 8257 if invalidParams.Len() > 0 { 8258 return invalidParams 8259 } 8260 return nil 8261 } 8262 8263 // SetMaxResults sets the MaxResults field's value. 8264 func (s *ListUsersInput) SetMaxResults(v int64) *ListUsersInput { 8265 s.MaxResults = &v 8266 return s 8267 } 8268 8269 // SetNextToken sets the NextToken field's value. 8270 func (s *ListUsersInput) SetNextToken(v string) *ListUsersInput { 8271 s.NextToken = &v 8272 return s 8273 } 8274 8275 // SetServerId sets the ServerId field's value. 8276 func (s *ListUsersInput) SetServerId(v string) *ListUsersInput { 8277 s.ServerId = &v 8278 return s 8279 } 8280 8281 type ListUsersOutput struct { 8282 _ struct{} `type:"structure"` 8283 8284 // When you can get additional results from the ListUsers call, a NextToken 8285 // parameter is returned in the output. You can then pass in a subsequent command 8286 // to the NextToken parameter to continue listing additional users. 8287 NextToken *string `min:"1" type:"string"` 8288 8289 // A system-assigned unique identifier for a server that the users are assigned 8290 // to. 8291 // 8292 // ServerId is a required field 8293 ServerId *string `min:"19" type:"string" required:"true"` 8294 8295 // Returns the user accounts and their properties for the ServerId value that 8296 // you specify. 8297 // 8298 // Users is a required field 8299 Users []*ListedUser `type:"list" required:"true"` 8300 } 8301 8302 // String returns the string representation. 8303 // 8304 // API parameter values that are decorated as "sensitive" in the API will not 8305 // be included in the string output. The member name will be present, but the 8306 // value will be replaced with "sensitive". 8307 func (s ListUsersOutput) String() string { 8308 return awsutil.Prettify(s) 8309 } 8310 8311 // GoString returns the string representation. 8312 // 8313 // API parameter values that are decorated as "sensitive" in the API will not 8314 // be included in the string output. The member name will be present, but the 8315 // value will be replaced with "sensitive". 8316 func (s ListUsersOutput) GoString() string { 8317 return s.String() 8318 } 8319 8320 // SetNextToken sets the NextToken field's value. 8321 func (s *ListUsersOutput) SetNextToken(v string) *ListUsersOutput { 8322 s.NextToken = &v 8323 return s 8324 } 8325 8326 // SetServerId sets the ServerId field's value. 8327 func (s *ListUsersOutput) SetServerId(v string) *ListUsersOutput { 8328 s.ServerId = &v 8329 return s 8330 } 8331 8332 // SetUsers sets the Users field's value. 8333 func (s *ListUsersOutput) SetUsers(v []*ListedUser) *ListUsersOutput { 8334 s.Users = v 8335 return s 8336 } 8337 8338 type ListWorkflowsInput struct { 8339 _ struct{} `type:"structure"` 8340 8341 // Specifies the maximum number of workflows to return. 8342 MaxResults *int64 `min:"1" type:"integer"` 8343 8344 // ListWorkflows returns the NextToken parameter in the output. You can then 8345 // pass the NextToken parameter in a subsequent command to continue listing 8346 // additional workflows. 8347 NextToken *string `min:"1" type:"string"` 8348 } 8349 8350 // String returns the string representation. 8351 // 8352 // API parameter values that are decorated as "sensitive" in the API will not 8353 // be included in the string output. The member name will be present, but the 8354 // value will be replaced with "sensitive". 8355 func (s ListWorkflowsInput) String() string { 8356 return awsutil.Prettify(s) 8357 } 8358 8359 // GoString returns the string representation. 8360 // 8361 // API parameter values that are decorated as "sensitive" in the API will not 8362 // be included in the string output. The member name will be present, but the 8363 // value will be replaced with "sensitive". 8364 func (s ListWorkflowsInput) GoString() string { 8365 return s.String() 8366 } 8367 8368 // Validate inspects the fields of the type to determine if they are valid. 8369 func (s *ListWorkflowsInput) Validate() error { 8370 invalidParams := request.ErrInvalidParams{Context: "ListWorkflowsInput"} 8371 if s.MaxResults != nil && *s.MaxResults < 1 { 8372 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 8373 } 8374 if s.NextToken != nil && len(*s.NextToken) < 1 { 8375 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 8376 } 8377 8378 if invalidParams.Len() > 0 { 8379 return invalidParams 8380 } 8381 return nil 8382 } 8383 8384 // SetMaxResults sets the MaxResults field's value. 8385 func (s *ListWorkflowsInput) SetMaxResults(v int64) *ListWorkflowsInput { 8386 s.MaxResults = &v 8387 return s 8388 } 8389 8390 // SetNextToken sets the NextToken field's value. 8391 func (s *ListWorkflowsInput) SetNextToken(v string) *ListWorkflowsInput { 8392 s.NextToken = &v 8393 return s 8394 } 8395 8396 type ListWorkflowsOutput struct { 8397 _ struct{} `type:"structure"` 8398 8399 // ListWorkflows returns the NextToken parameter in the output. You can then 8400 // pass the NextToken parameter in a subsequent command to continue listing 8401 // additional workflows. 8402 NextToken *string `min:"1" type:"string"` 8403 8404 // Returns the Arn, WorkflowId, and Description for each workflow. 8405 // 8406 // Workflows is a required field 8407 Workflows []*ListedWorkflow `type:"list" required:"true"` 8408 } 8409 8410 // String 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 ListWorkflowsOutput) String() string { 8416 return awsutil.Prettify(s) 8417 } 8418 8419 // GoString returns the string representation. 8420 // 8421 // API parameter values that are decorated as "sensitive" in the API will not 8422 // be included in the string output. The member name will be present, but the 8423 // value will be replaced with "sensitive". 8424 func (s ListWorkflowsOutput) GoString() string { 8425 return s.String() 8426 } 8427 8428 // SetNextToken sets the NextToken field's value. 8429 func (s *ListWorkflowsOutput) SetNextToken(v string) *ListWorkflowsOutput { 8430 s.NextToken = &v 8431 return s 8432 } 8433 8434 // SetWorkflows sets the Workflows field's value. 8435 func (s *ListWorkflowsOutput) SetWorkflows(v []*ListedWorkflow) *ListWorkflowsOutput { 8436 s.Workflows = v 8437 return s 8438 } 8439 8440 // Lists the properties for one or more specified associated accesses. 8441 type ListedAccess struct { 8442 _ struct{} `type:"structure"` 8443 8444 // A unique identifier that is required to identify specific groups within your 8445 // directory. The users of the group that you associate have access to your 8446 // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon 8447 // Web Services Transfer Family. If you know the group name, you can view the 8448 // SID values by running the following command using Windows PowerShell. 8449 // 8450 // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * 8451 // | Select SamAccountName,ObjectSid 8452 // 8453 // In that command, replace YourGroupName with the name of your Active Directory 8454 // group. 8455 // 8456 // The regex used to validate this parameter is a string of characters consisting 8457 // of uppercase and lowercase alphanumeric characters with no spaces. You can 8458 // also include underscores or any of the following characters: =,.@:/- 8459 ExternalId *string `min:"1" type:"string"` 8460 8461 // The landing directory (folder) for a user when they log in to the server 8462 // using the client. 8463 // 8464 // A HomeDirectory example is /bucket_name/home/mydirectory. 8465 HomeDirectory *string `type:"string"` 8466 8467 // The type of landing directory (folder) you want your users' home directory 8468 // to be when they log into the server. If you set it to PATH, the user will 8469 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 8470 // protocol clients. If you set it LOGICAL, you need to provide mappings in 8471 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 8472 // visible to your users. 8473 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 8474 8475 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 8476 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 8477 // to this role determine the level of access that you want to provide your 8478 // users when transferring files into and out of your Amazon S3 bucket or EFS 8479 // file system. The IAM role should also contain a trust relationship that allows 8480 // the server to access your resources when servicing your users' transfer requests. 8481 Role *string `min:"20" type:"string"` 8482 } 8483 8484 // String returns the string representation. 8485 // 8486 // API parameter values that are decorated as "sensitive" in the API will not 8487 // be included in the string output. The member name will be present, but the 8488 // value will be replaced with "sensitive". 8489 func (s ListedAccess) String() string { 8490 return awsutil.Prettify(s) 8491 } 8492 8493 // GoString returns the string representation. 8494 // 8495 // API parameter values that are decorated as "sensitive" in the API will not 8496 // be included in the string output. The member name will be present, but the 8497 // value will be replaced with "sensitive". 8498 func (s ListedAccess) GoString() string { 8499 return s.String() 8500 } 8501 8502 // SetExternalId sets the ExternalId field's value. 8503 func (s *ListedAccess) SetExternalId(v string) *ListedAccess { 8504 s.ExternalId = &v 8505 return s 8506 } 8507 8508 // SetHomeDirectory sets the HomeDirectory field's value. 8509 func (s *ListedAccess) SetHomeDirectory(v string) *ListedAccess { 8510 s.HomeDirectory = &v 8511 return s 8512 } 8513 8514 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 8515 func (s *ListedAccess) SetHomeDirectoryType(v string) *ListedAccess { 8516 s.HomeDirectoryType = &v 8517 return s 8518 } 8519 8520 // SetRole sets the Role field's value. 8521 func (s *ListedAccess) SetRole(v string) *ListedAccess { 8522 s.Role = &v 8523 return s 8524 } 8525 8526 // Returns properties of the execution that is specified. 8527 type ListedExecution struct { 8528 _ struct{} `type:"structure"` 8529 8530 // A unique identifier for the execution of a workflow. 8531 ExecutionId *string `min:"36" type:"string"` 8532 8533 // A structure that describes the Amazon S3 or EFS file location. This is the 8534 // file location when the execution begins: if the file is being copied, this 8535 // is the initial (as opposed to destination) file location. 8536 InitialFileLocation *FileLocation `type:"structure"` 8537 8538 // A container object for the session details associated with a workflow. 8539 ServiceMetadata *ServiceMetadata `type:"structure"` 8540 8541 // The status is one of the execution. Can be in progress, completed, exception 8542 // encountered, or handling the exception. 8543 Status *string `type:"string" enum:"ExecutionStatus"` 8544 } 8545 8546 // String returns the string representation. 8547 // 8548 // API parameter values that are decorated as "sensitive" in the API will not 8549 // be included in the string output. The member name will be present, but the 8550 // value will be replaced with "sensitive". 8551 func (s ListedExecution) String() string { 8552 return awsutil.Prettify(s) 8553 } 8554 8555 // GoString returns the string representation. 8556 // 8557 // API parameter values that are decorated as "sensitive" in the API will not 8558 // be included in the string output. The member name will be present, but the 8559 // value will be replaced with "sensitive". 8560 func (s ListedExecution) GoString() string { 8561 return s.String() 8562 } 8563 8564 // SetExecutionId sets the ExecutionId field's value. 8565 func (s *ListedExecution) SetExecutionId(v string) *ListedExecution { 8566 s.ExecutionId = &v 8567 return s 8568 } 8569 8570 // SetInitialFileLocation sets the InitialFileLocation field's value. 8571 func (s *ListedExecution) SetInitialFileLocation(v *FileLocation) *ListedExecution { 8572 s.InitialFileLocation = v 8573 return s 8574 } 8575 8576 // SetServiceMetadata sets the ServiceMetadata field's value. 8577 func (s *ListedExecution) SetServiceMetadata(v *ServiceMetadata) *ListedExecution { 8578 s.ServiceMetadata = v 8579 return s 8580 } 8581 8582 // SetStatus sets the Status field's value. 8583 func (s *ListedExecution) SetStatus(v string) *ListedExecution { 8584 s.Status = &v 8585 return s 8586 } 8587 8588 // Returns properties of a file transfer protocol-enabled server that was specified. 8589 type ListedServer struct { 8590 _ struct{} `type:"structure"` 8591 8592 // Specifies the unique Amazon Resource Name (ARN) for a server to be listed. 8593 // 8594 // Arn is a required field 8595 Arn *string `min:"20" type:"string" required:"true"` 8596 8597 // Specifies the domain of the storage system that is used for file transfers. 8598 Domain *string `type:"string" enum:"Domain"` 8599 8600 // Specifies the type of VPC endpoint that your server is connected to. If your 8601 // server is connected to a VPC endpoint, your server isn't accessible over 8602 // the public internet. 8603 EndpointType *string `type:"string" enum:"EndpointType"` 8604 8605 // Specifies the mode of authentication for a server. The default value is SERVICE_MANAGED, 8606 // which allows you to store and access user credentials within the Amazon Web 8607 // Services Transfer Family service. 8608 // 8609 // Use AWS_DIRECTORY_SERVICE to provide access to Active Directory groups in 8610 // Amazon Web Services Managed Active Directory or Microsoft Active Directory 8611 // in your on-premises environment or in Amazon Web Services using AD Connectors. 8612 // This option also requires you to provide a Directory ID using the IdentityProviderDetails 8613 // parameter. 8614 // 8615 // Use the API_GATEWAY value to integrate with an identity provider of your 8616 // choosing. The API_GATEWAY setting requires you to provide an API Gateway 8617 // endpoint URL to call for authentication using the IdentityProviderDetails 8618 // parameter. 8619 IdentityProviderType *string `type:"string" enum:"IdentityProviderType"` 8620 8621 // Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 8622 // and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch 8623 // logging for Amazon S3 or Amazon EFS events. When set, user activity can be 8624 // viewed in your CloudWatch logs. 8625 LoggingRole *string `min:"20" type:"string"` 8626 8627 // Specifies the unique system assigned identifier for the servers that were 8628 // listed. 8629 ServerId *string `min:"19" type:"string"` 8630 8631 // Specifies the condition of a server for the server that was described. A 8632 // value of ONLINE indicates that the server can accept jobs and transfer files. 8633 // A State value of OFFLINE means that the server cannot perform file transfer 8634 // operations. 8635 // 8636 // The states of STARTING and STOPPING indicate that the server is in an intermediate 8637 // state, either not fully able to respond, or not fully offline. The values 8638 // of START_FAILED or STOP_FAILED can indicate an error condition. 8639 State *string `type:"string" enum:"State"` 8640 8641 // Specifies the number of users that are assigned to a server you specified 8642 // with the ServerId. 8643 UserCount *int64 `type:"integer"` 8644 } 8645 8646 // String returns the string representation. 8647 // 8648 // API parameter values that are decorated as "sensitive" in the API will not 8649 // be included in the string output. The member name will be present, but the 8650 // value will be replaced with "sensitive". 8651 func (s ListedServer) String() string { 8652 return awsutil.Prettify(s) 8653 } 8654 8655 // GoString returns the string representation. 8656 // 8657 // API parameter values that are decorated as "sensitive" in the API will not 8658 // be included in the string output. The member name will be present, but the 8659 // value will be replaced with "sensitive". 8660 func (s ListedServer) GoString() string { 8661 return s.String() 8662 } 8663 8664 // SetArn sets the Arn field's value. 8665 func (s *ListedServer) SetArn(v string) *ListedServer { 8666 s.Arn = &v 8667 return s 8668 } 8669 8670 // SetDomain sets the Domain field's value. 8671 func (s *ListedServer) SetDomain(v string) *ListedServer { 8672 s.Domain = &v 8673 return s 8674 } 8675 8676 // SetEndpointType sets the EndpointType field's value. 8677 func (s *ListedServer) SetEndpointType(v string) *ListedServer { 8678 s.EndpointType = &v 8679 return s 8680 } 8681 8682 // SetIdentityProviderType sets the IdentityProviderType field's value. 8683 func (s *ListedServer) SetIdentityProviderType(v string) *ListedServer { 8684 s.IdentityProviderType = &v 8685 return s 8686 } 8687 8688 // SetLoggingRole sets the LoggingRole field's value. 8689 func (s *ListedServer) SetLoggingRole(v string) *ListedServer { 8690 s.LoggingRole = &v 8691 return s 8692 } 8693 8694 // SetServerId sets the ServerId field's value. 8695 func (s *ListedServer) SetServerId(v string) *ListedServer { 8696 s.ServerId = &v 8697 return s 8698 } 8699 8700 // SetState sets the State field's value. 8701 func (s *ListedServer) SetState(v string) *ListedServer { 8702 s.State = &v 8703 return s 8704 } 8705 8706 // SetUserCount sets the UserCount field's value. 8707 func (s *ListedServer) SetUserCount(v int64) *ListedServer { 8708 s.UserCount = &v 8709 return s 8710 } 8711 8712 // Returns properties of the user that you specify. 8713 type ListedUser struct { 8714 _ struct{} `type:"structure"` 8715 8716 // Provides the unique Amazon Resource Name (ARN) for the user that you want 8717 // to learn about. 8718 // 8719 // Arn is a required field 8720 Arn *string `min:"20" type:"string" required:"true"` 8721 8722 // The landing directory (folder) for a user when they log in to the server 8723 // using the client. 8724 // 8725 // A HomeDirectory example is /bucket_name/home/mydirectory. 8726 HomeDirectory *string `type:"string"` 8727 8728 // The type of landing directory (folder) you want your users' home directory 8729 // to be when they log into the server. If you set it to PATH, the user will 8730 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 8731 // protocol clients. If you set it LOGICAL, you need to provide mappings in 8732 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 8733 // visible to your users. 8734 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 8735 8736 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 8737 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 8738 // to this role determine the level of access that you want to provide your 8739 // users when transferring files into and out of your Amazon S3 bucket or EFS 8740 // file system. The IAM role should also contain a trust relationship that allows 8741 // the server to access your resources when servicing your users' transfer requests. 8742 // 8743 // The IAM role that controls your users' access to your Amazon S3 bucket for 8744 // servers with Domain=S3, or your EFS file system for servers with Domain=EFS. 8745 // 8746 // The policies attached to this role determine the level of access you want 8747 // to provide your users when transferring files into and out of your S3 buckets 8748 // or EFS file systems. 8749 Role *string `min:"20" type:"string"` 8750 8751 // Specifies the number of SSH public keys stored for the user you specified. 8752 SshPublicKeyCount *int64 `type:"integer"` 8753 8754 // Specifies the name of the user whose ARN was specified. User names are used 8755 // for authentication purposes. 8756 UserName *string `min:"3" type:"string"` 8757 } 8758 8759 // String returns the string representation. 8760 // 8761 // API parameter values that are decorated as "sensitive" in the API will not 8762 // be included in the string output. The member name will be present, but the 8763 // value will be replaced with "sensitive". 8764 func (s ListedUser) String() string { 8765 return awsutil.Prettify(s) 8766 } 8767 8768 // GoString returns the string representation. 8769 // 8770 // API parameter values that are decorated as "sensitive" in the API will not 8771 // be included in the string output. The member name will be present, but the 8772 // value will be replaced with "sensitive". 8773 func (s ListedUser) GoString() string { 8774 return s.String() 8775 } 8776 8777 // SetArn sets the Arn field's value. 8778 func (s *ListedUser) SetArn(v string) *ListedUser { 8779 s.Arn = &v 8780 return s 8781 } 8782 8783 // SetHomeDirectory sets the HomeDirectory field's value. 8784 func (s *ListedUser) SetHomeDirectory(v string) *ListedUser { 8785 s.HomeDirectory = &v 8786 return s 8787 } 8788 8789 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 8790 func (s *ListedUser) SetHomeDirectoryType(v string) *ListedUser { 8791 s.HomeDirectoryType = &v 8792 return s 8793 } 8794 8795 // SetRole sets the Role field's value. 8796 func (s *ListedUser) SetRole(v string) *ListedUser { 8797 s.Role = &v 8798 return s 8799 } 8800 8801 // SetSshPublicKeyCount sets the SshPublicKeyCount field's value. 8802 func (s *ListedUser) SetSshPublicKeyCount(v int64) *ListedUser { 8803 s.SshPublicKeyCount = &v 8804 return s 8805 } 8806 8807 // SetUserName sets the UserName field's value. 8808 func (s *ListedUser) SetUserName(v string) *ListedUser { 8809 s.UserName = &v 8810 return s 8811 } 8812 8813 // Contains the ID, text description, and Amazon Resource Name (ARN) for the 8814 // workflow. 8815 type ListedWorkflow struct { 8816 _ struct{} `type:"structure"` 8817 8818 // Specifies the unique Amazon Resource Name (ARN) for the workflow. 8819 Arn *string `min:"20" type:"string"` 8820 8821 // Specifies the text description for the workflow. 8822 Description *string `type:"string"` 8823 8824 // A unique identifier for the workflow. 8825 WorkflowId *string `min:"19" type:"string"` 8826 } 8827 8828 // String returns the string representation. 8829 // 8830 // API parameter values that are decorated as "sensitive" in the API will not 8831 // be included in the string output. The member name will be present, but the 8832 // value will be replaced with "sensitive". 8833 func (s ListedWorkflow) String() string { 8834 return awsutil.Prettify(s) 8835 } 8836 8837 // GoString returns the string representation. 8838 // 8839 // API parameter values that are decorated as "sensitive" in the API will not 8840 // be included in the string output. The member name will be present, but the 8841 // value will be replaced with "sensitive". 8842 func (s ListedWorkflow) GoString() string { 8843 return s.String() 8844 } 8845 8846 // SetArn sets the Arn field's value. 8847 func (s *ListedWorkflow) SetArn(v string) *ListedWorkflow { 8848 s.Arn = &v 8849 return s 8850 } 8851 8852 // SetDescription sets the Description field's value. 8853 func (s *ListedWorkflow) SetDescription(v string) *ListedWorkflow { 8854 s.Description = &v 8855 return s 8856 } 8857 8858 // SetWorkflowId sets the WorkflowId field's value. 8859 func (s *ListedWorkflow) SetWorkflowId(v string) *ListedWorkflow { 8860 s.WorkflowId = &v 8861 return s 8862 } 8863 8864 // Consists of the logging role and the log group name. 8865 type LoggingConfiguration struct { 8866 _ struct{} `type:"structure"` 8867 8868 // The name of the CloudWatch logging group for the Amazon Web Services Transfer 8869 // server to which this workflow belongs. 8870 LogGroupName *string `min:"1" type:"string"` 8871 8872 // Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 8873 // and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch 8874 // logging for Amazon S3 or Amazon EFS events. When set, user activity can be 8875 // viewed in your CloudWatch logs. 8876 LoggingRole *string `min:"20" type:"string"` 8877 } 8878 8879 // String returns the string representation. 8880 // 8881 // API parameter values that are decorated as "sensitive" in the API will not 8882 // be included in the string output. The member name will be present, but the 8883 // value will be replaced with "sensitive". 8884 func (s LoggingConfiguration) String() string { 8885 return awsutil.Prettify(s) 8886 } 8887 8888 // GoString returns the string representation. 8889 // 8890 // API parameter values that are decorated as "sensitive" in the API will not 8891 // be included in the string output. The member name will be present, but the 8892 // value will be replaced with "sensitive". 8893 func (s LoggingConfiguration) GoString() string { 8894 return s.String() 8895 } 8896 8897 // SetLogGroupName sets the LogGroupName field's value. 8898 func (s *LoggingConfiguration) SetLogGroupName(v string) *LoggingConfiguration { 8899 s.LogGroupName = &v 8900 return s 8901 } 8902 8903 // SetLoggingRole sets the LoggingRole field's value. 8904 func (s *LoggingConfiguration) SetLoggingRole(v string) *LoggingConfiguration { 8905 s.LoggingRole = &v 8906 return s 8907 } 8908 8909 // The full POSIX identity, including user ID (Uid), group ID (Gid), and any 8910 // secondary groups IDs (SecondaryGids), that controls your users' access to 8911 // your Amazon EFS file systems. The POSIX permissions that are set on files 8912 // and directories in your file system determine the level of access your users 8913 // get when transferring files into and out of your Amazon EFS file systems. 8914 type PosixProfile struct { 8915 _ struct{} `type:"structure"` 8916 8917 // The POSIX group ID used for all EFS operations by this user. 8918 // 8919 // Gid is a required field 8920 Gid *int64 `type:"long" required:"true"` 8921 8922 // The secondary POSIX group IDs used for all EFS operations by this user. 8923 SecondaryGids []*int64 `type:"list"` 8924 8925 // The POSIX user ID used for all EFS operations by this user. 8926 // 8927 // Uid is a required field 8928 Uid *int64 `type:"long" required:"true"` 8929 } 8930 8931 // String returns the string representation. 8932 // 8933 // API parameter values that are decorated as "sensitive" in the API will not 8934 // be included in the string output. The member name will be present, but the 8935 // value will be replaced with "sensitive". 8936 func (s PosixProfile) String() string { 8937 return awsutil.Prettify(s) 8938 } 8939 8940 // GoString returns the string representation. 8941 // 8942 // API parameter values that are decorated as "sensitive" in the API will not 8943 // be included in the string output. The member name will be present, but the 8944 // value will be replaced with "sensitive". 8945 func (s PosixProfile) GoString() string { 8946 return s.String() 8947 } 8948 8949 // Validate inspects the fields of the type to determine if they are valid. 8950 func (s *PosixProfile) Validate() error { 8951 invalidParams := request.ErrInvalidParams{Context: "PosixProfile"} 8952 if s.Gid == nil { 8953 invalidParams.Add(request.NewErrParamRequired("Gid")) 8954 } 8955 if s.Uid == nil { 8956 invalidParams.Add(request.NewErrParamRequired("Uid")) 8957 } 8958 8959 if invalidParams.Len() > 0 { 8960 return invalidParams 8961 } 8962 return nil 8963 } 8964 8965 // SetGid sets the Gid field's value. 8966 func (s *PosixProfile) SetGid(v int64) *PosixProfile { 8967 s.Gid = &v 8968 return s 8969 } 8970 8971 // SetSecondaryGids sets the SecondaryGids field's value. 8972 func (s *PosixProfile) SetSecondaryGids(v []*int64) *PosixProfile { 8973 s.SecondaryGids = v 8974 return s 8975 } 8976 8977 // SetUid sets the Uid field's value. 8978 func (s *PosixProfile) SetUid(v int64) *PosixProfile { 8979 s.Uid = &v 8980 return s 8981 } 8982 8983 // The protocol settings that are configured for your server. 8984 // 8985 // This type is only valid in the UpdateServer API. 8986 type ProtocolDetails struct { 8987 _ struct{} `type:"structure"` 8988 8989 // Indicates passive mode, for FTP and FTPS protocols. Enter a single dotted-quad 8990 // IPv4 address, such as the external IP address of a firewall, router, or load 8991 // balancer. For example: 8992 // 8993 // aws transfer update-server --protocol-details PassiveIp=0.0.0.0 8994 // 8995 // Replace 0.0.0.0 in the example above with the actual IP address you want 8996 // to use. 8997 // 8998 // If you change the PassiveIp value, you must stop and then restart your Transfer 8999 // server for the change to take effect. For details on using Passive IP (PASV) 9000 // in a NAT environment, see Configuring your FTPS server behind a firewall 9001 // or NAT with Amazon Web Services Transfer Family (http://aws.amazon.com/blogs/storage/configuring-your-ftps-server-behind-a-firewall-or-nat-with-aws-transfer-family/). 9002 PassiveIp *string `type:"string"` 9003 } 9004 9005 // String returns the string representation. 9006 // 9007 // API parameter values that are decorated as "sensitive" in the API will not 9008 // be included in the string output. The member name will be present, but the 9009 // value will be replaced with "sensitive". 9010 func (s ProtocolDetails) String() string { 9011 return awsutil.Prettify(s) 9012 } 9013 9014 // GoString returns the string representation. 9015 // 9016 // API parameter values that are decorated as "sensitive" in the API will not 9017 // be included in the string output. The member name will be present, but the 9018 // value will be replaced with "sensitive". 9019 func (s ProtocolDetails) GoString() string { 9020 return s.String() 9021 } 9022 9023 // SetPassiveIp sets the PassiveIp field's value. 9024 func (s *ProtocolDetails) SetPassiveIp(v string) *ProtocolDetails { 9025 s.PassiveIp = &v 9026 return s 9027 } 9028 9029 // The requested resource does not exist. 9030 type ResourceExistsException struct { 9031 _ struct{} `type:"structure"` 9032 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9033 9034 Message_ *string `locationName:"Message" type:"string"` 9035 9036 // Resource is a required field 9037 Resource *string `type:"string" required:"true"` 9038 9039 // ResourceType is a required field 9040 ResourceType *string `type:"string" required:"true"` 9041 } 9042 9043 // String returns the string representation. 9044 // 9045 // API parameter values that are decorated as "sensitive" in the API will not 9046 // be included in the string output. The member name will be present, but the 9047 // value will be replaced with "sensitive". 9048 func (s ResourceExistsException) String() string { 9049 return awsutil.Prettify(s) 9050 } 9051 9052 // GoString returns the string representation. 9053 // 9054 // API parameter values that are decorated as "sensitive" in the API will not 9055 // be included in the string output. The member name will be present, but the 9056 // value will be replaced with "sensitive". 9057 func (s ResourceExistsException) GoString() string { 9058 return s.String() 9059 } 9060 9061 func newErrorResourceExistsException(v protocol.ResponseMetadata) error { 9062 return &ResourceExistsException{ 9063 RespMetadata: v, 9064 } 9065 } 9066 9067 // Code returns the exception type name. 9068 func (s *ResourceExistsException) Code() string { 9069 return "ResourceExistsException" 9070 } 9071 9072 // Message returns the exception's message. 9073 func (s *ResourceExistsException) Message() string { 9074 if s.Message_ != nil { 9075 return *s.Message_ 9076 } 9077 return "" 9078 } 9079 9080 // OrigErr always returns nil, satisfies awserr.Error interface. 9081 func (s *ResourceExistsException) OrigErr() error { 9082 return nil 9083 } 9084 9085 func (s *ResourceExistsException) Error() string { 9086 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 9087 } 9088 9089 // Status code returns the HTTP status code for the request's response error. 9090 func (s *ResourceExistsException) StatusCode() int { 9091 return s.RespMetadata.StatusCode 9092 } 9093 9094 // RequestID returns the service's response RequestID for request. 9095 func (s *ResourceExistsException) RequestID() string { 9096 return s.RespMetadata.RequestID 9097 } 9098 9099 // This exception is thrown when a resource is not found by the Amazon Web ServicesTransfer 9100 // Family service. 9101 type ResourceNotFoundException struct { 9102 _ struct{} `type:"structure"` 9103 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9104 9105 Message_ *string `locationName:"Message" type:"string"` 9106 9107 // Resource is a required field 9108 Resource *string `type:"string" required:"true"` 9109 9110 // ResourceType is a required field 9111 ResourceType *string `type:"string" required:"true"` 9112 } 9113 9114 // String returns the string representation. 9115 // 9116 // API parameter values that are decorated as "sensitive" in the API will not 9117 // be included in the string output. The member name will be present, but the 9118 // value will be replaced with "sensitive". 9119 func (s ResourceNotFoundException) String() string { 9120 return awsutil.Prettify(s) 9121 } 9122 9123 // GoString returns the string representation. 9124 // 9125 // API parameter values that are decorated as "sensitive" in the API will not 9126 // be included in the string output. The member name will be present, but the 9127 // value will be replaced with "sensitive". 9128 func (s ResourceNotFoundException) GoString() string { 9129 return s.String() 9130 } 9131 9132 func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { 9133 return &ResourceNotFoundException{ 9134 RespMetadata: v, 9135 } 9136 } 9137 9138 // Code returns the exception type name. 9139 func (s *ResourceNotFoundException) Code() string { 9140 return "ResourceNotFoundException" 9141 } 9142 9143 // Message returns the exception's message. 9144 func (s *ResourceNotFoundException) Message() string { 9145 if s.Message_ != nil { 9146 return *s.Message_ 9147 } 9148 return "" 9149 } 9150 9151 // OrigErr always returns nil, satisfies awserr.Error interface. 9152 func (s *ResourceNotFoundException) OrigErr() error { 9153 return nil 9154 } 9155 9156 func (s *ResourceNotFoundException) Error() string { 9157 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 9158 } 9159 9160 // Status code returns the HTTP status code for the request's response error. 9161 func (s *ResourceNotFoundException) StatusCode() int { 9162 return s.RespMetadata.StatusCode 9163 } 9164 9165 // RequestID returns the service's response RequestID for request. 9166 func (s *ResourceNotFoundException) RequestID() string { 9167 return s.RespMetadata.RequestID 9168 } 9169 9170 // Specifies the details for the file location for the file being used in the 9171 // workflow. Only applicable if you are using S3 storage. 9172 type S3FileLocation struct { 9173 _ struct{} `type:"structure"` 9174 9175 // Specifies the S3 bucket that contains the file being used. 9176 Bucket *string `min:"3" type:"string"` 9177 9178 // The entity tag is a hash of the object. The ETag reflects changes only to 9179 // the contents of an object, not its metadata. 9180 Etag *string `min:"1" type:"string"` 9181 9182 // The name assigned to the file when it was created in S3. You use the object 9183 // key to retrieve the object. 9184 Key *string `type:"string"` 9185 9186 // Specifies the file version. 9187 VersionId *string `min:"1" type:"string"` 9188 } 9189 9190 // String returns the string representation. 9191 // 9192 // API parameter values that are decorated as "sensitive" in the API will not 9193 // be included in the string output. The member name will be present, but the 9194 // value will be replaced with "sensitive". 9195 func (s S3FileLocation) String() string { 9196 return awsutil.Prettify(s) 9197 } 9198 9199 // GoString returns the string representation. 9200 // 9201 // API parameter values that are decorated as "sensitive" in the API will not 9202 // be included in the string output. The member name will be present, but the 9203 // value will be replaced with "sensitive". 9204 func (s S3FileLocation) GoString() string { 9205 return s.String() 9206 } 9207 9208 // SetBucket sets the Bucket field's value. 9209 func (s *S3FileLocation) SetBucket(v string) *S3FileLocation { 9210 s.Bucket = &v 9211 return s 9212 } 9213 9214 // SetEtag sets the Etag field's value. 9215 func (s *S3FileLocation) SetEtag(v string) *S3FileLocation { 9216 s.Etag = &v 9217 return s 9218 } 9219 9220 // SetKey sets the Key field's value. 9221 func (s *S3FileLocation) SetKey(v string) *S3FileLocation { 9222 s.Key = &v 9223 return s 9224 } 9225 9226 // SetVersionId sets the VersionId field's value. 9227 func (s *S3FileLocation) SetVersionId(v string) *S3FileLocation { 9228 s.VersionId = &v 9229 return s 9230 } 9231 9232 // Specifies the customer input S3 file location. If it is used inside copyStepDetails.DestinationFileLocation, 9233 // it should be the S3 copy destination. 9234 // 9235 // You need to provide the bucket and key. The key can represent either a path 9236 // or a file. This is determined by whether or not you end the key value with 9237 // the forward slash (/) character. If the final character is "/", then your 9238 // file is copied to the folder, and its name does not change. If, rather, the 9239 // final character is alphanumeric, your uploaded file is renamed to the path 9240 // value. In this case, if a file with that name already exists, it is overwritten. 9241 // 9242 // For example, if your path is shared-files/bob/, your uploaded files are copied 9243 // to the shared-files/bob/, folder. If your path is shared-files/today, each 9244 // uploaded file is copied to the shared-files folder and named today: each 9245 // upload overwrites the previous version of the bob file. 9246 type S3InputFileLocation struct { 9247 _ struct{} `type:"structure"` 9248 9249 // Specifies the S3 bucket for the customer input file. 9250 Bucket *string `min:"3" type:"string"` 9251 9252 // The name assigned to the file when it was created in S3. You use the object 9253 // key to retrieve the object. 9254 Key *string `type:"string"` 9255 } 9256 9257 // String returns the string representation. 9258 // 9259 // API parameter values that are decorated as "sensitive" in the API will not 9260 // be included in the string output. The member name will be present, but the 9261 // value will be replaced with "sensitive". 9262 func (s S3InputFileLocation) String() string { 9263 return awsutil.Prettify(s) 9264 } 9265 9266 // GoString returns the string representation. 9267 // 9268 // API parameter values that are decorated as "sensitive" in the API will not 9269 // be included in the string output. The member name will be present, but the 9270 // value will be replaced with "sensitive". 9271 func (s S3InputFileLocation) GoString() string { 9272 return s.String() 9273 } 9274 9275 // Validate inspects the fields of the type to determine if they are valid. 9276 func (s *S3InputFileLocation) Validate() error { 9277 invalidParams := request.ErrInvalidParams{Context: "S3InputFileLocation"} 9278 if s.Bucket != nil && len(*s.Bucket) < 3 { 9279 invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) 9280 } 9281 9282 if invalidParams.Len() > 0 { 9283 return invalidParams 9284 } 9285 return nil 9286 } 9287 9288 // SetBucket sets the Bucket field's value. 9289 func (s *S3InputFileLocation) SetBucket(v string) *S3InputFileLocation { 9290 s.Bucket = &v 9291 return s 9292 } 9293 9294 // SetKey sets the Key field's value. 9295 func (s *S3InputFileLocation) SetKey(v string) *S3InputFileLocation { 9296 s.Key = &v 9297 return s 9298 } 9299 9300 // Specifies the key-value pair that are assigned to a file during the execution 9301 // of a Tagging step. 9302 type S3Tag struct { 9303 _ struct{} `type:"structure"` 9304 9305 // The name assigned to the tag that you create. 9306 // 9307 // Key is a required field 9308 Key *string `min:"1" type:"string" required:"true"` 9309 9310 // The value that corresponds to the key. 9311 // 9312 // Value is a required field 9313 Value *string `type:"string" required:"true"` 9314 } 9315 9316 // String returns the string representation. 9317 // 9318 // API parameter values that are decorated as "sensitive" in the API will not 9319 // be included in the string output. The member name will be present, but the 9320 // value will be replaced with "sensitive". 9321 func (s S3Tag) String() string { 9322 return awsutil.Prettify(s) 9323 } 9324 9325 // GoString returns the string representation. 9326 // 9327 // API parameter values that are decorated as "sensitive" in the API will not 9328 // be included in the string output. The member name will be present, but the 9329 // value will be replaced with "sensitive". 9330 func (s S3Tag) GoString() string { 9331 return s.String() 9332 } 9333 9334 // Validate inspects the fields of the type to determine if they are valid. 9335 func (s *S3Tag) Validate() error { 9336 invalidParams := request.ErrInvalidParams{Context: "S3Tag"} 9337 if s.Key == nil { 9338 invalidParams.Add(request.NewErrParamRequired("Key")) 9339 } 9340 if s.Key != nil && len(*s.Key) < 1 { 9341 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 9342 } 9343 if s.Value == nil { 9344 invalidParams.Add(request.NewErrParamRequired("Value")) 9345 } 9346 9347 if invalidParams.Len() > 0 { 9348 return invalidParams 9349 } 9350 return nil 9351 } 9352 9353 // SetKey sets the Key field's value. 9354 func (s *S3Tag) SetKey(v string) *S3Tag { 9355 s.Key = &v 9356 return s 9357 } 9358 9359 // SetValue sets the Value field's value. 9360 func (s *S3Tag) SetValue(v string) *S3Tag { 9361 s.Value = &v 9362 return s 9363 } 9364 9365 type SendWorkflowStepStateInput struct { 9366 _ struct{} `type:"structure"` 9367 9368 // A unique identifier for the execution of a workflow. 9369 // 9370 // ExecutionId is a required field 9371 ExecutionId *string `min:"36" type:"string" required:"true"` 9372 9373 // Indicates whether the specified step succeeded or failed. 9374 // 9375 // Status is a required field 9376 Status *string `type:"string" required:"true" enum:"CustomStepStatus"` 9377 9378 // Used to distinguish between multiple callbacks for multiple Lambda steps 9379 // within the same execution. 9380 // 9381 // Token is a required field 9382 Token *string `min:"1" type:"string" required:"true"` 9383 9384 // A unique identifier for the workflow. 9385 // 9386 // WorkflowId is a required field 9387 WorkflowId *string `min:"19" type:"string" required:"true"` 9388 } 9389 9390 // String returns the string representation. 9391 // 9392 // API parameter values that are decorated as "sensitive" in the API will not 9393 // be included in the string output. The member name will be present, but the 9394 // value will be replaced with "sensitive". 9395 func (s SendWorkflowStepStateInput) String() string { 9396 return awsutil.Prettify(s) 9397 } 9398 9399 // GoString returns the string representation. 9400 // 9401 // API parameter values that are decorated as "sensitive" in the API will not 9402 // be included in the string output. The member name will be present, but the 9403 // value will be replaced with "sensitive". 9404 func (s SendWorkflowStepStateInput) GoString() string { 9405 return s.String() 9406 } 9407 9408 // Validate inspects the fields of the type to determine if they are valid. 9409 func (s *SendWorkflowStepStateInput) Validate() error { 9410 invalidParams := request.ErrInvalidParams{Context: "SendWorkflowStepStateInput"} 9411 if s.ExecutionId == nil { 9412 invalidParams.Add(request.NewErrParamRequired("ExecutionId")) 9413 } 9414 if s.ExecutionId != nil && len(*s.ExecutionId) < 36 { 9415 invalidParams.Add(request.NewErrParamMinLen("ExecutionId", 36)) 9416 } 9417 if s.Status == nil { 9418 invalidParams.Add(request.NewErrParamRequired("Status")) 9419 } 9420 if s.Token == nil { 9421 invalidParams.Add(request.NewErrParamRequired("Token")) 9422 } 9423 if s.Token != nil && len(*s.Token) < 1 { 9424 invalidParams.Add(request.NewErrParamMinLen("Token", 1)) 9425 } 9426 if s.WorkflowId == nil { 9427 invalidParams.Add(request.NewErrParamRequired("WorkflowId")) 9428 } 9429 if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { 9430 invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) 9431 } 9432 9433 if invalidParams.Len() > 0 { 9434 return invalidParams 9435 } 9436 return nil 9437 } 9438 9439 // SetExecutionId sets the ExecutionId field's value. 9440 func (s *SendWorkflowStepStateInput) SetExecutionId(v string) *SendWorkflowStepStateInput { 9441 s.ExecutionId = &v 9442 return s 9443 } 9444 9445 // SetStatus sets the Status field's value. 9446 func (s *SendWorkflowStepStateInput) SetStatus(v string) *SendWorkflowStepStateInput { 9447 s.Status = &v 9448 return s 9449 } 9450 9451 // SetToken sets the Token field's value. 9452 func (s *SendWorkflowStepStateInput) SetToken(v string) *SendWorkflowStepStateInput { 9453 s.Token = &v 9454 return s 9455 } 9456 9457 // SetWorkflowId sets the WorkflowId field's value. 9458 func (s *SendWorkflowStepStateInput) SetWorkflowId(v string) *SendWorkflowStepStateInput { 9459 s.WorkflowId = &v 9460 return s 9461 } 9462 9463 type SendWorkflowStepStateOutput struct { 9464 _ struct{} `type:"structure"` 9465 } 9466 9467 // String returns the string representation. 9468 // 9469 // API parameter values that are decorated as "sensitive" in the API will not 9470 // be included in the string output. The member name will be present, but the 9471 // value will be replaced with "sensitive". 9472 func (s SendWorkflowStepStateOutput) String() string { 9473 return awsutil.Prettify(s) 9474 } 9475 9476 // GoString returns the string representation. 9477 // 9478 // API parameter values that are decorated as "sensitive" in the API will not 9479 // be included in the string output. The member name will be present, but the 9480 // value will be replaced with "sensitive". 9481 func (s SendWorkflowStepStateOutput) GoString() string { 9482 return s.String() 9483 } 9484 9485 // A container object for the session details associated with a workflow. 9486 type ServiceMetadata struct { 9487 _ struct{} `type:"structure"` 9488 9489 // The Server ID (ServerId), Session ID (SessionId) and user (UserName) make 9490 // up the UserDetails. 9491 // 9492 // UserDetails is a required field 9493 UserDetails *UserDetails `type:"structure" required:"true"` 9494 } 9495 9496 // String returns the string representation. 9497 // 9498 // API parameter values that are decorated as "sensitive" in the API will not 9499 // be included in the string output. The member name will be present, but the 9500 // value will be replaced with "sensitive". 9501 func (s ServiceMetadata) String() string { 9502 return awsutil.Prettify(s) 9503 } 9504 9505 // GoString returns the string representation. 9506 // 9507 // API parameter values that are decorated as "sensitive" in the API will not 9508 // be included in the string output. The member name will be present, but the 9509 // value will be replaced with "sensitive". 9510 func (s ServiceMetadata) GoString() string { 9511 return s.String() 9512 } 9513 9514 // SetUserDetails sets the UserDetails field's value. 9515 func (s *ServiceMetadata) SetUserDetails(v *UserDetails) *ServiceMetadata { 9516 s.UserDetails = v 9517 return s 9518 } 9519 9520 // The request has failed because the Amazon Web ServicesTransfer Family service 9521 // is not available. 9522 type ServiceUnavailableException struct { 9523 _ struct{} `type:"structure"` 9524 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 9525 9526 Message_ *string `locationName:"Message" type:"string"` 9527 } 9528 9529 // String returns the string representation. 9530 // 9531 // API parameter values that are decorated as "sensitive" in the API will not 9532 // be included in the string output. The member name will be present, but the 9533 // value will be replaced with "sensitive". 9534 func (s ServiceUnavailableException) String() string { 9535 return awsutil.Prettify(s) 9536 } 9537 9538 // GoString returns the string representation. 9539 // 9540 // API parameter values that are decorated as "sensitive" in the API will not 9541 // be included in the string output. The member name will be present, but the 9542 // value will be replaced with "sensitive". 9543 func (s ServiceUnavailableException) GoString() string { 9544 return s.String() 9545 } 9546 9547 func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error { 9548 return &ServiceUnavailableException{ 9549 RespMetadata: v, 9550 } 9551 } 9552 9553 // Code returns the exception type name. 9554 func (s *ServiceUnavailableException) Code() string { 9555 return "ServiceUnavailableException" 9556 } 9557 9558 // Message returns the exception's message. 9559 func (s *ServiceUnavailableException) Message() string { 9560 if s.Message_ != nil { 9561 return *s.Message_ 9562 } 9563 return "" 9564 } 9565 9566 // OrigErr always returns nil, satisfies awserr.Error interface. 9567 func (s *ServiceUnavailableException) OrigErr() error { 9568 return nil 9569 } 9570 9571 func (s *ServiceUnavailableException) Error() string { 9572 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 9573 } 9574 9575 // Status code returns the HTTP status code for the request's response error. 9576 func (s *ServiceUnavailableException) StatusCode() int { 9577 return s.RespMetadata.StatusCode 9578 } 9579 9580 // RequestID returns the service's response RequestID for request. 9581 func (s *ServiceUnavailableException) RequestID() string { 9582 return s.RespMetadata.RequestID 9583 } 9584 9585 // Provides information about the public Secure Shell (SSH) key that is associated 9586 // with a user account for the specific file transfer protocol-enabled server 9587 // (as identified by ServerId). The information returned includes the date the 9588 // key was imported, the public key contents, and the public key ID. A user 9589 // can store more than one SSH public key associated with their user name on 9590 // a specific server. 9591 type SshPublicKey struct { 9592 _ struct{} `type:"structure"` 9593 9594 // Specifies the date that the public key was added to the user account. 9595 // 9596 // DateImported is a required field 9597 DateImported *time.Time `type:"timestamp" required:"true"` 9598 9599 // Specifies the content of the SSH public key as specified by the PublicKeyId. 9600 // 9601 // SshPublicKeyBody is a required field 9602 SshPublicKeyBody *string `type:"string" required:"true"` 9603 9604 // Specifies the SshPublicKeyId parameter contains the identifier of the public 9605 // key. 9606 // 9607 // SshPublicKeyId is a required field 9608 SshPublicKeyId *string `min:"21" type:"string" required:"true"` 9609 } 9610 9611 // String returns the string representation. 9612 // 9613 // API parameter values that are decorated as "sensitive" in the API will not 9614 // be included in the string output. The member name will be present, but the 9615 // value will be replaced with "sensitive". 9616 func (s SshPublicKey) String() string { 9617 return awsutil.Prettify(s) 9618 } 9619 9620 // GoString returns the string representation. 9621 // 9622 // API parameter values that are decorated as "sensitive" in the API will not 9623 // be included in the string output. The member name will be present, but the 9624 // value will be replaced with "sensitive". 9625 func (s SshPublicKey) GoString() string { 9626 return s.String() 9627 } 9628 9629 // SetDateImported sets the DateImported field's value. 9630 func (s *SshPublicKey) SetDateImported(v time.Time) *SshPublicKey { 9631 s.DateImported = &v 9632 return s 9633 } 9634 9635 // SetSshPublicKeyBody sets the SshPublicKeyBody field's value. 9636 func (s *SshPublicKey) SetSshPublicKeyBody(v string) *SshPublicKey { 9637 s.SshPublicKeyBody = &v 9638 return s 9639 } 9640 9641 // SetSshPublicKeyId sets the SshPublicKeyId field's value. 9642 func (s *SshPublicKey) SetSshPublicKeyId(v string) *SshPublicKey { 9643 s.SshPublicKeyId = &v 9644 return s 9645 } 9646 9647 type StartServerInput struct { 9648 _ struct{} `type:"structure"` 9649 9650 // A system-assigned unique identifier for a server that you start. 9651 // 9652 // ServerId is a required field 9653 ServerId *string `min:"19" type:"string" required:"true"` 9654 } 9655 9656 // String returns the string representation. 9657 // 9658 // API parameter values that are decorated as "sensitive" in the API will not 9659 // be included in the string output. The member name will be present, but the 9660 // value will be replaced with "sensitive". 9661 func (s StartServerInput) String() string { 9662 return awsutil.Prettify(s) 9663 } 9664 9665 // GoString returns the string representation. 9666 // 9667 // API parameter values that are decorated as "sensitive" in the API will not 9668 // be included in the string output. The member name will be present, but the 9669 // value will be replaced with "sensitive". 9670 func (s StartServerInput) GoString() string { 9671 return s.String() 9672 } 9673 9674 // Validate inspects the fields of the type to determine if they are valid. 9675 func (s *StartServerInput) Validate() error { 9676 invalidParams := request.ErrInvalidParams{Context: "StartServerInput"} 9677 if s.ServerId == nil { 9678 invalidParams.Add(request.NewErrParamRequired("ServerId")) 9679 } 9680 if s.ServerId != nil && len(*s.ServerId) < 19 { 9681 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 9682 } 9683 9684 if invalidParams.Len() > 0 { 9685 return invalidParams 9686 } 9687 return nil 9688 } 9689 9690 // SetServerId sets the ServerId field's value. 9691 func (s *StartServerInput) SetServerId(v string) *StartServerInput { 9692 s.ServerId = &v 9693 return s 9694 } 9695 9696 type StartServerOutput struct { 9697 _ struct{} `type:"structure"` 9698 } 9699 9700 // String returns the string representation. 9701 // 9702 // API parameter values that are decorated as "sensitive" in the API will not 9703 // be included in the string output. The member name will be present, but the 9704 // value will be replaced with "sensitive". 9705 func (s StartServerOutput) String() string { 9706 return awsutil.Prettify(s) 9707 } 9708 9709 // GoString returns the string representation. 9710 // 9711 // API parameter values that are decorated as "sensitive" in the API will not 9712 // be included in the string output. The member name will be present, but the 9713 // value will be replaced with "sensitive". 9714 func (s StartServerOutput) GoString() string { 9715 return s.String() 9716 } 9717 9718 type StopServerInput struct { 9719 _ struct{} `type:"structure"` 9720 9721 // A system-assigned unique identifier for a server that you stopped. 9722 // 9723 // ServerId is a required field 9724 ServerId *string `min:"19" type:"string" required:"true"` 9725 } 9726 9727 // String returns the string representation. 9728 // 9729 // API parameter values that are decorated as "sensitive" in the API will not 9730 // be included in the string output. The member name will be present, but the 9731 // value will be replaced with "sensitive". 9732 func (s StopServerInput) String() string { 9733 return awsutil.Prettify(s) 9734 } 9735 9736 // GoString returns the string representation. 9737 // 9738 // API parameter values that are decorated as "sensitive" in the API will not 9739 // be included in the string output. The member name will be present, but the 9740 // value will be replaced with "sensitive". 9741 func (s StopServerInput) GoString() string { 9742 return s.String() 9743 } 9744 9745 // Validate inspects the fields of the type to determine if they are valid. 9746 func (s *StopServerInput) Validate() error { 9747 invalidParams := request.ErrInvalidParams{Context: "StopServerInput"} 9748 if s.ServerId == nil { 9749 invalidParams.Add(request.NewErrParamRequired("ServerId")) 9750 } 9751 if s.ServerId != nil && len(*s.ServerId) < 19 { 9752 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 9753 } 9754 9755 if invalidParams.Len() > 0 { 9756 return invalidParams 9757 } 9758 return nil 9759 } 9760 9761 // SetServerId sets the ServerId field's value. 9762 func (s *StopServerInput) SetServerId(v string) *StopServerInput { 9763 s.ServerId = &v 9764 return s 9765 } 9766 9767 type StopServerOutput struct { 9768 _ struct{} `type:"structure"` 9769 } 9770 9771 // String returns the string representation. 9772 // 9773 // API parameter values that are decorated as "sensitive" in the API will not 9774 // be included in the string output. The member name will be present, but the 9775 // value will be replaced with "sensitive". 9776 func (s StopServerOutput) String() string { 9777 return awsutil.Prettify(s) 9778 } 9779 9780 // GoString returns the string representation. 9781 // 9782 // API parameter values that are decorated as "sensitive" in the API will not 9783 // be included in the string output. The member name will be present, but the 9784 // value will be replaced with "sensitive". 9785 func (s StopServerOutput) GoString() string { 9786 return s.String() 9787 } 9788 9789 // Creates a key-value pair for a specific resource. Tags are metadata that 9790 // you can use to search for and group a resource for various purposes. You 9791 // can apply tags to servers, users, and roles. A tag key can take more than 9792 // one value. For example, to group servers for accounting purposes, you might 9793 // create a tag called Group and assign the values Research and Accounting to 9794 // that group. 9795 type Tag struct { 9796 _ struct{} `type:"structure"` 9797 9798 // The name assigned to the tag that you create. 9799 // 9800 // Key is a required field 9801 Key *string `type:"string" required:"true"` 9802 9803 // Contains one or more values that you assigned to the key name you create. 9804 // 9805 // Value is a required field 9806 Value *string `type:"string" required:"true"` 9807 } 9808 9809 // String returns the string representation. 9810 // 9811 // API parameter values that are decorated as "sensitive" in the API will not 9812 // be included in the string output. The member name will be present, but the 9813 // value will be replaced with "sensitive". 9814 func (s Tag) String() string { 9815 return awsutil.Prettify(s) 9816 } 9817 9818 // GoString returns the string representation. 9819 // 9820 // API parameter values that are decorated as "sensitive" in the API will not 9821 // be included in the string output. The member name will be present, but the 9822 // value will be replaced with "sensitive". 9823 func (s Tag) GoString() string { 9824 return s.String() 9825 } 9826 9827 // Validate inspects the fields of the type to determine if they are valid. 9828 func (s *Tag) Validate() error { 9829 invalidParams := request.ErrInvalidParams{Context: "Tag"} 9830 if s.Key == nil { 9831 invalidParams.Add(request.NewErrParamRequired("Key")) 9832 } 9833 if s.Value == nil { 9834 invalidParams.Add(request.NewErrParamRequired("Value")) 9835 } 9836 9837 if invalidParams.Len() > 0 { 9838 return invalidParams 9839 } 9840 return nil 9841 } 9842 9843 // SetKey sets the Key field's value. 9844 func (s *Tag) SetKey(v string) *Tag { 9845 s.Key = &v 9846 return s 9847 } 9848 9849 // SetValue sets the Value field's value. 9850 func (s *Tag) SetValue(v string) *Tag { 9851 s.Value = &v 9852 return s 9853 } 9854 9855 type TagResourceInput struct { 9856 _ struct{} `type:"structure"` 9857 9858 // An Amazon Resource Name (ARN) for a specific Amazon Web Services resource, 9859 // such as a server, user, or role. 9860 // 9861 // Arn is a required field 9862 Arn *string `min:"20" type:"string" required:"true"` 9863 9864 // Key-value pairs assigned to ARNs that you can use to group and search for 9865 // resources by type. You can attach this metadata to user accounts for any 9866 // purpose. 9867 // 9868 // Tags is a required field 9869 Tags []*Tag `min:"1" type:"list" required:"true"` 9870 } 9871 9872 // String returns the string representation. 9873 // 9874 // API parameter values that are decorated as "sensitive" in the API will not 9875 // be included in the string output. The member name will be present, but the 9876 // value will be replaced with "sensitive". 9877 func (s TagResourceInput) String() string { 9878 return awsutil.Prettify(s) 9879 } 9880 9881 // GoString returns the string representation. 9882 // 9883 // API parameter values that are decorated as "sensitive" in the API will not 9884 // be included in the string output. The member name will be present, but the 9885 // value will be replaced with "sensitive". 9886 func (s TagResourceInput) GoString() string { 9887 return s.String() 9888 } 9889 9890 // Validate inspects the fields of the type to determine if they are valid. 9891 func (s *TagResourceInput) Validate() error { 9892 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 9893 if s.Arn == nil { 9894 invalidParams.Add(request.NewErrParamRequired("Arn")) 9895 } 9896 if s.Arn != nil && len(*s.Arn) < 20 { 9897 invalidParams.Add(request.NewErrParamMinLen("Arn", 20)) 9898 } 9899 if s.Tags == nil { 9900 invalidParams.Add(request.NewErrParamRequired("Tags")) 9901 } 9902 if s.Tags != nil && len(s.Tags) < 1 { 9903 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 9904 } 9905 if s.Tags != nil { 9906 for i, v := range s.Tags { 9907 if v == nil { 9908 continue 9909 } 9910 if err := v.Validate(); err != nil { 9911 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 9912 } 9913 } 9914 } 9915 9916 if invalidParams.Len() > 0 { 9917 return invalidParams 9918 } 9919 return nil 9920 } 9921 9922 // SetArn sets the Arn field's value. 9923 func (s *TagResourceInput) SetArn(v string) *TagResourceInput { 9924 s.Arn = &v 9925 return s 9926 } 9927 9928 // SetTags sets the Tags field's value. 9929 func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { 9930 s.Tags = v 9931 return s 9932 } 9933 9934 type TagResourceOutput struct { 9935 _ struct{} `type:"structure"` 9936 } 9937 9938 // String returns the string representation. 9939 // 9940 // API parameter values that are decorated as "sensitive" in the API will not 9941 // be included in the string output. The member name will be present, but the 9942 // value will be replaced with "sensitive". 9943 func (s TagResourceOutput) String() string { 9944 return awsutil.Prettify(s) 9945 } 9946 9947 // GoString returns the string representation. 9948 // 9949 // API parameter values that are decorated as "sensitive" in the API will not 9950 // be included in the string output. The member name will be present, but the 9951 // value will be replaced with "sensitive". 9952 func (s TagResourceOutput) GoString() string { 9953 return s.String() 9954 } 9955 9956 // Each step type has its own StepDetails structure. 9957 // 9958 // The key/value pairs used to tag a file during the execution of a workflow 9959 // step. 9960 type TagStepDetails struct { 9961 _ struct{} `type:"structure"` 9962 9963 // The name of the step, used as an identifier. 9964 Name *string `type:"string"` 9965 9966 // Array that contains from 1 to 10 key/value pairs. 9967 Tags []*S3Tag `min:"1" type:"list"` 9968 } 9969 9970 // String returns the string representation. 9971 // 9972 // API parameter values that are decorated as "sensitive" in the API will not 9973 // be included in the string output. The member name will be present, but the 9974 // value will be replaced with "sensitive". 9975 func (s TagStepDetails) String() string { 9976 return awsutil.Prettify(s) 9977 } 9978 9979 // GoString returns the string representation. 9980 // 9981 // API parameter values that are decorated as "sensitive" in the API will not 9982 // be included in the string output. The member name will be present, but the 9983 // value will be replaced with "sensitive". 9984 func (s TagStepDetails) GoString() string { 9985 return s.String() 9986 } 9987 9988 // Validate inspects the fields of the type to determine if they are valid. 9989 func (s *TagStepDetails) Validate() error { 9990 invalidParams := request.ErrInvalidParams{Context: "TagStepDetails"} 9991 if s.Tags != nil && len(s.Tags) < 1 { 9992 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 9993 } 9994 if s.Tags != nil { 9995 for i, v := range s.Tags { 9996 if v == nil { 9997 continue 9998 } 9999 if err := v.Validate(); err != nil { 10000 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 10001 } 10002 } 10003 } 10004 10005 if invalidParams.Len() > 0 { 10006 return invalidParams 10007 } 10008 return nil 10009 } 10010 10011 // SetName sets the Name field's value. 10012 func (s *TagStepDetails) SetName(v string) *TagStepDetails { 10013 s.Name = &v 10014 return s 10015 } 10016 10017 // SetTags sets the Tags field's value. 10018 func (s *TagStepDetails) SetTags(v []*S3Tag) *TagStepDetails { 10019 s.Tags = v 10020 return s 10021 } 10022 10023 type TestIdentityProviderInput struct { 10024 _ struct{} `type:"structure"` 10025 10026 // A system-assigned identifier for a specific server. That server's user authentication 10027 // method is tested with a user name and password. 10028 // 10029 // ServerId is a required field 10030 ServerId *string `min:"19" type:"string" required:"true"` 10031 10032 // The type of file transfer protocol to be tested. 10033 // 10034 // The available protocols are: 10035 // 10036 // * Secure Shell (SSH) File Transfer Protocol (SFTP) 10037 // 10038 // * File Transfer Protocol Secure (FTPS) 10039 // 10040 // * File Transfer Protocol (FTP) 10041 ServerProtocol *string `type:"string" enum:"Protocol"` 10042 10043 // The source IP address of the user account to be tested. 10044 SourceIp *string `type:"string"` 10045 10046 // The name of the user account to be tested. 10047 // 10048 // UserName is a required field 10049 UserName *string `min:"3" type:"string" required:"true"` 10050 10051 // The password of the user account to be tested. 10052 // 10053 // UserPassword is a sensitive parameter and its value will be 10054 // replaced with "sensitive" in string returned by TestIdentityProviderInput's 10055 // String and GoString methods. 10056 UserPassword *string `type:"string" sensitive:"true"` 10057 } 10058 10059 // String returns the string representation. 10060 // 10061 // API parameter values that are decorated as "sensitive" in the API will not 10062 // be included in the string output. The member name will be present, but the 10063 // value will be replaced with "sensitive". 10064 func (s TestIdentityProviderInput) String() string { 10065 return awsutil.Prettify(s) 10066 } 10067 10068 // GoString returns the string representation. 10069 // 10070 // API parameter values that are decorated as "sensitive" in the API will not 10071 // be included in the string output. The member name will be present, but the 10072 // value will be replaced with "sensitive". 10073 func (s TestIdentityProviderInput) GoString() string { 10074 return s.String() 10075 } 10076 10077 // Validate inspects the fields of the type to determine if they are valid. 10078 func (s *TestIdentityProviderInput) Validate() error { 10079 invalidParams := request.ErrInvalidParams{Context: "TestIdentityProviderInput"} 10080 if s.ServerId == nil { 10081 invalidParams.Add(request.NewErrParamRequired("ServerId")) 10082 } 10083 if s.ServerId != nil && len(*s.ServerId) < 19 { 10084 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 10085 } 10086 if s.UserName == nil { 10087 invalidParams.Add(request.NewErrParamRequired("UserName")) 10088 } 10089 if s.UserName != nil && len(*s.UserName) < 3 { 10090 invalidParams.Add(request.NewErrParamMinLen("UserName", 3)) 10091 } 10092 10093 if invalidParams.Len() > 0 { 10094 return invalidParams 10095 } 10096 return nil 10097 } 10098 10099 // SetServerId sets the ServerId field's value. 10100 func (s *TestIdentityProviderInput) SetServerId(v string) *TestIdentityProviderInput { 10101 s.ServerId = &v 10102 return s 10103 } 10104 10105 // SetServerProtocol sets the ServerProtocol field's value. 10106 func (s *TestIdentityProviderInput) SetServerProtocol(v string) *TestIdentityProviderInput { 10107 s.ServerProtocol = &v 10108 return s 10109 } 10110 10111 // SetSourceIp sets the SourceIp field's value. 10112 func (s *TestIdentityProviderInput) SetSourceIp(v string) *TestIdentityProviderInput { 10113 s.SourceIp = &v 10114 return s 10115 } 10116 10117 // SetUserName sets the UserName field's value. 10118 func (s *TestIdentityProviderInput) SetUserName(v string) *TestIdentityProviderInput { 10119 s.UserName = &v 10120 return s 10121 } 10122 10123 // SetUserPassword sets the UserPassword field's value. 10124 func (s *TestIdentityProviderInput) SetUserPassword(v string) *TestIdentityProviderInput { 10125 s.UserPassword = &v 10126 return s 10127 } 10128 10129 type TestIdentityProviderOutput struct { 10130 _ struct{} `type:"structure"` 10131 10132 // A message that indicates whether the test was successful or not. 10133 Message *string `type:"string"` 10134 10135 // The response that is returned from your API Gateway. 10136 Response *string `type:"string"` 10137 10138 // The HTTP status code that is the response from your API Gateway. 10139 // 10140 // StatusCode is a required field 10141 StatusCode *int64 `type:"integer" required:"true"` 10142 10143 // The endpoint of the service used to authenticate a user. 10144 // 10145 // Url is a required field 10146 Url *string `type:"string" required:"true"` 10147 } 10148 10149 // String returns the string representation. 10150 // 10151 // API parameter values that are decorated as "sensitive" in the API will not 10152 // be included in the string output. The member name will be present, but the 10153 // value will be replaced with "sensitive". 10154 func (s TestIdentityProviderOutput) String() string { 10155 return awsutil.Prettify(s) 10156 } 10157 10158 // GoString returns the string representation. 10159 // 10160 // API parameter values that are decorated as "sensitive" in the API will not 10161 // be included in the string output. The member name will be present, but the 10162 // value will be replaced with "sensitive". 10163 func (s TestIdentityProviderOutput) GoString() string { 10164 return s.String() 10165 } 10166 10167 // SetMessage sets the Message field's value. 10168 func (s *TestIdentityProviderOutput) SetMessage(v string) *TestIdentityProviderOutput { 10169 s.Message = &v 10170 return s 10171 } 10172 10173 // SetResponse sets the Response field's value. 10174 func (s *TestIdentityProviderOutput) SetResponse(v string) *TestIdentityProviderOutput { 10175 s.Response = &v 10176 return s 10177 } 10178 10179 // SetStatusCode sets the StatusCode field's value. 10180 func (s *TestIdentityProviderOutput) SetStatusCode(v int64) *TestIdentityProviderOutput { 10181 s.StatusCode = &v 10182 return s 10183 } 10184 10185 // SetUrl sets the Url field's value. 10186 func (s *TestIdentityProviderOutput) SetUrl(v string) *TestIdentityProviderOutput { 10187 s.Url = &v 10188 return s 10189 } 10190 10191 // The request was denied due to request throttling. 10192 // 10193 // HTTP Status Code: 400 10194 type ThrottlingException struct { 10195 _ struct{} `type:"structure"` 10196 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 10197 10198 Message_ *string `locationName:"message" type:"string"` 10199 10200 RetryAfterSeconds *string `type:"string"` 10201 } 10202 10203 // String returns the string representation. 10204 // 10205 // API parameter values that are decorated as "sensitive" in the API will not 10206 // be included in the string output. The member name will be present, but the 10207 // value will be replaced with "sensitive". 10208 func (s ThrottlingException) String() string { 10209 return awsutil.Prettify(s) 10210 } 10211 10212 // GoString returns the string representation. 10213 // 10214 // API parameter values that are decorated as "sensitive" in the API will not 10215 // be included in the string output. The member name will be present, but the 10216 // value will be replaced with "sensitive". 10217 func (s ThrottlingException) GoString() string { 10218 return s.String() 10219 } 10220 10221 func newErrorThrottlingException(v protocol.ResponseMetadata) error { 10222 return &ThrottlingException{ 10223 RespMetadata: v, 10224 } 10225 } 10226 10227 // Code returns the exception type name. 10228 func (s *ThrottlingException) Code() string { 10229 return "ThrottlingException" 10230 } 10231 10232 // Message returns the exception's message. 10233 func (s *ThrottlingException) Message() string { 10234 if s.Message_ != nil { 10235 return *s.Message_ 10236 } 10237 return "" 10238 } 10239 10240 // OrigErr always returns nil, satisfies awserr.Error interface. 10241 func (s *ThrottlingException) OrigErr() error { 10242 return nil 10243 } 10244 10245 func (s *ThrottlingException) Error() string { 10246 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 10247 } 10248 10249 // Status code returns the HTTP status code for the request's response error. 10250 func (s *ThrottlingException) StatusCode() int { 10251 return s.RespMetadata.StatusCode 10252 } 10253 10254 // RequestID returns the service's response RequestID for request. 10255 func (s *ThrottlingException) RequestID() string { 10256 return s.RespMetadata.RequestID 10257 } 10258 10259 type UntagResourceInput struct { 10260 _ struct{} `type:"structure"` 10261 10262 // The value of the resource that will have the tag removed. An Amazon Resource 10263 // Name (ARN) is an identifier for a specific Amazon Web Services resource, 10264 // such as a server, user, or role. 10265 // 10266 // Arn is a required field 10267 Arn *string `min:"20" type:"string" required:"true"` 10268 10269 // TagKeys are key-value pairs assigned to ARNs that can be used to group and 10270 // search for resources by type. This metadata can be attached to resources 10271 // for any purpose. 10272 // 10273 // TagKeys is a required field 10274 TagKeys []*string `min:"1" type:"list" required:"true"` 10275 } 10276 10277 // String returns the string representation. 10278 // 10279 // API parameter values that are decorated as "sensitive" in the API will not 10280 // be included in the string output. The member name will be present, but the 10281 // value will be replaced with "sensitive". 10282 func (s UntagResourceInput) String() string { 10283 return awsutil.Prettify(s) 10284 } 10285 10286 // GoString returns the string representation. 10287 // 10288 // API parameter values that are decorated as "sensitive" in the API will not 10289 // be included in the string output. The member name will be present, but the 10290 // value will be replaced with "sensitive". 10291 func (s UntagResourceInput) GoString() string { 10292 return s.String() 10293 } 10294 10295 // Validate inspects the fields of the type to determine if they are valid. 10296 func (s *UntagResourceInput) Validate() error { 10297 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 10298 if s.Arn == nil { 10299 invalidParams.Add(request.NewErrParamRequired("Arn")) 10300 } 10301 if s.Arn != nil && len(*s.Arn) < 20 { 10302 invalidParams.Add(request.NewErrParamMinLen("Arn", 20)) 10303 } 10304 if s.TagKeys == nil { 10305 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 10306 } 10307 if s.TagKeys != nil && len(s.TagKeys) < 1 { 10308 invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) 10309 } 10310 10311 if invalidParams.Len() > 0 { 10312 return invalidParams 10313 } 10314 return nil 10315 } 10316 10317 // SetArn sets the Arn field's value. 10318 func (s *UntagResourceInput) SetArn(v string) *UntagResourceInput { 10319 s.Arn = &v 10320 return s 10321 } 10322 10323 // SetTagKeys sets the TagKeys field's value. 10324 func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { 10325 s.TagKeys = v 10326 return s 10327 } 10328 10329 type UntagResourceOutput struct { 10330 _ struct{} `type:"structure"` 10331 } 10332 10333 // String returns the string representation. 10334 // 10335 // API parameter values that are decorated as "sensitive" in the API will not 10336 // be included in the string output. The member name will be present, but the 10337 // value will be replaced with "sensitive". 10338 func (s UntagResourceOutput) String() string { 10339 return awsutil.Prettify(s) 10340 } 10341 10342 // GoString returns the string representation. 10343 // 10344 // API parameter values that are decorated as "sensitive" in the API will not 10345 // be included in the string output. The member name will be present, but the 10346 // value will be replaced with "sensitive". 10347 func (s UntagResourceOutput) GoString() string { 10348 return s.String() 10349 } 10350 10351 type UpdateAccessInput struct { 10352 _ struct{} `type:"structure"` 10353 10354 // A unique identifier that is required to identify specific groups within your 10355 // directory. The users of the group that you associate have access to your 10356 // Amazon S3 or Amazon EFS resources over the enabled protocols using Amazon 10357 // Web Services Transfer Family. If you know the group name, you can view the 10358 // SID values by running the following command using Windows PowerShell. 10359 // 10360 // Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * 10361 // | Select SamAccountName,ObjectSid 10362 // 10363 // In that command, replace YourGroupName with the name of your Active Directory 10364 // group. 10365 // 10366 // The regex used to validate this parameter is a string of characters consisting 10367 // of uppercase and lowercase alphanumeric characters with no spaces. You can 10368 // also include underscores or any of the following characters: =,.@:/- 10369 // 10370 // ExternalId is a required field 10371 ExternalId *string `min:"1" type:"string" required:"true"` 10372 10373 // The landing directory (folder) for a user when they log in to the server 10374 // using the client. 10375 // 10376 // A HomeDirectory example is /bucket_name/home/mydirectory. 10377 HomeDirectory *string `type:"string"` 10378 10379 // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths 10380 // and keys should be visible to your user and how you want to make them visible. 10381 // You must specify the Entry and Target pair, where Entry shows how the path 10382 // is made visible and Target is the actual Amazon S3 or Amazon EFS path. If 10383 // you only specify a target, it is displayed as is. You also must ensure that 10384 // your Amazon Web Services Identity and Access Management (IAM) role provides 10385 // access to paths in Target. This value can only be set when HomeDirectoryType 10386 // is set to LOGICAL. 10387 // 10388 // The following is an Entry and Target pair example. 10389 // 10390 // [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ] 10391 // 10392 // In most cases, you can use this value instead of the session policy to lock 10393 // down your user to the designated home directory ("chroot"). To do this, you 10394 // can set Entry to / and set Target to the HomeDirectory parameter value. 10395 // 10396 // The following is an Entry and Target pair example for chroot. 10397 // 10398 // [ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ] 10399 // 10400 // If the target of a logical directory entry does not exist in Amazon S3 or 10401 // EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API 10402 // or EFS API to create 0 byte objects as place holders for your directory. 10403 // If using the CLI, use the s3api or efsapi call instead of s3 or efs so you 10404 // can use the put-object operation. For example, you use the following: aws 10405 // s3api put-object --bucket bucketname --key path/to/folder/. Make sure that 10406 // the end of the key name ends in a / for it to be considered a folder. 10407 HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` 10408 10409 // The type of landing directory (folder) you want your users' home directory 10410 // to be when they log into the server. If you set it to PATH, the user will 10411 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 10412 // protocol clients. If you set it LOGICAL, you need to provide mappings in 10413 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 10414 // visible to your users. 10415 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 10416 10417 // A session policy for your user so that you can use the same IAM role across 10418 // multiple users. This policy scopes down user access to portions of their 10419 // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, 10420 // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. 10421 // 10422 // This only applies when the domain of ServerId is S3. EFS does not use session 10423 // policies. 10424 // 10425 // For session policies, Amazon Web Services Transfer Family stores the policy 10426 // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. 10427 // You save the policy as a JSON blob and pass it in the Policy argument. 10428 // 10429 // For an example of a session policy, see Example session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy.html). 10430 // 10431 // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) 10432 // in the Amazon Web ServicesSecurity Token Service API Reference. 10433 Policy *string `type:"string"` 10434 10435 // The full POSIX identity, including user ID (Uid), group ID (Gid), and any 10436 // secondary groups IDs (SecondaryGids), that controls your users' access to 10437 // your Amazon EFS file systems. The POSIX permissions that are set on files 10438 // and directories in your file system determine the level of access your users 10439 // get when transferring files into and out of your Amazon EFS file systems. 10440 PosixProfile *PosixProfile `type:"structure"` 10441 10442 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 10443 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 10444 // to this role determine the level of access that you want to provide your 10445 // users when transferring files into and out of your Amazon S3 bucket or EFS 10446 // file system. The IAM role should also contain a trust relationship that allows 10447 // the server to access your resources when servicing your users' transfer requests. 10448 Role *string `min:"20" type:"string"` 10449 10450 // A system-assigned unique identifier for a server instance. This is the specific 10451 // server that you added your user to. 10452 // 10453 // ServerId is a required field 10454 ServerId *string `min:"19" type:"string" required:"true"` 10455 } 10456 10457 // String returns the string representation. 10458 // 10459 // API parameter values that are decorated as "sensitive" in the API will not 10460 // be included in the string output. The member name will be present, but the 10461 // value will be replaced with "sensitive". 10462 func (s UpdateAccessInput) String() string { 10463 return awsutil.Prettify(s) 10464 } 10465 10466 // GoString returns the string representation. 10467 // 10468 // API parameter values that are decorated as "sensitive" in the API will not 10469 // be included in the string output. The member name will be present, but the 10470 // value will be replaced with "sensitive". 10471 func (s UpdateAccessInput) GoString() string { 10472 return s.String() 10473 } 10474 10475 // Validate inspects the fields of the type to determine if they are valid. 10476 func (s *UpdateAccessInput) Validate() error { 10477 invalidParams := request.ErrInvalidParams{Context: "UpdateAccessInput"} 10478 if s.ExternalId == nil { 10479 invalidParams.Add(request.NewErrParamRequired("ExternalId")) 10480 } 10481 if s.ExternalId != nil && len(*s.ExternalId) < 1 { 10482 invalidParams.Add(request.NewErrParamMinLen("ExternalId", 1)) 10483 } 10484 if s.HomeDirectoryMappings != nil && len(s.HomeDirectoryMappings) < 1 { 10485 invalidParams.Add(request.NewErrParamMinLen("HomeDirectoryMappings", 1)) 10486 } 10487 if s.Role != nil && len(*s.Role) < 20 { 10488 invalidParams.Add(request.NewErrParamMinLen("Role", 20)) 10489 } 10490 if s.ServerId == nil { 10491 invalidParams.Add(request.NewErrParamRequired("ServerId")) 10492 } 10493 if s.ServerId != nil && len(*s.ServerId) < 19 { 10494 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 10495 } 10496 if s.HomeDirectoryMappings != nil { 10497 for i, v := range s.HomeDirectoryMappings { 10498 if v == nil { 10499 continue 10500 } 10501 if err := v.Validate(); err != nil { 10502 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "HomeDirectoryMappings", i), err.(request.ErrInvalidParams)) 10503 } 10504 } 10505 } 10506 if s.PosixProfile != nil { 10507 if err := s.PosixProfile.Validate(); err != nil { 10508 invalidParams.AddNested("PosixProfile", err.(request.ErrInvalidParams)) 10509 } 10510 } 10511 10512 if invalidParams.Len() > 0 { 10513 return invalidParams 10514 } 10515 return nil 10516 } 10517 10518 // SetExternalId sets the ExternalId field's value. 10519 func (s *UpdateAccessInput) SetExternalId(v string) *UpdateAccessInput { 10520 s.ExternalId = &v 10521 return s 10522 } 10523 10524 // SetHomeDirectory sets the HomeDirectory field's value. 10525 func (s *UpdateAccessInput) SetHomeDirectory(v string) *UpdateAccessInput { 10526 s.HomeDirectory = &v 10527 return s 10528 } 10529 10530 // SetHomeDirectoryMappings sets the HomeDirectoryMappings field's value. 10531 func (s *UpdateAccessInput) SetHomeDirectoryMappings(v []*HomeDirectoryMapEntry) *UpdateAccessInput { 10532 s.HomeDirectoryMappings = v 10533 return s 10534 } 10535 10536 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 10537 func (s *UpdateAccessInput) SetHomeDirectoryType(v string) *UpdateAccessInput { 10538 s.HomeDirectoryType = &v 10539 return s 10540 } 10541 10542 // SetPolicy sets the Policy field's value. 10543 func (s *UpdateAccessInput) SetPolicy(v string) *UpdateAccessInput { 10544 s.Policy = &v 10545 return s 10546 } 10547 10548 // SetPosixProfile sets the PosixProfile field's value. 10549 func (s *UpdateAccessInput) SetPosixProfile(v *PosixProfile) *UpdateAccessInput { 10550 s.PosixProfile = v 10551 return s 10552 } 10553 10554 // SetRole sets the Role field's value. 10555 func (s *UpdateAccessInput) SetRole(v string) *UpdateAccessInput { 10556 s.Role = &v 10557 return s 10558 } 10559 10560 // SetServerId sets the ServerId field's value. 10561 func (s *UpdateAccessInput) SetServerId(v string) *UpdateAccessInput { 10562 s.ServerId = &v 10563 return s 10564 } 10565 10566 type UpdateAccessOutput struct { 10567 _ struct{} `type:"structure"` 10568 10569 // The external ID of the group whose users have access to your Amazon S3 or 10570 // Amazon EFS resources over the enabled protocols using Amazon Web ServicesTransfer 10571 // Family. 10572 // 10573 // ExternalId is a required field 10574 ExternalId *string `min:"1" type:"string" required:"true"` 10575 10576 // The ID of the server that the user is attached to. 10577 // 10578 // ServerId is a required field 10579 ServerId *string `min:"19" type:"string" required:"true"` 10580 } 10581 10582 // String returns the string representation. 10583 // 10584 // API parameter values that are decorated as "sensitive" in the API will not 10585 // be included in the string output. The member name will be present, but the 10586 // value will be replaced with "sensitive". 10587 func (s UpdateAccessOutput) String() string { 10588 return awsutil.Prettify(s) 10589 } 10590 10591 // GoString returns the string representation. 10592 // 10593 // API parameter values that are decorated as "sensitive" in the API will not 10594 // be included in the string output. The member name will be present, but the 10595 // value will be replaced with "sensitive". 10596 func (s UpdateAccessOutput) GoString() string { 10597 return s.String() 10598 } 10599 10600 // SetExternalId sets the ExternalId field's value. 10601 func (s *UpdateAccessOutput) SetExternalId(v string) *UpdateAccessOutput { 10602 s.ExternalId = &v 10603 return s 10604 } 10605 10606 // SetServerId sets the ServerId field's value. 10607 func (s *UpdateAccessOutput) SetServerId(v string) *UpdateAccessOutput { 10608 s.ServerId = &v 10609 return s 10610 } 10611 10612 type UpdateServerInput struct { 10613 _ struct{} `type:"structure"` 10614 10615 // The Amazon Resource Name (ARN) of the Amazon Web ServicesCertificate Manager 10616 // (ACM) certificate. Required when Protocols is set to FTPS. 10617 // 10618 // To request a new public certificate, see Request a public certificate (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html) 10619 // in the Amazon Web ServicesCertificate Manager User Guide. 10620 // 10621 // To import an existing certificate into ACM, see Importing certificates into 10622 // ACM (https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) 10623 // in the Amazon Web ServicesCertificate Manager User Guide. 10624 // 10625 // To request a private certificate to use FTPS through private IP addresses, 10626 // see Request a private certificate (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html) 10627 // in the Amazon Web ServicesCertificate Manager User Guide. 10628 // 10629 // Certificates with the following cryptographic algorithms and key sizes are 10630 // supported: 10631 // 10632 // * 2048-bit RSA (RSA_2048) 10633 // 10634 // * 4096-bit RSA (RSA_4096) 10635 // 10636 // * Elliptic Prime Curve 256 bit (EC_prime256v1) 10637 // 10638 // * Elliptic Prime Curve 384 bit (EC_secp384r1) 10639 // 10640 // * Elliptic Prime Curve 521 bit (EC_secp521r1) 10641 // 10642 // The certificate must be a valid SSL/TLS X.509 version 3 certificate with 10643 // FQDN or IP address specified and information about the issuer. 10644 Certificate *string `type:"string"` 10645 10646 // The virtual private cloud (VPC) endpoint settings that are configured for 10647 // your server. When you host your endpoint within your VPC, you can make it 10648 // accessible only to resources within your VPC, or you can attach Elastic IP 10649 // addresses and make it accessible to clients over the internet. Your VPC's 10650 // default security groups are automatically assigned to your endpoint. 10651 EndpointDetails *EndpointDetails `type:"structure"` 10652 10653 // The type of endpoint that you want your server to use. You can choose to 10654 // make your server's endpoint publicly accessible (PUBLIC) or host it inside 10655 // your VPC. With an endpoint that is hosted in a VPC, you can restrict access 10656 // to your server and resources only within your VPC or choose to make it internet 10657 // facing by attaching Elastic IP addresses directly to it. 10658 // 10659 // After May 19, 2021, you won't be able to create a server using EndpointType=VPC_ENDPOINT 10660 // in your Amazon Web Servicesaccount if your account hasn't already done so 10661 // before May 19, 2021. If you have already created servers with EndpointType=VPC_ENDPOINT 10662 // in your Amazon Web Servicesaccount on or before May 19, 2021, you will not 10663 // be affected. After this date, use EndpointType=VPC. 10664 // 10665 // For more information, see https://docs.aws.amazon.com/transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint. 10666 // 10667 // It is recommended that you use VPC as the EndpointType. With this endpoint 10668 // type, you have the option to directly associate up to three Elastic IPv4 10669 // addresses (BYO IP included) with your server's endpoint and use VPC security 10670 // groups to restrict traffic by the client's public IP address. This is not 10671 // possible with EndpointType set to VPC_ENDPOINT. 10672 EndpointType *string `type:"string" enum:"EndpointType"` 10673 10674 // The RSA private key as generated by ssh-keygen -N "" -m PEM -f my-new-server-key. 10675 // 10676 // If you aren't planning to migrate existing users from an existing server 10677 // to a new server, don't update the host key. Accidentally changing a server's 10678 // host key can be disruptive. 10679 // 10680 // For more information, see Change the host key for your SFTP-enabled server 10681 // (https://docs.aws.amazon.com/transfer/latest/userguide/edit-server-config.html#configuring-servers-change-host-key) 10682 // in the Amazon Web ServicesTransfer Family User Guide. 10683 // 10684 // HostKey is a sensitive parameter and its value will be 10685 // replaced with "sensitive" in string returned by UpdateServerInput's 10686 // String and GoString methods. 10687 HostKey *string `type:"string" sensitive:"true"` 10688 10689 // An array containing all of the information required to call a customer's 10690 // authentication API method. 10691 IdentityProviderDetails *IdentityProviderDetails `type:"structure"` 10692 10693 // Specifies the Amazon Resource Name (ARN) of the Amazon Web Services Identity 10694 // and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch 10695 // logging for Amazon S3 or Amazon EFS events. When set, user activity can be 10696 // viewed in your CloudWatch logs. 10697 LoggingRole *string `type:"string"` 10698 10699 // The protocol settings that are configured for your server. 10700 // 10701 // Use the PassiveIp parameter to indicate passive mode (for FTP and FTPS protocols). 10702 // Enter a single dotted-quad IPv4 address, such as the external IP address 10703 // of a firewall, router, or load balancer. 10704 ProtocolDetails *ProtocolDetails `type:"structure"` 10705 10706 // Specifies the file transfer protocol or protocols over which your file transfer 10707 // protocol client can connect to your server's endpoint. The available protocols 10708 // are: 10709 // 10710 // * Secure Shell (SSH) File Transfer Protocol (SFTP): File transfer over 10711 // SSH 10712 // 10713 // * File Transfer Protocol Secure (FTPS): File transfer with TLS encryption 10714 // 10715 // * File Transfer Protocol (FTP): Unencrypted file transfer 10716 // 10717 // If you select FTPS, you must choose a certificate stored in Amazon Web ServicesCertificate 10718 // Manager (ACM) which will be used to identify your server when clients connect 10719 // to it over FTPS. 10720 // 10721 // If Protocol includes either FTP or FTPS, then the EndpointType must be VPC 10722 // and the IdentityProviderType must be AWS_DIRECTORY_SERVICE or API_GATEWAY. 10723 // 10724 // If Protocol includes FTP, then AddressAllocationIds cannot be associated. 10725 // 10726 // If Protocol is set only to SFTP, the EndpointType can be set to PUBLIC and 10727 // the IdentityProviderType can be set to SERVICE_MANAGED. 10728 Protocols []*string `min:"1" type:"list"` 10729 10730 // Specifies the name of the security policy that is attached to the server. 10731 SecurityPolicyName *string `type:"string"` 10732 10733 // A system-assigned unique identifier for a server instance that the user account 10734 // is assigned to. 10735 // 10736 // ServerId is a required field 10737 ServerId *string `min:"19" type:"string" required:"true"` 10738 10739 // Specifies the workflow ID for the workflow to assign and the execution role 10740 // used for executing the workflow. 10741 WorkflowDetails *WorkflowDetails `type:"structure"` 10742 } 10743 10744 // String returns the string representation. 10745 // 10746 // API parameter values that are decorated as "sensitive" in the API will not 10747 // be included in the string output. The member name will be present, but the 10748 // value will be replaced with "sensitive". 10749 func (s UpdateServerInput) String() string { 10750 return awsutil.Prettify(s) 10751 } 10752 10753 // GoString returns the string representation. 10754 // 10755 // API parameter values that are decorated as "sensitive" in the API will not 10756 // be included in the string output. The member name will be present, but the 10757 // value will be replaced with "sensitive". 10758 func (s UpdateServerInput) GoString() string { 10759 return s.String() 10760 } 10761 10762 // Validate inspects the fields of the type to determine if they are valid. 10763 func (s *UpdateServerInput) Validate() error { 10764 invalidParams := request.ErrInvalidParams{Context: "UpdateServerInput"} 10765 if s.Protocols != nil && len(s.Protocols) < 1 { 10766 invalidParams.Add(request.NewErrParamMinLen("Protocols", 1)) 10767 } 10768 if s.ServerId == nil { 10769 invalidParams.Add(request.NewErrParamRequired("ServerId")) 10770 } 10771 if s.ServerId != nil && len(*s.ServerId) < 19 { 10772 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 10773 } 10774 if s.EndpointDetails != nil { 10775 if err := s.EndpointDetails.Validate(); err != nil { 10776 invalidParams.AddNested("EndpointDetails", err.(request.ErrInvalidParams)) 10777 } 10778 } 10779 if s.IdentityProviderDetails != nil { 10780 if err := s.IdentityProviderDetails.Validate(); err != nil { 10781 invalidParams.AddNested("IdentityProviderDetails", err.(request.ErrInvalidParams)) 10782 } 10783 } 10784 if s.WorkflowDetails != nil { 10785 if err := s.WorkflowDetails.Validate(); err != nil { 10786 invalidParams.AddNested("WorkflowDetails", err.(request.ErrInvalidParams)) 10787 } 10788 } 10789 10790 if invalidParams.Len() > 0 { 10791 return invalidParams 10792 } 10793 return nil 10794 } 10795 10796 // SetCertificate sets the Certificate field's value. 10797 func (s *UpdateServerInput) SetCertificate(v string) *UpdateServerInput { 10798 s.Certificate = &v 10799 return s 10800 } 10801 10802 // SetEndpointDetails sets the EndpointDetails field's value. 10803 func (s *UpdateServerInput) SetEndpointDetails(v *EndpointDetails) *UpdateServerInput { 10804 s.EndpointDetails = v 10805 return s 10806 } 10807 10808 // SetEndpointType sets the EndpointType field's value. 10809 func (s *UpdateServerInput) SetEndpointType(v string) *UpdateServerInput { 10810 s.EndpointType = &v 10811 return s 10812 } 10813 10814 // SetHostKey sets the HostKey field's value. 10815 func (s *UpdateServerInput) SetHostKey(v string) *UpdateServerInput { 10816 s.HostKey = &v 10817 return s 10818 } 10819 10820 // SetIdentityProviderDetails sets the IdentityProviderDetails field's value. 10821 func (s *UpdateServerInput) SetIdentityProviderDetails(v *IdentityProviderDetails) *UpdateServerInput { 10822 s.IdentityProviderDetails = v 10823 return s 10824 } 10825 10826 // SetLoggingRole sets the LoggingRole field's value. 10827 func (s *UpdateServerInput) SetLoggingRole(v string) *UpdateServerInput { 10828 s.LoggingRole = &v 10829 return s 10830 } 10831 10832 // SetProtocolDetails sets the ProtocolDetails field's value. 10833 func (s *UpdateServerInput) SetProtocolDetails(v *ProtocolDetails) *UpdateServerInput { 10834 s.ProtocolDetails = v 10835 return s 10836 } 10837 10838 // SetProtocols sets the Protocols field's value. 10839 func (s *UpdateServerInput) SetProtocols(v []*string) *UpdateServerInput { 10840 s.Protocols = v 10841 return s 10842 } 10843 10844 // SetSecurityPolicyName sets the SecurityPolicyName field's value. 10845 func (s *UpdateServerInput) SetSecurityPolicyName(v string) *UpdateServerInput { 10846 s.SecurityPolicyName = &v 10847 return s 10848 } 10849 10850 // SetServerId sets the ServerId field's value. 10851 func (s *UpdateServerInput) SetServerId(v string) *UpdateServerInput { 10852 s.ServerId = &v 10853 return s 10854 } 10855 10856 // SetWorkflowDetails sets the WorkflowDetails field's value. 10857 func (s *UpdateServerInput) SetWorkflowDetails(v *WorkflowDetails) *UpdateServerInput { 10858 s.WorkflowDetails = v 10859 return s 10860 } 10861 10862 type UpdateServerOutput struct { 10863 _ struct{} `type:"structure"` 10864 10865 // A system-assigned unique identifier for a server that the user account is 10866 // assigned to. 10867 // 10868 // ServerId is a required field 10869 ServerId *string `min:"19" type:"string" required:"true"` 10870 } 10871 10872 // String returns the string representation. 10873 // 10874 // API parameter values that are decorated as "sensitive" in the API will not 10875 // be included in the string output. The member name will be present, but the 10876 // value will be replaced with "sensitive". 10877 func (s UpdateServerOutput) String() string { 10878 return awsutil.Prettify(s) 10879 } 10880 10881 // GoString returns the string representation. 10882 // 10883 // API parameter values that are decorated as "sensitive" in the API will not 10884 // be included in the string output. The member name will be present, but the 10885 // value will be replaced with "sensitive". 10886 func (s UpdateServerOutput) GoString() string { 10887 return s.String() 10888 } 10889 10890 // SetServerId sets the ServerId field's value. 10891 func (s *UpdateServerOutput) SetServerId(v string) *UpdateServerOutput { 10892 s.ServerId = &v 10893 return s 10894 } 10895 10896 type UpdateUserInput struct { 10897 _ struct{} `type:"structure"` 10898 10899 // The landing directory (folder) for a user when they log in to the server 10900 // using the client. 10901 // 10902 // A HomeDirectory example is /bucket_name/home/mydirectory. 10903 HomeDirectory *string `type:"string"` 10904 10905 // Logical directory mappings that specify what Amazon S3 or Amazon EFS paths 10906 // and keys should be visible to your user and how you want to make them visible. 10907 // You must specify the Entry and Target pair, where Entry shows how the path 10908 // is made visible and Target is the actual Amazon S3 or Amazon EFS path. If 10909 // you only specify a target, it is displayed as is. You also must ensure that 10910 // your Amazon Web Services Identity and Access Management (IAM) role provides 10911 // access to paths in Target. This value can only be set when HomeDirectoryType 10912 // is set to LOGICAL. 10913 // 10914 // The following is an Entry and Target pair example. 10915 // 10916 // [ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ] 10917 // 10918 // In most cases, you can use this value instead of the session policy to lock 10919 // down your user to the designated home directory ("chroot"). To do this, you 10920 // can set Entry to '/' and set Target to the HomeDirectory parameter value. 10921 // 10922 // The following is an Entry and Target pair example for chroot. 10923 // 10924 // [ { "Entry:": "/", "Target": "/bucket_name/home/mydirectory" } ] 10925 // 10926 // If the target of a logical directory entry does not exist in Amazon S3 or 10927 // EFS, the entry is ignored. As a workaround, you can use the Amazon S3 API 10928 // or EFS API to create 0 byte objects as place holders for your directory. 10929 // If using the CLI, use the s3api or efsapi call instead of s3 or efs so you 10930 // can use the put-object operation. For example, you use the following: aws 10931 // s3api put-object --bucket bucketname --key path/to/folder/. Make sure that 10932 // the end of the key name ends in a / for it to be considered a folder. 10933 HomeDirectoryMappings []*HomeDirectoryMapEntry `min:"1" type:"list"` 10934 10935 // The type of landing directory (folder) you want your users' home directory 10936 // to be when they log into the server. If you set it to PATH, the user will 10937 // see the absolute Amazon S3 bucket or EFS paths as is in their file transfer 10938 // protocol clients. If you set it LOGICAL, you need to provide mappings in 10939 // the HomeDirectoryMappings for how you want to make Amazon S3 or EFS paths 10940 // visible to your users. 10941 HomeDirectoryType *string `type:"string" enum:"HomeDirectoryType"` 10942 10943 // A session policy for your user so that you can use the same IAM role across 10944 // multiple users. This policy scopes down user access to portions of their 10945 // Amazon S3 bucket. Variables that you can use inside this policy include ${Transfer:UserName}, 10946 // ${Transfer:HomeDirectory}, and ${Transfer:HomeBucket}. 10947 // 10948 // This only applies when the domain of ServerId is S3. EFS does not use session 10949 // policies. 10950 // 10951 // For session policies, Amazon Web Services Transfer Family stores the policy 10952 // as a JSON blob, instead of the Amazon Resource Name (ARN) of the policy. 10953 // You save the policy as a JSON blob and pass it in the Policy argument. 10954 // 10955 // For an example of a session policy, see Creating a session policy (https://docs.aws.amazon.com/transfer/latest/userguide/session-policy). 10956 // 10957 // For more information, see AssumeRole (https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) 10958 // in the Amazon Web Services Security Token Service API Reference. 10959 Policy *string `type:"string"` 10960 10961 // Specifies the full POSIX identity, including user ID (Uid), group ID (Gid), 10962 // and any secondary groups IDs (SecondaryGids), that controls your users' access 10963 // to your Amazon Elastic File Systems (Amazon EFS). The POSIX permissions that 10964 // are set on files and directories in your file system determines the level 10965 // of access your users get when transferring files into and out of your Amazon 10966 // EFS file systems. 10967 PosixProfile *PosixProfile `type:"structure"` 10968 10969 // Specifies the Amazon Resource Name (ARN) of the IAM role that controls your 10970 // users' access to your Amazon S3 bucket or EFS file system. The policies attached 10971 // to this role determine the level of access that you want to provide your 10972 // users when transferring files into and out of your Amazon S3 bucket or EFS 10973 // file system. The IAM role should also contain a trust relationship that allows 10974 // the server to access your resources when servicing your users' transfer requests. 10975 Role *string `min:"20" type:"string"` 10976 10977 // A system-assigned unique identifier for a server instance that the user account 10978 // is assigned to. 10979 // 10980 // ServerId is a required field 10981 ServerId *string `min:"19" type:"string" required:"true"` 10982 10983 // A unique string that identifies a user and is associated with a server as 10984 // specified by the ServerId. This user name must be a minimum of 3 and a maximum 10985 // of 100 characters long. The following are valid characters: a-z, A-Z, 0-9, 10986 // underscore '_', hyphen '-', period '.', and at sign '@'. The user name can't 10987 // start with a hyphen, period, or at sign. 10988 // 10989 // UserName is a required field 10990 UserName *string `min:"3" type:"string" required:"true"` 10991 } 10992 10993 // String returns the string representation. 10994 // 10995 // API parameter values that are decorated as "sensitive" in the API will not 10996 // be included in the string output. The member name will be present, but the 10997 // value will be replaced with "sensitive". 10998 func (s UpdateUserInput) String() string { 10999 return awsutil.Prettify(s) 11000 } 11001 11002 // GoString returns the string representation. 11003 // 11004 // API parameter values that are decorated as "sensitive" in the API will not 11005 // be included in the string output. The member name will be present, but the 11006 // value will be replaced with "sensitive". 11007 func (s UpdateUserInput) GoString() string { 11008 return s.String() 11009 } 11010 11011 // Validate inspects the fields of the type to determine if they are valid. 11012 func (s *UpdateUserInput) Validate() error { 11013 invalidParams := request.ErrInvalidParams{Context: "UpdateUserInput"} 11014 if s.HomeDirectoryMappings != nil && len(s.HomeDirectoryMappings) < 1 { 11015 invalidParams.Add(request.NewErrParamMinLen("HomeDirectoryMappings", 1)) 11016 } 11017 if s.Role != nil && len(*s.Role) < 20 { 11018 invalidParams.Add(request.NewErrParamMinLen("Role", 20)) 11019 } 11020 if s.ServerId == nil { 11021 invalidParams.Add(request.NewErrParamRequired("ServerId")) 11022 } 11023 if s.ServerId != nil && len(*s.ServerId) < 19 { 11024 invalidParams.Add(request.NewErrParamMinLen("ServerId", 19)) 11025 } 11026 if s.UserName == nil { 11027 invalidParams.Add(request.NewErrParamRequired("UserName")) 11028 } 11029 if s.UserName != nil && len(*s.UserName) < 3 { 11030 invalidParams.Add(request.NewErrParamMinLen("UserName", 3)) 11031 } 11032 if s.HomeDirectoryMappings != nil { 11033 for i, v := range s.HomeDirectoryMappings { 11034 if v == nil { 11035 continue 11036 } 11037 if err := v.Validate(); err != nil { 11038 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "HomeDirectoryMappings", i), err.(request.ErrInvalidParams)) 11039 } 11040 } 11041 } 11042 if s.PosixProfile != nil { 11043 if err := s.PosixProfile.Validate(); err != nil { 11044 invalidParams.AddNested("PosixProfile", err.(request.ErrInvalidParams)) 11045 } 11046 } 11047 11048 if invalidParams.Len() > 0 { 11049 return invalidParams 11050 } 11051 return nil 11052 } 11053 11054 // SetHomeDirectory sets the HomeDirectory field's value. 11055 func (s *UpdateUserInput) SetHomeDirectory(v string) *UpdateUserInput { 11056 s.HomeDirectory = &v 11057 return s 11058 } 11059 11060 // SetHomeDirectoryMappings sets the HomeDirectoryMappings field's value. 11061 func (s *UpdateUserInput) SetHomeDirectoryMappings(v []*HomeDirectoryMapEntry) *UpdateUserInput { 11062 s.HomeDirectoryMappings = v 11063 return s 11064 } 11065 11066 // SetHomeDirectoryType sets the HomeDirectoryType field's value. 11067 func (s *UpdateUserInput) SetHomeDirectoryType(v string) *UpdateUserInput { 11068 s.HomeDirectoryType = &v 11069 return s 11070 } 11071 11072 // SetPolicy sets the Policy field's value. 11073 func (s *UpdateUserInput) SetPolicy(v string) *UpdateUserInput { 11074 s.Policy = &v 11075 return s 11076 } 11077 11078 // SetPosixProfile sets the PosixProfile field's value. 11079 func (s *UpdateUserInput) SetPosixProfile(v *PosixProfile) *UpdateUserInput { 11080 s.PosixProfile = v 11081 return s 11082 } 11083 11084 // SetRole sets the Role field's value. 11085 func (s *UpdateUserInput) SetRole(v string) *UpdateUserInput { 11086 s.Role = &v 11087 return s 11088 } 11089 11090 // SetServerId sets the ServerId field's value. 11091 func (s *UpdateUserInput) SetServerId(v string) *UpdateUserInput { 11092 s.ServerId = &v 11093 return s 11094 } 11095 11096 // SetUserName sets the UserName field's value. 11097 func (s *UpdateUserInput) SetUserName(v string) *UpdateUserInput { 11098 s.UserName = &v 11099 return s 11100 } 11101 11102 // UpdateUserResponse returns the user name and identifier for the request to 11103 // update a user's properties. 11104 type UpdateUserOutput struct { 11105 _ struct{} `type:"structure"` 11106 11107 // A system-assigned unique identifier for a server instance that the user account 11108 // is assigned to. 11109 // 11110 // ServerId is a required field 11111 ServerId *string `min:"19" type:"string" required:"true"` 11112 11113 // The unique identifier for a user that is assigned to a server instance that 11114 // was specified in the request. 11115 // 11116 // UserName is a required field 11117 UserName *string `min:"3" type:"string" required:"true"` 11118 } 11119 11120 // String returns the string representation. 11121 // 11122 // API parameter values that are decorated as "sensitive" in the API will not 11123 // be included in the string output. The member name will be present, but the 11124 // value will be replaced with "sensitive". 11125 func (s UpdateUserOutput) String() string { 11126 return awsutil.Prettify(s) 11127 } 11128 11129 // GoString returns the string representation. 11130 // 11131 // API parameter values that are decorated as "sensitive" in the API will not 11132 // be included in the string output. The member name will be present, but the 11133 // value will be replaced with "sensitive". 11134 func (s UpdateUserOutput) GoString() string { 11135 return s.String() 11136 } 11137 11138 // SetServerId sets the ServerId field's value. 11139 func (s *UpdateUserOutput) SetServerId(v string) *UpdateUserOutput { 11140 s.ServerId = &v 11141 return s 11142 } 11143 11144 // SetUserName sets the UserName field's value. 11145 func (s *UpdateUserOutput) SetUserName(v string) *UpdateUserOutput { 11146 s.UserName = &v 11147 return s 11148 } 11149 11150 // Specifies the user name, server ID, and session ID for a workflow. 11151 type UserDetails struct { 11152 _ struct{} `type:"structure"` 11153 11154 // The system-assigned unique identifier for a Transfer server instance. 11155 // 11156 // ServerId is a required field 11157 ServerId *string `min:"19" type:"string" required:"true"` 11158 11159 // The system-assigned unique identifier for a session that corresponds to the 11160 // workflow. 11161 SessionId *string `min:"3" type:"string"` 11162 11163 // A unique string that identifies a user account associated with a server. 11164 // 11165 // UserName is a required field 11166 UserName *string `min:"3" type:"string" required:"true"` 11167 } 11168 11169 // String 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 UserDetails) String() string { 11175 return awsutil.Prettify(s) 11176 } 11177 11178 // GoString returns the string representation. 11179 // 11180 // API parameter values that are decorated as "sensitive" in the API will not 11181 // be included in the string output. The member name will be present, but the 11182 // value will be replaced with "sensitive". 11183 func (s UserDetails) GoString() string { 11184 return s.String() 11185 } 11186 11187 // SetServerId sets the ServerId field's value. 11188 func (s *UserDetails) SetServerId(v string) *UserDetails { 11189 s.ServerId = &v 11190 return s 11191 } 11192 11193 // SetSessionId sets the SessionId field's value. 11194 func (s *UserDetails) SetSessionId(v string) *UserDetails { 11195 s.SessionId = &v 11196 return s 11197 } 11198 11199 // SetUserName sets the UserName field's value. 11200 func (s *UserDetails) SetUserName(v string) *UserDetails { 11201 s.UserName = &v 11202 return s 11203 } 11204 11205 // Specifies the workflow ID for the workflow to assign and the execution role 11206 // used for executing the workflow. 11207 type WorkflowDetail struct { 11208 _ struct{} `type:"structure"` 11209 11210 // Includes the necessary permissions for S3, EFS, and Lambda operations that 11211 // Transfer can assume, so that all workflow steps can operate on the required 11212 // resources 11213 // 11214 // ExecutionRole is a required field 11215 ExecutionRole *string `min:"20" type:"string" required:"true"` 11216 11217 // A unique identifier for the workflow. 11218 // 11219 // WorkflowId is a required field 11220 WorkflowId *string `min:"19" type:"string" required:"true"` 11221 } 11222 11223 // String returns the string representation. 11224 // 11225 // API parameter values that are decorated as "sensitive" in the API will not 11226 // be included in the string output. The member name will be present, but the 11227 // value will be replaced with "sensitive". 11228 func (s WorkflowDetail) String() string { 11229 return awsutil.Prettify(s) 11230 } 11231 11232 // GoString returns the string representation. 11233 // 11234 // API parameter values that are decorated as "sensitive" in the API will not 11235 // be included in the string output. The member name will be present, but the 11236 // value will be replaced with "sensitive". 11237 func (s WorkflowDetail) GoString() string { 11238 return s.String() 11239 } 11240 11241 // Validate inspects the fields of the type to determine if they are valid. 11242 func (s *WorkflowDetail) Validate() error { 11243 invalidParams := request.ErrInvalidParams{Context: "WorkflowDetail"} 11244 if s.ExecutionRole == nil { 11245 invalidParams.Add(request.NewErrParamRequired("ExecutionRole")) 11246 } 11247 if s.ExecutionRole != nil && len(*s.ExecutionRole) < 20 { 11248 invalidParams.Add(request.NewErrParamMinLen("ExecutionRole", 20)) 11249 } 11250 if s.WorkflowId == nil { 11251 invalidParams.Add(request.NewErrParamRequired("WorkflowId")) 11252 } 11253 if s.WorkflowId != nil && len(*s.WorkflowId) < 19 { 11254 invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 19)) 11255 } 11256 11257 if invalidParams.Len() > 0 { 11258 return invalidParams 11259 } 11260 return nil 11261 } 11262 11263 // SetExecutionRole sets the ExecutionRole field's value. 11264 func (s *WorkflowDetail) SetExecutionRole(v string) *WorkflowDetail { 11265 s.ExecutionRole = &v 11266 return s 11267 } 11268 11269 // SetWorkflowId sets the WorkflowId field's value. 11270 func (s *WorkflowDetail) SetWorkflowId(v string) *WorkflowDetail { 11271 s.WorkflowId = &v 11272 return s 11273 } 11274 11275 // Container for the WorkflowDetail data type. It is used by actions that trigger 11276 // a workflow to begin execution. 11277 type WorkflowDetails struct { 11278 _ struct{} `type:"structure"` 11279 11280 // A trigger that starts a workflow: the workflow begins to execute after a 11281 // file is uploaded. 11282 // 11283 // OnUpload is a required field 11284 OnUpload []*WorkflowDetail `type:"list" required:"true"` 11285 } 11286 11287 // String returns the string representation. 11288 // 11289 // API parameter values that are decorated as "sensitive" in the API will not 11290 // be included in the string output. The member name will be present, but the 11291 // value will be replaced with "sensitive". 11292 func (s WorkflowDetails) String() string { 11293 return awsutil.Prettify(s) 11294 } 11295 11296 // GoString returns the string representation. 11297 // 11298 // API parameter values that are decorated as "sensitive" in the API will not 11299 // be included in the string output. The member name will be present, but the 11300 // value will be replaced with "sensitive". 11301 func (s WorkflowDetails) GoString() string { 11302 return s.String() 11303 } 11304 11305 // Validate inspects the fields of the type to determine if they are valid. 11306 func (s *WorkflowDetails) Validate() error { 11307 invalidParams := request.ErrInvalidParams{Context: "WorkflowDetails"} 11308 if s.OnUpload == nil { 11309 invalidParams.Add(request.NewErrParamRequired("OnUpload")) 11310 } 11311 if s.OnUpload != nil { 11312 for i, v := range s.OnUpload { 11313 if v == nil { 11314 continue 11315 } 11316 if err := v.Validate(); err != nil { 11317 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnUpload", i), err.(request.ErrInvalidParams)) 11318 } 11319 } 11320 } 11321 11322 if invalidParams.Len() > 0 { 11323 return invalidParams 11324 } 11325 return nil 11326 } 11327 11328 // SetOnUpload sets the OnUpload field's value. 11329 func (s *WorkflowDetails) SetOnUpload(v []*WorkflowDetail) *WorkflowDetails { 11330 s.OnUpload = v 11331 return s 11332 } 11333 11334 // The basic building block of a workflow. 11335 type WorkflowStep struct { 11336 _ struct{} `type:"structure"` 11337 11338 // Details for a step that performs a file copy. 11339 // 11340 // Consists of the following values: 11341 // 11342 // * A description 11343 // 11344 // * An S3 location for the destination of the file copy. 11345 // 11346 // * A flag that indicates whether or not to overwrite an existing file of 11347 // the same name. The default is FALSE. 11348 CopyStepDetails *CopyStepDetails `type:"structure"` 11349 11350 // Details for a step that invokes a lambda function. 11351 // 11352 // Consists of the lambda function name, target, and timeout (in seconds). 11353 CustomStepDetails *CustomStepDetails `type:"structure"` 11354 11355 // Details for a step that deletes the file. 11356 DeleteStepDetails *DeleteStepDetails `type:"structure"` 11357 11358 // Details for a step that creates one or more tags. 11359 // 11360 // You specify one or more tags: each tag contains a key/value pair. 11361 TagStepDetails *TagStepDetails `type:"structure"` 11362 11363 // Currently, the following step types are supported. 11364 // 11365 // * Copy: copy the file to another location 11366 // 11367 // * Custom: custom step with a lambda target 11368 // 11369 // * Delete: delete the file 11370 // 11371 // * Tag: add a tag to the file 11372 Type *string `type:"string" enum:"WorkflowStepType"` 11373 } 11374 11375 // String returns the string representation. 11376 // 11377 // API parameter values that are decorated as "sensitive" in the API will not 11378 // be included in the string output. The member name will be present, but the 11379 // value will be replaced with "sensitive". 11380 func (s WorkflowStep) String() string { 11381 return awsutil.Prettify(s) 11382 } 11383 11384 // GoString returns the string representation. 11385 // 11386 // API parameter values that are decorated as "sensitive" in the API will not 11387 // be included in the string output. The member name will be present, but the 11388 // value will be replaced with "sensitive". 11389 func (s WorkflowStep) GoString() string { 11390 return s.String() 11391 } 11392 11393 // Validate inspects the fields of the type to determine if they are valid. 11394 func (s *WorkflowStep) Validate() error { 11395 invalidParams := request.ErrInvalidParams{Context: "WorkflowStep"} 11396 if s.CopyStepDetails != nil { 11397 if err := s.CopyStepDetails.Validate(); err != nil { 11398 invalidParams.AddNested("CopyStepDetails", err.(request.ErrInvalidParams)) 11399 } 11400 } 11401 if s.CustomStepDetails != nil { 11402 if err := s.CustomStepDetails.Validate(); err != nil { 11403 invalidParams.AddNested("CustomStepDetails", err.(request.ErrInvalidParams)) 11404 } 11405 } 11406 if s.TagStepDetails != nil { 11407 if err := s.TagStepDetails.Validate(); err != nil { 11408 invalidParams.AddNested("TagStepDetails", err.(request.ErrInvalidParams)) 11409 } 11410 } 11411 11412 if invalidParams.Len() > 0 { 11413 return invalidParams 11414 } 11415 return nil 11416 } 11417 11418 // SetCopyStepDetails sets the CopyStepDetails field's value. 11419 func (s *WorkflowStep) SetCopyStepDetails(v *CopyStepDetails) *WorkflowStep { 11420 s.CopyStepDetails = v 11421 return s 11422 } 11423 11424 // SetCustomStepDetails sets the CustomStepDetails field's value. 11425 func (s *WorkflowStep) SetCustomStepDetails(v *CustomStepDetails) *WorkflowStep { 11426 s.CustomStepDetails = v 11427 return s 11428 } 11429 11430 // SetDeleteStepDetails sets the DeleteStepDetails field's value. 11431 func (s *WorkflowStep) SetDeleteStepDetails(v *DeleteStepDetails) *WorkflowStep { 11432 s.DeleteStepDetails = v 11433 return s 11434 } 11435 11436 // SetTagStepDetails sets the TagStepDetails field's value. 11437 func (s *WorkflowStep) SetTagStepDetails(v *TagStepDetails) *WorkflowStep { 11438 s.TagStepDetails = v 11439 return s 11440 } 11441 11442 // SetType sets the Type field's value. 11443 func (s *WorkflowStep) SetType(v string) *WorkflowStep { 11444 s.Type = &v 11445 return s 11446 } 11447 11448 const ( 11449 // CustomStepStatusSuccess is a CustomStepStatus enum value 11450 CustomStepStatusSuccess = "SUCCESS" 11451 11452 // CustomStepStatusFailure is a CustomStepStatus enum value 11453 CustomStepStatusFailure = "FAILURE" 11454 ) 11455 11456 // CustomStepStatus_Values returns all elements of the CustomStepStatus enum 11457 func CustomStepStatus_Values() []string { 11458 return []string{ 11459 CustomStepStatusSuccess, 11460 CustomStepStatusFailure, 11461 } 11462 } 11463 11464 const ( 11465 // DomainS3 is a Domain enum value 11466 DomainS3 = "S3" 11467 11468 // DomainEfs is a Domain enum value 11469 DomainEfs = "EFS" 11470 ) 11471 11472 // Domain_Values returns all elements of the Domain enum 11473 func Domain_Values() []string { 11474 return []string{ 11475 DomainS3, 11476 DomainEfs, 11477 } 11478 } 11479 11480 const ( 11481 // EndpointTypePublic is a EndpointType enum value 11482 EndpointTypePublic = "PUBLIC" 11483 11484 // EndpointTypeVpc is a EndpointType enum value 11485 EndpointTypeVpc = "VPC" 11486 11487 // EndpointTypeVpcEndpoint is a EndpointType enum value 11488 EndpointTypeVpcEndpoint = "VPC_ENDPOINT" 11489 ) 11490 11491 // EndpointType_Values returns all elements of the EndpointType enum 11492 func EndpointType_Values() []string { 11493 return []string{ 11494 EndpointTypePublic, 11495 EndpointTypeVpc, 11496 EndpointTypeVpcEndpoint, 11497 } 11498 } 11499 11500 const ( 11501 // ExecutionErrorTypePermissionDenied is a ExecutionErrorType enum value 11502 ExecutionErrorTypePermissionDenied = "PERMISSION_DENIED" 11503 ) 11504 11505 // ExecutionErrorType_Values returns all elements of the ExecutionErrorType enum 11506 func ExecutionErrorType_Values() []string { 11507 return []string{ 11508 ExecutionErrorTypePermissionDenied, 11509 } 11510 } 11511 11512 const ( 11513 // ExecutionStatusInProgress is a ExecutionStatus enum value 11514 ExecutionStatusInProgress = "IN_PROGRESS" 11515 11516 // ExecutionStatusCompleted is a ExecutionStatus enum value 11517 ExecutionStatusCompleted = "COMPLETED" 11518 11519 // ExecutionStatusException is a ExecutionStatus enum value 11520 ExecutionStatusException = "EXCEPTION" 11521 11522 // ExecutionStatusHandlingException is a ExecutionStatus enum value 11523 ExecutionStatusHandlingException = "HANDLING_EXCEPTION" 11524 ) 11525 11526 // ExecutionStatus_Values returns all elements of the ExecutionStatus enum 11527 func ExecutionStatus_Values() []string { 11528 return []string{ 11529 ExecutionStatusInProgress, 11530 ExecutionStatusCompleted, 11531 ExecutionStatusException, 11532 ExecutionStatusHandlingException, 11533 } 11534 } 11535 11536 const ( 11537 // HomeDirectoryTypePath is a HomeDirectoryType enum value 11538 HomeDirectoryTypePath = "PATH" 11539 11540 // HomeDirectoryTypeLogical is a HomeDirectoryType enum value 11541 HomeDirectoryTypeLogical = "LOGICAL" 11542 ) 11543 11544 // HomeDirectoryType_Values returns all elements of the HomeDirectoryType enum 11545 func HomeDirectoryType_Values() []string { 11546 return []string{ 11547 HomeDirectoryTypePath, 11548 HomeDirectoryTypeLogical, 11549 } 11550 } 11551 11552 // Returns information related to the type of user authentication that is in 11553 // use for a file transfer protocol-enabled server's users. For AWS_DIRECTORY_SERVICE 11554 // or SERVICE_MANAGED authentication, the Secure Shell (SSH) public keys are 11555 // stored with a user on the server instance. For API_GATEWAY authentication, 11556 // your custom authentication method is implemented by using an API call. The 11557 // server can have only one method of authentication. 11558 const ( 11559 // IdentityProviderTypeServiceManaged is a IdentityProviderType enum value 11560 IdentityProviderTypeServiceManaged = "SERVICE_MANAGED" 11561 11562 // IdentityProviderTypeApiGateway is a IdentityProviderType enum value 11563 IdentityProviderTypeApiGateway = "API_GATEWAY" 11564 11565 // IdentityProviderTypeAwsDirectoryService is a IdentityProviderType enum value 11566 IdentityProviderTypeAwsDirectoryService = "AWS_DIRECTORY_SERVICE" 11567 ) 11568 11569 // IdentityProviderType_Values returns all elements of the IdentityProviderType enum 11570 func IdentityProviderType_Values() []string { 11571 return []string{ 11572 IdentityProviderTypeServiceManaged, 11573 IdentityProviderTypeApiGateway, 11574 IdentityProviderTypeAwsDirectoryService, 11575 } 11576 } 11577 11578 const ( 11579 // OverwriteExistingTrue is a OverwriteExisting enum value 11580 OverwriteExistingTrue = "TRUE" 11581 11582 // OverwriteExistingFalse is a OverwriteExisting enum value 11583 OverwriteExistingFalse = "FALSE" 11584 ) 11585 11586 // OverwriteExisting_Values returns all elements of the OverwriteExisting enum 11587 func OverwriteExisting_Values() []string { 11588 return []string{ 11589 OverwriteExistingTrue, 11590 OverwriteExistingFalse, 11591 } 11592 } 11593 11594 const ( 11595 // ProtocolSftp is a Protocol enum value 11596 ProtocolSftp = "SFTP" 11597 11598 // ProtocolFtp is a Protocol enum value 11599 ProtocolFtp = "FTP" 11600 11601 // ProtocolFtps is a Protocol enum value 11602 ProtocolFtps = "FTPS" 11603 ) 11604 11605 // Protocol_Values returns all elements of the Protocol enum 11606 func Protocol_Values() []string { 11607 return []string{ 11608 ProtocolSftp, 11609 ProtocolFtp, 11610 ProtocolFtps, 11611 } 11612 } 11613 11614 // Describes the condition of a file transfer protocol-enabled server with respect 11615 // to its ability to perform file operations. There are six possible states: 11616 // OFFLINE, ONLINE, STARTING, STOPPING, START_FAILED, and STOP_FAILED. 11617 // 11618 // OFFLINE indicates that the server exists, but that it is not available for 11619 // file operations. ONLINE indicates that the server is available to perform 11620 // file operations. STARTING indicates that the server's was instantiated, but 11621 // the server is not yet available to perform file operations. Under normal 11622 // conditions, it can take a couple of minutes for the server to be completely 11623 // operational. Both START_FAILED and STOP_FAILED are error conditions. 11624 const ( 11625 // StateOffline is a State enum value 11626 StateOffline = "OFFLINE" 11627 11628 // StateOnline is a State enum value 11629 StateOnline = "ONLINE" 11630 11631 // StateStarting is a State enum value 11632 StateStarting = "STARTING" 11633 11634 // StateStopping is a State enum value 11635 StateStopping = "STOPPING" 11636 11637 // StateStartFailed is a State enum value 11638 StateStartFailed = "START_FAILED" 11639 11640 // StateStopFailed is a State enum value 11641 StateStopFailed = "STOP_FAILED" 11642 ) 11643 11644 // State_Values returns all elements of the State enum 11645 func State_Values() []string { 11646 return []string{ 11647 StateOffline, 11648 StateOnline, 11649 StateStarting, 11650 StateStopping, 11651 StateStartFailed, 11652 StateStopFailed, 11653 } 11654 } 11655 11656 const ( 11657 // WorkflowStepTypeCopy is a WorkflowStepType enum value 11658 WorkflowStepTypeCopy = "COPY" 11659 11660 // WorkflowStepTypeCustom is a WorkflowStepType enum value 11661 WorkflowStepTypeCustom = "CUSTOM" 11662 11663 // WorkflowStepTypeTag is a WorkflowStepType enum value 11664 WorkflowStepTypeTag = "TAG" 11665 11666 // WorkflowStepTypeDelete is a WorkflowStepType enum value 11667 WorkflowStepTypeDelete = "DELETE" 11668 ) 11669 11670 // WorkflowStepType_Values returns all elements of the WorkflowStepType enum 11671 func WorkflowStepType_Values() []string { 11672 return []string{ 11673 WorkflowStepTypeCopy, 11674 WorkflowStepTypeCustom, 11675 WorkflowStepTypeTag, 11676 WorkflowStepTypeDelete, 11677 } 11678 }