1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package acm 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12 "github.com/aws/aws-sdk-go/private/protocol" 13 "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" 14) 15 16const opAddTagsToCertificate = "AddTagsToCertificate" 17 18// AddTagsToCertificateRequest generates a "aws/request.Request" representing the 19// client's request for the AddTagsToCertificate 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 AddTagsToCertificate for more information on using the AddTagsToCertificate 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 AddTagsToCertificateRequest method. 34// req, resp := client.AddTagsToCertificateRequest(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/acm-2015-12-08/AddTagsToCertificate 42func (c *ACM) AddTagsToCertificateRequest(input *AddTagsToCertificateInput) (req *request.Request, output *AddTagsToCertificateOutput) { 43 op := &request.Operation{ 44 Name: opAddTagsToCertificate, 45 HTTPMethod: "POST", 46 HTTPPath: "/", 47 } 48 49 if input == nil { 50 input = &AddTagsToCertificateInput{} 51 } 52 53 output = &AddTagsToCertificateOutput{} 54 req = c.newRequest(op, input, output) 55 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 56 return 57} 58 59// AddTagsToCertificate API operation for AWS Certificate Manager. 60// 61// Adds one or more tags to an ACM certificate. Tags are labels that you can 62// use to identify and organize your Amazon Web Services resources. Each tag 63// consists of a key and an optional value. You specify the certificate on input 64// by its Amazon Resource Name (ARN). You specify the tag by using a key-value 65// pair. 66// 67// You can apply a tag to just one certificate if you want to identify a specific 68// characteristic of that certificate, or you can apply the same tag to multiple 69// certificates if you want to filter for a common relationship among those 70// certificates. Similarly, you can apply the same tag to multiple resources 71// if you want to specify a relationship among those resources. For example, 72// you can add the same tag to an ACM certificate and an Elastic Load Balancing 73// load balancer to indicate that they are both used by the same website. For 74// more information, see Tagging ACM certificates (https://docs.aws.amazon.com/acm/latest/userguide/tags.html). 75// 76// To remove one or more tags, use the RemoveTagsFromCertificate action. To 77// view all of the tags that have been applied to the certificate, use the ListTagsForCertificate 78// action. 79// 80// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 81// with awserr.Error's Code and Message methods to get detailed information about 82// the error. 83// 84// See the AWS API reference guide for AWS Certificate Manager's 85// API operation AddTagsToCertificate for usage and error information. 86// 87// Returned Error Types: 88// * ResourceNotFoundException 89// The specified certificate cannot be found in the caller's account or the 90// caller's account cannot be found. 91// 92// * InvalidArnException 93// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 94// 95// * InvalidTagException 96// One or both of the values that make up the key-value pair is not valid. For 97// example, you cannot specify a tag value that begins with aws:. 98// 99// * TooManyTagsException 100// The request contains too many tags. Try the request again with fewer tags. 101// 102// * TagPolicyException 103// A specified tag did not comply with an existing tag policy and was rejected. 104// 105// * InvalidParameterException 106// An input parameter was invalid. 107// 108// * ThrottlingException 109// The request was denied because it exceeded a quota. 110// 111// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/AddTagsToCertificate 112func (c *ACM) AddTagsToCertificate(input *AddTagsToCertificateInput) (*AddTagsToCertificateOutput, error) { 113 req, out := c.AddTagsToCertificateRequest(input) 114 return out, req.Send() 115} 116 117// AddTagsToCertificateWithContext is the same as AddTagsToCertificate with the addition of 118// the ability to pass a context and additional request options. 119// 120// See AddTagsToCertificate for details on how to use this API operation. 121// 122// The context must be non-nil and will be used for request cancellation. If 123// the context is nil a panic will occur. In the future the SDK may create 124// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 125// for more information on using Contexts. 126func (c *ACM) AddTagsToCertificateWithContext(ctx aws.Context, input *AddTagsToCertificateInput, opts ...request.Option) (*AddTagsToCertificateOutput, error) { 127 req, out := c.AddTagsToCertificateRequest(input) 128 req.SetContext(ctx) 129 req.ApplyOptions(opts...) 130 return out, req.Send() 131} 132 133const opDeleteCertificate = "DeleteCertificate" 134 135// DeleteCertificateRequest generates a "aws/request.Request" representing the 136// client's request for the DeleteCertificate operation. The "output" return 137// value will be populated with the request's response once the request completes 138// successfully. 139// 140// Use "Send" method on the returned Request to send the API call to the service. 141// the "output" return value is not valid until after Send returns without error. 142// 143// See DeleteCertificate for more information on using the DeleteCertificate 144// API call, and error handling. 145// 146// This method is useful when you want to inject custom logic or configuration 147// into the SDK's request lifecycle. Such as custom headers, or retry logic. 148// 149// 150// // Example sending a request using the DeleteCertificateRequest method. 151// req, resp := client.DeleteCertificateRequest(params) 152// 153// err := req.Send() 154// if err == nil { // resp is now filled 155// fmt.Println(resp) 156// } 157// 158// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/DeleteCertificate 159func (c *ACM) DeleteCertificateRequest(input *DeleteCertificateInput) (req *request.Request, output *DeleteCertificateOutput) { 160 op := &request.Operation{ 161 Name: opDeleteCertificate, 162 HTTPMethod: "POST", 163 HTTPPath: "/", 164 } 165 166 if input == nil { 167 input = &DeleteCertificateInput{} 168 } 169 170 output = &DeleteCertificateOutput{} 171 req = c.newRequest(op, input, output) 172 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 173 return 174} 175 176// DeleteCertificate API operation for AWS Certificate Manager. 177// 178// Deletes a certificate and its associated private key. If this action succeeds, 179// the certificate no longer appears in the list that can be displayed by calling 180// the ListCertificates action or be retrieved by calling the GetCertificate 181// action. The certificate will not be available for use by Amazon Web Services 182// services integrated with ACM. 183// 184// You cannot delete an ACM certificate that is being used by another Amazon 185// Web Services service. To delete a certificate that is in use, the certificate 186// association must first be removed. 187// 188// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 189// with awserr.Error's Code and Message methods to get detailed information about 190// the error. 191// 192// See the AWS API reference guide for AWS Certificate Manager's 193// API operation DeleteCertificate for usage and error information. 194// 195// Returned Error Types: 196// * ResourceNotFoundException 197// The specified certificate cannot be found in the caller's account or the 198// caller's account cannot be found. 199// 200// * ResourceInUseException 201// The certificate is in use by another Amazon Web Services service in the caller's 202// account. Remove the association and try again. 203// 204// * InvalidArnException 205// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 206// 207// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/DeleteCertificate 208func (c *ACM) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) { 209 req, out := c.DeleteCertificateRequest(input) 210 return out, req.Send() 211} 212 213// DeleteCertificateWithContext is the same as DeleteCertificate with the addition of 214// the ability to pass a context and additional request options. 215// 216// See DeleteCertificate for details on how to use this API operation. 217// 218// The context must be non-nil and will be used for request cancellation. If 219// the context is nil a panic will occur. In the future the SDK may create 220// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 221// for more information on using Contexts. 222func (c *ACM) DeleteCertificateWithContext(ctx aws.Context, input *DeleteCertificateInput, opts ...request.Option) (*DeleteCertificateOutput, error) { 223 req, out := c.DeleteCertificateRequest(input) 224 req.SetContext(ctx) 225 req.ApplyOptions(opts...) 226 return out, req.Send() 227} 228 229const opDescribeCertificate = "DescribeCertificate" 230 231// DescribeCertificateRequest generates a "aws/request.Request" representing the 232// client's request for the DescribeCertificate operation. The "output" return 233// value will be populated with the request's response once the request completes 234// successfully. 235// 236// Use "Send" method on the returned Request to send the API call to the service. 237// the "output" return value is not valid until after Send returns without error. 238// 239// See DescribeCertificate for more information on using the DescribeCertificate 240// API call, and error handling. 241// 242// This method is useful when you want to inject custom logic or configuration 243// into the SDK's request lifecycle. Such as custom headers, or retry logic. 244// 245// 246// // Example sending a request using the DescribeCertificateRequest method. 247// req, resp := client.DescribeCertificateRequest(params) 248// 249// err := req.Send() 250// if err == nil { // resp is now filled 251// fmt.Println(resp) 252// } 253// 254// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/DescribeCertificate 255func (c *ACM) DescribeCertificateRequest(input *DescribeCertificateInput) (req *request.Request, output *DescribeCertificateOutput) { 256 op := &request.Operation{ 257 Name: opDescribeCertificate, 258 HTTPMethod: "POST", 259 HTTPPath: "/", 260 } 261 262 if input == nil { 263 input = &DescribeCertificateInput{} 264 } 265 266 output = &DescribeCertificateOutput{} 267 req = c.newRequest(op, input, output) 268 return 269} 270 271// DescribeCertificate API operation for AWS Certificate Manager. 272// 273// Returns detailed metadata about the specified ACM certificate. 274// 275// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 276// with awserr.Error's Code and Message methods to get detailed information about 277// the error. 278// 279// See the AWS API reference guide for AWS Certificate Manager's 280// API operation DescribeCertificate for usage and error information. 281// 282// Returned Error Types: 283// * ResourceNotFoundException 284// The specified certificate cannot be found in the caller's account or the 285// caller's account cannot be found. 286// 287// * InvalidArnException 288// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 289// 290// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/DescribeCertificate 291func (c *ACM) DescribeCertificate(input *DescribeCertificateInput) (*DescribeCertificateOutput, error) { 292 req, out := c.DescribeCertificateRequest(input) 293 return out, req.Send() 294} 295 296// DescribeCertificateWithContext is the same as DescribeCertificate with the addition of 297// the ability to pass a context and additional request options. 298// 299// See DescribeCertificate for details on how to use this API operation. 300// 301// The context must be non-nil and will be used for request cancellation. If 302// the context is nil a panic will occur. In the future the SDK may create 303// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 304// for more information on using Contexts. 305func (c *ACM) DescribeCertificateWithContext(ctx aws.Context, input *DescribeCertificateInput, opts ...request.Option) (*DescribeCertificateOutput, error) { 306 req, out := c.DescribeCertificateRequest(input) 307 req.SetContext(ctx) 308 req.ApplyOptions(opts...) 309 return out, req.Send() 310} 311 312const opExportCertificate = "ExportCertificate" 313 314// ExportCertificateRequest generates a "aws/request.Request" representing the 315// client's request for the ExportCertificate operation. The "output" return 316// value will be populated with the request's response once the request completes 317// successfully. 318// 319// Use "Send" method on the returned Request to send the API call to the service. 320// the "output" return value is not valid until after Send returns without error. 321// 322// See ExportCertificate for more information on using the ExportCertificate 323// API call, and error handling. 324// 325// This method is useful when you want to inject custom logic or configuration 326// into the SDK's request lifecycle. Such as custom headers, or retry logic. 327// 328// 329// // Example sending a request using the ExportCertificateRequest method. 330// req, resp := client.ExportCertificateRequest(params) 331// 332// err := req.Send() 333// if err == nil { // resp is now filled 334// fmt.Println(resp) 335// } 336// 337// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ExportCertificate 338func (c *ACM) ExportCertificateRequest(input *ExportCertificateInput) (req *request.Request, output *ExportCertificateOutput) { 339 op := &request.Operation{ 340 Name: opExportCertificate, 341 HTTPMethod: "POST", 342 HTTPPath: "/", 343 } 344 345 if input == nil { 346 input = &ExportCertificateInput{} 347 } 348 349 output = &ExportCertificateOutput{} 350 req = c.newRequest(op, input, output) 351 return 352} 353 354// ExportCertificate API operation for AWS Certificate Manager. 355// 356// Exports a private certificate issued by a private certificate authority (CA) 357// for use anywhere. The exported file contains the certificate, the certificate 358// chain, and the encrypted private 2048-bit RSA key associated with the public 359// key that is embedded in the certificate. For security, you must assign a 360// passphrase for the private key when exporting it. 361// 362// For information about exporting and formatting a certificate using the ACM 363// console or CLI, see Export a Private Certificate (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-export-private.html). 364// 365// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 366// with awserr.Error's Code and Message methods to get detailed information about 367// the error. 368// 369// See the AWS API reference guide for AWS Certificate Manager's 370// API operation ExportCertificate for usage and error information. 371// 372// Returned Error Types: 373// * ResourceNotFoundException 374// The specified certificate cannot be found in the caller's account or the 375// caller's account cannot be found. 376// 377// * RequestInProgressException 378// The certificate request is in process and the certificate in your account 379// has not yet been issued. 380// 381// * InvalidArnException 382// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 383// 384// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ExportCertificate 385func (c *ACM) ExportCertificate(input *ExportCertificateInput) (*ExportCertificateOutput, error) { 386 req, out := c.ExportCertificateRequest(input) 387 return out, req.Send() 388} 389 390// ExportCertificateWithContext is the same as ExportCertificate with the addition of 391// the ability to pass a context and additional request options. 392// 393// See ExportCertificate for details on how to use this API operation. 394// 395// The context must be non-nil and will be used for request cancellation. If 396// the context is nil a panic will occur. In the future the SDK may create 397// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 398// for more information on using Contexts. 399func (c *ACM) ExportCertificateWithContext(ctx aws.Context, input *ExportCertificateInput, opts ...request.Option) (*ExportCertificateOutput, error) { 400 req, out := c.ExportCertificateRequest(input) 401 req.SetContext(ctx) 402 req.ApplyOptions(opts...) 403 return out, req.Send() 404} 405 406const opGetAccountConfiguration = "GetAccountConfiguration" 407 408// GetAccountConfigurationRequest generates a "aws/request.Request" representing the 409// client's request for the GetAccountConfiguration operation. The "output" return 410// value will be populated with the request's response once the request completes 411// successfully. 412// 413// Use "Send" method on the returned Request to send the API call to the service. 414// the "output" return value is not valid until after Send returns without error. 415// 416// See GetAccountConfiguration for more information on using the GetAccountConfiguration 417// API call, and error handling. 418// 419// This method is useful when you want to inject custom logic or configuration 420// into the SDK's request lifecycle. Such as custom headers, or retry logic. 421// 422// 423// // Example sending a request using the GetAccountConfigurationRequest method. 424// req, resp := client.GetAccountConfigurationRequest(params) 425// 426// err := req.Send() 427// if err == nil { // resp is now filled 428// fmt.Println(resp) 429// } 430// 431// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/GetAccountConfiguration 432func (c *ACM) GetAccountConfigurationRequest(input *GetAccountConfigurationInput) (req *request.Request, output *GetAccountConfigurationOutput) { 433 op := &request.Operation{ 434 Name: opGetAccountConfiguration, 435 HTTPMethod: "POST", 436 HTTPPath: "/", 437 } 438 439 if input == nil { 440 input = &GetAccountConfigurationInput{} 441 } 442 443 output = &GetAccountConfigurationOutput{} 444 req = c.newRequest(op, input, output) 445 return 446} 447 448// GetAccountConfiguration API operation for AWS Certificate Manager. 449// 450// Returns the account configuration options associated with an Amazon Web Services 451// account. 452// 453// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 454// with awserr.Error's Code and Message methods to get detailed information about 455// the error. 456// 457// See the AWS API reference guide for AWS Certificate Manager's 458// API operation GetAccountConfiguration for usage and error information. 459// 460// Returned Error Types: 461// * AccessDeniedException 462// You do not have access required to perform this action. 463// 464// * ThrottlingException 465// The request was denied because it exceeded a quota. 466// 467// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/GetAccountConfiguration 468func (c *ACM) GetAccountConfiguration(input *GetAccountConfigurationInput) (*GetAccountConfigurationOutput, error) { 469 req, out := c.GetAccountConfigurationRequest(input) 470 return out, req.Send() 471} 472 473// GetAccountConfigurationWithContext is the same as GetAccountConfiguration with the addition of 474// the ability to pass a context and additional request options. 475// 476// See GetAccountConfiguration for details on how to use this API operation. 477// 478// The context must be non-nil and will be used for request cancellation. If 479// the context is nil a panic will occur. In the future the SDK may create 480// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 481// for more information on using Contexts. 482func (c *ACM) GetAccountConfigurationWithContext(ctx aws.Context, input *GetAccountConfigurationInput, opts ...request.Option) (*GetAccountConfigurationOutput, error) { 483 req, out := c.GetAccountConfigurationRequest(input) 484 req.SetContext(ctx) 485 req.ApplyOptions(opts...) 486 return out, req.Send() 487} 488 489const opGetCertificate = "GetCertificate" 490 491// GetCertificateRequest generates a "aws/request.Request" representing the 492// client's request for the GetCertificate operation. The "output" return 493// value will be populated with the request's response once the request completes 494// successfully. 495// 496// Use "Send" method on the returned Request to send the API call to the service. 497// the "output" return value is not valid until after Send returns without error. 498// 499// See GetCertificate for more information on using the GetCertificate 500// API call, and error handling. 501// 502// This method is useful when you want to inject custom logic or configuration 503// into the SDK's request lifecycle. Such as custom headers, or retry logic. 504// 505// 506// // Example sending a request using the GetCertificateRequest method. 507// req, resp := client.GetCertificateRequest(params) 508// 509// err := req.Send() 510// if err == nil { // resp is now filled 511// fmt.Println(resp) 512// } 513// 514// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/GetCertificate 515func (c *ACM) GetCertificateRequest(input *GetCertificateInput) (req *request.Request, output *GetCertificateOutput) { 516 op := &request.Operation{ 517 Name: opGetCertificate, 518 HTTPMethod: "POST", 519 HTTPPath: "/", 520 } 521 522 if input == nil { 523 input = &GetCertificateInput{} 524 } 525 526 output = &GetCertificateOutput{} 527 req = c.newRequest(op, input, output) 528 return 529} 530 531// GetCertificate API operation for AWS Certificate Manager. 532// 533// Retrieves an Amazon-issued certificate and its certificate chain. The chain 534// consists of the certificate of the issuing CA and the intermediate certificates 535// of any other subordinate CAs. All of the certificates are base64 encoded. 536// You can use OpenSSL (https://wiki.openssl.org/index.php/Command_Line_Utilities) 537// to decode the certificates and inspect individual fields. 538// 539// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 540// with awserr.Error's Code and Message methods to get detailed information about 541// the error. 542// 543// See the AWS API reference guide for AWS Certificate Manager's 544// API operation GetCertificate for usage and error information. 545// 546// Returned Error Types: 547// * ResourceNotFoundException 548// The specified certificate cannot be found in the caller's account or the 549// caller's account cannot be found. 550// 551// * RequestInProgressException 552// The certificate request is in process and the certificate in your account 553// has not yet been issued. 554// 555// * InvalidArnException 556// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 557// 558// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/GetCertificate 559func (c *ACM) GetCertificate(input *GetCertificateInput) (*GetCertificateOutput, error) { 560 req, out := c.GetCertificateRequest(input) 561 return out, req.Send() 562} 563 564// GetCertificateWithContext is the same as GetCertificate with the addition of 565// the ability to pass a context and additional request options. 566// 567// See GetCertificate for details on how to use this API operation. 568// 569// The context must be non-nil and will be used for request cancellation. If 570// the context is nil a panic will occur. In the future the SDK may create 571// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 572// for more information on using Contexts. 573func (c *ACM) GetCertificateWithContext(ctx aws.Context, input *GetCertificateInput, opts ...request.Option) (*GetCertificateOutput, error) { 574 req, out := c.GetCertificateRequest(input) 575 req.SetContext(ctx) 576 req.ApplyOptions(opts...) 577 return out, req.Send() 578} 579 580const opImportCertificate = "ImportCertificate" 581 582// ImportCertificateRequest generates a "aws/request.Request" representing the 583// client's request for the ImportCertificate operation. The "output" return 584// value will be populated with the request's response once the request completes 585// successfully. 586// 587// Use "Send" method on the returned Request to send the API call to the service. 588// the "output" return value is not valid until after Send returns without error. 589// 590// See ImportCertificate for more information on using the ImportCertificate 591// API call, and error handling. 592// 593// This method is useful when you want to inject custom logic or configuration 594// into the SDK's request lifecycle. Such as custom headers, or retry logic. 595// 596// 597// // Example sending a request using the ImportCertificateRequest method. 598// req, resp := client.ImportCertificateRequest(params) 599// 600// err := req.Send() 601// if err == nil { // resp is now filled 602// fmt.Println(resp) 603// } 604// 605// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ImportCertificate 606func (c *ACM) ImportCertificateRequest(input *ImportCertificateInput) (req *request.Request, output *ImportCertificateOutput) { 607 op := &request.Operation{ 608 Name: opImportCertificate, 609 HTTPMethod: "POST", 610 HTTPPath: "/", 611 } 612 613 if input == nil { 614 input = &ImportCertificateInput{} 615 } 616 617 output = &ImportCertificateOutput{} 618 req = c.newRequest(op, input, output) 619 return 620} 621 622// ImportCertificate API operation for AWS Certificate Manager. 623// 624// Imports a certificate into Amazon Web Services Certificate Manager (ACM) 625// to use with services that are integrated with ACM. Note that integrated services 626// (https://docs.aws.amazon.com/acm/latest/userguide/acm-services.html) allow 627// only certificate types and keys they support to be associated with their 628// resources. Further, their support differs depending on whether the certificate 629// is imported into IAM or into ACM. For more information, see the documentation 630// for each service. For more information about importing certificates into 631// ACM, see Importing Certificates (https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) 632// in the Amazon Web Services Certificate Manager User Guide. 633// 634// ACM does not provide managed renewal (https://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) 635// for certificates that you import. 636// 637// Note the following guidelines when importing third party certificates: 638// 639// * You must enter the private key that matches the certificate you are 640// importing. 641// 642// * The private key must be unencrypted. You cannot import a private key 643// that is protected by a password or a passphrase. 644// 645// * The private key must be no larger than 5 KB (5,120 bytes). 646// 647// * If the certificate you are importing is not self-signed, you must enter 648// its certificate chain. 649// 650// * If a certificate chain is included, the issuer must be the subject of 651// one of the certificates in the chain. 652// 653// * The certificate, private key, and certificate chain must be PEM-encoded. 654// 655// * The current time must be between the Not Before and Not After certificate 656// fields. 657// 658// * The Issuer field must not be empty. 659// 660// * The OCSP authority URL, if present, must not exceed 1000 characters. 661// 662// * To import a new certificate, omit the CertificateArn argument. Include 663// this argument only when you want to replace a previously imported certificate. 664// 665// * When you import a certificate by using the CLI, you must specify the 666// certificate, the certificate chain, and the private key by their file 667// names preceded by fileb://. For example, you can specify a certificate 668// saved in the C:\temp folder as fileb://C:\temp\certificate_to_import.pem. 669// If you are making an HTTP or HTTPS Query request, include these arguments 670// as BLOBs. 671// 672// * When you import a certificate by using an SDK, you must specify the 673// certificate, the certificate chain, and the private key files in the manner 674// required by the programming language you're using. 675// 676// * The cryptographic algorithm of an imported certificate must match the 677// algorithm of the signing CA. For example, if the signing CA key type is 678// RSA, then the certificate key type must also be RSA. 679// 680// This operation returns the Amazon Resource Name (ARN) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) 681// of the imported certificate. 682// 683// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 684// with awserr.Error's Code and Message methods to get detailed information about 685// the error. 686// 687// See the AWS API reference guide for AWS Certificate Manager's 688// API operation ImportCertificate for usage and error information. 689// 690// Returned Error Types: 691// * ResourceNotFoundException 692// The specified certificate cannot be found in the caller's account or the 693// caller's account cannot be found. 694// 695// * LimitExceededException 696// An ACM quota has been exceeded. 697// 698// * InvalidTagException 699// One or both of the values that make up the key-value pair is not valid. For 700// example, you cannot specify a tag value that begins with aws:. 701// 702// * TooManyTagsException 703// The request contains too many tags. Try the request again with fewer tags. 704// 705// * TagPolicyException 706// A specified tag did not comply with an existing tag policy and was rejected. 707// 708// * InvalidParameterException 709// An input parameter was invalid. 710// 711// * InvalidArnException 712// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 713// 714// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ImportCertificate 715func (c *ACM) ImportCertificate(input *ImportCertificateInput) (*ImportCertificateOutput, error) { 716 req, out := c.ImportCertificateRequest(input) 717 return out, req.Send() 718} 719 720// ImportCertificateWithContext is the same as ImportCertificate with the addition of 721// the ability to pass a context and additional request options. 722// 723// See ImportCertificate for details on how to use this API operation. 724// 725// The context must be non-nil and will be used for request cancellation. If 726// the context is nil a panic will occur. In the future the SDK may create 727// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 728// for more information on using Contexts. 729func (c *ACM) ImportCertificateWithContext(ctx aws.Context, input *ImportCertificateInput, opts ...request.Option) (*ImportCertificateOutput, error) { 730 req, out := c.ImportCertificateRequest(input) 731 req.SetContext(ctx) 732 req.ApplyOptions(opts...) 733 return out, req.Send() 734} 735 736const opListCertificates = "ListCertificates" 737 738// ListCertificatesRequest generates a "aws/request.Request" representing the 739// client's request for the ListCertificates operation. The "output" return 740// value will be populated with the request's response once the request completes 741// successfully. 742// 743// Use "Send" method on the returned Request to send the API call to the service. 744// the "output" return value is not valid until after Send returns without error. 745// 746// See ListCertificates for more information on using the ListCertificates 747// API call, and error handling. 748// 749// This method is useful when you want to inject custom logic or configuration 750// into the SDK's request lifecycle. Such as custom headers, or retry logic. 751// 752// 753// // Example sending a request using the ListCertificatesRequest method. 754// req, resp := client.ListCertificatesRequest(params) 755// 756// err := req.Send() 757// if err == nil { // resp is now filled 758// fmt.Println(resp) 759// } 760// 761// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ListCertificates 762func (c *ACM) ListCertificatesRequest(input *ListCertificatesInput) (req *request.Request, output *ListCertificatesOutput) { 763 op := &request.Operation{ 764 Name: opListCertificates, 765 HTTPMethod: "POST", 766 HTTPPath: "/", 767 Paginator: &request.Paginator{ 768 InputTokens: []string{"NextToken"}, 769 OutputTokens: []string{"NextToken"}, 770 LimitToken: "MaxItems", 771 TruncationToken: "", 772 }, 773 } 774 775 if input == nil { 776 input = &ListCertificatesInput{} 777 } 778 779 output = &ListCertificatesOutput{} 780 req = c.newRequest(op, input, output) 781 return 782} 783 784// ListCertificates API operation for AWS Certificate Manager. 785// 786// Retrieves a list of certificate ARNs and domain names. You can request that 787// only certificates that match a specific status be listed. You can also filter 788// by specific attributes of the certificate. Default filtering returns only 789// RSA_2048 certificates. For more information, see Filters. 790// 791// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 792// with awserr.Error's Code and Message methods to get detailed information about 793// the error. 794// 795// See the AWS API reference guide for AWS Certificate Manager's 796// API operation ListCertificates for usage and error information. 797// 798// Returned Error Types: 799// * InvalidArgsException 800// One or more of of request parameters specified is not valid. 801// 802// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ListCertificates 803func (c *ACM) ListCertificates(input *ListCertificatesInput) (*ListCertificatesOutput, error) { 804 req, out := c.ListCertificatesRequest(input) 805 return out, req.Send() 806} 807 808// ListCertificatesWithContext is the same as ListCertificates with the addition of 809// the ability to pass a context and additional request options. 810// 811// See ListCertificates for details on how to use this API operation. 812// 813// The context must be non-nil and will be used for request cancellation. If 814// the context is nil a panic will occur. In the future the SDK may create 815// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 816// for more information on using Contexts. 817func (c *ACM) ListCertificatesWithContext(ctx aws.Context, input *ListCertificatesInput, opts ...request.Option) (*ListCertificatesOutput, error) { 818 req, out := c.ListCertificatesRequest(input) 819 req.SetContext(ctx) 820 req.ApplyOptions(opts...) 821 return out, req.Send() 822} 823 824// ListCertificatesPages iterates over the pages of a ListCertificates operation, 825// calling the "fn" function with the response data for each page. To stop 826// iterating, return false from the fn function. 827// 828// See ListCertificates method for more information on how to use this operation. 829// 830// Note: This operation can generate multiple requests to a service. 831// 832// // Example iterating over at most 3 pages of a ListCertificates operation. 833// pageNum := 0 834// err := client.ListCertificatesPages(params, 835// func(page *acm.ListCertificatesOutput, lastPage bool) bool { 836// pageNum++ 837// fmt.Println(page) 838// return pageNum <= 3 839// }) 840// 841func (c *ACM) ListCertificatesPages(input *ListCertificatesInput, fn func(*ListCertificatesOutput, bool) bool) error { 842 return c.ListCertificatesPagesWithContext(aws.BackgroundContext(), input, fn) 843} 844 845// ListCertificatesPagesWithContext same as ListCertificatesPages except 846// it takes a Context and allows setting request options on the pages. 847// 848// The context must be non-nil and will be used for request cancellation. If 849// the context is nil a panic will occur. In the future the SDK may create 850// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 851// for more information on using Contexts. 852func (c *ACM) ListCertificatesPagesWithContext(ctx aws.Context, input *ListCertificatesInput, fn func(*ListCertificatesOutput, bool) bool, opts ...request.Option) error { 853 p := request.Pagination{ 854 NewRequest: func() (*request.Request, error) { 855 var inCpy *ListCertificatesInput 856 if input != nil { 857 tmp := *input 858 inCpy = &tmp 859 } 860 req, _ := c.ListCertificatesRequest(inCpy) 861 req.SetContext(ctx) 862 req.ApplyOptions(opts...) 863 return req, nil 864 }, 865 } 866 867 for p.Next() { 868 if !fn(p.Page().(*ListCertificatesOutput), !p.HasNextPage()) { 869 break 870 } 871 } 872 873 return p.Err() 874} 875 876const opListTagsForCertificate = "ListTagsForCertificate" 877 878// ListTagsForCertificateRequest generates a "aws/request.Request" representing the 879// client's request for the ListTagsForCertificate operation. The "output" return 880// value will be populated with the request's response once the request completes 881// successfully. 882// 883// Use "Send" method on the returned Request to send the API call to the service. 884// the "output" return value is not valid until after Send returns without error. 885// 886// See ListTagsForCertificate for more information on using the ListTagsForCertificate 887// API call, and error handling. 888// 889// This method is useful when you want to inject custom logic or configuration 890// into the SDK's request lifecycle. Such as custom headers, or retry logic. 891// 892// 893// // Example sending a request using the ListTagsForCertificateRequest method. 894// req, resp := client.ListTagsForCertificateRequest(params) 895// 896// err := req.Send() 897// if err == nil { // resp is now filled 898// fmt.Println(resp) 899// } 900// 901// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ListTagsForCertificate 902func (c *ACM) ListTagsForCertificateRequest(input *ListTagsForCertificateInput) (req *request.Request, output *ListTagsForCertificateOutput) { 903 op := &request.Operation{ 904 Name: opListTagsForCertificate, 905 HTTPMethod: "POST", 906 HTTPPath: "/", 907 } 908 909 if input == nil { 910 input = &ListTagsForCertificateInput{} 911 } 912 913 output = &ListTagsForCertificateOutput{} 914 req = c.newRequest(op, input, output) 915 return 916} 917 918// ListTagsForCertificate API operation for AWS Certificate Manager. 919// 920// Lists the tags that have been applied to the ACM certificate. Use the certificate's 921// Amazon Resource Name (ARN) to specify the certificate. To add a tag to an 922// ACM certificate, use the AddTagsToCertificate action. To delete a tag, use 923// the RemoveTagsFromCertificate action. 924// 925// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 926// with awserr.Error's Code and Message methods to get detailed information about 927// the error. 928// 929// See the AWS API reference guide for AWS Certificate Manager's 930// API operation ListTagsForCertificate for usage and error information. 931// 932// Returned Error Types: 933// * ResourceNotFoundException 934// The specified certificate cannot be found in the caller's account or the 935// caller's account cannot be found. 936// 937// * InvalidArnException 938// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 939// 940// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ListTagsForCertificate 941func (c *ACM) ListTagsForCertificate(input *ListTagsForCertificateInput) (*ListTagsForCertificateOutput, error) { 942 req, out := c.ListTagsForCertificateRequest(input) 943 return out, req.Send() 944} 945 946// ListTagsForCertificateWithContext is the same as ListTagsForCertificate with the addition of 947// the ability to pass a context and additional request options. 948// 949// See ListTagsForCertificate for details on how to use this API operation. 950// 951// The context must be non-nil and will be used for request cancellation. If 952// the context is nil a panic will occur. In the future the SDK may create 953// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 954// for more information on using Contexts. 955func (c *ACM) ListTagsForCertificateWithContext(ctx aws.Context, input *ListTagsForCertificateInput, opts ...request.Option) (*ListTagsForCertificateOutput, error) { 956 req, out := c.ListTagsForCertificateRequest(input) 957 req.SetContext(ctx) 958 req.ApplyOptions(opts...) 959 return out, req.Send() 960} 961 962const opPutAccountConfiguration = "PutAccountConfiguration" 963 964// PutAccountConfigurationRequest generates a "aws/request.Request" representing the 965// client's request for the PutAccountConfiguration operation. The "output" return 966// value will be populated with the request's response once the request completes 967// successfully. 968// 969// Use "Send" method on the returned Request to send the API call to the service. 970// the "output" return value is not valid until after Send returns without error. 971// 972// See PutAccountConfiguration for more information on using the PutAccountConfiguration 973// API call, and error handling. 974// 975// This method is useful when you want to inject custom logic or configuration 976// into the SDK's request lifecycle. Such as custom headers, or retry logic. 977// 978// 979// // Example sending a request using the PutAccountConfigurationRequest method. 980// req, resp := client.PutAccountConfigurationRequest(params) 981// 982// err := req.Send() 983// if err == nil { // resp is now filled 984// fmt.Println(resp) 985// } 986// 987// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/PutAccountConfiguration 988func (c *ACM) PutAccountConfigurationRequest(input *PutAccountConfigurationInput) (req *request.Request, output *PutAccountConfigurationOutput) { 989 op := &request.Operation{ 990 Name: opPutAccountConfiguration, 991 HTTPMethod: "POST", 992 HTTPPath: "/", 993 } 994 995 if input == nil { 996 input = &PutAccountConfigurationInput{} 997 } 998 999 output = &PutAccountConfigurationOutput{} 1000 req = c.newRequest(op, input, output) 1001 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1002 return 1003} 1004 1005// PutAccountConfiguration API operation for AWS Certificate Manager. 1006// 1007// Adds or modifies account-level configurations in ACM. 1008// 1009// The supported configuration option is DaysBeforeExpiry. This option specifies 1010// the number of days prior to certificate expiration when ACM starts generating 1011// EventBridge events. ACM sends one event per day per certificate until the 1012// certificate expires. By default, accounts receive events starting 45 days 1013// before certificate expiration. 1014// 1015// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1016// with awserr.Error's Code and Message methods to get detailed information about 1017// the error. 1018// 1019// See the AWS API reference guide for AWS Certificate Manager's 1020// API operation PutAccountConfiguration for usage and error information. 1021// 1022// Returned Error Types: 1023// * ValidationException 1024// The supplied input failed to satisfy constraints of an Amazon Web Services 1025// service. 1026// 1027// * ThrottlingException 1028// The request was denied because it exceeded a quota. 1029// 1030// * AccessDeniedException 1031// You do not have access required to perform this action. 1032// 1033// * ConflictException 1034// You are trying to update a resource or configuration that is already being 1035// created or updated. Wait for the previous operation to finish and try again. 1036// 1037// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/PutAccountConfiguration 1038func (c *ACM) PutAccountConfiguration(input *PutAccountConfigurationInput) (*PutAccountConfigurationOutput, error) { 1039 req, out := c.PutAccountConfigurationRequest(input) 1040 return out, req.Send() 1041} 1042 1043// PutAccountConfigurationWithContext is the same as PutAccountConfiguration with the addition of 1044// the ability to pass a context and additional request options. 1045// 1046// See PutAccountConfiguration for details on how to use this API operation. 1047// 1048// The context must be non-nil and will be used for request cancellation. If 1049// the context is nil a panic will occur. In the future the SDK may create 1050// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1051// for more information on using Contexts. 1052func (c *ACM) PutAccountConfigurationWithContext(ctx aws.Context, input *PutAccountConfigurationInput, opts ...request.Option) (*PutAccountConfigurationOutput, error) { 1053 req, out := c.PutAccountConfigurationRequest(input) 1054 req.SetContext(ctx) 1055 req.ApplyOptions(opts...) 1056 return out, req.Send() 1057} 1058 1059const opRemoveTagsFromCertificate = "RemoveTagsFromCertificate" 1060 1061// RemoveTagsFromCertificateRequest generates a "aws/request.Request" representing the 1062// client's request for the RemoveTagsFromCertificate operation. The "output" return 1063// value will be populated with the request's response once the request completes 1064// successfully. 1065// 1066// Use "Send" method on the returned Request to send the API call to the service. 1067// the "output" return value is not valid until after Send returns without error. 1068// 1069// See RemoveTagsFromCertificate for more information on using the RemoveTagsFromCertificate 1070// API call, and error handling. 1071// 1072// This method is useful when you want to inject custom logic or configuration 1073// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1074// 1075// 1076// // Example sending a request using the RemoveTagsFromCertificateRequest method. 1077// req, resp := client.RemoveTagsFromCertificateRequest(params) 1078// 1079// err := req.Send() 1080// if err == nil { // resp is now filled 1081// fmt.Println(resp) 1082// } 1083// 1084// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RemoveTagsFromCertificate 1085func (c *ACM) RemoveTagsFromCertificateRequest(input *RemoveTagsFromCertificateInput) (req *request.Request, output *RemoveTagsFromCertificateOutput) { 1086 op := &request.Operation{ 1087 Name: opRemoveTagsFromCertificate, 1088 HTTPMethod: "POST", 1089 HTTPPath: "/", 1090 } 1091 1092 if input == nil { 1093 input = &RemoveTagsFromCertificateInput{} 1094 } 1095 1096 output = &RemoveTagsFromCertificateOutput{} 1097 req = c.newRequest(op, input, output) 1098 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1099 return 1100} 1101 1102// RemoveTagsFromCertificate API operation for AWS Certificate Manager. 1103// 1104// Remove one or more tags from an ACM certificate. A tag consists of a key-value 1105// pair. If you do not specify the value portion of the tag when calling this 1106// function, the tag will be removed regardless of value. If you specify a value, 1107// the tag is removed only if it is associated with the specified value. 1108// 1109// To add tags to a certificate, use the AddTagsToCertificate action. To view 1110// all of the tags that have been applied to a specific ACM certificate, use 1111// the ListTagsForCertificate action. 1112// 1113// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1114// with awserr.Error's Code and Message methods to get detailed information about 1115// the error. 1116// 1117// See the AWS API reference guide for AWS Certificate Manager's 1118// API operation RemoveTagsFromCertificate for usage and error information. 1119// 1120// Returned Error Types: 1121// * ResourceNotFoundException 1122// The specified certificate cannot be found in the caller's account or the 1123// caller's account cannot be found. 1124// 1125// * InvalidArnException 1126// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 1127// 1128// * InvalidTagException 1129// One or both of the values that make up the key-value pair is not valid. For 1130// example, you cannot specify a tag value that begins with aws:. 1131// 1132// * TagPolicyException 1133// A specified tag did not comply with an existing tag policy and was rejected. 1134// 1135// * InvalidParameterException 1136// An input parameter was invalid. 1137// 1138// * ThrottlingException 1139// The request was denied because it exceeded a quota. 1140// 1141// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RemoveTagsFromCertificate 1142func (c *ACM) RemoveTagsFromCertificate(input *RemoveTagsFromCertificateInput) (*RemoveTagsFromCertificateOutput, error) { 1143 req, out := c.RemoveTagsFromCertificateRequest(input) 1144 return out, req.Send() 1145} 1146 1147// RemoveTagsFromCertificateWithContext is the same as RemoveTagsFromCertificate with the addition of 1148// the ability to pass a context and additional request options. 1149// 1150// See RemoveTagsFromCertificate for details on how to use this API operation. 1151// 1152// The context must be non-nil and will be used for request cancellation. If 1153// the context is nil a panic will occur. In the future the SDK may create 1154// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1155// for more information on using Contexts. 1156func (c *ACM) RemoveTagsFromCertificateWithContext(ctx aws.Context, input *RemoveTagsFromCertificateInput, opts ...request.Option) (*RemoveTagsFromCertificateOutput, error) { 1157 req, out := c.RemoveTagsFromCertificateRequest(input) 1158 req.SetContext(ctx) 1159 req.ApplyOptions(opts...) 1160 return out, req.Send() 1161} 1162 1163const opRenewCertificate = "RenewCertificate" 1164 1165// RenewCertificateRequest generates a "aws/request.Request" representing the 1166// client's request for the RenewCertificate operation. The "output" return 1167// value will be populated with the request's response once the request completes 1168// successfully. 1169// 1170// Use "Send" method on the returned Request to send the API call to the service. 1171// the "output" return value is not valid until after Send returns without error. 1172// 1173// See RenewCertificate for more information on using the RenewCertificate 1174// API call, and error handling. 1175// 1176// This method is useful when you want to inject custom logic or configuration 1177// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1178// 1179// 1180// // Example sending a request using the RenewCertificateRequest method. 1181// req, resp := client.RenewCertificateRequest(params) 1182// 1183// err := req.Send() 1184// if err == nil { // resp is now filled 1185// fmt.Println(resp) 1186// } 1187// 1188// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RenewCertificate 1189func (c *ACM) RenewCertificateRequest(input *RenewCertificateInput) (req *request.Request, output *RenewCertificateOutput) { 1190 op := &request.Operation{ 1191 Name: opRenewCertificate, 1192 HTTPMethod: "POST", 1193 HTTPPath: "/", 1194 } 1195 1196 if input == nil { 1197 input = &RenewCertificateInput{} 1198 } 1199 1200 output = &RenewCertificateOutput{} 1201 req = c.newRequest(op, input, output) 1202 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1203 return 1204} 1205 1206// RenewCertificate API operation for AWS Certificate Manager. 1207// 1208// Renews an eligible ACM certificate. At this time, only exported private certificates 1209// can be renewed with this operation. In order to renew your ACM PCA certificates 1210// with ACM, you must first grant the ACM service principal permission to do 1211// so (https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaPermissions.html). 1212// For more information, see Testing Managed Renewal (https://docs.aws.amazon.com/acm/latest/userguide/manual-renewal.html) 1213// in the ACM User Guide. 1214// 1215// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1216// with awserr.Error's Code and Message methods to get detailed information about 1217// the error. 1218// 1219// See the AWS API reference guide for AWS Certificate Manager's 1220// API operation RenewCertificate for usage and error information. 1221// 1222// Returned Error Types: 1223// * ResourceNotFoundException 1224// The specified certificate cannot be found in the caller's account or the 1225// caller's account cannot be found. 1226// 1227// * InvalidArnException 1228// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 1229// 1230// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RenewCertificate 1231func (c *ACM) RenewCertificate(input *RenewCertificateInput) (*RenewCertificateOutput, error) { 1232 req, out := c.RenewCertificateRequest(input) 1233 return out, req.Send() 1234} 1235 1236// RenewCertificateWithContext is the same as RenewCertificate with the addition of 1237// the ability to pass a context and additional request options. 1238// 1239// See RenewCertificate for details on how to use this API operation. 1240// 1241// The context must be non-nil and will be used for request cancellation. If 1242// the context is nil a panic will occur. In the future the SDK may create 1243// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1244// for more information on using Contexts. 1245func (c *ACM) RenewCertificateWithContext(ctx aws.Context, input *RenewCertificateInput, opts ...request.Option) (*RenewCertificateOutput, error) { 1246 req, out := c.RenewCertificateRequest(input) 1247 req.SetContext(ctx) 1248 req.ApplyOptions(opts...) 1249 return out, req.Send() 1250} 1251 1252const opRequestCertificate = "RequestCertificate" 1253 1254// RequestCertificateRequest generates a "aws/request.Request" representing the 1255// client's request for the RequestCertificate operation. The "output" return 1256// value will be populated with the request's response once the request completes 1257// successfully. 1258// 1259// Use "Send" method on the returned Request to send the API call to the service. 1260// the "output" return value is not valid until after Send returns without error. 1261// 1262// See RequestCertificate for more information on using the RequestCertificate 1263// API call, and error handling. 1264// 1265// This method is useful when you want to inject custom logic or configuration 1266// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1267// 1268// 1269// // Example sending a request using the RequestCertificateRequest method. 1270// req, resp := client.RequestCertificateRequest(params) 1271// 1272// err := req.Send() 1273// if err == nil { // resp is now filled 1274// fmt.Println(resp) 1275// } 1276// 1277// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RequestCertificate 1278func (c *ACM) RequestCertificateRequest(input *RequestCertificateInput) (req *request.Request, output *RequestCertificateOutput) { 1279 op := &request.Operation{ 1280 Name: opRequestCertificate, 1281 HTTPMethod: "POST", 1282 HTTPPath: "/", 1283 } 1284 1285 if input == nil { 1286 input = &RequestCertificateInput{} 1287 } 1288 1289 output = &RequestCertificateOutput{} 1290 req = c.newRequest(op, input, output) 1291 return 1292} 1293 1294// RequestCertificate API operation for AWS Certificate Manager. 1295// 1296// Requests an ACM certificate for use with other Amazon Web Services services. 1297// To request an ACM certificate, you must specify a fully qualified domain 1298// name (FQDN) in the DomainName parameter. You can also specify additional 1299// FQDNs in the SubjectAlternativeNames parameter. 1300// 1301// If you are requesting a private certificate, domain validation is not required. 1302// If you are requesting a public certificate, each domain name that you specify 1303// must be validated to verify that you own or control the domain. You can use 1304// DNS validation (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-dns.html) 1305// or email validation (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-email.html). 1306// We recommend that you use DNS validation. ACM issues public certificates 1307// after receiving approval from the domain owner. 1308// 1309// ACM behavior differs from the https://tools.ietf.org/html/rfc6125#appendix-B.2 1310// (https://tools.ietf.org/html/rfc6125#appendix-B.2)RFC 6125 specification 1311// of the certificate validation process. first checks for a subject alternative 1312// name, and, if it finds one, ignores the common name (CN) 1313// 1314// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1315// with awserr.Error's Code and Message methods to get detailed information about 1316// the error. 1317// 1318// See the AWS API reference guide for AWS Certificate Manager's 1319// API operation RequestCertificate for usage and error information. 1320// 1321// Returned Error Types: 1322// * LimitExceededException 1323// An ACM quota has been exceeded. 1324// 1325// * InvalidDomainValidationOptionsException 1326// One or more values in the DomainValidationOption structure is incorrect. 1327// 1328// * InvalidArnException 1329// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 1330// 1331// * InvalidTagException 1332// One or both of the values that make up the key-value pair is not valid. For 1333// example, you cannot specify a tag value that begins with aws:. 1334// 1335// * TooManyTagsException 1336// The request contains too many tags. Try the request again with fewer tags. 1337// 1338// * TagPolicyException 1339// A specified tag did not comply with an existing tag policy and was rejected. 1340// 1341// * InvalidParameterException 1342// An input parameter was invalid. 1343// 1344// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RequestCertificate 1345func (c *ACM) RequestCertificate(input *RequestCertificateInput) (*RequestCertificateOutput, error) { 1346 req, out := c.RequestCertificateRequest(input) 1347 return out, req.Send() 1348} 1349 1350// RequestCertificateWithContext is the same as RequestCertificate with the addition of 1351// the ability to pass a context and additional request options. 1352// 1353// See RequestCertificate for details on how to use this API operation. 1354// 1355// The context must be non-nil and will be used for request cancellation. If 1356// the context is nil a panic will occur. In the future the SDK may create 1357// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1358// for more information on using Contexts. 1359func (c *ACM) RequestCertificateWithContext(ctx aws.Context, input *RequestCertificateInput, opts ...request.Option) (*RequestCertificateOutput, error) { 1360 req, out := c.RequestCertificateRequest(input) 1361 req.SetContext(ctx) 1362 req.ApplyOptions(opts...) 1363 return out, req.Send() 1364} 1365 1366const opResendValidationEmail = "ResendValidationEmail" 1367 1368// ResendValidationEmailRequest generates a "aws/request.Request" representing the 1369// client's request for the ResendValidationEmail operation. The "output" return 1370// value will be populated with the request's response once the request completes 1371// successfully. 1372// 1373// Use "Send" method on the returned Request to send the API call to the service. 1374// the "output" return value is not valid until after Send returns without error. 1375// 1376// See ResendValidationEmail for more information on using the ResendValidationEmail 1377// API call, and error handling. 1378// 1379// This method is useful when you want to inject custom logic or configuration 1380// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1381// 1382// 1383// // Example sending a request using the ResendValidationEmailRequest method. 1384// req, resp := client.ResendValidationEmailRequest(params) 1385// 1386// err := req.Send() 1387// if err == nil { // resp is now filled 1388// fmt.Println(resp) 1389// } 1390// 1391// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ResendValidationEmail 1392func (c *ACM) ResendValidationEmailRequest(input *ResendValidationEmailInput) (req *request.Request, output *ResendValidationEmailOutput) { 1393 op := &request.Operation{ 1394 Name: opResendValidationEmail, 1395 HTTPMethod: "POST", 1396 HTTPPath: "/", 1397 } 1398 1399 if input == nil { 1400 input = &ResendValidationEmailInput{} 1401 } 1402 1403 output = &ResendValidationEmailOutput{} 1404 req = c.newRequest(op, input, output) 1405 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1406 return 1407} 1408 1409// ResendValidationEmail API operation for AWS Certificate Manager. 1410// 1411// Resends the email that requests domain ownership validation. The domain owner 1412// or an authorized representative must approve the ACM certificate before it 1413// can be issued. The certificate can be approved by clicking a link in the 1414// mail to navigate to the Amazon certificate approval website and then clicking 1415// I Approve. However, the validation email can be blocked by spam filters. 1416// Therefore, if you do not receive the original mail, you can request that 1417// the mail be resent within 72 hours of requesting the ACM certificate. If 1418// more than 72 hours have elapsed since your original request or since your 1419// last attempt to resend validation mail, you must request a new certificate. 1420// For more information about setting up your contact email addresses, see Configure 1421// Email for your Domain (https://docs.aws.amazon.com/acm/latest/userguide/setup-email.html). 1422// 1423// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1424// with awserr.Error's Code and Message methods to get detailed information about 1425// the error. 1426// 1427// See the AWS API reference guide for AWS Certificate Manager's 1428// API operation ResendValidationEmail for usage and error information. 1429// 1430// Returned Error Types: 1431// * ResourceNotFoundException 1432// The specified certificate cannot be found in the caller's account or the 1433// caller's account cannot be found. 1434// 1435// * InvalidStateException 1436// Processing has reached an invalid state. 1437// 1438// * InvalidArnException 1439// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 1440// 1441// * InvalidDomainValidationOptionsException 1442// One or more values in the DomainValidationOption structure is incorrect. 1443// 1444// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/ResendValidationEmail 1445func (c *ACM) ResendValidationEmail(input *ResendValidationEmailInput) (*ResendValidationEmailOutput, error) { 1446 req, out := c.ResendValidationEmailRequest(input) 1447 return out, req.Send() 1448} 1449 1450// ResendValidationEmailWithContext is the same as ResendValidationEmail with the addition of 1451// the ability to pass a context and additional request options. 1452// 1453// See ResendValidationEmail for details on how to use this API operation. 1454// 1455// The context must be non-nil and will be used for request cancellation. If 1456// the context is nil a panic will occur. In the future the SDK may create 1457// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1458// for more information on using Contexts. 1459func (c *ACM) ResendValidationEmailWithContext(ctx aws.Context, input *ResendValidationEmailInput, opts ...request.Option) (*ResendValidationEmailOutput, error) { 1460 req, out := c.ResendValidationEmailRequest(input) 1461 req.SetContext(ctx) 1462 req.ApplyOptions(opts...) 1463 return out, req.Send() 1464} 1465 1466const opUpdateCertificateOptions = "UpdateCertificateOptions" 1467 1468// UpdateCertificateOptionsRequest generates a "aws/request.Request" representing the 1469// client's request for the UpdateCertificateOptions operation. The "output" return 1470// value will be populated with the request's response once the request completes 1471// successfully. 1472// 1473// Use "Send" method on the returned Request to send the API call to the service. 1474// the "output" return value is not valid until after Send returns without error. 1475// 1476// See UpdateCertificateOptions for more information on using the UpdateCertificateOptions 1477// API call, and error handling. 1478// 1479// This method is useful when you want to inject custom logic or configuration 1480// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1481// 1482// 1483// // Example sending a request using the UpdateCertificateOptionsRequest method. 1484// req, resp := client.UpdateCertificateOptionsRequest(params) 1485// 1486// err := req.Send() 1487// if err == nil { // resp is now filled 1488// fmt.Println(resp) 1489// } 1490// 1491// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/UpdateCertificateOptions 1492func (c *ACM) UpdateCertificateOptionsRequest(input *UpdateCertificateOptionsInput) (req *request.Request, output *UpdateCertificateOptionsOutput) { 1493 op := &request.Operation{ 1494 Name: opUpdateCertificateOptions, 1495 HTTPMethod: "POST", 1496 HTTPPath: "/", 1497 } 1498 1499 if input == nil { 1500 input = &UpdateCertificateOptionsInput{} 1501 } 1502 1503 output = &UpdateCertificateOptionsOutput{} 1504 req = c.newRequest(op, input, output) 1505 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1506 return 1507} 1508 1509// UpdateCertificateOptions API operation for AWS Certificate Manager. 1510// 1511// Updates a certificate. Currently, you can use this function to specify whether 1512// to opt in to or out of recording your certificate in a certificate transparency 1513// log. For more information, see Opting Out of Certificate Transparency Logging 1514// (https://docs.aws.amazon.com/acm/latest/userguide/acm-bestpractices.html#best-practices-transparency). 1515// 1516// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1517// with awserr.Error's Code and Message methods to get detailed information about 1518// the error. 1519// 1520// See the AWS API reference guide for AWS Certificate Manager's 1521// API operation UpdateCertificateOptions for usage and error information. 1522// 1523// Returned Error Types: 1524// * ResourceNotFoundException 1525// The specified certificate cannot be found in the caller's account or the 1526// caller's account cannot be found. 1527// 1528// * LimitExceededException 1529// An ACM quota has been exceeded. 1530// 1531// * InvalidStateException 1532// Processing has reached an invalid state. 1533// 1534// * InvalidArnException 1535// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 1536// 1537// See also, https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/UpdateCertificateOptions 1538func (c *ACM) UpdateCertificateOptions(input *UpdateCertificateOptionsInput) (*UpdateCertificateOptionsOutput, error) { 1539 req, out := c.UpdateCertificateOptionsRequest(input) 1540 return out, req.Send() 1541} 1542 1543// UpdateCertificateOptionsWithContext is the same as UpdateCertificateOptions with the addition of 1544// the ability to pass a context and additional request options. 1545// 1546// See UpdateCertificateOptions for details on how to use this API operation. 1547// 1548// The context must be non-nil and will be used for request cancellation. If 1549// the context is nil a panic will occur. In the future the SDK may create 1550// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1551// for more information on using Contexts. 1552func (c *ACM) UpdateCertificateOptionsWithContext(ctx aws.Context, input *UpdateCertificateOptionsInput, opts ...request.Option) (*UpdateCertificateOptionsOutput, error) { 1553 req, out := c.UpdateCertificateOptionsRequest(input) 1554 req.SetContext(ctx) 1555 req.ApplyOptions(opts...) 1556 return out, req.Send() 1557} 1558 1559// You do not have access required to perform this action. 1560type AccessDeniedException struct { 1561 _ struct{} `type:"structure"` 1562 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 1563 1564 Message_ *string `locationName:"Message" type:"string"` 1565} 1566 1567// String returns the string representation. 1568// 1569// API parameter values that are decorated as "sensitive" in the API will not 1570// be included in the string output. The member name will be present, but the 1571// value will be replaced with "sensitive". 1572func (s AccessDeniedException) String() string { 1573 return awsutil.Prettify(s) 1574} 1575 1576// GoString returns the string representation. 1577// 1578// API parameter values that are decorated as "sensitive" in the API will not 1579// be included in the string output. The member name will be present, but the 1580// value will be replaced with "sensitive". 1581func (s AccessDeniedException) GoString() string { 1582 return s.String() 1583} 1584 1585func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { 1586 return &AccessDeniedException{ 1587 RespMetadata: v, 1588 } 1589} 1590 1591// Code returns the exception type name. 1592func (s *AccessDeniedException) Code() string { 1593 return "AccessDeniedException" 1594} 1595 1596// Message returns the exception's message. 1597func (s *AccessDeniedException) Message() string { 1598 if s.Message_ != nil { 1599 return *s.Message_ 1600 } 1601 return "" 1602} 1603 1604// OrigErr always returns nil, satisfies awserr.Error interface. 1605func (s *AccessDeniedException) OrigErr() error { 1606 return nil 1607} 1608 1609func (s *AccessDeniedException) Error() string { 1610 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 1611} 1612 1613// Status code returns the HTTP status code for the request's response error. 1614func (s *AccessDeniedException) StatusCode() int { 1615 return s.RespMetadata.StatusCode 1616} 1617 1618// RequestID returns the service's response RequestID for request. 1619func (s *AccessDeniedException) RequestID() string { 1620 return s.RespMetadata.RequestID 1621} 1622 1623type AddTagsToCertificateInput struct { 1624 _ struct{} `type:"structure"` 1625 1626 // String that contains the ARN of the ACM certificate to which the tag is to 1627 // be applied. This must be of the form: 1628 // 1629 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 1630 // 1631 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 1632 // 1633 // CertificateArn is a required field 1634 CertificateArn *string `min:"20" type:"string" required:"true"` 1635 1636 // The key-value pair that defines the tag. The tag value is optional. 1637 // 1638 // Tags is a required field 1639 Tags []*Tag `min:"1" type:"list" required:"true"` 1640} 1641 1642// String returns the string representation. 1643// 1644// API parameter values that are decorated as "sensitive" in the API will not 1645// be included in the string output. The member name will be present, but the 1646// value will be replaced with "sensitive". 1647func (s AddTagsToCertificateInput) String() string { 1648 return awsutil.Prettify(s) 1649} 1650 1651// GoString returns the string representation. 1652// 1653// API parameter values that are decorated as "sensitive" in the API will not 1654// be included in the string output. The member name will be present, but the 1655// value will be replaced with "sensitive". 1656func (s AddTagsToCertificateInput) GoString() string { 1657 return s.String() 1658} 1659 1660// Validate inspects the fields of the type to determine if they are valid. 1661func (s *AddTagsToCertificateInput) Validate() error { 1662 invalidParams := request.ErrInvalidParams{Context: "AddTagsToCertificateInput"} 1663 if s.CertificateArn == nil { 1664 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 1665 } 1666 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 1667 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 1668 } 1669 if s.Tags == nil { 1670 invalidParams.Add(request.NewErrParamRequired("Tags")) 1671 } 1672 if s.Tags != nil && len(s.Tags) < 1 { 1673 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 1674 } 1675 if s.Tags != nil { 1676 for i, v := range s.Tags { 1677 if v == nil { 1678 continue 1679 } 1680 if err := v.Validate(); err != nil { 1681 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 1682 } 1683 } 1684 } 1685 1686 if invalidParams.Len() > 0 { 1687 return invalidParams 1688 } 1689 return nil 1690} 1691 1692// SetCertificateArn sets the CertificateArn field's value. 1693func (s *AddTagsToCertificateInput) SetCertificateArn(v string) *AddTagsToCertificateInput { 1694 s.CertificateArn = &v 1695 return s 1696} 1697 1698// SetTags sets the Tags field's value. 1699func (s *AddTagsToCertificateInput) SetTags(v []*Tag) *AddTagsToCertificateInput { 1700 s.Tags = v 1701 return s 1702} 1703 1704type AddTagsToCertificateOutput struct { 1705 _ struct{} `type:"structure"` 1706} 1707 1708// String returns the string representation. 1709// 1710// API parameter values that are decorated as "sensitive" in the API will not 1711// be included in the string output. The member name will be present, but the 1712// value will be replaced with "sensitive". 1713func (s AddTagsToCertificateOutput) String() string { 1714 return awsutil.Prettify(s) 1715} 1716 1717// GoString returns the string representation. 1718// 1719// API parameter values that are decorated as "sensitive" in the API will not 1720// be included in the string output. The member name will be present, but the 1721// value will be replaced with "sensitive". 1722func (s AddTagsToCertificateOutput) GoString() string { 1723 return s.String() 1724} 1725 1726// Contains metadata about an ACM certificate. This structure is returned in 1727// the response to a DescribeCertificate request. 1728type CertificateDetail struct { 1729 _ struct{} `type:"structure"` 1730 1731 // The Amazon Resource Name (ARN) of the certificate. For more information about 1732 // ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) 1733 // in the Amazon Web Services General Reference. 1734 CertificateArn *string `min:"20" type:"string"` 1735 1736 // The Amazon Resource Name (ARN) of the ACM PCA private certificate authority 1737 // (CA) that issued the certificate. This has the following format: 1738 // 1739 // arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 1740 CertificateAuthorityArn *string `min:"20" type:"string"` 1741 1742 // The time at which the certificate was requested. 1743 CreatedAt *time.Time `type:"timestamp"` 1744 1745 // The fully qualified domain name for the certificate, such as www.example.com 1746 // or example.com. 1747 DomainName *string `min:"1" type:"string"` 1748 1749 // Contains information about the initial validation of each domain name that 1750 // occurs as a result of the RequestCertificate request. This field exists only 1751 // when the certificate type is AMAZON_ISSUED. 1752 DomainValidationOptions []*DomainValidation `min:"1" type:"list"` 1753 1754 // Contains a list of Extended Key Usage X.509 v3 extension objects. Each object 1755 // specifies a purpose for which the certificate public key can be used and 1756 // consists of a name and an object identifier (OID). 1757 ExtendedKeyUsages []*ExtendedKeyUsage `type:"list"` 1758 1759 // The reason the certificate request failed. This value exists only when the 1760 // certificate status is FAILED. For more information, see Certificate Request 1761 // Failed (https://docs.aws.amazon.com/acm/latest/userguide/troubleshooting.html#troubleshooting-failed) 1762 // in the Amazon Web Services Certificate Manager User Guide. 1763 FailureReason *string `type:"string" enum:"FailureReason"` 1764 1765 // The date and time at which the certificate was imported. This value exists 1766 // only when the certificate type is IMPORTED. 1767 ImportedAt *time.Time `type:"timestamp"` 1768 1769 // A list of ARNs for the Amazon Web Services resources that are using the certificate. 1770 // A certificate can be used by multiple Amazon Web Services resources. 1771 InUseBy []*string `type:"list"` 1772 1773 // The time at which the certificate was issued. This value exists only when 1774 // the certificate type is AMAZON_ISSUED. 1775 IssuedAt *time.Time `type:"timestamp"` 1776 1777 // The name of the certificate authority that issued and signed the certificate. 1778 Issuer *string `type:"string"` 1779 1780 // The algorithm that was used to generate the public-private key pair. 1781 KeyAlgorithm *string `type:"string" enum:"KeyAlgorithm"` 1782 1783 // A list of Key Usage X.509 v3 extension objects. Each object is a string value 1784 // that identifies the purpose of the public key contained in the certificate. 1785 // Possible extension values include DIGITAL_SIGNATURE, KEY_ENCHIPHERMENT, NON_REPUDIATION, 1786 // and more. 1787 KeyUsages []*KeyUsage `type:"list"` 1788 1789 // The time after which the certificate is not valid. 1790 NotAfter *time.Time `type:"timestamp"` 1791 1792 // The time before which the certificate is not valid. 1793 NotBefore *time.Time `type:"timestamp"` 1794 1795 // Value that specifies whether to add the certificate to a transparency log. 1796 // Certificate transparency makes it possible to detect SSL certificates that 1797 // have been mistakenly or maliciously issued. A browser might respond to certificate 1798 // that has not been logged by showing an error message. The logs are cryptographically 1799 // secure. 1800 Options *CertificateOptions `type:"structure"` 1801 1802 // Specifies whether the certificate is eligible for renewal. At this time, 1803 // only exported private certificates can be renewed with the RenewCertificate 1804 // command. 1805 RenewalEligibility *string `type:"string" enum:"RenewalEligibility"` 1806 1807 // Contains information about the status of ACM's managed renewal (https://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) 1808 // for the certificate. This field exists only when the certificate type is 1809 // AMAZON_ISSUED. 1810 RenewalSummary *RenewalSummary `type:"structure"` 1811 1812 // The reason the certificate was revoked. This value exists only when the certificate 1813 // status is REVOKED. 1814 RevocationReason *string `type:"string" enum:"RevocationReason"` 1815 1816 // The time at which the certificate was revoked. This value exists only when 1817 // the certificate status is REVOKED. 1818 RevokedAt *time.Time `type:"timestamp"` 1819 1820 // The serial number of the certificate. 1821 Serial *string `type:"string"` 1822 1823 // The algorithm that was used to sign the certificate. 1824 SignatureAlgorithm *string `type:"string"` 1825 1826 // The status of the certificate. 1827 Status *string `type:"string" enum:"CertificateStatus"` 1828 1829 // The name of the entity that is associated with the public key contained in 1830 // the certificate. 1831 Subject *string `type:"string"` 1832 1833 // One or more domain names (subject alternative names) included in the certificate. 1834 // This list contains the domain names that are bound to the public key that 1835 // is contained in the certificate. The subject alternative names include the 1836 // canonical domain name (CN) of the certificate and additional domain names 1837 // that can be used to connect to the website. 1838 SubjectAlternativeNames []*string `min:"1" type:"list"` 1839 1840 // The source of the certificate. For certificates provided by ACM, this value 1841 // is AMAZON_ISSUED. For certificates that you imported with ImportCertificate, 1842 // this value is IMPORTED. ACM does not provide managed renewal (https://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) 1843 // for imported certificates. For more information about the differences between 1844 // certificates that you import and those that ACM provides, see Importing Certificates 1845 // (https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) 1846 // in the Amazon Web Services Certificate Manager User Guide. 1847 Type *string `type:"string" enum:"CertificateType"` 1848} 1849 1850// String returns the string representation. 1851// 1852// API parameter values that are decorated as "sensitive" in the API will not 1853// be included in the string output. The member name will be present, but the 1854// value will be replaced with "sensitive". 1855func (s CertificateDetail) String() string { 1856 return awsutil.Prettify(s) 1857} 1858 1859// GoString returns the string representation. 1860// 1861// API parameter values that are decorated as "sensitive" in the API will not 1862// be included in the string output. The member name will be present, but the 1863// value will be replaced with "sensitive". 1864func (s CertificateDetail) GoString() string { 1865 return s.String() 1866} 1867 1868// SetCertificateArn sets the CertificateArn field's value. 1869func (s *CertificateDetail) SetCertificateArn(v string) *CertificateDetail { 1870 s.CertificateArn = &v 1871 return s 1872} 1873 1874// SetCertificateAuthorityArn sets the CertificateAuthorityArn field's value. 1875func (s *CertificateDetail) SetCertificateAuthorityArn(v string) *CertificateDetail { 1876 s.CertificateAuthorityArn = &v 1877 return s 1878} 1879 1880// SetCreatedAt sets the CreatedAt field's value. 1881func (s *CertificateDetail) SetCreatedAt(v time.Time) *CertificateDetail { 1882 s.CreatedAt = &v 1883 return s 1884} 1885 1886// SetDomainName sets the DomainName field's value. 1887func (s *CertificateDetail) SetDomainName(v string) *CertificateDetail { 1888 s.DomainName = &v 1889 return s 1890} 1891 1892// SetDomainValidationOptions sets the DomainValidationOptions field's value. 1893func (s *CertificateDetail) SetDomainValidationOptions(v []*DomainValidation) *CertificateDetail { 1894 s.DomainValidationOptions = v 1895 return s 1896} 1897 1898// SetExtendedKeyUsages sets the ExtendedKeyUsages field's value. 1899func (s *CertificateDetail) SetExtendedKeyUsages(v []*ExtendedKeyUsage) *CertificateDetail { 1900 s.ExtendedKeyUsages = v 1901 return s 1902} 1903 1904// SetFailureReason sets the FailureReason field's value. 1905func (s *CertificateDetail) SetFailureReason(v string) *CertificateDetail { 1906 s.FailureReason = &v 1907 return s 1908} 1909 1910// SetImportedAt sets the ImportedAt field's value. 1911func (s *CertificateDetail) SetImportedAt(v time.Time) *CertificateDetail { 1912 s.ImportedAt = &v 1913 return s 1914} 1915 1916// SetInUseBy sets the InUseBy field's value. 1917func (s *CertificateDetail) SetInUseBy(v []*string) *CertificateDetail { 1918 s.InUseBy = v 1919 return s 1920} 1921 1922// SetIssuedAt sets the IssuedAt field's value. 1923func (s *CertificateDetail) SetIssuedAt(v time.Time) *CertificateDetail { 1924 s.IssuedAt = &v 1925 return s 1926} 1927 1928// SetIssuer sets the Issuer field's value. 1929func (s *CertificateDetail) SetIssuer(v string) *CertificateDetail { 1930 s.Issuer = &v 1931 return s 1932} 1933 1934// SetKeyAlgorithm sets the KeyAlgorithm field's value. 1935func (s *CertificateDetail) SetKeyAlgorithm(v string) *CertificateDetail { 1936 s.KeyAlgorithm = &v 1937 return s 1938} 1939 1940// SetKeyUsages sets the KeyUsages field's value. 1941func (s *CertificateDetail) SetKeyUsages(v []*KeyUsage) *CertificateDetail { 1942 s.KeyUsages = v 1943 return s 1944} 1945 1946// SetNotAfter sets the NotAfter field's value. 1947func (s *CertificateDetail) SetNotAfter(v time.Time) *CertificateDetail { 1948 s.NotAfter = &v 1949 return s 1950} 1951 1952// SetNotBefore sets the NotBefore field's value. 1953func (s *CertificateDetail) SetNotBefore(v time.Time) *CertificateDetail { 1954 s.NotBefore = &v 1955 return s 1956} 1957 1958// SetOptions sets the Options field's value. 1959func (s *CertificateDetail) SetOptions(v *CertificateOptions) *CertificateDetail { 1960 s.Options = v 1961 return s 1962} 1963 1964// SetRenewalEligibility sets the RenewalEligibility field's value. 1965func (s *CertificateDetail) SetRenewalEligibility(v string) *CertificateDetail { 1966 s.RenewalEligibility = &v 1967 return s 1968} 1969 1970// SetRenewalSummary sets the RenewalSummary field's value. 1971func (s *CertificateDetail) SetRenewalSummary(v *RenewalSummary) *CertificateDetail { 1972 s.RenewalSummary = v 1973 return s 1974} 1975 1976// SetRevocationReason sets the RevocationReason field's value. 1977func (s *CertificateDetail) SetRevocationReason(v string) *CertificateDetail { 1978 s.RevocationReason = &v 1979 return s 1980} 1981 1982// SetRevokedAt sets the RevokedAt field's value. 1983func (s *CertificateDetail) SetRevokedAt(v time.Time) *CertificateDetail { 1984 s.RevokedAt = &v 1985 return s 1986} 1987 1988// SetSerial sets the Serial field's value. 1989func (s *CertificateDetail) SetSerial(v string) *CertificateDetail { 1990 s.Serial = &v 1991 return s 1992} 1993 1994// SetSignatureAlgorithm sets the SignatureAlgorithm field's value. 1995func (s *CertificateDetail) SetSignatureAlgorithm(v string) *CertificateDetail { 1996 s.SignatureAlgorithm = &v 1997 return s 1998} 1999 2000// SetStatus sets the Status field's value. 2001func (s *CertificateDetail) SetStatus(v string) *CertificateDetail { 2002 s.Status = &v 2003 return s 2004} 2005 2006// SetSubject sets the Subject field's value. 2007func (s *CertificateDetail) SetSubject(v string) *CertificateDetail { 2008 s.Subject = &v 2009 return s 2010} 2011 2012// SetSubjectAlternativeNames sets the SubjectAlternativeNames field's value. 2013func (s *CertificateDetail) SetSubjectAlternativeNames(v []*string) *CertificateDetail { 2014 s.SubjectAlternativeNames = v 2015 return s 2016} 2017 2018// SetType sets the Type field's value. 2019func (s *CertificateDetail) SetType(v string) *CertificateDetail { 2020 s.Type = &v 2021 return s 2022} 2023 2024// Structure that contains options for your certificate. Currently, you can 2025// use this only to specify whether to opt in to or out of certificate transparency 2026// logging. Some browsers require that public certificates issued for your domain 2027// be recorded in a log. Certificates that are not logged typically generate 2028// a browser error. Transparency makes it possible for you to detect SSL/TLS 2029// certificates that have been mistakenly or maliciously issued for your domain. 2030// For general information, see Certificate Transparency Logging (https://docs.aws.amazon.com/acm/latest/userguide/acm-concepts.html#concept-transparency). 2031type CertificateOptions struct { 2032 _ struct{} `type:"structure"` 2033 2034 // You can opt out of certificate transparency logging by specifying the DISABLED 2035 // option. Opt in by specifying ENABLED. 2036 CertificateTransparencyLoggingPreference *string `type:"string" enum:"CertificateTransparencyLoggingPreference"` 2037} 2038 2039// String returns the string representation. 2040// 2041// API parameter values that are decorated as "sensitive" in the API will not 2042// be included in the string output. The member name will be present, but the 2043// value will be replaced with "sensitive". 2044func (s CertificateOptions) String() string { 2045 return awsutil.Prettify(s) 2046} 2047 2048// GoString returns the string representation. 2049// 2050// API parameter values that are decorated as "sensitive" in the API will not 2051// be included in the string output. The member name will be present, but the 2052// value will be replaced with "sensitive". 2053func (s CertificateOptions) GoString() string { 2054 return s.String() 2055} 2056 2057// SetCertificateTransparencyLoggingPreference sets the CertificateTransparencyLoggingPreference field's value. 2058func (s *CertificateOptions) SetCertificateTransparencyLoggingPreference(v string) *CertificateOptions { 2059 s.CertificateTransparencyLoggingPreference = &v 2060 return s 2061} 2062 2063// This structure is returned in the response object of ListCertificates action. 2064type CertificateSummary struct { 2065 _ struct{} `type:"structure"` 2066 2067 // Amazon Resource Name (ARN) of the certificate. This is of the form: 2068 // 2069 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 2070 // 2071 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 2072 CertificateArn *string `min:"20" type:"string"` 2073 2074 // Fully qualified domain name (FQDN), such as www.example.com or example.com, 2075 // for the certificate. 2076 DomainName *string `min:"1" type:"string"` 2077} 2078 2079// String returns the string representation. 2080// 2081// API parameter values that are decorated as "sensitive" in the API will not 2082// be included in the string output. The member name will be present, but the 2083// value will be replaced with "sensitive". 2084func (s CertificateSummary) String() string { 2085 return awsutil.Prettify(s) 2086} 2087 2088// GoString returns the string representation. 2089// 2090// API parameter values that are decorated as "sensitive" in the API will not 2091// be included in the string output. The member name will be present, but the 2092// value will be replaced with "sensitive". 2093func (s CertificateSummary) GoString() string { 2094 return s.String() 2095} 2096 2097// SetCertificateArn sets the CertificateArn field's value. 2098func (s *CertificateSummary) SetCertificateArn(v string) *CertificateSummary { 2099 s.CertificateArn = &v 2100 return s 2101} 2102 2103// SetDomainName sets the DomainName field's value. 2104func (s *CertificateSummary) SetDomainName(v string) *CertificateSummary { 2105 s.DomainName = &v 2106 return s 2107} 2108 2109// You are trying to update a resource or configuration that is already being 2110// created or updated. Wait for the previous operation to finish and try again. 2111type ConflictException struct { 2112 _ struct{} `type:"structure"` 2113 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 2114 2115 Message_ *string `locationName:"message" type:"string"` 2116} 2117 2118// String returns the string representation. 2119// 2120// API parameter values that are decorated as "sensitive" in the API will not 2121// be included in the string output. The member name will be present, but the 2122// value will be replaced with "sensitive". 2123func (s ConflictException) String() string { 2124 return awsutil.Prettify(s) 2125} 2126 2127// GoString returns the string representation. 2128// 2129// API parameter values that are decorated as "sensitive" in the API will not 2130// be included in the string output. The member name will be present, but the 2131// value will be replaced with "sensitive". 2132func (s ConflictException) GoString() string { 2133 return s.String() 2134} 2135 2136func newErrorConflictException(v protocol.ResponseMetadata) error { 2137 return &ConflictException{ 2138 RespMetadata: v, 2139 } 2140} 2141 2142// Code returns the exception type name. 2143func (s *ConflictException) Code() string { 2144 return "ConflictException" 2145} 2146 2147// Message returns the exception's message. 2148func (s *ConflictException) Message() string { 2149 if s.Message_ != nil { 2150 return *s.Message_ 2151 } 2152 return "" 2153} 2154 2155// OrigErr always returns nil, satisfies awserr.Error interface. 2156func (s *ConflictException) OrigErr() error { 2157 return nil 2158} 2159 2160func (s *ConflictException) Error() string { 2161 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 2162} 2163 2164// Status code returns the HTTP status code for the request's response error. 2165func (s *ConflictException) StatusCode() int { 2166 return s.RespMetadata.StatusCode 2167} 2168 2169// RequestID returns the service's response RequestID for request. 2170func (s *ConflictException) RequestID() string { 2171 return s.RespMetadata.RequestID 2172} 2173 2174type DeleteCertificateInput struct { 2175 _ struct{} `type:"structure"` 2176 2177 // String that contains the ARN of the ACM certificate to be deleted. This must 2178 // be of the form: 2179 // 2180 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 2181 // 2182 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 2183 // 2184 // CertificateArn is a required field 2185 CertificateArn *string `min:"20" type:"string" required:"true"` 2186} 2187 2188// String returns the string representation. 2189// 2190// API parameter values that are decorated as "sensitive" in the API will not 2191// be included in the string output. The member name will be present, but the 2192// value will be replaced with "sensitive". 2193func (s DeleteCertificateInput) String() string { 2194 return awsutil.Prettify(s) 2195} 2196 2197// GoString returns the string representation. 2198// 2199// API parameter values that are decorated as "sensitive" in the API will not 2200// be included in the string output. The member name will be present, but the 2201// value will be replaced with "sensitive". 2202func (s DeleteCertificateInput) GoString() string { 2203 return s.String() 2204} 2205 2206// Validate inspects the fields of the type to determine if they are valid. 2207func (s *DeleteCertificateInput) Validate() error { 2208 invalidParams := request.ErrInvalidParams{Context: "DeleteCertificateInput"} 2209 if s.CertificateArn == nil { 2210 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 2211 } 2212 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 2213 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 2214 } 2215 2216 if invalidParams.Len() > 0 { 2217 return invalidParams 2218 } 2219 return nil 2220} 2221 2222// SetCertificateArn sets the CertificateArn field's value. 2223func (s *DeleteCertificateInput) SetCertificateArn(v string) *DeleteCertificateInput { 2224 s.CertificateArn = &v 2225 return s 2226} 2227 2228type DeleteCertificateOutput struct { 2229 _ struct{} `type:"structure"` 2230} 2231 2232// String returns the string representation. 2233// 2234// API parameter values that are decorated as "sensitive" in the API will not 2235// be included in the string output. The member name will be present, but the 2236// value will be replaced with "sensitive". 2237func (s DeleteCertificateOutput) String() string { 2238 return awsutil.Prettify(s) 2239} 2240 2241// GoString returns the string representation. 2242// 2243// API parameter values that are decorated as "sensitive" in the API will not 2244// be included in the string output. The member name will be present, but the 2245// value will be replaced with "sensitive". 2246func (s DeleteCertificateOutput) GoString() string { 2247 return s.String() 2248} 2249 2250type DescribeCertificateInput struct { 2251 _ struct{} `type:"structure"` 2252 2253 // The Amazon Resource Name (ARN) of the ACM certificate. The ARN must have 2254 // the following form: 2255 // 2256 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 2257 // 2258 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 2259 // 2260 // CertificateArn is a required field 2261 CertificateArn *string `min:"20" type:"string" required:"true"` 2262} 2263 2264// String returns the string representation. 2265// 2266// API parameter values that are decorated as "sensitive" in the API will not 2267// be included in the string output. The member name will be present, but the 2268// value will be replaced with "sensitive". 2269func (s DescribeCertificateInput) String() string { 2270 return awsutil.Prettify(s) 2271} 2272 2273// GoString returns the string representation. 2274// 2275// API parameter values that are decorated as "sensitive" in the API will not 2276// be included in the string output. The member name will be present, but the 2277// value will be replaced with "sensitive". 2278func (s DescribeCertificateInput) GoString() string { 2279 return s.String() 2280} 2281 2282// Validate inspects the fields of the type to determine if they are valid. 2283func (s *DescribeCertificateInput) Validate() error { 2284 invalidParams := request.ErrInvalidParams{Context: "DescribeCertificateInput"} 2285 if s.CertificateArn == nil { 2286 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 2287 } 2288 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 2289 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 2290 } 2291 2292 if invalidParams.Len() > 0 { 2293 return invalidParams 2294 } 2295 return nil 2296} 2297 2298// SetCertificateArn sets the CertificateArn field's value. 2299func (s *DescribeCertificateInput) SetCertificateArn(v string) *DescribeCertificateInput { 2300 s.CertificateArn = &v 2301 return s 2302} 2303 2304type DescribeCertificateOutput struct { 2305 _ struct{} `type:"structure"` 2306 2307 // Metadata about an ACM certificate. 2308 Certificate *CertificateDetail `type:"structure"` 2309} 2310 2311// String returns the string representation. 2312// 2313// API parameter values that are decorated as "sensitive" in the API will not 2314// be included in the string output. The member name will be present, but the 2315// value will be replaced with "sensitive". 2316func (s DescribeCertificateOutput) String() string { 2317 return awsutil.Prettify(s) 2318} 2319 2320// GoString returns the string representation. 2321// 2322// API parameter values that are decorated as "sensitive" in the API will not 2323// be included in the string output. The member name will be present, but the 2324// value will be replaced with "sensitive". 2325func (s DescribeCertificateOutput) GoString() string { 2326 return s.String() 2327} 2328 2329// SetCertificate sets the Certificate field's value. 2330func (s *DescribeCertificateOutput) SetCertificate(v *CertificateDetail) *DescribeCertificateOutput { 2331 s.Certificate = v 2332 return s 2333} 2334 2335// Contains information about the validation of each domain name in the certificate. 2336type DomainValidation struct { 2337 _ struct{} `type:"structure"` 2338 2339 // A fully qualified domain name (FQDN) in the certificate. For example, www.example.com 2340 // or example.com. 2341 // 2342 // DomainName is a required field 2343 DomainName *string `min:"1" type:"string" required:"true"` 2344 2345 // Contains the CNAME record that you add to your DNS database for domain validation. 2346 // For more information, see Use DNS to Validate Domain Ownership (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-dns.html). 2347 // 2348 // Note: The CNAME information that you need does not include the name of your 2349 // domain. If you include your domain name in the DNS database CNAME record, 2350 // validation fails. For example, if the name is "_a79865eb4cd1a6ab990a45779b4e0b96.yourdomain.com", 2351 // only "_a79865eb4cd1a6ab990a45779b4e0b96" must be used. 2352 ResourceRecord *ResourceRecord `type:"structure"` 2353 2354 // The domain name that ACM used to send domain validation emails. 2355 ValidationDomain *string `min:"1" type:"string"` 2356 2357 // A list of email addresses that ACM used to send domain validation emails. 2358 ValidationEmails []*string `type:"list"` 2359 2360 // Specifies the domain validation method. 2361 ValidationMethod *string `type:"string" enum:"ValidationMethod"` 2362 2363 // The validation status of the domain name. This can be one of the following 2364 // values: 2365 // 2366 // * PENDING_VALIDATION 2367 // 2368 // * SUCCESS 2369 // 2370 // * FAILED 2371 ValidationStatus *string `type:"string" enum:"DomainStatus"` 2372} 2373 2374// String returns the string representation. 2375// 2376// API parameter values that are decorated as "sensitive" in the API will not 2377// be included in the string output. The member name will be present, but the 2378// value will be replaced with "sensitive". 2379func (s DomainValidation) String() string { 2380 return awsutil.Prettify(s) 2381} 2382 2383// GoString returns the string representation. 2384// 2385// API parameter values that are decorated as "sensitive" in the API will not 2386// be included in the string output. The member name will be present, but the 2387// value will be replaced with "sensitive". 2388func (s DomainValidation) GoString() string { 2389 return s.String() 2390} 2391 2392// SetDomainName sets the DomainName field's value. 2393func (s *DomainValidation) SetDomainName(v string) *DomainValidation { 2394 s.DomainName = &v 2395 return s 2396} 2397 2398// SetResourceRecord sets the ResourceRecord field's value. 2399func (s *DomainValidation) SetResourceRecord(v *ResourceRecord) *DomainValidation { 2400 s.ResourceRecord = v 2401 return s 2402} 2403 2404// SetValidationDomain sets the ValidationDomain field's value. 2405func (s *DomainValidation) SetValidationDomain(v string) *DomainValidation { 2406 s.ValidationDomain = &v 2407 return s 2408} 2409 2410// SetValidationEmails sets the ValidationEmails field's value. 2411func (s *DomainValidation) SetValidationEmails(v []*string) *DomainValidation { 2412 s.ValidationEmails = v 2413 return s 2414} 2415 2416// SetValidationMethod sets the ValidationMethod field's value. 2417func (s *DomainValidation) SetValidationMethod(v string) *DomainValidation { 2418 s.ValidationMethod = &v 2419 return s 2420} 2421 2422// SetValidationStatus sets the ValidationStatus field's value. 2423func (s *DomainValidation) SetValidationStatus(v string) *DomainValidation { 2424 s.ValidationStatus = &v 2425 return s 2426} 2427 2428// Contains information about the domain names that you want ACM to use to send 2429// you emails that enable you to validate domain ownership. 2430type DomainValidationOption struct { 2431 _ struct{} `type:"structure"` 2432 2433 // A fully qualified domain name (FQDN) in the certificate request. 2434 // 2435 // DomainName is a required field 2436 DomainName *string `min:"1" type:"string" required:"true"` 2437 2438 // The domain name that you want ACM to use to send you validation emails. This 2439 // domain name is the suffix of the email addresses that you want ACM to use. 2440 // This must be the same as the DomainName value or a superdomain of the DomainName 2441 // value. For example, if you request a certificate for testing.example.com, 2442 // you can specify example.com for this value. In that case, ACM sends domain 2443 // validation emails to the following five addresses: 2444 // 2445 // * admin@example.com 2446 // 2447 // * administrator@example.com 2448 // 2449 // * hostmaster@example.com 2450 // 2451 // * postmaster@example.com 2452 // 2453 // * webmaster@example.com 2454 // 2455 // ValidationDomain is a required field 2456 ValidationDomain *string `min:"1" type:"string" required:"true"` 2457} 2458 2459// String returns the string representation. 2460// 2461// API parameter values that are decorated as "sensitive" in the API will not 2462// be included in the string output. The member name will be present, but the 2463// value will be replaced with "sensitive". 2464func (s DomainValidationOption) String() string { 2465 return awsutil.Prettify(s) 2466} 2467 2468// GoString returns the string representation. 2469// 2470// API parameter values that are decorated as "sensitive" in the API will not 2471// be included in the string output. The member name will be present, but the 2472// value will be replaced with "sensitive". 2473func (s DomainValidationOption) GoString() string { 2474 return s.String() 2475} 2476 2477// Validate inspects the fields of the type to determine if they are valid. 2478func (s *DomainValidationOption) Validate() error { 2479 invalidParams := request.ErrInvalidParams{Context: "DomainValidationOption"} 2480 if s.DomainName == nil { 2481 invalidParams.Add(request.NewErrParamRequired("DomainName")) 2482 } 2483 if s.DomainName != nil && len(*s.DomainName) < 1 { 2484 invalidParams.Add(request.NewErrParamMinLen("DomainName", 1)) 2485 } 2486 if s.ValidationDomain == nil { 2487 invalidParams.Add(request.NewErrParamRequired("ValidationDomain")) 2488 } 2489 if s.ValidationDomain != nil && len(*s.ValidationDomain) < 1 { 2490 invalidParams.Add(request.NewErrParamMinLen("ValidationDomain", 1)) 2491 } 2492 2493 if invalidParams.Len() > 0 { 2494 return invalidParams 2495 } 2496 return nil 2497} 2498 2499// SetDomainName sets the DomainName field's value. 2500func (s *DomainValidationOption) SetDomainName(v string) *DomainValidationOption { 2501 s.DomainName = &v 2502 return s 2503} 2504 2505// SetValidationDomain sets the ValidationDomain field's value. 2506func (s *DomainValidationOption) SetValidationDomain(v string) *DomainValidationOption { 2507 s.ValidationDomain = &v 2508 return s 2509} 2510 2511// Object containing expiration events options associated with an Amazon Web 2512// Services account. 2513type ExpiryEventsConfiguration struct { 2514 _ struct{} `type:"structure"` 2515 2516 // Specifies the number of days prior to certificate expiration when ACM starts 2517 // generating EventBridge events. ACM sends one event per day per certificate 2518 // until the certificate expires. By default, accounts receive events starting 2519 // 45 days before certificate expiration. 2520 DaysBeforeExpiry *int64 `min:"1" type:"integer"` 2521} 2522 2523// String returns the string representation. 2524// 2525// API parameter values that are decorated as "sensitive" in the API will not 2526// be included in the string output. The member name will be present, but the 2527// value will be replaced with "sensitive". 2528func (s ExpiryEventsConfiguration) String() string { 2529 return awsutil.Prettify(s) 2530} 2531 2532// GoString returns the string representation. 2533// 2534// API parameter values that are decorated as "sensitive" in the API will not 2535// be included in the string output. The member name will be present, but the 2536// value will be replaced with "sensitive". 2537func (s ExpiryEventsConfiguration) GoString() string { 2538 return s.String() 2539} 2540 2541// Validate inspects the fields of the type to determine if they are valid. 2542func (s *ExpiryEventsConfiguration) Validate() error { 2543 invalidParams := request.ErrInvalidParams{Context: "ExpiryEventsConfiguration"} 2544 if s.DaysBeforeExpiry != nil && *s.DaysBeforeExpiry < 1 { 2545 invalidParams.Add(request.NewErrParamMinValue("DaysBeforeExpiry", 1)) 2546 } 2547 2548 if invalidParams.Len() > 0 { 2549 return invalidParams 2550 } 2551 return nil 2552} 2553 2554// SetDaysBeforeExpiry sets the DaysBeforeExpiry field's value. 2555func (s *ExpiryEventsConfiguration) SetDaysBeforeExpiry(v int64) *ExpiryEventsConfiguration { 2556 s.DaysBeforeExpiry = &v 2557 return s 2558} 2559 2560type ExportCertificateInput struct { 2561 _ struct{} `type:"structure"` 2562 2563 // An Amazon Resource Name (ARN) of the issued certificate. This must be of 2564 // the form: 2565 // 2566 // arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012 2567 // 2568 // CertificateArn is a required field 2569 CertificateArn *string `min:"20" type:"string" required:"true"` 2570 2571 // Passphrase to associate with the encrypted exported private key. If you want 2572 // to later decrypt the private key, you must have the passphrase. You can use 2573 // the following OpenSSL command to decrypt a private key: 2574 // 2575 // openssl rsa -in encrypted_key.pem -out decrypted_key.pem 2576 // 2577 // Passphrase is a sensitive parameter and its value will be 2578 // replaced with "sensitive" in string returned by ExportCertificateInput's 2579 // String and GoString methods. 2580 // 2581 // Passphrase is automatically base64 encoded/decoded by the SDK. 2582 // 2583 // Passphrase is a required field 2584 Passphrase []byte `min:"4" type:"blob" required:"true" sensitive:"true"` 2585} 2586 2587// String returns the string representation. 2588// 2589// API parameter values that are decorated as "sensitive" in the API will not 2590// be included in the string output. The member name will be present, but the 2591// value will be replaced with "sensitive". 2592func (s ExportCertificateInput) String() string { 2593 return awsutil.Prettify(s) 2594} 2595 2596// GoString returns the string representation. 2597// 2598// API parameter values that are decorated as "sensitive" in the API will not 2599// be included in the string output. The member name will be present, but the 2600// value will be replaced with "sensitive". 2601func (s ExportCertificateInput) GoString() string { 2602 return s.String() 2603} 2604 2605// Validate inspects the fields of the type to determine if they are valid. 2606func (s *ExportCertificateInput) Validate() error { 2607 invalidParams := request.ErrInvalidParams{Context: "ExportCertificateInput"} 2608 if s.CertificateArn == nil { 2609 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 2610 } 2611 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 2612 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 2613 } 2614 if s.Passphrase == nil { 2615 invalidParams.Add(request.NewErrParamRequired("Passphrase")) 2616 } 2617 if s.Passphrase != nil && len(s.Passphrase) < 4 { 2618 invalidParams.Add(request.NewErrParamMinLen("Passphrase", 4)) 2619 } 2620 2621 if invalidParams.Len() > 0 { 2622 return invalidParams 2623 } 2624 return nil 2625} 2626 2627// SetCertificateArn sets the CertificateArn field's value. 2628func (s *ExportCertificateInput) SetCertificateArn(v string) *ExportCertificateInput { 2629 s.CertificateArn = &v 2630 return s 2631} 2632 2633// SetPassphrase sets the Passphrase field's value. 2634func (s *ExportCertificateInput) SetPassphrase(v []byte) *ExportCertificateInput { 2635 s.Passphrase = v 2636 return s 2637} 2638 2639type ExportCertificateOutput struct { 2640 _ struct{} `type:"structure"` 2641 2642 // The base64 PEM-encoded certificate. 2643 Certificate *string `min:"1" type:"string"` 2644 2645 // The base64 PEM-encoded certificate chain. This does not include the certificate 2646 // that you are exporting. 2647 CertificateChain *string `min:"1" type:"string"` 2648 2649 // The encrypted private key associated with the public key in the certificate. 2650 // The key is output in PKCS #8 format and is base64 PEM-encoded. 2651 // 2652 // PrivateKey is a sensitive parameter and its value will be 2653 // replaced with "sensitive" in string returned by ExportCertificateOutput's 2654 // String and GoString methods. 2655 PrivateKey *string `min:"1" type:"string" sensitive:"true"` 2656} 2657 2658// String returns the string representation. 2659// 2660// API parameter values that are decorated as "sensitive" in the API will not 2661// be included in the string output. The member name will be present, but the 2662// value will be replaced with "sensitive". 2663func (s ExportCertificateOutput) String() string { 2664 return awsutil.Prettify(s) 2665} 2666 2667// GoString returns the string representation. 2668// 2669// API parameter values that are decorated as "sensitive" in the API will not 2670// be included in the string output. The member name will be present, but the 2671// value will be replaced with "sensitive". 2672func (s ExportCertificateOutput) GoString() string { 2673 return s.String() 2674} 2675 2676// SetCertificate sets the Certificate field's value. 2677func (s *ExportCertificateOutput) SetCertificate(v string) *ExportCertificateOutput { 2678 s.Certificate = &v 2679 return s 2680} 2681 2682// SetCertificateChain sets the CertificateChain field's value. 2683func (s *ExportCertificateOutput) SetCertificateChain(v string) *ExportCertificateOutput { 2684 s.CertificateChain = &v 2685 return s 2686} 2687 2688// SetPrivateKey sets the PrivateKey field's value. 2689func (s *ExportCertificateOutput) SetPrivateKey(v string) *ExportCertificateOutput { 2690 s.PrivateKey = &v 2691 return s 2692} 2693 2694// The Extended Key Usage X.509 v3 extension defines one or more purposes for 2695// which the public key can be used. This is in addition to or in place of the 2696// basic purposes specified by the Key Usage extension. 2697type ExtendedKeyUsage struct { 2698 _ struct{} `type:"structure"` 2699 2700 // The name of an Extended Key Usage value. 2701 Name *string `type:"string" enum:"ExtendedKeyUsageName"` 2702 2703 // An object identifier (OID) for the extension value. OIDs are strings of numbers 2704 // separated by periods. The following OIDs are defined in RFC 3280 and RFC 2705 // 5280. 2706 // 2707 // * 1.3.6.1.5.5.7.3.1 (TLS_WEB_SERVER_AUTHENTICATION) 2708 // 2709 // * 1.3.6.1.5.5.7.3.2 (TLS_WEB_CLIENT_AUTHENTICATION) 2710 // 2711 // * 1.3.6.1.5.5.7.3.3 (CODE_SIGNING) 2712 // 2713 // * 1.3.6.1.5.5.7.3.4 (EMAIL_PROTECTION) 2714 // 2715 // * 1.3.6.1.5.5.7.3.8 (TIME_STAMPING) 2716 // 2717 // * 1.3.6.1.5.5.7.3.9 (OCSP_SIGNING) 2718 // 2719 // * 1.3.6.1.5.5.7.3.5 (IPSEC_END_SYSTEM) 2720 // 2721 // * 1.3.6.1.5.5.7.3.6 (IPSEC_TUNNEL) 2722 // 2723 // * 1.3.6.1.5.5.7.3.7 (IPSEC_USER) 2724 OID *string `type:"string"` 2725} 2726 2727// String returns the string representation. 2728// 2729// API parameter values that are decorated as "sensitive" in the API will not 2730// be included in the string output. The member name will be present, but the 2731// value will be replaced with "sensitive". 2732func (s ExtendedKeyUsage) String() string { 2733 return awsutil.Prettify(s) 2734} 2735 2736// GoString returns the string representation. 2737// 2738// API parameter values that are decorated as "sensitive" in the API will not 2739// be included in the string output. The member name will be present, but the 2740// value will be replaced with "sensitive". 2741func (s ExtendedKeyUsage) GoString() string { 2742 return s.String() 2743} 2744 2745// SetName sets the Name field's value. 2746func (s *ExtendedKeyUsage) SetName(v string) *ExtendedKeyUsage { 2747 s.Name = &v 2748 return s 2749} 2750 2751// SetOID sets the OID field's value. 2752func (s *ExtendedKeyUsage) SetOID(v string) *ExtendedKeyUsage { 2753 s.OID = &v 2754 return s 2755} 2756 2757// This structure can be used in the ListCertificates action to filter the output 2758// of the certificate list. 2759type Filters struct { 2760 _ struct{} `type:"structure"` 2761 2762 // Specify one or more ExtendedKeyUsage extension values. 2763 ExtendedKeyUsage []*string `locationName:"extendedKeyUsage" type:"list"` 2764 2765 // Specify one or more algorithms that can be used to generate key pairs. 2766 // 2767 // Default filtering returns only RSA_1024 and RSA_2048 certificates that have 2768 // at least one domain. To return other certificate types, provide the desired 2769 // type signatures in a comma-separated list. For example, "keyTypes": ["RSA_2048,RSA_4096"] 2770 // returns both RSA_2048 and RSA_4096 certificates. 2771 KeyTypes []*string `locationName:"keyTypes" type:"list"` 2772 2773 // Specify one or more KeyUsage extension values. 2774 KeyUsage []*string `locationName:"keyUsage" type:"list"` 2775} 2776 2777// String returns the string representation. 2778// 2779// API parameter values that are decorated as "sensitive" in the API will not 2780// be included in the string output. The member name will be present, but the 2781// value will be replaced with "sensitive". 2782func (s Filters) String() string { 2783 return awsutil.Prettify(s) 2784} 2785 2786// GoString returns the string representation. 2787// 2788// API parameter values that are decorated as "sensitive" in the API will not 2789// be included in the string output. The member name will be present, but the 2790// value will be replaced with "sensitive". 2791func (s Filters) GoString() string { 2792 return s.String() 2793} 2794 2795// SetExtendedKeyUsage sets the ExtendedKeyUsage field's value. 2796func (s *Filters) SetExtendedKeyUsage(v []*string) *Filters { 2797 s.ExtendedKeyUsage = v 2798 return s 2799} 2800 2801// SetKeyTypes sets the KeyTypes field's value. 2802func (s *Filters) SetKeyTypes(v []*string) *Filters { 2803 s.KeyTypes = v 2804 return s 2805} 2806 2807// SetKeyUsage sets the KeyUsage field's value. 2808func (s *Filters) SetKeyUsage(v []*string) *Filters { 2809 s.KeyUsage = v 2810 return s 2811} 2812 2813type GetAccountConfigurationInput struct { 2814 _ struct{} `type:"structure"` 2815} 2816 2817// String returns the string representation. 2818// 2819// API parameter values that are decorated as "sensitive" in the API will not 2820// be included in the string output. The member name will be present, but the 2821// value will be replaced with "sensitive". 2822func (s GetAccountConfigurationInput) String() string { 2823 return awsutil.Prettify(s) 2824} 2825 2826// GoString returns the string representation. 2827// 2828// API parameter values that are decorated as "sensitive" in the API will not 2829// be included in the string output. The member name will be present, but the 2830// value will be replaced with "sensitive". 2831func (s GetAccountConfigurationInput) GoString() string { 2832 return s.String() 2833} 2834 2835type GetAccountConfigurationOutput struct { 2836 _ struct{} `type:"structure"` 2837 2838 // Expiration events configuration options associated with the Amazon Web Services 2839 // account. 2840 ExpiryEvents *ExpiryEventsConfiguration `type:"structure"` 2841} 2842 2843// String returns the string representation. 2844// 2845// API parameter values that are decorated as "sensitive" in the API will not 2846// be included in the string output. The member name will be present, but the 2847// value will be replaced with "sensitive". 2848func (s GetAccountConfigurationOutput) String() string { 2849 return awsutil.Prettify(s) 2850} 2851 2852// GoString returns the string representation. 2853// 2854// API parameter values that are decorated as "sensitive" in the API will not 2855// be included in the string output. The member name will be present, but the 2856// value will be replaced with "sensitive". 2857func (s GetAccountConfigurationOutput) GoString() string { 2858 return s.String() 2859} 2860 2861// SetExpiryEvents sets the ExpiryEvents field's value. 2862func (s *GetAccountConfigurationOutput) SetExpiryEvents(v *ExpiryEventsConfiguration) *GetAccountConfigurationOutput { 2863 s.ExpiryEvents = v 2864 return s 2865} 2866 2867type GetCertificateInput struct { 2868 _ struct{} `type:"structure"` 2869 2870 // String that contains a certificate ARN in the following format: 2871 // 2872 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 2873 // 2874 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 2875 // 2876 // CertificateArn is a required field 2877 CertificateArn *string `min:"20" type:"string" required:"true"` 2878} 2879 2880// String returns the string representation. 2881// 2882// API parameter values that are decorated as "sensitive" in the API will not 2883// be included in the string output. The member name will be present, but the 2884// value will be replaced with "sensitive". 2885func (s GetCertificateInput) String() string { 2886 return awsutil.Prettify(s) 2887} 2888 2889// GoString returns the string representation. 2890// 2891// API parameter values that are decorated as "sensitive" in the API will not 2892// be included in the string output. The member name will be present, but the 2893// value will be replaced with "sensitive". 2894func (s GetCertificateInput) GoString() string { 2895 return s.String() 2896} 2897 2898// Validate inspects the fields of the type to determine if they are valid. 2899func (s *GetCertificateInput) Validate() error { 2900 invalidParams := request.ErrInvalidParams{Context: "GetCertificateInput"} 2901 if s.CertificateArn == nil { 2902 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 2903 } 2904 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 2905 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 2906 } 2907 2908 if invalidParams.Len() > 0 { 2909 return invalidParams 2910 } 2911 return nil 2912} 2913 2914// SetCertificateArn sets the CertificateArn field's value. 2915func (s *GetCertificateInput) SetCertificateArn(v string) *GetCertificateInput { 2916 s.CertificateArn = &v 2917 return s 2918} 2919 2920type GetCertificateOutput struct { 2921 _ struct{} `type:"structure"` 2922 2923 // The ACM-issued certificate corresponding to the ARN specified as input. 2924 Certificate *string `min:"1" type:"string"` 2925 2926 // Certificates forming the requested certificate's chain of trust. The chain 2927 // consists of the certificate of the issuing CA and the intermediate certificates 2928 // of any other subordinate CAs. 2929 CertificateChain *string `min:"1" type:"string"` 2930} 2931 2932// String returns the string representation. 2933// 2934// API parameter values that are decorated as "sensitive" in the API will not 2935// be included in the string output. The member name will be present, but the 2936// value will be replaced with "sensitive". 2937func (s GetCertificateOutput) String() string { 2938 return awsutil.Prettify(s) 2939} 2940 2941// GoString returns the string representation. 2942// 2943// API parameter values that are decorated as "sensitive" in the API will not 2944// be included in the string output. The member name will be present, but the 2945// value will be replaced with "sensitive". 2946func (s GetCertificateOutput) GoString() string { 2947 return s.String() 2948} 2949 2950// SetCertificate sets the Certificate field's value. 2951func (s *GetCertificateOutput) SetCertificate(v string) *GetCertificateOutput { 2952 s.Certificate = &v 2953 return s 2954} 2955 2956// SetCertificateChain sets the CertificateChain field's value. 2957func (s *GetCertificateOutput) SetCertificateChain(v string) *GetCertificateOutput { 2958 s.CertificateChain = &v 2959 return s 2960} 2961 2962type ImportCertificateInput struct { 2963 _ struct{} `type:"structure"` 2964 2965 // The certificate to import. 2966 // Certificate is automatically base64 encoded/decoded by the SDK. 2967 // 2968 // Certificate is a required field 2969 Certificate []byte `min:"1" type:"blob" required:"true"` 2970 2971 // The Amazon Resource Name (ARN) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) 2972 // of an imported certificate to replace. To import a new certificate, omit 2973 // this field. 2974 CertificateArn *string `min:"20" type:"string"` 2975 2976 // The PEM encoded certificate chain. 2977 // CertificateChain is automatically base64 encoded/decoded by the SDK. 2978 CertificateChain []byte `min:"1" type:"blob"` 2979 2980 // The private key that matches the public key in the certificate. 2981 // 2982 // PrivateKey is a sensitive parameter and its value will be 2983 // replaced with "sensitive" in string returned by ImportCertificateInput's 2984 // String and GoString methods. 2985 // 2986 // PrivateKey is automatically base64 encoded/decoded by the SDK. 2987 // 2988 // PrivateKey is a required field 2989 PrivateKey []byte `min:"1" type:"blob" required:"true" sensitive:"true"` 2990 2991 // One or more resource tags to associate with the imported certificate. 2992 // 2993 // Note: You cannot apply tags when reimporting a certificate. 2994 Tags []*Tag `min:"1" type:"list"` 2995} 2996 2997// String returns the string representation. 2998// 2999// API parameter values that are decorated as "sensitive" in the API will not 3000// be included in the string output. The member name will be present, but the 3001// value will be replaced with "sensitive". 3002func (s ImportCertificateInput) String() string { 3003 return awsutil.Prettify(s) 3004} 3005 3006// GoString returns the string representation. 3007// 3008// API parameter values that are decorated as "sensitive" in the API will not 3009// be included in the string output. The member name will be present, but the 3010// value will be replaced with "sensitive". 3011func (s ImportCertificateInput) GoString() string { 3012 return s.String() 3013} 3014 3015// Validate inspects the fields of the type to determine if they are valid. 3016func (s *ImportCertificateInput) Validate() error { 3017 invalidParams := request.ErrInvalidParams{Context: "ImportCertificateInput"} 3018 if s.Certificate == nil { 3019 invalidParams.Add(request.NewErrParamRequired("Certificate")) 3020 } 3021 if s.Certificate != nil && len(s.Certificate) < 1 { 3022 invalidParams.Add(request.NewErrParamMinLen("Certificate", 1)) 3023 } 3024 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 3025 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 3026 } 3027 if s.CertificateChain != nil && len(s.CertificateChain) < 1 { 3028 invalidParams.Add(request.NewErrParamMinLen("CertificateChain", 1)) 3029 } 3030 if s.PrivateKey == nil { 3031 invalidParams.Add(request.NewErrParamRequired("PrivateKey")) 3032 } 3033 if s.PrivateKey != nil && len(s.PrivateKey) < 1 { 3034 invalidParams.Add(request.NewErrParamMinLen("PrivateKey", 1)) 3035 } 3036 if s.Tags != nil && len(s.Tags) < 1 { 3037 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 3038 } 3039 if s.Tags != nil { 3040 for i, v := range s.Tags { 3041 if v == nil { 3042 continue 3043 } 3044 if err := v.Validate(); err != nil { 3045 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3046 } 3047 } 3048 } 3049 3050 if invalidParams.Len() > 0 { 3051 return invalidParams 3052 } 3053 return nil 3054} 3055 3056// SetCertificate sets the Certificate field's value. 3057func (s *ImportCertificateInput) SetCertificate(v []byte) *ImportCertificateInput { 3058 s.Certificate = v 3059 return s 3060} 3061 3062// SetCertificateArn sets the CertificateArn field's value. 3063func (s *ImportCertificateInput) SetCertificateArn(v string) *ImportCertificateInput { 3064 s.CertificateArn = &v 3065 return s 3066} 3067 3068// SetCertificateChain sets the CertificateChain field's value. 3069func (s *ImportCertificateInput) SetCertificateChain(v []byte) *ImportCertificateInput { 3070 s.CertificateChain = v 3071 return s 3072} 3073 3074// SetPrivateKey sets the PrivateKey field's value. 3075func (s *ImportCertificateInput) SetPrivateKey(v []byte) *ImportCertificateInput { 3076 s.PrivateKey = v 3077 return s 3078} 3079 3080// SetTags sets the Tags field's value. 3081func (s *ImportCertificateInput) SetTags(v []*Tag) *ImportCertificateInput { 3082 s.Tags = v 3083 return s 3084} 3085 3086type ImportCertificateOutput struct { 3087 _ struct{} `type:"structure"` 3088 3089 // The Amazon Resource Name (ARN) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) 3090 // of the imported certificate. 3091 CertificateArn *string `min:"20" type:"string"` 3092} 3093 3094// String returns the string representation. 3095// 3096// API parameter values that are decorated as "sensitive" in the API will not 3097// be included in the string output. The member name will be present, but the 3098// value will be replaced with "sensitive". 3099func (s ImportCertificateOutput) String() string { 3100 return awsutil.Prettify(s) 3101} 3102 3103// GoString returns the string representation. 3104// 3105// API parameter values that are decorated as "sensitive" in the API will not 3106// be included in the string output. The member name will be present, but the 3107// value will be replaced with "sensitive". 3108func (s ImportCertificateOutput) GoString() string { 3109 return s.String() 3110} 3111 3112// SetCertificateArn sets the CertificateArn field's value. 3113func (s *ImportCertificateOutput) SetCertificateArn(v string) *ImportCertificateOutput { 3114 s.CertificateArn = &v 3115 return s 3116} 3117 3118// One or more of of request parameters specified is not valid. 3119type InvalidArgsException struct { 3120 _ struct{} `type:"structure"` 3121 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3122 3123 Message_ *string `locationName:"message" type:"string"` 3124} 3125 3126// String returns the string representation. 3127// 3128// API parameter values that are decorated as "sensitive" in the API will not 3129// be included in the string output. The member name will be present, but the 3130// value will be replaced with "sensitive". 3131func (s InvalidArgsException) String() string { 3132 return awsutil.Prettify(s) 3133} 3134 3135// GoString returns the string representation. 3136// 3137// API parameter values that are decorated as "sensitive" in the API will not 3138// be included in the string output. The member name will be present, but the 3139// value will be replaced with "sensitive". 3140func (s InvalidArgsException) GoString() string { 3141 return s.String() 3142} 3143 3144func newErrorInvalidArgsException(v protocol.ResponseMetadata) error { 3145 return &InvalidArgsException{ 3146 RespMetadata: v, 3147 } 3148} 3149 3150// Code returns the exception type name. 3151func (s *InvalidArgsException) Code() string { 3152 return "InvalidArgsException" 3153} 3154 3155// Message returns the exception's message. 3156func (s *InvalidArgsException) Message() string { 3157 if s.Message_ != nil { 3158 return *s.Message_ 3159 } 3160 return "" 3161} 3162 3163// OrigErr always returns nil, satisfies awserr.Error interface. 3164func (s *InvalidArgsException) OrigErr() error { 3165 return nil 3166} 3167 3168func (s *InvalidArgsException) Error() string { 3169 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3170} 3171 3172// Status code returns the HTTP status code for the request's response error. 3173func (s *InvalidArgsException) StatusCode() int { 3174 return s.RespMetadata.StatusCode 3175} 3176 3177// RequestID returns the service's response RequestID for request. 3178func (s *InvalidArgsException) RequestID() string { 3179 return s.RespMetadata.RequestID 3180} 3181 3182// The requested Amazon Resource Name (ARN) does not refer to an existing resource. 3183type InvalidArnException struct { 3184 _ struct{} `type:"structure"` 3185 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3186 3187 Message_ *string `locationName:"message" type:"string"` 3188} 3189 3190// String returns the string representation. 3191// 3192// API parameter values that are decorated as "sensitive" in the API will not 3193// be included in the string output. The member name will be present, but the 3194// value will be replaced with "sensitive". 3195func (s InvalidArnException) String() string { 3196 return awsutil.Prettify(s) 3197} 3198 3199// GoString returns the string representation. 3200// 3201// API parameter values that are decorated as "sensitive" in the API will not 3202// be included in the string output. The member name will be present, but the 3203// value will be replaced with "sensitive". 3204func (s InvalidArnException) GoString() string { 3205 return s.String() 3206} 3207 3208func newErrorInvalidArnException(v protocol.ResponseMetadata) error { 3209 return &InvalidArnException{ 3210 RespMetadata: v, 3211 } 3212} 3213 3214// Code returns the exception type name. 3215func (s *InvalidArnException) Code() string { 3216 return "InvalidArnException" 3217} 3218 3219// Message returns the exception's message. 3220func (s *InvalidArnException) Message() string { 3221 if s.Message_ != nil { 3222 return *s.Message_ 3223 } 3224 return "" 3225} 3226 3227// OrigErr always returns nil, satisfies awserr.Error interface. 3228func (s *InvalidArnException) OrigErr() error { 3229 return nil 3230} 3231 3232func (s *InvalidArnException) Error() string { 3233 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3234} 3235 3236// Status code returns the HTTP status code for the request's response error. 3237func (s *InvalidArnException) StatusCode() int { 3238 return s.RespMetadata.StatusCode 3239} 3240 3241// RequestID returns the service's response RequestID for request. 3242func (s *InvalidArnException) RequestID() string { 3243 return s.RespMetadata.RequestID 3244} 3245 3246// One or more values in the DomainValidationOption structure is incorrect. 3247type InvalidDomainValidationOptionsException struct { 3248 _ struct{} `type:"structure"` 3249 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3250 3251 Message_ *string `locationName:"message" type:"string"` 3252} 3253 3254// String returns the string representation. 3255// 3256// API parameter values that are decorated as "sensitive" in the API will not 3257// be included in the string output. The member name will be present, but the 3258// value will be replaced with "sensitive". 3259func (s InvalidDomainValidationOptionsException) String() string { 3260 return awsutil.Prettify(s) 3261} 3262 3263// GoString returns the string representation. 3264// 3265// API parameter values that are decorated as "sensitive" in the API will not 3266// be included in the string output. The member name will be present, but the 3267// value will be replaced with "sensitive". 3268func (s InvalidDomainValidationOptionsException) GoString() string { 3269 return s.String() 3270} 3271 3272func newErrorInvalidDomainValidationOptionsException(v protocol.ResponseMetadata) error { 3273 return &InvalidDomainValidationOptionsException{ 3274 RespMetadata: v, 3275 } 3276} 3277 3278// Code returns the exception type name. 3279func (s *InvalidDomainValidationOptionsException) Code() string { 3280 return "InvalidDomainValidationOptionsException" 3281} 3282 3283// Message returns the exception's message. 3284func (s *InvalidDomainValidationOptionsException) Message() string { 3285 if s.Message_ != nil { 3286 return *s.Message_ 3287 } 3288 return "" 3289} 3290 3291// OrigErr always returns nil, satisfies awserr.Error interface. 3292func (s *InvalidDomainValidationOptionsException) OrigErr() error { 3293 return nil 3294} 3295 3296func (s *InvalidDomainValidationOptionsException) Error() string { 3297 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3298} 3299 3300// Status code returns the HTTP status code for the request's response error. 3301func (s *InvalidDomainValidationOptionsException) StatusCode() int { 3302 return s.RespMetadata.StatusCode 3303} 3304 3305// RequestID returns the service's response RequestID for request. 3306func (s *InvalidDomainValidationOptionsException) RequestID() string { 3307 return s.RespMetadata.RequestID 3308} 3309 3310// An input parameter was invalid. 3311type InvalidParameterException struct { 3312 _ struct{} `type:"structure"` 3313 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3314 3315 Message_ *string `locationName:"message" type:"string"` 3316} 3317 3318// String returns the string representation. 3319// 3320// API parameter values that are decorated as "sensitive" in the API will not 3321// be included in the string output. The member name will be present, but the 3322// value will be replaced with "sensitive". 3323func (s InvalidParameterException) String() string { 3324 return awsutil.Prettify(s) 3325} 3326 3327// GoString returns the string representation. 3328// 3329// API parameter values that are decorated as "sensitive" in the API will not 3330// be included in the string output. The member name will be present, but the 3331// value will be replaced with "sensitive". 3332func (s InvalidParameterException) GoString() string { 3333 return s.String() 3334} 3335 3336func newErrorInvalidParameterException(v protocol.ResponseMetadata) error { 3337 return &InvalidParameterException{ 3338 RespMetadata: v, 3339 } 3340} 3341 3342// Code returns the exception type name. 3343func (s *InvalidParameterException) Code() string { 3344 return "InvalidParameterException" 3345} 3346 3347// Message returns the exception's message. 3348func (s *InvalidParameterException) Message() string { 3349 if s.Message_ != nil { 3350 return *s.Message_ 3351 } 3352 return "" 3353} 3354 3355// OrigErr always returns nil, satisfies awserr.Error interface. 3356func (s *InvalidParameterException) OrigErr() error { 3357 return nil 3358} 3359 3360func (s *InvalidParameterException) Error() string { 3361 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3362} 3363 3364// Status code returns the HTTP status code for the request's response error. 3365func (s *InvalidParameterException) StatusCode() int { 3366 return s.RespMetadata.StatusCode 3367} 3368 3369// RequestID returns the service's response RequestID for request. 3370func (s *InvalidParameterException) RequestID() string { 3371 return s.RespMetadata.RequestID 3372} 3373 3374// Processing has reached an invalid state. 3375type InvalidStateException struct { 3376 _ struct{} `type:"structure"` 3377 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3378 3379 Message_ *string `locationName:"message" type:"string"` 3380} 3381 3382// String returns the string representation. 3383// 3384// API parameter values that are decorated as "sensitive" in the API will not 3385// be included in the string output. The member name will be present, but the 3386// value will be replaced with "sensitive". 3387func (s InvalidStateException) String() string { 3388 return awsutil.Prettify(s) 3389} 3390 3391// GoString returns the string representation. 3392// 3393// API parameter values that are decorated as "sensitive" in the API will not 3394// be included in the string output. The member name will be present, but the 3395// value will be replaced with "sensitive". 3396func (s InvalidStateException) GoString() string { 3397 return s.String() 3398} 3399 3400func newErrorInvalidStateException(v protocol.ResponseMetadata) error { 3401 return &InvalidStateException{ 3402 RespMetadata: v, 3403 } 3404} 3405 3406// Code returns the exception type name. 3407func (s *InvalidStateException) Code() string { 3408 return "InvalidStateException" 3409} 3410 3411// Message returns the exception's message. 3412func (s *InvalidStateException) Message() string { 3413 if s.Message_ != nil { 3414 return *s.Message_ 3415 } 3416 return "" 3417} 3418 3419// OrigErr always returns nil, satisfies awserr.Error interface. 3420func (s *InvalidStateException) OrigErr() error { 3421 return nil 3422} 3423 3424func (s *InvalidStateException) Error() string { 3425 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3426} 3427 3428// Status code returns the HTTP status code for the request's response error. 3429func (s *InvalidStateException) StatusCode() int { 3430 return s.RespMetadata.StatusCode 3431} 3432 3433// RequestID returns the service's response RequestID for request. 3434func (s *InvalidStateException) RequestID() string { 3435 return s.RespMetadata.RequestID 3436} 3437 3438// One or both of the values that make up the key-value pair is not valid. For 3439// example, you cannot specify a tag value that begins with aws:. 3440type InvalidTagException struct { 3441 _ struct{} `type:"structure"` 3442 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3443 3444 Message_ *string `locationName:"message" type:"string"` 3445} 3446 3447// String returns the string representation. 3448// 3449// API parameter values that are decorated as "sensitive" in the API will not 3450// be included in the string output. The member name will be present, but the 3451// value will be replaced with "sensitive". 3452func (s InvalidTagException) String() string { 3453 return awsutil.Prettify(s) 3454} 3455 3456// GoString returns the string representation. 3457// 3458// API parameter values that are decorated as "sensitive" in the API will not 3459// be included in the string output. The member name will be present, but the 3460// value will be replaced with "sensitive". 3461func (s InvalidTagException) GoString() string { 3462 return s.String() 3463} 3464 3465func newErrorInvalidTagException(v protocol.ResponseMetadata) error { 3466 return &InvalidTagException{ 3467 RespMetadata: v, 3468 } 3469} 3470 3471// Code returns the exception type name. 3472func (s *InvalidTagException) Code() string { 3473 return "InvalidTagException" 3474} 3475 3476// Message returns the exception's message. 3477func (s *InvalidTagException) Message() string { 3478 if s.Message_ != nil { 3479 return *s.Message_ 3480 } 3481 return "" 3482} 3483 3484// OrigErr always returns nil, satisfies awserr.Error interface. 3485func (s *InvalidTagException) OrigErr() error { 3486 return nil 3487} 3488 3489func (s *InvalidTagException) Error() string { 3490 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3491} 3492 3493// Status code returns the HTTP status code for the request's response error. 3494func (s *InvalidTagException) StatusCode() int { 3495 return s.RespMetadata.StatusCode 3496} 3497 3498// RequestID returns the service's response RequestID for request. 3499func (s *InvalidTagException) RequestID() string { 3500 return s.RespMetadata.RequestID 3501} 3502 3503// The Key Usage X.509 v3 extension defines the purpose of the public key contained 3504// in the certificate. 3505type KeyUsage struct { 3506 _ struct{} `type:"structure"` 3507 3508 // A string value that contains a Key Usage extension name. 3509 Name *string `type:"string" enum:"KeyUsageName"` 3510} 3511 3512// String returns the string representation. 3513// 3514// API parameter values that are decorated as "sensitive" in the API will not 3515// be included in the string output. The member name will be present, but the 3516// value will be replaced with "sensitive". 3517func (s KeyUsage) String() string { 3518 return awsutil.Prettify(s) 3519} 3520 3521// GoString returns the string representation. 3522// 3523// API parameter values that are decorated as "sensitive" in the API will not 3524// be included in the string output. The member name will be present, but the 3525// value will be replaced with "sensitive". 3526func (s KeyUsage) GoString() string { 3527 return s.String() 3528} 3529 3530// SetName sets the Name field's value. 3531func (s *KeyUsage) SetName(v string) *KeyUsage { 3532 s.Name = &v 3533 return s 3534} 3535 3536// An ACM quota has been exceeded. 3537type LimitExceededException struct { 3538 _ struct{} `type:"structure"` 3539 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3540 3541 Message_ *string `locationName:"message" type:"string"` 3542} 3543 3544// String returns the string representation. 3545// 3546// API parameter values that are decorated as "sensitive" in the API will not 3547// be included in the string output. The member name will be present, but the 3548// value will be replaced with "sensitive". 3549func (s LimitExceededException) String() string { 3550 return awsutil.Prettify(s) 3551} 3552 3553// GoString returns the string representation. 3554// 3555// API parameter values that are decorated as "sensitive" in the API will not 3556// be included in the string output. The member name will be present, but the 3557// value will be replaced with "sensitive". 3558func (s LimitExceededException) GoString() string { 3559 return s.String() 3560} 3561 3562func newErrorLimitExceededException(v protocol.ResponseMetadata) error { 3563 return &LimitExceededException{ 3564 RespMetadata: v, 3565 } 3566} 3567 3568// Code returns the exception type name. 3569func (s *LimitExceededException) Code() string { 3570 return "LimitExceededException" 3571} 3572 3573// Message returns the exception's message. 3574func (s *LimitExceededException) Message() string { 3575 if s.Message_ != nil { 3576 return *s.Message_ 3577 } 3578 return "" 3579} 3580 3581// OrigErr always returns nil, satisfies awserr.Error interface. 3582func (s *LimitExceededException) OrigErr() error { 3583 return nil 3584} 3585 3586func (s *LimitExceededException) Error() string { 3587 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3588} 3589 3590// Status code returns the HTTP status code for the request's response error. 3591func (s *LimitExceededException) StatusCode() int { 3592 return s.RespMetadata.StatusCode 3593} 3594 3595// RequestID returns the service's response RequestID for request. 3596func (s *LimitExceededException) RequestID() string { 3597 return s.RespMetadata.RequestID 3598} 3599 3600type ListCertificatesInput struct { 3601 _ struct{} `type:"structure"` 3602 3603 // Filter the certificate list by status value. 3604 CertificateStatuses []*string `type:"list"` 3605 3606 // Filter the certificate list. For more information, see the Filters structure. 3607 Includes *Filters `type:"structure"` 3608 3609 // Use this parameter when paginating results to specify the maximum number 3610 // of items to return in the response. If additional items exist beyond the 3611 // number you specify, the NextToken element is sent in the response. Use this 3612 // NextToken value in a subsequent request to retrieve additional items. 3613 MaxItems *int64 `min:"1" type:"integer"` 3614 3615 // Use this parameter only when paginating results and only in a subsequent 3616 // request after you receive a response with truncated results. Set it to the 3617 // value of NextToken from the response you just received. 3618 NextToken *string `min:"1" type:"string"` 3619} 3620 3621// String returns the string representation. 3622// 3623// API parameter values that are decorated as "sensitive" in the API will not 3624// be included in the string output. The member name will be present, but the 3625// value will be replaced with "sensitive". 3626func (s ListCertificatesInput) String() string { 3627 return awsutil.Prettify(s) 3628} 3629 3630// GoString returns the string representation. 3631// 3632// API parameter values that are decorated as "sensitive" in the API will not 3633// be included in the string output. The member name will be present, but the 3634// value will be replaced with "sensitive". 3635func (s ListCertificatesInput) GoString() string { 3636 return s.String() 3637} 3638 3639// Validate inspects the fields of the type to determine if they are valid. 3640func (s *ListCertificatesInput) Validate() error { 3641 invalidParams := request.ErrInvalidParams{Context: "ListCertificatesInput"} 3642 if s.MaxItems != nil && *s.MaxItems < 1 { 3643 invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1)) 3644 } 3645 if s.NextToken != nil && len(*s.NextToken) < 1 { 3646 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 3647 } 3648 3649 if invalidParams.Len() > 0 { 3650 return invalidParams 3651 } 3652 return nil 3653} 3654 3655// SetCertificateStatuses sets the CertificateStatuses field's value. 3656func (s *ListCertificatesInput) SetCertificateStatuses(v []*string) *ListCertificatesInput { 3657 s.CertificateStatuses = v 3658 return s 3659} 3660 3661// SetIncludes sets the Includes field's value. 3662func (s *ListCertificatesInput) SetIncludes(v *Filters) *ListCertificatesInput { 3663 s.Includes = v 3664 return s 3665} 3666 3667// SetMaxItems sets the MaxItems field's value. 3668func (s *ListCertificatesInput) SetMaxItems(v int64) *ListCertificatesInput { 3669 s.MaxItems = &v 3670 return s 3671} 3672 3673// SetNextToken sets the NextToken field's value. 3674func (s *ListCertificatesInput) SetNextToken(v string) *ListCertificatesInput { 3675 s.NextToken = &v 3676 return s 3677} 3678 3679type ListCertificatesOutput struct { 3680 _ struct{} `type:"structure"` 3681 3682 // A list of ACM certificates. 3683 CertificateSummaryList []*CertificateSummary `type:"list"` 3684 3685 // When the list is truncated, this value is present and contains the value 3686 // to use for the NextToken parameter in a subsequent pagination request. 3687 NextToken *string `min:"1" type:"string"` 3688} 3689 3690// String returns the string representation. 3691// 3692// API parameter values that are decorated as "sensitive" in the API will not 3693// be included in the string output. The member name will be present, but the 3694// value will be replaced with "sensitive". 3695func (s ListCertificatesOutput) String() string { 3696 return awsutil.Prettify(s) 3697} 3698 3699// GoString returns the string representation. 3700// 3701// API parameter values that are decorated as "sensitive" in the API will not 3702// be included in the string output. The member name will be present, but the 3703// value will be replaced with "sensitive". 3704func (s ListCertificatesOutput) GoString() string { 3705 return s.String() 3706} 3707 3708// SetCertificateSummaryList sets the CertificateSummaryList field's value. 3709func (s *ListCertificatesOutput) SetCertificateSummaryList(v []*CertificateSummary) *ListCertificatesOutput { 3710 s.CertificateSummaryList = v 3711 return s 3712} 3713 3714// SetNextToken sets the NextToken field's value. 3715func (s *ListCertificatesOutput) SetNextToken(v string) *ListCertificatesOutput { 3716 s.NextToken = &v 3717 return s 3718} 3719 3720type ListTagsForCertificateInput struct { 3721 _ struct{} `type:"structure"` 3722 3723 // String that contains the ARN of the ACM certificate for which you want to 3724 // list the tags. This must have the following form: 3725 // 3726 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 3727 // 3728 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 3729 // 3730 // CertificateArn is a required field 3731 CertificateArn *string `min:"20" type:"string" required:"true"` 3732} 3733 3734// String returns the string representation. 3735// 3736// API parameter values that are decorated as "sensitive" in the API will not 3737// be included in the string output. The member name will be present, but the 3738// value will be replaced with "sensitive". 3739func (s ListTagsForCertificateInput) String() string { 3740 return awsutil.Prettify(s) 3741} 3742 3743// GoString returns the string representation. 3744// 3745// API parameter values that are decorated as "sensitive" in the API will not 3746// be included in the string output. The member name will be present, but the 3747// value will be replaced with "sensitive". 3748func (s ListTagsForCertificateInput) GoString() string { 3749 return s.String() 3750} 3751 3752// Validate inspects the fields of the type to determine if they are valid. 3753func (s *ListTagsForCertificateInput) Validate() error { 3754 invalidParams := request.ErrInvalidParams{Context: "ListTagsForCertificateInput"} 3755 if s.CertificateArn == nil { 3756 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 3757 } 3758 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 3759 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 3760 } 3761 3762 if invalidParams.Len() > 0 { 3763 return invalidParams 3764 } 3765 return nil 3766} 3767 3768// SetCertificateArn sets the CertificateArn field's value. 3769func (s *ListTagsForCertificateInput) SetCertificateArn(v string) *ListTagsForCertificateInput { 3770 s.CertificateArn = &v 3771 return s 3772} 3773 3774type ListTagsForCertificateOutput struct { 3775 _ struct{} `type:"structure"` 3776 3777 // The key-value pairs that define the applied tags. 3778 Tags []*Tag `min:"1" type:"list"` 3779} 3780 3781// String returns the string representation. 3782// 3783// API parameter values that are decorated as "sensitive" in the API will not 3784// be included in the string output. The member name will be present, but the 3785// value will be replaced with "sensitive". 3786func (s ListTagsForCertificateOutput) String() string { 3787 return awsutil.Prettify(s) 3788} 3789 3790// GoString returns the string representation. 3791// 3792// API parameter values that are decorated as "sensitive" in the API will not 3793// be included in the string output. The member name will be present, but the 3794// value will be replaced with "sensitive". 3795func (s ListTagsForCertificateOutput) GoString() string { 3796 return s.String() 3797} 3798 3799// SetTags sets the Tags field's value. 3800func (s *ListTagsForCertificateOutput) SetTags(v []*Tag) *ListTagsForCertificateOutput { 3801 s.Tags = v 3802 return s 3803} 3804 3805type PutAccountConfigurationInput struct { 3806 _ struct{} `type:"structure"` 3807 3808 // Specifies expiration events associated with an account. 3809 ExpiryEvents *ExpiryEventsConfiguration `type:"structure"` 3810 3811 // Customer-chosen string used to distinguish between calls to PutAccountConfiguration. 3812 // Idempotency tokens time out after one hour. If you call PutAccountConfiguration 3813 // multiple times with the same unexpired idempotency token, ACM treats it as 3814 // the same request and returns the original result. If you change the idempotency 3815 // token for each call, ACM treats each call as a new request. 3816 // 3817 // IdempotencyToken is a required field 3818 IdempotencyToken *string `min:"1" type:"string" required:"true"` 3819} 3820 3821// String returns the string representation. 3822// 3823// API parameter values that are decorated as "sensitive" in the API will not 3824// be included in the string output. The member name will be present, but the 3825// value will be replaced with "sensitive". 3826func (s PutAccountConfigurationInput) String() string { 3827 return awsutil.Prettify(s) 3828} 3829 3830// GoString returns the string representation. 3831// 3832// API parameter values that are decorated as "sensitive" in the API will not 3833// be included in the string output. The member name will be present, but the 3834// value will be replaced with "sensitive". 3835func (s PutAccountConfigurationInput) GoString() string { 3836 return s.String() 3837} 3838 3839// Validate inspects the fields of the type to determine if they are valid. 3840func (s *PutAccountConfigurationInput) Validate() error { 3841 invalidParams := request.ErrInvalidParams{Context: "PutAccountConfigurationInput"} 3842 if s.IdempotencyToken == nil { 3843 invalidParams.Add(request.NewErrParamRequired("IdempotencyToken")) 3844 } 3845 if s.IdempotencyToken != nil && len(*s.IdempotencyToken) < 1 { 3846 invalidParams.Add(request.NewErrParamMinLen("IdempotencyToken", 1)) 3847 } 3848 if s.ExpiryEvents != nil { 3849 if err := s.ExpiryEvents.Validate(); err != nil { 3850 invalidParams.AddNested("ExpiryEvents", err.(request.ErrInvalidParams)) 3851 } 3852 } 3853 3854 if invalidParams.Len() > 0 { 3855 return invalidParams 3856 } 3857 return nil 3858} 3859 3860// SetExpiryEvents sets the ExpiryEvents field's value. 3861func (s *PutAccountConfigurationInput) SetExpiryEvents(v *ExpiryEventsConfiguration) *PutAccountConfigurationInput { 3862 s.ExpiryEvents = v 3863 return s 3864} 3865 3866// SetIdempotencyToken sets the IdempotencyToken field's value. 3867func (s *PutAccountConfigurationInput) SetIdempotencyToken(v string) *PutAccountConfigurationInput { 3868 s.IdempotencyToken = &v 3869 return s 3870} 3871 3872type PutAccountConfigurationOutput struct { 3873 _ struct{} `type:"structure"` 3874} 3875 3876// String returns the string representation. 3877// 3878// API parameter values that are decorated as "sensitive" in the API will not 3879// be included in the string output. The member name will be present, but the 3880// value will be replaced with "sensitive". 3881func (s PutAccountConfigurationOutput) String() string { 3882 return awsutil.Prettify(s) 3883} 3884 3885// GoString returns the string representation. 3886// 3887// API parameter values that are decorated as "sensitive" in the API will not 3888// be included in the string output. The member name will be present, but the 3889// value will be replaced with "sensitive". 3890func (s PutAccountConfigurationOutput) GoString() string { 3891 return s.String() 3892} 3893 3894type RemoveTagsFromCertificateInput struct { 3895 _ struct{} `type:"structure"` 3896 3897 // String that contains the ARN of the ACM Certificate with one or more tags 3898 // that you want to remove. This must be of the form: 3899 // 3900 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 3901 // 3902 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 3903 // 3904 // CertificateArn is a required field 3905 CertificateArn *string `min:"20" type:"string" required:"true"` 3906 3907 // The key-value pair that defines the tag to remove. 3908 // 3909 // Tags is a required field 3910 Tags []*Tag `min:"1" type:"list" required:"true"` 3911} 3912 3913// String returns the string representation. 3914// 3915// API parameter values that are decorated as "sensitive" in the API will not 3916// be included in the string output. The member name will be present, but the 3917// value will be replaced with "sensitive". 3918func (s RemoveTagsFromCertificateInput) String() string { 3919 return awsutil.Prettify(s) 3920} 3921 3922// GoString returns the string representation. 3923// 3924// API parameter values that are decorated as "sensitive" in the API will not 3925// be included in the string output. The member name will be present, but the 3926// value will be replaced with "sensitive". 3927func (s RemoveTagsFromCertificateInput) GoString() string { 3928 return s.String() 3929} 3930 3931// Validate inspects the fields of the type to determine if they are valid. 3932func (s *RemoveTagsFromCertificateInput) Validate() error { 3933 invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromCertificateInput"} 3934 if s.CertificateArn == nil { 3935 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 3936 } 3937 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 3938 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 3939 } 3940 if s.Tags == nil { 3941 invalidParams.Add(request.NewErrParamRequired("Tags")) 3942 } 3943 if s.Tags != nil && len(s.Tags) < 1 { 3944 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 3945 } 3946 if s.Tags != nil { 3947 for i, v := range s.Tags { 3948 if v == nil { 3949 continue 3950 } 3951 if err := v.Validate(); err != nil { 3952 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 3953 } 3954 } 3955 } 3956 3957 if invalidParams.Len() > 0 { 3958 return invalidParams 3959 } 3960 return nil 3961} 3962 3963// SetCertificateArn sets the CertificateArn field's value. 3964func (s *RemoveTagsFromCertificateInput) SetCertificateArn(v string) *RemoveTagsFromCertificateInput { 3965 s.CertificateArn = &v 3966 return s 3967} 3968 3969// SetTags sets the Tags field's value. 3970func (s *RemoveTagsFromCertificateInput) SetTags(v []*Tag) *RemoveTagsFromCertificateInput { 3971 s.Tags = v 3972 return s 3973} 3974 3975type RemoveTagsFromCertificateOutput struct { 3976 _ struct{} `type:"structure"` 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". 3984func (s RemoveTagsFromCertificateOutput) 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". 3993func (s RemoveTagsFromCertificateOutput) GoString() string { 3994 return s.String() 3995} 3996 3997type RenewCertificateInput struct { 3998 _ struct{} `type:"structure"` 3999 4000 // String that contains the ARN of the ACM certificate to be renewed. This must 4001 // be of the form: 4002 // 4003 // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 4004 // 4005 // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). 4006 // 4007 // CertificateArn is a required field 4008 CertificateArn *string `min:"20" type:"string" required:"true"` 4009} 4010 4011// String returns the string representation. 4012// 4013// API parameter values that are decorated as "sensitive" in the API will not 4014// be included in the string output. The member name will be present, but the 4015// value will be replaced with "sensitive". 4016func (s RenewCertificateInput) String() string { 4017 return awsutil.Prettify(s) 4018} 4019 4020// GoString returns the string representation. 4021// 4022// API parameter values that are decorated as "sensitive" in the API will not 4023// be included in the string output. The member name will be present, but the 4024// value will be replaced with "sensitive". 4025func (s RenewCertificateInput) GoString() string { 4026 return s.String() 4027} 4028 4029// Validate inspects the fields of the type to determine if they are valid. 4030func (s *RenewCertificateInput) Validate() error { 4031 invalidParams := request.ErrInvalidParams{Context: "RenewCertificateInput"} 4032 if s.CertificateArn == nil { 4033 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 4034 } 4035 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 4036 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 4037 } 4038 4039 if invalidParams.Len() > 0 { 4040 return invalidParams 4041 } 4042 return nil 4043} 4044 4045// SetCertificateArn sets the CertificateArn field's value. 4046func (s *RenewCertificateInput) SetCertificateArn(v string) *RenewCertificateInput { 4047 s.CertificateArn = &v 4048 return s 4049} 4050 4051type RenewCertificateOutput struct { 4052 _ struct{} `type:"structure"` 4053} 4054 4055// String returns the string representation. 4056// 4057// API parameter values that are decorated as "sensitive" in the API will not 4058// be included in the string output. The member name will be present, but the 4059// value will be replaced with "sensitive". 4060func (s RenewCertificateOutput) String() string { 4061 return awsutil.Prettify(s) 4062} 4063 4064// GoString returns the string representation. 4065// 4066// API parameter values that are decorated as "sensitive" in the API will not 4067// be included in the string output. The member name will be present, but the 4068// value will be replaced with "sensitive". 4069func (s RenewCertificateOutput) GoString() string { 4070 return s.String() 4071} 4072 4073// Contains information about the status of ACM's managed renewal (https://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) 4074// for the certificate. This structure exists only when the certificate type 4075// is AMAZON_ISSUED. 4076type RenewalSummary struct { 4077 _ struct{} `type:"structure"` 4078 4079 // Contains information about the validation of each domain name in the certificate, 4080 // as it pertains to ACM's managed renewal (https://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html). 4081 // This is different from the initial validation that occurs as a result of 4082 // the RequestCertificate request. This field exists only when the certificate 4083 // type is AMAZON_ISSUED. 4084 // 4085 // DomainValidationOptions is a required field 4086 DomainValidationOptions []*DomainValidation `min:"1" type:"list" required:"true"` 4087 4088 // The status of ACM's managed renewal (https://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) 4089 // of the certificate. 4090 // 4091 // RenewalStatus is a required field 4092 RenewalStatus *string `type:"string" required:"true" enum:"RenewalStatus"` 4093 4094 // The reason that a renewal request was unsuccessful. 4095 RenewalStatusReason *string `type:"string" enum:"FailureReason"` 4096 4097 // The time at which the renewal summary was last updated. 4098 // 4099 // UpdatedAt is a required field 4100 UpdatedAt *time.Time `type:"timestamp" required:"true"` 4101} 4102 4103// String returns the string representation. 4104// 4105// API parameter values that are decorated as "sensitive" in the API will not 4106// be included in the string output. The member name will be present, but the 4107// value will be replaced with "sensitive". 4108func (s RenewalSummary) String() string { 4109 return awsutil.Prettify(s) 4110} 4111 4112// GoString returns the string representation. 4113// 4114// API parameter values that are decorated as "sensitive" in the API will not 4115// be included in the string output. The member name will be present, but the 4116// value will be replaced with "sensitive". 4117func (s RenewalSummary) GoString() string { 4118 return s.String() 4119} 4120 4121// SetDomainValidationOptions sets the DomainValidationOptions field's value. 4122func (s *RenewalSummary) SetDomainValidationOptions(v []*DomainValidation) *RenewalSummary { 4123 s.DomainValidationOptions = v 4124 return s 4125} 4126 4127// SetRenewalStatus sets the RenewalStatus field's value. 4128func (s *RenewalSummary) SetRenewalStatus(v string) *RenewalSummary { 4129 s.RenewalStatus = &v 4130 return s 4131} 4132 4133// SetRenewalStatusReason sets the RenewalStatusReason field's value. 4134func (s *RenewalSummary) SetRenewalStatusReason(v string) *RenewalSummary { 4135 s.RenewalStatusReason = &v 4136 return s 4137} 4138 4139// SetUpdatedAt sets the UpdatedAt field's value. 4140func (s *RenewalSummary) SetUpdatedAt(v time.Time) *RenewalSummary { 4141 s.UpdatedAt = &v 4142 return s 4143} 4144 4145type RequestCertificateInput struct { 4146 _ struct{} `type:"structure"` 4147 4148 // The Amazon Resource Name (ARN) of the private certificate authority (CA) 4149 // that will be used to issue the certificate. If you do not provide an ARN 4150 // and you are trying to request a private certificate, ACM will attempt to 4151 // issue a public certificate. For more information about private CAs, see the 4152 // Amazon Web Services Certificate Manager Private Certificate Authority (PCA) 4153 // (https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaWelcome.html) user 4154 // guide. The ARN must have the following form: 4155 // 4156 // arn:aws:acm-pca:region:account:certificate-authority/12345678-1234-1234-1234-123456789012 4157 CertificateAuthorityArn *string `min:"20" type:"string"` 4158 4159 // Fully qualified domain name (FQDN), such as www.example.com, that you want 4160 // to secure with an ACM certificate. Use an asterisk (*) to create a wildcard 4161 // certificate that protects several sites in the same domain. For example, 4162 // *.example.com protects www.example.com, site.example.com, and images.example.com. 4163 // 4164 // The first domain name you enter cannot exceed 64 octets, including periods. 4165 // Each subsequent Subject Alternative Name (SAN), however, can be up to 253 4166 // octets in length. 4167 // 4168 // DomainName is a required field 4169 DomainName *string `min:"1" type:"string" required:"true"` 4170 4171 // The domain name that you want ACM to use to send you emails so that you can 4172 // validate domain ownership. 4173 DomainValidationOptions []*DomainValidationOption `min:"1" type:"list"` 4174 4175 // Customer chosen string that can be used to distinguish between calls to RequestCertificate. 4176 // Idempotency tokens time out after one hour. Therefore, if you call RequestCertificate 4177 // multiple times with the same idempotency token within one hour, ACM recognizes 4178 // that you are requesting only one certificate and will issue only one. If 4179 // you change the idempotency token for each call, ACM recognizes that you are 4180 // requesting multiple certificates. 4181 IdempotencyToken *string `min:"1" type:"string"` 4182 4183 // Currently, you can use this parameter to specify whether to add the certificate 4184 // to a certificate transparency log. Certificate transparency makes it possible 4185 // to detect SSL/TLS certificates that have been mistakenly or maliciously issued. 4186 // Certificates that have not been logged typically produce an error message 4187 // in a browser. For more information, see Opting Out of Certificate Transparency 4188 // Logging (https://docs.aws.amazon.com/acm/latest/userguide/acm-bestpractices.html#best-practices-transparency). 4189 Options *CertificateOptions `type:"structure"` 4190 4191 // Additional FQDNs to be included in the Subject Alternative Name extension 4192 // of the ACM certificate. For example, add the name www.example.net to a certificate 4193 // for which the DomainName field is www.example.com if users can reach your 4194 // site by using either name. The maximum number of domain names that you can 4195 // add to an ACM certificate is 100. However, the initial quota is 10 domain 4196 // names. If you need more than 10 names, you must request a quota increase. 4197 // For more information, see Quotas (https://docs.aws.amazon.com/acm/latest/userguide/acm-limits.html). 4198 // 4199 // The maximum length of a SAN DNS name is 253 octets. The name is made up of 4200 // multiple labels separated by periods. No label can be longer than 63 octets. 4201 // Consider the following examples: 4202 // 4203 // * (63 octets).(63 octets).(63 octets).(61 octets) is legal because the 4204 // total length is 253 octets (63+1+63+1+63+1+61) and no label exceeds 63 4205 // octets. 4206 // 4207 // * (64 octets).(63 octets).(63 octets).(61 octets) is not legal because 4208 // the total length exceeds 253 octets (64+1+63+1+63+1+61) and the first 4209 // label exceeds 63 octets. 4210 // 4211 // * (63 octets).(63 octets).(63 octets).(62 octets) is not legal because 4212 // the total length of the DNS name (63+1+63+1+63+1+62) exceeds 253 octets. 4213 SubjectAlternativeNames []*string `min:"1" type:"list"` 4214 4215 // One or more resource tags to associate with the certificate. 4216 Tags []*Tag `min:"1" type:"list"` 4217 4218 // The method you want to use if you are requesting a public certificate to 4219 // validate that you own or control domain. You can validate with DNS (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-dns.html) 4220 // or validate with email (https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-validate-email.html). 4221 // We recommend that you use DNS validation. 4222 ValidationMethod *string `type:"string" enum:"ValidationMethod"` 4223} 4224 4225// String returns the string representation. 4226// 4227// API parameter values that are decorated as "sensitive" in the API will not 4228// be included in the string output. The member name will be present, but the 4229// value will be replaced with "sensitive". 4230func (s RequestCertificateInput) String() string { 4231 return awsutil.Prettify(s) 4232} 4233 4234// GoString returns the string representation. 4235// 4236// API parameter values that are decorated as "sensitive" in the API will not 4237// be included in the string output. The member name will be present, but the 4238// value will be replaced with "sensitive". 4239func (s RequestCertificateInput) GoString() string { 4240 return s.String() 4241} 4242 4243// Validate inspects the fields of the type to determine if they are valid. 4244func (s *RequestCertificateInput) Validate() error { 4245 invalidParams := request.ErrInvalidParams{Context: "RequestCertificateInput"} 4246 if s.CertificateAuthorityArn != nil && len(*s.CertificateAuthorityArn) < 20 { 4247 invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityArn", 20)) 4248 } 4249 if s.DomainName == nil { 4250 invalidParams.Add(request.NewErrParamRequired("DomainName")) 4251 } 4252 if s.DomainName != nil && len(*s.DomainName) < 1 { 4253 invalidParams.Add(request.NewErrParamMinLen("DomainName", 1)) 4254 } 4255 if s.DomainValidationOptions != nil && len(s.DomainValidationOptions) < 1 { 4256 invalidParams.Add(request.NewErrParamMinLen("DomainValidationOptions", 1)) 4257 } 4258 if s.IdempotencyToken != nil && len(*s.IdempotencyToken) < 1 { 4259 invalidParams.Add(request.NewErrParamMinLen("IdempotencyToken", 1)) 4260 } 4261 if s.SubjectAlternativeNames != nil && len(s.SubjectAlternativeNames) < 1 { 4262 invalidParams.Add(request.NewErrParamMinLen("SubjectAlternativeNames", 1)) 4263 } 4264 if s.Tags != nil && len(s.Tags) < 1 { 4265 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 4266 } 4267 if s.DomainValidationOptions != nil { 4268 for i, v := range s.DomainValidationOptions { 4269 if v == nil { 4270 continue 4271 } 4272 if err := v.Validate(); err != nil { 4273 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DomainValidationOptions", i), err.(request.ErrInvalidParams)) 4274 } 4275 } 4276 } 4277 if s.Tags != nil { 4278 for i, v := range s.Tags { 4279 if v == nil { 4280 continue 4281 } 4282 if err := v.Validate(); err != nil { 4283 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4284 } 4285 } 4286 } 4287 4288 if invalidParams.Len() > 0 { 4289 return invalidParams 4290 } 4291 return nil 4292} 4293 4294// SetCertificateAuthorityArn sets the CertificateAuthorityArn field's value. 4295func (s *RequestCertificateInput) SetCertificateAuthorityArn(v string) *RequestCertificateInput { 4296 s.CertificateAuthorityArn = &v 4297 return s 4298} 4299 4300// SetDomainName sets the DomainName field's value. 4301func (s *RequestCertificateInput) SetDomainName(v string) *RequestCertificateInput { 4302 s.DomainName = &v 4303 return s 4304} 4305 4306// SetDomainValidationOptions sets the DomainValidationOptions field's value. 4307func (s *RequestCertificateInput) SetDomainValidationOptions(v []*DomainValidationOption) *RequestCertificateInput { 4308 s.DomainValidationOptions = v 4309 return s 4310} 4311 4312// SetIdempotencyToken sets the IdempotencyToken field's value. 4313func (s *RequestCertificateInput) SetIdempotencyToken(v string) *RequestCertificateInput { 4314 s.IdempotencyToken = &v 4315 return s 4316} 4317 4318// SetOptions sets the Options field's value. 4319func (s *RequestCertificateInput) SetOptions(v *CertificateOptions) *RequestCertificateInput { 4320 s.Options = v 4321 return s 4322} 4323 4324// SetSubjectAlternativeNames sets the SubjectAlternativeNames field's value. 4325func (s *RequestCertificateInput) SetSubjectAlternativeNames(v []*string) *RequestCertificateInput { 4326 s.SubjectAlternativeNames = v 4327 return s 4328} 4329 4330// SetTags sets the Tags field's value. 4331func (s *RequestCertificateInput) SetTags(v []*Tag) *RequestCertificateInput { 4332 s.Tags = v 4333 return s 4334} 4335 4336// SetValidationMethod sets the ValidationMethod field's value. 4337func (s *RequestCertificateInput) SetValidationMethod(v string) *RequestCertificateInput { 4338 s.ValidationMethod = &v 4339 return s 4340} 4341 4342type RequestCertificateOutput struct { 4343 _ struct{} `type:"structure"` 4344 4345 // String that contains the ARN of the issued certificate. This must be of the 4346 // form: 4347 // 4348 // arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012 4349 CertificateArn *string `min:"20" type:"string"` 4350} 4351 4352// String returns the string representation. 4353// 4354// API parameter values that are decorated as "sensitive" in the API will not 4355// be included in the string output. The member name will be present, but the 4356// value will be replaced with "sensitive". 4357func (s RequestCertificateOutput) String() string { 4358 return awsutil.Prettify(s) 4359} 4360 4361// GoString returns the string representation. 4362// 4363// API parameter values that are decorated as "sensitive" in the API will not 4364// be included in the string output. The member name will be present, but the 4365// value will be replaced with "sensitive". 4366func (s RequestCertificateOutput) GoString() string { 4367 return s.String() 4368} 4369 4370// SetCertificateArn sets the CertificateArn field's value. 4371func (s *RequestCertificateOutput) SetCertificateArn(v string) *RequestCertificateOutput { 4372 s.CertificateArn = &v 4373 return s 4374} 4375 4376// The certificate request is in process and the certificate in your account 4377// has not yet been issued. 4378type RequestInProgressException struct { 4379 _ struct{} `type:"structure"` 4380 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4381 4382 Message_ *string `locationName:"message" type:"string"` 4383} 4384 4385// String returns the string representation. 4386// 4387// API parameter values that are decorated as "sensitive" in the API will not 4388// be included in the string output. The member name will be present, but the 4389// value will be replaced with "sensitive". 4390func (s RequestInProgressException) String() string { 4391 return awsutil.Prettify(s) 4392} 4393 4394// GoString returns the string representation. 4395// 4396// API parameter values that are decorated as "sensitive" in the API will not 4397// be included in the string output. The member name will be present, but the 4398// value will be replaced with "sensitive". 4399func (s RequestInProgressException) GoString() string { 4400 return s.String() 4401} 4402 4403func newErrorRequestInProgressException(v protocol.ResponseMetadata) error { 4404 return &RequestInProgressException{ 4405 RespMetadata: v, 4406 } 4407} 4408 4409// Code returns the exception type name. 4410func (s *RequestInProgressException) Code() string { 4411 return "RequestInProgressException" 4412} 4413 4414// Message returns the exception's message. 4415func (s *RequestInProgressException) Message() string { 4416 if s.Message_ != nil { 4417 return *s.Message_ 4418 } 4419 return "" 4420} 4421 4422// OrigErr always returns nil, satisfies awserr.Error interface. 4423func (s *RequestInProgressException) OrigErr() error { 4424 return nil 4425} 4426 4427func (s *RequestInProgressException) Error() string { 4428 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4429} 4430 4431// Status code returns the HTTP status code for the request's response error. 4432func (s *RequestInProgressException) StatusCode() int { 4433 return s.RespMetadata.StatusCode 4434} 4435 4436// RequestID returns the service's response RequestID for request. 4437func (s *RequestInProgressException) RequestID() string { 4438 return s.RespMetadata.RequestID 4439} 4440 4441type ResendValidationEmailInput struct { 4442 _ struct{} `type:"structure"` 4443 4444 // String that contains the ARN of the requested certificate. The certificate 4445 // ARN is generated and returned by the RequestCertificate action as soon as 4446 // the request is made. By default, using this parameter causes email to be 4447 // sent to all top-level domains you specified in the certificate request. The 4448 // ARN must be of the form: 4449 // 4450 // arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012 4451 // 4452 // CertificateArn is a required field 4453 CertificateArn *string `min:"20" type:"string" required:"true"` 4454 4455 // The fully qualified domain name (FQDN) of the certificate that needs to be 4456 // validated. 4457 // 4458 // Domain is a required field 4459 Domain *string `min:"1" type:"string" required:"true"` 4460 4461 // The base validation domain that will act as the suffix of the email addresses 4462 // that are used to send the emails. This must be the same as the Domain value 4463 // or a superdomain of the Domain value. For example, if you requested a certificate 4464 // for site.subdomain.example.com and specify a ValidationDomain of subdomain.example.com, 4465 // ACM sends email to the domain registrant, technical contact, and administrative 4466 // contact in WHOIS and the following five addresses: 4467 // 4468 // * admin@subdomain.example.com 4469 // 4470 // * administrator@subdomain.example.com 4471 // 4472 // * hostmaster@subdomain.example.com 4473 // 4474 // * postmaster@subdomain.example.com 4475 // 4476 // * webmaster@subdomain.example.com 4477 // 4478 // ValidationDomain is a required field 4479 ValidationDomain *string `min:"1" type:"string" required:"true"` 4480} 4481 4482// String returns the string representation. 4483// 4484// API parameter values that are decorated as "sensitive" in the API will not 4485// be included in the string output. The member name will be present, but the 4486// value will be replaced with "sensitive". 4487func (s ResendValidationEmailInput) String() string { 4488 return awsutil.Prettify(s) 4489} 4490 4491// GoString returns the string representation. 4492// 4493// API parameter values that are decorated as "sensitive" in the API will not 4494// be included in the string output. The member name will be present, but the 4495// value will be replaced with "sensitive". 4496func (s ResendValidationEmailInput) GoString() string { 4497 return s.String() 4498} 4499 4500// Validate inspects the fields of the type to determine if they are valid. 4501func (s *ResendValidationEmailInput) Validate() error { 4502 invalidParams := request.ErrInvalidParams{Context: "ResendValidationEmailInput"} 4503 if s.CertificateArn == nil { 4504 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 4505 } 4506 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 4507 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 4508 } 4509 if s.Domain == nil { 4510 invalidParams.Add(request.NewErrParamRequired("Domain")) 4511 } 4512 if s.Domain != nil && len(*s.Domain) < 1 { 4513 invalidParams.Add(request.NewErrParamMinLen("Domain", 1)) 4514 } 4515 if s.ValidationDomain == nil { 4516 invalidParams.Add(request.NewErrParamRequired("ValidationDomain")) 4517 } 4518 if s.ValidationDomain != nil && len(*s.ValidationDomain) < 1 { 4519 invalidParams.Add(request.NewErrParamMinLen("ValidationDomain", 1)) 4520 } 4521 4522 if invalidParams.Len() > 0 { 4523 return invalidParams 4524 } 4525 return nil 4526} 4527 4528// SetCertificateArn sets the CertificateArn field's value. 4529func (s *ResendValidationEmailInput) SetCertificateArn(v string) *ResendValidationEmailInput { 4530 s.CertificateArn = &v 4531 return s 4532} 4533 4534// SetDomain sets the Domain field's value. 4535func (s *ResendValidationEmailInput) SetDomain(v string) *ResendValidationEmailInput { 4536 s.Domain = &v 4537 return s 4538} 4539 4540// SetValidationDomain sets the ValidationDomain field's value. 4541func (s *ResendValidationEmailInput) SetValidationDomain(v string) *ResendValidationEmailInput { 4542 s.ValidationDomain = &v 4543 return s 4544} 4545 4546type ResendValidationEmailOutput struct { 4547 _ struct{} `type:"structure"` 4548} 4549 4550// String returns the string representation. 4551// 4552// API parameter values that are decorated as "sensitive" in the API will not 4553// be included in the string output. The member name will be present, but the 4554// value will be replaced with "sensitive". 4555func (s ResendValidationEmailOutput) String() string { 4556 return awsutil.Prettify(s) 4557} 4558 4559// GoString returns the string representation. 4560// 4561// API parameter values that are decorated as "sensitive" in the API will not 4562// be included in the string output. The member name will be present, but the 4563// value will be replaced with "sensitive". 4564func (s ResendValidationEmailOutput) GoString() string { 4565 return s.String() 4566} 4567 4568// The certificate is in use by another Amazon Web Services service in the caller's 4569// account. Remove the association and try again. 4570type ResourceInUseException struct { 4571 _ struct{} `type:"structure"` 4572 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4573 4574 Message_ *string `locationName:"message" type:"string"` 4575} 4576 4577// String returns the string representation. 4578// 4579// API parameter values that are decorated as "sensitive" in the API will not 4580// be included in the string output. The member name will be present, but the 4581// value will be replaced with "sensitive". 4582func (s ResourceInUseException) String() string { 4583 return awsutil.Prettify(s) 4584} 4585 4586// GoString returns the string representation. 4587// 4588// API parameter values that are decorated as "sensitive" in the API will not 4589// be included in the string output. The member name will be present, but the 4590// value will be replaced with "sensitive". 4591func (s ResourceInUseException) GoString() string { 4592 return s.String() 4593} 4594 4595func newErrorResourceInUseException(v protocol.ResponseMetadata) error { 4596 return &ResourceInUseException{ 4597 RespMetadata: v, 4598 } 4599} 4600 4601// Code returns the exception type name. 4602func (s *ResourceInUseException) Code() string { 4603 return "ResourceInUseException" 4604} 4605 4606// Message returns the exception's message. 4607func (s *ResourceInUseException) Message() string { 4608 if s.Message_ != nil { 4609 return *s.Message_ 4610 } 4611 return "" 4612} 4613 4614// OrigErr always returns nil, satisfies awserr.Error interface. 4615func (s *ResourceInUseException) OrigErr() error { 4616 return nil 4617} 4618 4619func (s *ResourceInUseException) Error() string { 4620 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4621} 4622 4623// Status code returns the HTTP status code for the request's response error. 4624func (s *ResourceInUseException) StatusCode() int { 4625 return s.RespMetadata.StatusCode 4626} 4627 4628// RequestID returns the service's response RequestID for request. 4629func (s *ResourceInUseException) RequestID() string { 4630 return s.RespMetadata.RequestID 4631} 4632 4633// The specified certificate cannot be found in the caller's account or the 4634// caller's account cannot be found. 4635type ResourceNotFoundException struct { 4636 _ struct{} `type:"structure"` 4637 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4638 4639 Message_ *string `locationName:"message" type:"string"` 4640} 4641 4642// String returns the string representation. 4643// 4644// API parameter values that are decorated as "sensitive" in the API will not 4645// be included in the string output. The member name will be present, but the 4646// value will be replaced with "sensitive". 4647func (s ResourceNotFoundException) String() string { 4648 return awsutil.Prettify(s) 4649} 4650 4651// GoString returns the string representation. 4652// 4653// API parameter values that are decorated as "sensitive" in the API will not 4654// be included in the string output. The member name will be present, but the 4655// value will be replaced with "sensitive". 4656func (s ResourceNotFoundException) GoString() string { 4657 return s.String() 4658} 4659 4660func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { 4661 return &ResourceNotFoundException{ 4662 RespMetadata: v, 4663 } 4664} 4665 4666// Code returns the exception type name. 4667func (s *ResourceNotFoundException) Code() string { 4668 return "ResourceNotFoundException" 4669} 4670 4671// Message returns the exception's message. 4672func (s *ResourceNotFoundException) Message() string { 4673 if s.Message_ != nil { 4674 return *s.Message_ 4675 } 4676 return "" 4677} 4678 4679// OrigErr always returns nil, satisfies awserr.Error interface. 4680func (s *ResourceNotFoundException) OrigErr() error { 4681 return nil 4682} 4683 4684func (s *ResourceNotFoundException) Error() string { 4685 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4686} 4687 4688// Status code returns the HTTP status code for the request's response error. 4689func (s *ResourceNotFoundException) StatusCode() int { 4690 return s.RespMetadata.StatusCode 4691} 4692 4693// RequestID returns the service's response RequestID for request. 4694func (s *ResourceNotFoundException) RequestID() string { 4695 return s.RespMetadata.RequestID 4696} 4697 4698// Contains a DNS record value that you can use to validate ownership or control 4699// of a domain. This is used by the DescribeCertificate action. 4700type ResourceRecord struct { 4701 _ struct{} `type:"structure"` 4702 4703 // The name of the DNS record to create in your domain. This is supplied by 4704 // ACM. 4705 // 4706 // Name is a required field 4707 Name *string `type:"string" required:"true"` 4708 4709 // The type of DNS record. Currently this can be CNAME. 4710 // 4711 // Type is a required field 4712 Type *string `type:"string" required:"true" enum:"RecordType"` 4713 4714 // The value of the CNAME record to add to your DNS database. This is supplied 4715 // by ACM. 4716 // 4717 // Value is a required field 4718 Value *string `type:"string" required:"true"` 4719} 4720 4721// String returns the string representation. 4722// 4723// API parameter values that are decorated as "sensitive" in the API will not 4724// be included in the string output. The member name will be present, but the 4725// value will be replaced with "sensitive". 4726func (s ResourceRecord) String() string { 4727 return awsutil.Prettify(s) 4728} 4729 4730// GoString returns the string representation. 4731// 4732// API parameter values that are decorated as "sensitive" in the API will not 4733// be included in the string output. The member name will be present, but the 4734// value will be replaced with "sensitive". 4735func (s ResourceRecord) GoString() string { 4736 return s.String() 4737} 4738 4739// SetName sets the Name field's value. 4740func (s *ResourceRecord) SetName(v string) *ResourceRecord { 4741 s.Name = &v 4742 return s 4743} 4744 4745// SetType sets the Type field's value. 4746func (s *ResourceRecord) SetType(v string) *ResourceRecord { 4747 s.Type = &v 4748 return s 4749} 4750 4751// SetValue sets the Value field's value. 4752func (s *ResourceRecord) SetValue(v string) *ResourceRecord { 4753 s.Value = &v 4754 return s 4755} 4756 4757// A key-value pair that identifies or specifies metadata about an ACM resource. 4758type Tag struct { 4759 _ struct{} `type:"structure"` 4760 4761 // The key of the tag. 4762 // 4763 // Key is a required field 4764 Key *string `min:"1" type:"string" required:"true"` 4765 4766 // The value of the tag. 4767 Value *string `type:"string"` 4768} 4769 4770// String returns the string representation. 4771// 4772// API parameter values that are decorated as "sensitive" in the API will not 4773// be included in the string output. The member name will be present, but the 4774// value will be replaced with "sensitive". 4775func (s Tag) String() string { 4776 return awsutil.Prettify(s) 4777} 4778 4779// GoString returns the string representation. 4780// 4781// API parameter values that are decorated as "sensitive" in the API will not 4782// be included in the string output. The member name will be present, but the 4783// value will be replaced with "sensitive". 4784func (s Tag) GoString() string { 4785 return s.String() 4786} 4787 4788// Validate inspects the fields of the type to determine if they are valid. 4789func (s *Tag) Validate() error { 4790 invalidParams := request.ErrInvalidParams{Context: "Tag"} 4791 if s.Key == nil { 4792 invalidParams.Add(request.NewErrParamRequired("Key")) 4793 } 4794 if s.Key != nil && len(*s.Key) < 1 { 4795 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 4796 } 4797 4798 if invalidParams.Len() > 0 { 4799 return invalidParams 4800 } 4801 return nil 4802} 4803 4804// SetKey sets the Key field's value. 4805func (s *Tag) SetKey(v string) *Tag { 4806 s.Key = &v 4807 return s 4808} 4809 4810// SetValue sets the Value field's value. 4811func (s *Tag) SetValue(v string) *Tag { 4812 s.Value = &v 4813 return s 4814} 4815 4816// A specified tag did not comply with an existing tag policy and was rejected. 4817type TagPolicyException struct { 4818 _ struct{} `type:"structure"` 4819 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4820 4821 Message_ *string `locationName:"message" type:"string"` 4822} 4823 4824// String returns the string representation. 4825// 4826// API parameter values that are decorated as "sensitive" in the API will not 4827// be included in the string output. The member name will be present, but the 4828// value will be replaced with "sensitive". 4829func (s TagPolicyException) String() string { 4830 return awsutil.Prettify(s) 4831} 4832 4833// GoString returns the string representation. 4834// 4835// API parameter values that are decorated as "sensitive" in the API will not 4836// be included in the string output. The member name will be present, but the 4837// value will be replaced with "sensitive". 4838func (s TagPolicyException) GoString() string { 4839 return s.String() 4840} 4841 4842func newErrorTagPolicyException(v protocol.ResponseMetadata) error { 4843 return &TagPolicyException{ 4844 RespMetadata: v, 4845 } 4846} 4847 4848// Code returns the exception type name. 4849func (s *TagPolicyException) Code() string { 4850 return "TagPolicyException" 4851} 4852 4853// Message returns the exception's message. 4854func (s *TagPolicyException) Message() string { 4855 if s.Message_ != nil { 4856 return *s.Message_ 4857 } 4858 return "" 4859} 4860 4861// OrigErr always returns nil, satisfies awserr.Error interface. 4862func (s *TagPolicyException) OrigErr() error { 4863 return nil 4864} 4865 4866func (s *TagPolicyException) Error() string { 4867 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4868} 4869 4870// Status code returns the HTTP status code for the request's response error. 4871func (s *TagPolicyException) StatusCode() int { 4872 return s.RespMetadata.StatusCode 4873} 4874 4875// RequestID returns the service's response RequestID for request. 4876func (s *TagPolicyException) RequestID() string { 4877 return s.RespMetadata.RequestID 4878} 4879 4880// The request was denied because it exceeded a quota. 4881type ThrottlingException struct { 4882 _ struct{} `type:"structure"` 4883 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4884 4885 Message_ *string `locationName:"message" type:"string"` 4886} 4887 4888// String returns the string representation. 4889// 4890// API parameter values that are decorated as "sensitive" in the API will not 4891// be included in the string output. The member name will be present, but the 4892// value will be replaced with "sensitive". 4893func (s ThrottlingException) String() string { 4894 return awsutil.Prettify(s) 4895} 4896 4897// GoString returns the string representation. 4898// 4899// API parameter values that are decorated as "sensitive" in the API will not 4900// be included in the string output. The member name will be present, but the 4901// value will be replaced with "sensitive". 4902func (s ThrottlingException) GoString() string { 4903 return s.String() 4904} 4905 4906func newErrorThrottlingException(v protocol.ResponseMetadata) error { 4907 return &ThrottlingException{ 4908 RespMetadata: v, 4909 } 4910} 4911 4912// Code returns the exception type name. 4913func (s *ThrottlingException) Code() string { 4914 return "ThrottlingException" 4915} 4916 4917// Message returns the exception's message. 4918func (s *ThrottlingException) Message() string { 4919 if s.Message_ != nil { 4920 return *s.Message_ 4921 } 4922 return "" 4923} 4924 4925// OrigErr always returns nil, satisfies awserr.Error interface. 4926func (s *ThrottlingException) OrigErr() error { 4927 return nil 4928} 4929 4930func (s *ThrottlingException) Error() string { 4931 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4932} 4933 4934// Status code returns the HTTP status code for the request's response error. 4935func (s *ThrottlingException) StatusCode() int { 4936 return s.RespMetadata.StatusCode 4937} 4938 4939// RequestID returns the service's response RequestID for request. 4940func (s *ThrottlingException) RequestID() string { 4941 return s.RespMetadata.RequestID 4942} 4943 4944// The request contains too many tags. Try the request again with fewer tags. 4945type TooManyTagsException struct { 4946 _ struct{} `type:"structure"` 4947 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4948 4949 Message_ *string `locationName:"message" type:"string"` 4950} 4951 4952// String returns the string representation. 4953// 4954// API parameter values that are decorated as "sensitive" in the API will not 4955// be included in the string output. The member name will be present, but the 4956// value will be replaced with "sensitive". 4957func (s TooManyTagsException) String() string { 4958 return awsutil.Prettify(s) 4959} 4960 4961// GoString returns the string representation. 4962// 4963// API parameter values that are decorated as "sensitive" in the API will not 4964// be included in the string output. The member name will be present, but the 4965// value will be replaced with "sensitive". 4966func (s TooManyTagsException) GoString() string { 4967 return s.String() 4968} 4969 4970func newErrorTooManyTagsException(v protocol.ResponseMetadata) error { 4971 return &TooManyTagsException{ 4972 RespMetadata: v, 4973 } 4974} 4975 4976// Code returns the exception type name. 4977func (s *TooManyTagsException) Code() string { 4978 return "TooManyTagsException" 4979} 4980 4981// Message returns the exception's message. 4982func (s *TooManyTagsException) Message() string { 4983 if s.Message_ != nil { 4984 return *s.Message_ 4985 } 4986 return "" 4987} 4988 4989// OrigErr always returns nil, satisfies awserr.Error interface. 4990func (s *TooManyTagsException) OrigErr() error { 4991 return nil 4992} 4993 4994func (s *TooManyTagsException) Error() string { 4995 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4996} 4997 4998// Status code returns the HTTP status code for the request's response error. 4999func (s *TooManyTagsException) StatusCode() int { 5000 return s.RespMetadata.StatusCode 5001} 5002 5003// RequestID returns the service's response RequestID for request. 5004func (s *TooManyTagsException) RequestID() string { 5005 return s.RespMetadata.RequestID 5006} 5007 5008type UpdateCertificateOptionsInput struct { 5009 _ struct{} `type:"structure"` 5010 5011 // ARN of the requested certificate to update. This must be of the form: 5012 // 5013 // arn:aws:acm:us-east-1:account:certificate/12345678-1234-1234-1234-123456789012 5014 // 5015 // CertificateArn is a required field 5016 CertificateArn *string `min:"20" type:"string" required:"true"` 5017 5018 // Use to update the options for your certificate. Currently, you can specify 5019 // whether to add your certificate to a transparency log. Certificate transparency 5020 // makes it possible to detect SSL/TLS certificates that have been mistakenly 5021 // or maliciously issued. Certificates that have not been logged typically produce 5022 // an error message in a browser. 5023 // 5024 // Options is a required field 5025 Options *CertificateOptions `type:"structure" required:"true"` 5026} 5027 5028// String returns the string representation. 5029// 5030// API parameter values that are decorated as "sensitive" in the API will not 5031// be included in the string output. The member name will be present, but the 5032// value will be replaced with "sensitive". 5033func (s UpdateCertificateOptionsInput) String() string { 5034 return awsutil.Prettify(s) 5035} 5036 5037// GoString returns the string representation. 5038// 5039// API parameter values that are decorated as "sensitive" in the API will not 5040// be included in the string output. The member name will be present, but the 5041// value will be replaced with "sensitive". 5042func (s UpdateCertificateOptionsInput) GoString() string { 5043 return s.String() 5044} 5045 5046// Validate inspects the fields of the type to determine if they are valid. 5047func (s *UpdateCertificateOptionsInput) Validate() error { 5048 invalidParams := request.ErrInvalidParams{Context: "UpdateCertificateOptionsInput"} 5049 if s.CertificateArn == nil { 5050 invalidParams.Add(request.NewErrParamRequired("CertificateArn")) 5051 } 5052 if s.CertificateArn != nil && len(*s.CertificateArn) < 20 { 5053 invalidParams.Add(request.NewErrParamMinLen("CertificateArn", 20)) 5054 } 5055 if s.Options == nil { 5056 invalidParams.Add(request.NewErrParamRequired("Options")) 5057 } 5058 5059 if invalidParams.Len() > 0 { 5060 return invalidParams 5061 } 5062 return nil 5063} 5064 5065// SetCertificateArn sets the CertificateArn field's value. 5066func (s *UpdateCertificateOptionsInput) SetCertificateArn(v string) *UpdateCertificateOptionsInput { 5067 s.CertificateArn = &v 5068 return s 5069} 5070 5071// SetOptions sets the Options field's value. 5072func (s *UpdateCertificateOptionsInput) SetOptions(v *CertificateOptions) *UpdateCertificateOptionsInput { 5073 s.Options = v 5074 return s 5075} 5076 5077type UpdateCertificateOptionsOutput struct { 5078 _ struct{} `type:"structure"` 5079} 5080 5081// String returns the string representation. 5082// 5083// API parameter values that are decorated as "sensitive" in the API will not 5084// be included in the string output. The member name will be present, but the 5085// value will be replaced with "sensitive". 5086func (s UpdateCertificateOptionsOutput) String() string { 5087 return awsutil.Prettify(s) 5088} 5089 5090// GoString returns the string representation. 5091// 5092// API parameter values that are decorated as "sensitive" in the API will not 5093// be included in the string output. The member name will be present, but the 5094// value will be replaced with "sensitive". 5095func (s UpdateCertificateOptionsOutput) GoString() string { 5096 return s.String() 5097} 5098 5099// The supplied input failed to satisfy constraints of an Amazon Web Services 5100// service. 5101type ValidationException struct { 5102 _ struct{} `type:"structure"` 5103 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 5104 5105 Message_ *string `locationName:"message" type:"string"` 5106} 5107 5108// String returns the string representation. 5109// 5110// API parameter values that are decorated as "sensitive" in the API will not 5111// be included in the string output. The member name will be present, but the 5112// value will be replaced with "sensitive". 5113func (s ValidationException) String() string { 5114 return awsutil.Prettify(s) 5115} 5116 5117// GoString returns the string representation. 5118// 5119// API parameter values that are decorated as "sensitive" in the API will not 5120// be included in the string output. The member name will be present, but the 5121// value will be replaced with "sensitive". 5122func (s ValidationException) GoString() string { 5123 return s.String() 5124} 5125 5126func newErrorValidationException(v protocol.ResponseMetadata) error { 5127 return &ValidationException{ 5128 RespMetadata: v, 5129 } 5130} 5131 5132// Code returns the exception type name. 5133func (s *ValidationException) Code() string { 5134 return "ValidationException" 5135} 5136 5137// Message returns the exception's message. 5138func (s *ValidationException) Message() string { 5139 if s.Message_ != nil { 5140 return *s.Message_ 5141 } 5142 return "" 5143} 5144 5145// OrigErr always returns nil, satisfies awserr.Error interface. 5146func (s *ValidationException) OrigErr() error { 5147 return nil 5148} 5149 5150func (s *ValidationException) Error() string { 5151 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 5152} 5153 5154// Status code returns the HTTP status code for the request's response error. 5155func (s *ValidationException) StatusCode() int { 5156 return s.RespMetadata.StatusCode 5157} 5158 5159// RequestID returns the service's response RequestID for request. 5160func (s *ValidationException) RequestID() string { 5161 return s.RespMetadata.RequestID 5162} 5163 5164const ( 5165 // CertificateStatusPendingValidation is a CertificateStatus enum value 5166 CertificateStatusPendingValidation = "PENDING_VALIDATION" 5167 5168 // CertificateStatusIssued is a CertificateStatus enum value 5169 CertificateStatusIssued = "ISSUED" 5170 5171 // CertificateStatusInactive is a CertificateStatus enum value 5172 CertificateStatusInactive = "INACTIVE" 5173 5174 // CertificateStatusExpired is a CertificateStatus enum value 5175 CertificateStatusExpired = "EXPIRED" 5176 5177 // CertificateStatusValidationTimedOut is a CertificateStatus enum value 5178 CertificateStatusValidationTimedOut = "VALIDATION_TIMED_OUT" 5179 5180 // CertificateStatusRevoked is a CertificateStatus enum value 5181 CertificateStatusRevoked = "REVOKED" 5182 5183 // CertificateStatusFailed is a CertificateStatus enum value 5184 CertificateStatusFailed = "FAILED" 5185) 5186 5187// CertificateStatus_Values returns all elements of the CertificateStatus enum 5188func CertificateStatus_Values() []string { 5189 return []string{ 5190 CertificateStatusPendingValidation, 5191 CertificateStatusIssued, 5192 CertificateStatusInactive, 5193 CertificateStatusExpired, 5194 CertificateStatusValidationTimedOut, 5195 CertificateStatusRevoked, 5196 CertificateStatusFailed, 5197 } 5198} 5199 5200const ( 5201 // CertificateTransparencyLoggingPreferenceEnabled is a CertificateTransparencyLoggingPreference enum value 5202 CertificateTransparencyLoggingPreferenceEnabled = "ENABLED" 5203 5204 // CertificateTransparencyLoggingPreferenceDisabled is a CertificateTransparencyLoggingPreference enum value 5205 CertificateTransparencyLoggingPreferenceDisabled = "DISABLED" 5206) 5207 5208// CertificateTransparencyLoggingPreference_Values returns all elements of the CertificateTransparencyLoggingPreference enum 5209func CertificateTransparencyLoggingPreference_Values() []string { 5210 return []string{ 5211 CertificateTransparencyLoggingPreferenceEnabled, 5212 CertificateTransparencyLoggingPreferenceDisabled, 5213 } 5214} 5215 5216const ( 5217 // CertificateTypeImported is a CertificateType enum value 5218 CertificateTypeImported = "IMPORTED" 5219 5220 // CertificateTypeAmazonIssued is a CertificateType enum value 5221 CertificateTypeAmazonIssued = "AMAZON_ISSUED" 5222 5223 // CertificateTypePrivate is a CertificateType enum value 5224 CertificateTypePrivate = "PRIVATE" 5225) 5226 5227// CertificateType_Values returns all elements of the CertificateType enum 5228func CertificateType_Values() []string { 5229 return []string{ 5230 CertificateTypeImported, 5231 CertificateTypeAmazonIssued, 5232 CertificateTypePrivate, 5233 } 5234} 5235 5236const ( 5237 // DomainStatusPendingValidation is a DomainStatus enum value 5238 DomainStatusPendingValidation = "PENDING_VALIDATION" 5239 5240 // DomainStatusSuccess is a DomainStatus enum value 5241 DomainStatusSuccess = "SUCCESS" 5242 5243 // DomainStatusFailed is a DomainStatus enum value 5244 DomainStatusFailed = "FAILED" 5245) 5246 5247// DomainStatus_Values returns all elements of the DomainStatus enum 5248func DomainStatus_Values() []string { 5249 return []string{ 5250 DomainStatusPendingValidation, 5251 DomainStatusSuccess, 5252 DomainStatusFailed, 5253 } 5254} 5255 5256const ( 5257 // ExtendedKeyUsageNameTlsWebServerAuthentication is a ExtendedKeyUsageName enum value 5258 ExtendedKeyUsageNameTlsWebServerAuthentication = "TLS_WEB_SERVER_AUTHENTICATION" 5259 5260 // ExtendedKeyUsageNameTlsWebClientAuthentication is a ExtendedKeyUsageName enum value 5261 ExtendedKeyUsageNameTlsWebClientAuthentication = "TLS_WEB_CLIENT_AUTHENTICATION" 5262 5263 // ExtendedKeyUsageNameCodeSigning is a ExtendedKeyUsageName enum value 5264 ExtendedKeyUsageNameCodeSigning = "CODE_SIGNING" 5265 5266 // ExtendedKeyUsageNameEmailProtection is a ExtendedKeyUsageName enum value 5267 ExtendedKeyUsageNameEmailProtection = "EMAIL_PROTECTION" 5268 5269 // ExtendedKeyUsageNameTimeStamping is a ExtendedKeyUsageName enum value 5270 ExtendedKeyUsageNameTimeStamping = "TIME_STAMPING" 5271 5272 // ExtendedKeyUsageNameOcspSigning is a ExtendedKeyUsageName enum value 5273 ExtendedKeyUsageNameOcspSigning = "OCSP_SIGNING" 5274 5275 // ExtendedKeyUsageNameIpsecEndSystem is a ExtendedKeyUsageName enum value 5276 ExtendedKeyUsageNameIpsecEndSystem = "IPSEC_END_SYSTEM" 5277 5278 // ExtendedKeyUsageNameIpsecTunnel is a ExtendedKeyUsageName enum value 5279 ExtendedKeyUsageNameIpsecTunnel = "IPSEC_TUNNEL" 5280 5281 // ExtendedKeyUsageNameIpsecUser is a ExtendedKeyUsageName enum value 5282 ExtendedKeyUsageNameIpsecUser = "IPSEC_USER" 5283 5284 // ExtendedKeyUsageNameAny is a ExtendedKeyUsageName enum value 5285 ExtendedKeyUsageNameAny = "ANY" 5286 5287 // ExtendedKeyUsageNameNone is a ExtendedKeyUsageName enum value 5288 ExtendedKeyUsageNameNone = "NONE" 5289 5290 // ExtendedKeyUsageNameCustom is a ExtendedKeyUsageName enum value 5291 ExtendedKeyUsageNameCustom = "CUSTOM" 5292) 5293 5294// ExtendedKeyUsageName_Values returns all elements of the ExtendedKeyUsageName enum 5295func ExtendedKeyUsageName_Values() []string { 5296 return []string{ 5297 ExtendedKeyUsageNameTlsWebServerAuthentication, 5298 ExtendedKeyUsageNameTlsWebClientAuthentication, 5299 ExtendedKeyUsageNameCodeSigning, 5300 ExtendedKeyUsageNameEmailProtection, 5301 ExtendedKeyUsageNameTimeStamping, 5302 ExtendedKeyUsageNameOcspSigning, 5303 ExtendedKeyUsageNameIpsecEndSystem, 5304 ExtendedKeyUsageNameIpsecTunnel, 5305 ExtendedKeyUsageNameIpsecUser, 5306 ExtendedKeyUsageNameAny, 5307 ExtendedKeyUsageNameNone, 5308 ExtendedKeyUsageNameCustom, 5309 } 5310} 5311 5312const ( 5313 // FailureReasonNoAvailableContacts is a FailureReason enum value 5314 FailureReasonNoAvailableContacts = "NO_AVAILABLE_CONTACTS" 5315 5316 // FailureReasonAdditionalVerificationRequired is a FailureReason enum value 5317 FailureReasonAdditionalVerificationRequired = "ADDITIONAL_VERIFICATION_REQUIRED" 5318 5319 // FailureReasonDomainNotAllowed is a FailureReason enum value 5320 FailureReasonDomainNotAllowed = "DOMAIN_NOT_ALLOWED" 5321 5322 // FailureReasonInvalidPublicDomain is a FailureReason enum value 5323 FailureReasonInvalidPublicDomain = "INVALID_PUBLIC_DOMAIN" 5324 5325 // FailureReasonDomainValidationDenied is a FailureReason enum value 5326 FailureReasonDomainValidationDenied = "DOMAIN_VALIDATION_DENIED" 5327 5328 // FailureReasonCaaError is a FailureReason enum value 5329 FailureReasonCaaError = "CAA_ERROR" 5330 5331 // FailureReasonPcaLimitExceeded is a FailureReason enum value 5332 FailureReasonPcaLimitExceeded = "PCA_LIMIT_EXCEEDED" 5333 5334 // FailureReasonPcaInvalidArn is a FailureReason enum value 5335 FailureReasonPcaInvalidArn = "PCA_INVALID_ARN" 5336 5337 // FailureReasonPcaInvalidState is a FailureReason enum value 5338 FailureReasonPcaInvalidState = "PCA_INVALID_STATE" 5339 5340 // FailureReasonPcaRequestFailed is a FailureReason enum value 5341 FailureReasonPcaRequestFailed = "PCA_REQUEST_FAILED" 5342 5343 // FailureReasonPcaNameConstraintsValidation is a FailureReason enum value 5344 FailureReasonPcaNameConstraintsValidation = "PCA_NAME_CONSTRAINTS_VALIDATION" 5345 5346 // FailureReasonPcaResourceNotFound is a FailureReason enum value 5347 FailureReasonPcaResourceNotFound = "PCA_RESOURCE_NOT_FOUND" 5348 5349 // FailureReasonPcaInvalidArgs is a FailureReason enum value 5350 FailureReasonPcaInvalidArgs = "PCA_INVALID_ARGS" 5351 5352 // FailureReasonPcaInvalidDuration is a FailureReason enum value 5353 FailureReasonPcaInvalidDuration = "PCA_INVALID_DURATION" 5354 5355 // FailureReasonPcaAccessDenied is a FailureReason enum value 5356 FailureReasonPcaAccessDenied = "PCA_ACCESS_DENIED" 5357 5358 // FailureReasonSlrNotFound is a FailureReason enum value 5359 FailureReasonSlrNotFound = "SLR_NOT_FOUND" 5360 5361 // FailureReasonOther is a FailureReason enum value 5362 FailureReasonOther = "OTHER" 5363) 5364 5365// FailureReason_Values returns all elements of the FailureReason enum 5366func FailureReason_Values() []string { 5367 return []string{ 5368 FailureReasonNoAvailableContacts, 5369 FailureReasonAdditionalVerificationRequired, 5370 FailureReasonDomainNotAllowed, 5371 FailureReasonInvalidPublicDomain, 5372 FailureReasonDomainValidationDenied, 5373 FailureReasonCaaError, 5374 FailureReasonPcaLimitExceeded, 5375 FailureReasonPcaInvalidArn, 5376 FailureReasonPcaInvalidState, 5377 FailureReasonPcaRequestFailed, 5378 FailureReasonPcaNameConstraintsValidation, 5379 FailureReasonPcaResourceNotFound, 5380 FailureReasonPcaInvalidArgs, 5381 FailureReasonPcaInvalidDuration, 5382 FailureReasonPcaAccessDenied, 5383 FailureReasonSlrNotFound, 5384 FailureReasonOther, 5385 } 5386} 5387 5388const ( 5389 // KeyAlgorithmRsa1024 is a KeyAlgorithm enum value 5390 KeyAlgorithmRsa1024 = "RSA_1024" 5391 5392 // KeyAlgorithmRsa2048 is a KeyAlgorithm enum value 5393 KeyAlgorithmRsa2048 = "RSA_2048" 5394 5395 // KeyAlgorithmRsa3072 is a KeyAlgorithm enum value 5396 KeyAlgorithmRsa3072 = "RSA_3072" 5397 5398 // KeyAlgorithmRsa4096 is a KeyAlgorithm enum value 5399 KeyAlgorithmRsa4096 = "RSA_4096" 5400 5401 // KeyAlgorithmEcPrime256v1 is a KeyAlgorithm enum value 5402 KeyAlgorithmEcPrime256v1 = "EC_prime256v1" 5403 5404 // KeyAlgorithmEcSecp384r1 is a KeyAlgorithm enum value 5405 KeyAlgorithmEcSecp384r1 = "EC_secp384r1" 5406 5407 // KeyAlgorithmEcSecp521r1 is a KeyAlgorithm enum value 5408 KeyAlgorithmEcSecp521r1 = "EC_secp521r1" 5409) 5410 5411// KeyAlgorithm_Values returns all elements of the KeyAlgorithm enum 5412func KeyAlgorithm_Values() []string { 5413 return []string{ 5414 KeyAlgorithmRsa1024, 5415 KeyAlgorithmRsa2048, 5416 KeyAlgorithmRsa3072, 5417 KeyAlgorithmRsa4096, 5418 KeyAlgorithmEcPrime256v1, 5419 KeyAlgorithmEcSecp384r1, 5420 KeyAlgorithmEcSecp521r1, 5421 } 5422} 5423 5424const ( 5425 // KeyUsageNameDigitalSignature is a KeyUsageName enum value 5426 KeyUsageNameDigitalSignature = "DIGITAL_SIGNATURE" 5427 5428 // KeyUsageNameNonRepudiation is a KeyUsageName enum value 5429 KeyUsageNameNonRepudiation = "NON_REPUDIATION" 5430 5431 // KeyUsageNameKeyEncipherment is a KeyUsageName enum value 5432 KeyUsageNameKeyEncipherment = "KEY_ENCIPHERMENT" 5433 5434 // KeyUsageNameDataEncipherment is a KeyUsageName enum value 5435 KeyUsageNameDataEncipherment = "DATA_ENCIPHERMENT" 5436 5437 // KeyUsageNameKeyAgreement is a KeyUsageName enum value 5438 KeyUsageNameKeyAgreement = "KEY_AGREEMENT" 5439 5440 // KeyUsageNameCertificateSigning is a KeyUsageName enum value 5441 KeyUsageNameCertificateSigning = "CERTIFICATE_SIGNING" 5442 5443 // KeyUsageNameCrlSigning is a KeyUsageName enum value 5444 KeyUsageNameCrlSigning = "CRL_SIGNING" 5445 5446 // KeyUsageNameEncipherOnly is a KeyUsageName enum value 5447 KeyUsageNameEncipherOnly = "ENCIPHER_ONLY" 5448 5449 // KeyUsageNameDecipherOnly is a KeyUsageName enum value 5450 KeyUsageNameDecipherOnly = "DECIPHER_ONLY" 5451 5452 // KeyUsageNameAny is a KeyUsageName enum value 5453 KeyUsageNameAny = "ANY" 5454 5455 // KeyUsageNameCustom is a KeyUsageName enum value 5456 KeyUsageNameCustom = "CUSTOM" 5457) 5458 5459// KeyUsageName_Values returns all elements of the KeyUsageName enum 5460func KeyUsageName_Values() []string { 5461 return []string{ 5462 KeyUsageNameDigitalSignature, 5463 KeyUsageNameNonRepudiation, 5464 KeyUsageNameKeyEncipherment, 5465 KeyUsageNameDataEncipherment, 5466 KeyUsageNameKeyAgreement, 5467 KeyUsageNameCertificateSigning, 5468 KeyUsageNameCrlSigning, 5469 KeyUsageNameEncipherOnly, 5470 KeyUsageNameDecipherOnly, 5471 KeyUsageNameAny, 5472 KeyUsageNameCustom, 5473 } 5474} 5475 5476const ( 5477 // RecordTypeCname is a RecordType enum value 5478 RecordTypeCname = "CNAME" 5479) 5480 5481// RecordType_Values returns all elements of the RecordType enum 5482func RecordType_Values() []string { 5483 return []string{ 5484 RecordTypeCname, 5485 } 5486} 5487 5488const ( 5489 // RenewalEligibilityEligible is a RenewalEligibility enum value 5490 RenewalEligibilityEligible = "ELIGIBLE" 5491 5492 // RenewalEligibilityIneligible is a RenewalEligibility enum value 5493 RenewalEligibilityIneligible = "INELIGIBLE" 5494) 5495 5496// RenewalEligibility_Values returns all elements of the RenewalEligibility enum 5497func RenewalEligibility_Values() []string { 5498 return []string{ 5499 RenewalEligibilityEligible, 5500 RenewalEligibilityIneligible, 5501 } 5502} 5503 5504const ( 5505 // RenewalStatusPendingAutoRenewal is a RenewalStatus enum value 5506 RenewalStatusPendingAutoRenewal = "PENDING_AUTO_RENEWAL" 5507 5508 // RenewalStatusPendingValidation is a RenewalStatus enum value 5509 RenewalStatusPendingValidation = "PENDING_VALIDATION" 5510 5511 // RenewalStatusSuccess is a RenewalStatus enum value 5512 RenewalStatusSuccess = "SUCCESS" 5513 5514 // RenewalStatusFailed is a RenewalStatus enum value 5515 RenewalStatusFailed = "FAILED" 5516) 5517 5518// RenewalStatus_Values returns all elements of the RenewalStatus enum 5519func RenewalStatus_Values() []string { 5520 return []string{ 5521 RenewalStatusPendingAutoRenewal, 5522 RenewalStatusPendingValidation, 5523 RenewalStatusSuccess, 5524 RenewalStatusFailed, 5525 } 5526} 5527 5528const ( 5529 // RevocationReasonUnspecified is a RevocationReason enum value 5530 RevocationReasonUnspecified = "UNSPECIFIED" 5531 5532 // RevocationReasonKeyCompromise is a RevocationReason enum value 5533 RevocationReasonKeyCompromise = "KEY_COMPROMISE" 5534 5535 // RevocationReasonCaCompromise is a RevocationReason enum value 5536 RevocationReasonCaCompromise = "CA_COMPROMISE" 5537 5538 // RevocationReasonAffiliationChanged is a RevocationReason enum value 5539 RevocationReasonAffiliationChanged = "AFFILIATION_CHANGED" 5540 5541 // RevocationReasonSuperceded is a RevocationReason enum value 5542 RevocationReasonSuperceded = "SUPERCEDED" 5543 5544 // RevocationReasonCessationOfOperation is a RevocationReason enum value 5545 RevocationReasonCessationOfOperation = "CESSATION_OF_OPERATION" 5546 5547 // RevocationReasonCertificateHold is a RevocationReason enum value 5548 RevocationReasonCertificateHold = "CERTIFICATE_HOLD" 5549 5550 // RevocationReasonRemoveFromCrl is a RevocationReason enum value 5551 RevocationReasonRemoveFromCrl = "REMOVE_FROM_CRL" 5552 5553 // RevocationReasonPrivilegeWithdrawn is a RevocationReason enum value 5554 RevocationReasonPrivilegeWithdrawn = "PRIVILEGE_WITHDRAWN" 5555 5556 // RevocationReasonAACompromise is a RevocationReason enum value 5557 RevocationReasonAACompromise = "A_A_COMPROMISE" 5558) 5559 5560// RevocationReason_Values returns all elements of the RevocationReason enum 5561func RevocationReason_Values() []string { 5562 return []string{ 5563 RevocationReasonUnspecified, 5564 RevocationReasonKeyCompromise, 5565 RevocationReasonCaCompromise, 5566 RevocationReasonAffiliationChanged, 5567 RevocationReasonSuperceded, 5568 RevocationReasonCessationOfOperation, 5569 RevocationReasonCertificateHold, 5570 RevocationReasonRemoveFromCrl, 5571 RevocationReasonPrivilegeWithdrawn, 5572 RevocationReasonAACompromise, 5573 } 5574} 5575 5576const ( 5577 // ValidationMethodEmail is a ValidationMethod enum value 5578 ValidationMethodEmail = "EMAIL" 5579 5580 // ValidationMethodDns is a ValidationMethod enum value 5581 ValidationMethodDns = "DNS" 5582) 5583 5584// ValidationMethod_Values returns all elements of the ValidationMethod enum 5585func ValidationMethod_Values() []string { 5586 return []string{ 5587 ValidationMethodEmail, 5588 ValidationMethodDns, 5589 } 5590} 5591