docs: func (s *IssueCertificateInput) Validate() error {
  	invalidParams := request.ErrInvalidParams{Context: "IssueCertificateInput"}
  	if s.CertificateAuthorityArn == nil {
  		invalidParams.Add(request.NewErrParamRequired("CertificateAuthorityArn"))
  	}
  	if s.CertificateAuthorityArn != nil && len(*s.CertificateAuthorityArn) < 5 {
  		invalidParams.Add(request.NewErrParamMinLen("CertificateAuthorityArn", 5))
  	}
  	if s.Csr == nil {
  		invalidParams.Add(request.NewErrParamRequired("Csr"))
  	}
  	if s.Csr != nil && len(s.Csr) < 1 {
  		invalidParams.Add(request.NewErrParamMinLen("Csr", 1))
  	}
  	if s.IdempotencyToken != nil && len(*s.IdempotencyToken) < 1 {
  		invalidParams.Add(request.NewErrParamMinLen("IdempotencyToken", 1))
  	}
  	if s.SigningAlgorithm == nil {
  		invalidParams.Add(request.NewErrParamRequired("SigningAlgorithm"))
  	}
  	if s.Validity == nil {
  		invalidParams.Add(request.NewErrParamRequired("Validity"))
  	}
  	if s.Validity != nil {
  		if err := s.Validity.Validate(); err != nil {
  			invalidParams.AddNested("Validity", err.(request.ErrInvalidParams))
  		}
  	}
  
  	if invalidParams.Len() > 0 {
  		return invalidParams
  	}
  	return nil
  }