github.com/aavshr/aws-sdk-go@v1.41.3/service/costandusagereportservice/api.go (about)

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package costandusagereportservice
     4  
     5  import (
     6  	"fmt"
     7  
     8  	"github.com/aavshr/aws-sdk-go/aws"
     9  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    10  	"github.com/aavshr/aws-sdk-go/aws/request"
    11  	"github.com/aavshr/aws-sdk-go/private/protocol"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol/jsonrpc"
    13  )
    14  
    15  const opDeleteReportDefinition = "DeleteReportDefinition"
    16  
    17  // DeleteReportDefinitionRequest generates a "aws/request.Request" representing the
    18  // client's request for the DeleteReportDefinition operation. The "output" return
    19  // value will be populated with the request's response once the request completes
    20  // successfully.
    21  //
    22  // Use "Send" method on the returned Request to send the API call to the service.
    23  // the "output" return value is not valid until after Send returns without error.
    24  //
    25  // See DeleteReportDefinition for more information on using the DeleteReportDefinition
    26  // API call, and error handling.
    27  //
    28  // This method is useful when you want to inject custom logic or configuration
    29  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    30  //
    31  //
    32  //    // Example sending a request using the DeleteReportDefinitionRequest method.
    33  //    req, resp := client.DeleteReportDefinitionRequest(params)
    34  //
    35  //    err := req.Send()
    36  //    if err == nil { // resp is now filled
    37  //        fmt.Println(resp)
    38  //    }
    39  //
    40  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/DeleteReportDefinition
    41  func (c *CostandUsageReportService) DeleteReportDefinitionRequest(input *DeleteReportDefinitionInput) (req *request.Request, output *DeleteReportDefinitionOutput) {
    42  	op := &request.Operation{
    43  		Name:       opDeleteReportDefinition,
    44  		HTTPMethod: "POST",
    45  		HTTPPath:   "/",
    46  	}
    47  
    48  	if input == nil {
    49  		input = &DeleteReportDefinitionInput{}
    50  	}
    51  
    52  	output = &DeleteReportDefinitionOutput{}
    53  	req = c.newRequest(op, input, output)
    54  	return
    55  }
    56  
    57  // DeleteReportDefinition API operation for AWS Cost and Usage Report Service.
    58  //
    59  // Deletes the specified report.
    60  //
    61  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    62  // with awserr.Error's Code and Message methods to get detailed information about
    63  // the error.
    64  //
    65  // See the AWS API reference guide for AWS Cost and Usage Report Service's
    66  // API operation DeleteReportDefinition for usage and error information.
    67  //
    68  // Returned Error Types:
    69  //   * InternalErrorException
    70  //   An error on the server occurred during the processing of your request. Try
    71  //   again later.
    72  //
    73  //   * ValidationException
    74  //   The input fails to satisfy the constraints specified by an AWS service.
    75  //
    76  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/DeleteReportDefinition
    77  func (c *CostandUsageReportService) DeleteReportDefinition(input *DeleteReportDefinitionInput) (*DeleteReportDefinitionOutput, error) {
    78  	req, out := c.DeleteReportDefinitionRequest(input)
    79  	return out, req.Send()
    80  }
    81  
    82  // DeleteReportDefinitionWithContext is the same as DeleteReportDefinition with the addition of
    83  // the ability to pass a context and additional request options.
    84  //
    85  // See DeleteReportDefinition for details on how to use this API operation.
    86  //
    87  // The context must be non-nil and will be used for request cancellation. If
    88  // the context is nil a panic will occur. In the future the SDK may create
    89  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    90  // for more information on using Contexts.
    91  func (c *CostandUsageReportService) DeleteReportDefinitionWithContext(ctx aws.Context, input *DeleteReportDefinitionInput, opts ...request.Option) (*DeleteReportDefinitionOutput, error) {
    92  	req, out := c.DeleteReportDefinitionRequest(input)
    93  	req.SetContext(ctx)
    94  	req.ApplyOptions(opts...)
    95  	return out, req.Send()
    96  }
    97  
    98  const opDescribeReportDefinitions = "DescribeReportDefinitions"
    99  
   100  // DescribeReportDefinitionsRequest generates a "aws/request.Request" representing the
   101  // client's request for the DescribeReportDefinitions operation. The "output" return
   102  // value will be populated with the request's response once the request completes
   103  // successfully.
   104  //
   105  // Use "Send" method on the returned Request to send the API call to the service.
   106  // the "output" return value is not valid until after Send returns without error.
   107  //
   108  // See DescribeReportDefinitions for more information on using the DescribeReportDefinitions
   109  // API call, and error handling.
   110  //
   111  // This method is useful when you want to inject custom logic or configuration
   112  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   113  //
   114  //
   115  //    // Example sending a request using the DescribeReportDefinitionsRequest method.
   116  //    req, resp := client.DescribeReportDefinitionsRequest(params)
   117  //
   118  //    err := req.Send()
   119  //    if err == nil { // resp is now filled
   120  //        fmt.Println(resp)
   121  //    }
   122  //
   123  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/DescribeReportDefinitions
   124  func (c *CostandUsageReportService) DescribeReportDefinitionsRequest(input *DescribeReportDefinitionsInput) (req *request.Request, output *DescribeReportDefinitionsOutput) {
   125  	op := &request.Operation{
   126  		Name:       opDescribeReportDefinitions,
   127  		HTTPMethod: "POST",
   128  		HTTPPath:   "/",
   129  		Paginator: &request.Paginator{
   130  			InputTokens:     []string{"NextToken"},
   131  			OutputTokens:    []string{"NextToken"},
   132  			LimitToken:      "MaxResults",
   133  			TruncationToken: "",
   134  		},
   135  	}
   136  
   137  	if input == nil {
   138  		input = &DescribeReportDefinitionsInput{}
   139  	}
   140  
   141  	output = &DescribeReportDefinitionsOutput{}
   142  	req = c.newRequest(op, input, output)
   143  	return
   144  }
   145  
   146  // DescribeReportDefinitions API operation for AWS Cost and Usage Report Service.
   147  //
   148  // Lists the AWS Cost and Usage reports available to this account.
   149  //
   150  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   151  // with awserr.Error's Code and Message methods to get detailed information about
   152  // the error.
   153  //
   154  // See the AWS API reference guide for AWS Cost and Usage Report Service's
   155  // API operation DescribeReportDefinitions for usage and error information.
   156  //
   157  // Returned Error Types:
   158  //   * InternalErrorException
   159  //   An error on the server occurred during the processing of your request. Try
   160  //   again later.
   161  //
   162  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/DescribeReportDefinitions
   163  func (c *CostandUsageReportService) DescribeReportDefinitions(input *DescribeReportDefinitionsInput) (*DescribeReportDefinitionsOutput, error) {
   164  	req, out := c.DescribeReportDefinitionsRequest(input)
   165  	return out, req.Send()
   166  }
   167  
   168  // DescribeReportDefinitionsWithContext is the same as DescribeReportDefinitions with the addition of
   169  // the ability to pass a context and additional request options.
   170  //
   171  // See DescribeReportDefinitions for details on how to use this API operation.
   172  //
   173  // The context must be non-nil and will be used for request cancellation. If
   174  // the context is nil a panic will occur. In the future the SDK may create
   175  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   176  // for more information on using Contexts.
   177  func (c *CostandUsageReportService) DescribeReportDefinitionsWithContext(ctx aws.Context, input *DescribeReportDefinitionsInput, opts ...request.Option) (*DescribeReportDefinitionsOutput, error) {
   178  	req, out := c.DescribeReportDefinitionsRequest(input)
   179  	req.SetContext(ctx)
   180  	req.ApplyOptions(opts...)
   181  	return out, req.Send()
   182  }
   183  
   184  // DescribeReportDefinitionsPages iterates over the pages of a DescribeReportDefinitions operation,
   185  // calling the "fn" function with the response data for each page. To stop
   186  // iterating, return false from the fn function.
   187  //
   188  // See DescribeReportDefinitions method for more information on how to use this operation.
   189  //
   190  // Note: This operation can generate multiple requests to a service.
   191  //
   192  //    // Example iterating over at most 3 pages of a DescribeReportDefinitions operation.
   193  //    pageNum := 0
   194  //    err := client.DescribeReportDefinitionsPages(params,
   195  //        func(page *costandusagereportservice.DescribeReportDefinitionsOutput, lastPage bool) bool {
   196  //            pageNum++
   197  //            fmt.Println(page)
   198  //            return pageNum <= 3
   199  //        })
   200  //
   201  func (c *CostandUsageReportService) DescribeReportDefinitionsPages(input *DescribeReportDefinitionsInput, fn func(*DescribeReportDefinitionsOutput, bool) bool) error {
   202  	return c.DescribeReportDefinitionsPagesWithContext(aws.BackgroundContext(), input, fn)
   203  }
   204  
   205  // DescribeReportDefinitionsPagesWithContext same as DescribeReportDefinitionsPages except
   206  // it takes a Context and allows setting request options on the pages.
   207  //
   208  // The context must be non-nil and will be used for request cancellation. If
   209  // the context is nil a panic will occur. In the future the SDK may create
   210  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   211  // for more information on using Contexts.
   212  func (c *CostandUsageReportService) DescribeReportDefinitionsPagesWithContext(ctx aws.Context, input *DescribeReportDefinitionsInput, fn func(*DescribeReportDefinitionsOutput, bool) bool, opts ...request.Option) error {
   213  	p := request.Pagination{
   214  		NewRequest: func() (*request.Request, error) {
   215  			var inCpy *DescribeReportDefinitionsInput
   216  			if input != nil {
   217  				tmp := *input
   218  				inCpy = &tmp
   219  			}
   220  			req, _ := c.DescribeReportDefinitionsRequest(inCpy)
   221  			req.SetContext(ctx)
   222  			req.ApplyOptions(opts...)
   223  			return req, nil
   224  		},
   225  	}
   226  
   227  	for p.Next() {
   228  		if !fn(p.Page().(*DescribeReportDefinitionsOutput), !p.HasNextPage()) {
   229  			break
   230  		}
   231  	}
   232  
   233  	return p.Err()
   234  }
   235  
   236  const opModifyReportDefinition = "ModifyReportDefinition"
   237  
   238  // ModifyReportDefinitionRequest generates a "aws/request.Request" representing the
   239  // client's request for the ModifyReportDefinition operation. The "output" return
   240  // value will be populated with the request's response once the request completes
   241  // successfully.
   242  //
   243  // Use "Send" method on the returned Request to send the API call to the service.
   244  // the "output" return value is not valid until after Send returns without error.
   245  //
   246  // See ModifyReportDefinition for more information on using the ModifyReportDefinition
   247  // API call, and error handling.
   248  //
   249  // This method is useful when you want to inject custom logic or configuration
   250  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   251  //
   252  //
   253  //    // Example sending a request using the ModifyReportDefinitionRequest method.
   254  //    req, resp := client.ModifyReportDefinitionRequest(params)
   255  //
   256  //    err := req.Send()
   257  //    if err == nil { // resp is now filled
   258  //        fmt.Println(resp)
   259  //    }
   260  //
   261  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/ModifyReportDefinition
   262  func (c *CostandUsageReportService) ModifyReportDefinitionRequest(input *ModifyReportDefinitionInput) (req *request.Request, output *ModifyReportDefinitionOutput) {
   263  	op := &request.Operation{
   264  		Name:       opModifyReportDefinition,
   265  		HTTPMethod: "POST",
   266  		HTTPPath:   "/",
   267  	}
   268  
   269  	if input == nil {
   270  		input = &ModifyReportDefinitionInput{}
   271  	}
   272  
   273  	output = &ModifyReportDefinitionOutput{}
   274  	req = c.newRequest(op, input, output)
   275  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   276  	return
   277  }
   278  
   279  // ModifyReportDefinition API operation for AWS Cost and Usage Report Service.
   280  //
   281  // Allows you to programatically update your report preferences.
   282  //
   283  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   284  // with awserr.Error's Code and Message methods to get detailed information about
   285  // the error.
   286  //
   287  // See the AWS API reference guide for AWS Cost and Usage Report Service's
   288  // API operation ModifyReportDefinition for usage and error information.
   289  //
   290  // Returned Error Types:
   291  //   * InternalErrorException
   292  //   An error on the server occurred during the processing of your request. Try
   293  //   again later.
   294  //
   295  //   * ValidationException
   296  //   The input fails to satisfy the constraints specified by an AWS service.
   297  //
   298  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/ModifyReportDefinition
   299  func (c *CostandUsageReportService) ModifyReportDefinition(input *ModifyReportDefinitionInput) (*ModifyReportDefinitionOutput, error) {
   300  	req, out := c.ModifyReportDefinitionRequest(input)
   301  	return out, req.Send()
   302  }
   303  
   304  // ModifyReportDefinitionWithContext is the same as ModifyReportDefinition with the addition of
   305  // the ability to pass a context and additional request options.
   306  //
   307  // See ModifyReportDefinition for details on how to use this API operation.
   308  //
   309  // The context must be non-nil and will be used for request cancellation. If
   310  // the context is nil a panic will occur. In the future the SDK may create
   311  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   312  // for more information on using Contexts.
   313  func (c *CostandUsageReportService) ModifyReportDefinitionWithContext(ctx aws.Context, input *ModifyReportDefinitionInput, opts ...request.Option) (*ModifyReportDefinitionOutput, error) {
   314  	req, out := c.ModifyReportDefinitionRequest(input)
   315  	req.SetContext(ctx)
   316  	req.ApplyOptions(opts...)
   317  	return out, req.Send()
   318  }
   319  
   320  const opPutReportDefinition = "PutReportDefinition"
   321  
   322  // PutReportDefinitionRequest generates a "aws/request.Request" representing the
   323  // client's request for the PutReportDefinition operation. The "output" return
   324  // value will be populated with the request's response once the request completes
   325  // successfully.
   326  //
   327  // Use "Send" method on the returned Request to send the API call to the service.
   328  // the "output" return value is not valid until after Send returns without error.
   329  //
   330  // See PutReportDefinition for more information on using the PutReportDefinition
   331  // API call, and error handling.
   332  //
   333  // This method is useful when you want to inject custom logic or configuration
   334  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   335  //
   336  //
   337  //    // Example sending a request using the PutReportDefinitionRequest method.
   338  //    req, resp := client.PutReportDefinitionRequest(params)
   339  //
   340  //    err := req.Send()
   341  //    if err == nil { // resp is now filled
   342  //        fmt.Println(resp)
   343  //    }
   344  //
   345  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/PutReportDefinition
   346  func (c *CostandUsageReportService) PutReportDefinitionRequest(input *PutReportDefinitionInput) (req *request.Request, output *PutReportDefinitionOutput) {
   347  	op := &request.Operation{
   348  		Name:       opPutReportDefinition,
   349  		HTTPMethod: "POST",
   350  		HTTPPath:   "/",
   351  	}
   352  
   353  	if input == nil {
   354  		input = &PutReportDefinitionInput{}
   355  	}
   356  
   357  	output = &PutReportDefinitionOutput{}
   358  	req = c.newRequest(op, input, output)
   359  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   360  	return
   361  }
   362  
   363  // PutReportDefinition API operation for AWS Cost and Usage Report Service.
   364  //
   365  // Creates a new report using the description that you provide.
   366  //
   367  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   368  // with awserr.Error's Code and Message methods to get detailed information about
   369  // the error.
   370  //
   371  // See the AWS API reference guide for AWS Cost and Usage Report Service's
   372  // API operation PutReportDefinition for usage and error information.
   373  //
   374  // Returned Error Types:
   375  //   * DuplicateReportNameException
   376  //   A report with the specified name already exists in the account. Specify a
   377  //   different report name.
   378  //
   379  //   * ReportLimitReachedException
   380  //   This account already has five reports defined. To define a new report, you
   381  //   must delete an existing report.
   382  //
   383  //   * InternalErrorException
   384  //   An error on the server occurred during the processing of your request. Try
   385  //   again later.
   386  //
   387  //   * ValidationException
   388  //   The input fails to satisfy the constraints specified by an AWS service.
   389  //
   390  // See also, https://docs.aws.amazon.com/goto/WebAPI/cur-2017-01-06/PutReportDefinition
   391  func (c *CostandUsageReportService) PutReportDefinition(input *PutReportDefinitionInput) (*PutReportDefinitionOutput, error) {
   392  	req, out := c.PutReportDefinitionRequest(input)
   393  	return out, req.Send()
   394  }
   395  
   396  // PutReportDefinitionWithContext is the same as PutReportDefinition with the addition of
   397  // the ability to pass a context and additional request options.
   398  //
   399  // See PutReportDefinition for details on how to use this API operation.
   400  //
   401  // The context must be non-nil and will be used for request cancellation. If
   402  // the context is nil a panic will occur. In the future the SDK may create
   403  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   404  // for more information on using Contexts.
   405  func (c *CostandUsageReportService) PutReportDefinitionWithContext(ctx aws.Context, input *PutReportDefinitionInput, opts ...request.Option) (*PutReportDefinitionOutput, error) {
   406  	req, out := c.PutReportDefinitionRequest(input)
   407  	req.SetContext(ctx)
   408  	req.ApplyOptions(opts...)
   409  	return out, req.Send()
   410  }
   411  
   412  // Deletes the specified report.
   413  type DeleteReportDefinitionInput struct {
   414  	_ struct{} `type:"structure"`
   415  
   416  	// The name of the report that you want to delete. The name must be unique,
   417  	// is case sensitive, and can't include spaces.
   418  	ReportName *string `type:"string"`
   419  }
   420  
   421  // String returns the string representation.
   422  //
   423  // API parameter values that are decorated as "sensitive" in the API will not
   424  // be included in the string output. The member name will be present, but the
   425  // value will be replaced with "sensitive".
   426  func (s DeleteReportDefinitionInput) String() string {
   427  	return awsutil.Prettify(s)
   428  }
   429  
   430  // GoString returns the string representation.
   431  //
   432  // API parameter values that are decorated as "sensitive" in the API will not
   433  // be included in the string output. The member name will be present, but the
   434  // value will be replaced with "sensitive".
   435  func (s DeleteReportDefinitionInput) GoString() string {
   436  	return s.String()
   437  }
   438  
   439  // SetReportName sets the ReportName field's value.
   440  func (s *DeleteReportDefinitionInput) SetReportName(v string) *DeleteReportDefinitionInput {
   441  	s.ReportName = &v
   442  	return s
   443  }
   444  
   445  // If the action is successful, the service sends back an HTTP 200 response.
   446  type DeleteReportDefinitionOutput struct {
   447  	_ struct{} `type:"structure"`
   448  
   449  	// Whether the deletion was successful or not.
   450  	ResponseMessage *string `type:"string"`
   451  }
   452  
   453  // String returns the string representation.
   454  //
   455  // API parameter values that are decorated as "sensitive" in the API will not
   456  // be included in the string output. The member name will be present, but the
   457  // value will be replaced with "sensitive".
   458  func (s DeleteReportDefinitionOutput) String() string {
   459  	return awsutil.Prettify(s)
   460  }
   461  
   462  // GoString returns the string representation.
   463  //
   464  // API parameter values that are decorated as "sensitive" in the API will not
   465  // be included in the string output. The member name will be present, but the
   466  // value will be replaced with "sensitive".
   467  func (s DeleteReportDefinitionOutput) GoString() string {
   468  	return s.String()
   469  }
   470  
   471  // SetResponseMessage sets the ResponseMessage field's value.
   472  func (s *DeleteReportDefinitionOutput) SetResponseMessage(v string) *DeleteReportDefinitionOutput {
   473  	s.ResponseMessage = &v
   474  	return s
   475  }
   476  
   477  // Requests a list of AWS Cost and Usage reports owned by the account.
   478  type DescribeReportDefinitionsInput struct {
   479  	_ struct{} `type:"structure"`
   480  
   481  	// The maximum number of results that AWS returns for the operation.
   482  	MaxResults *int64 `min:"5" type:"integer"`
   483  
   484  	// A generic string.
   485  	NextToken *string `type:"string"`
   486  }
   487  
   488  // String returns the string representation.
   489  //
   490  // API parameter values that are decorated as "sensitive" in the API will not
   491  // be included in the string output. The member name will be present, but the
   492  // value will be replaced with "sensitive".
   493  func (s DescribeReportDefinitionsInput) String() string {
   494  	return awsutil.Prettify(s)
   495  }
   496  
   497  // GoString returns the string representation.
   498  //
   499  // API parameter values that are decorated as "sensitive" in the API will not
   500  // be included in the string output. The member name will be present, but the
   501  // value will be replaced with "sensitive".
   502  func (s DescribeReportDefinitionsInput) GoString() string {
   503  	return s.String()
   504  }
   505  
   506  // Validate inspects the fields of the type to determine if they are valid.
   507  func (s *DescribeReportDefinitionsInput) Validate() error {
   508  	invalidParams := request.ErrInvalidParams{Context: "DescribeReportDefinitionsInput"}
   509  	if s.MaxResults != nil && *s.MaxResults < 5 {
   510  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5))
   511  	}
   512  
   513  	if invalidParams.Len() > 0 {
   514  		return invalidParams
   515  	}
   516  	return nil
   517  }
   518  
   519  // SetMaxResults sets the MaxResults field's value.
   520  func (s *DescribeReportDefinitionsInput) SetMaxResults(v int64) *DescribeReportDefinitionsInput {
   521  	s.MaxResults = &v
   522  	return s
   523  }
   524  
   525  // SetNextToken sets the NextToken field's value.
   526  func (s *DescribeReportDefinitionsInput) SetNextToken(v string) *DescribeReportDefinitionsInput {
   527  	s.NextToken = &v
   528  	return s
   529  }
   530  
   531  // If the action is successful, the service sends back an HTTP 200 response.
   532  type DescribeReportDefinitionsOutput struct {
   533  	_ struct{} `type:"structure"`
   534  
   535  	// A generic string.
   536  	NextToken *string `type:"string"`
   537  
   538  	// A list of AWS Cost and Usage reports owned by the account.
   539  	ReportDefinitions []*ReportDefinition `type:"list"`
   540  }
   541  
   542  // String returns the string representation.
   543  //
   544  // API parameter values that are decorated as "sensitive" in the API will not
   545  // be included in the string output. The member name will be present, but the
   546  // value will be replaced with "sensitive".
   547  func (s DescribeReportDefinitionsOutput) String() string {
   548  	return awsutil.Prettify(s)
   549  }
   550  
   551  // GoString returns the string representation.
   552  //
   553  // API parameter values that are decorated as "sensitive" in the API will not
   554  // be included in the string output. The member name will be present, but the
   555  // value will be replaced with "sensitive".
   556  func (s DescribeReportDefinitionsOutput) GoString() string {
   557  	return s.String()
   558  }
   559  
   560  // SetNextToken sets the NextToken field's value.
   561  func (s *DescribeReportDefinitionsOutput) SetNextToken(v string) *DescribeReportDefinitionsOutput {
   562  	s.NextToken = &v
   563  	return s
   564  }
   565  
   566  // SetReportDefinitions sets the ReportDefinitions field's value.
   567  func (s *DescribeReportDefinitionsOutput) SetReportDefinitions(v []*ReportDefinition) *DescribeReportDefinitionsOutput {
   568  	s.ReportDefinitions = v
   569  	return s
   570  }
   571  
   572  // A report with the specified name already exists in the account. Specify a
   573  // different report name.
   574  type DuplicateReportNameException struct {
   575  	_            struct{}                  `type:"structure"`
   576  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
   577  
   578  	// A message to show the detail of the exception.
   579  	Message_ *string `locationName:"Message" type:"string"`
   580  }
   581  
   582  // String returns the string representation.
   583  //
   584  // API parameter values that are decorated as "sensitive" in the API will not
   585  // be included in the string output. The member name will be present, but the
   586  // value will be replaced with "sensitive".
   587  func (s DuplicateReportNameException) String() string {
   588  	return awsutil.Prettify(s)
   589  }
   590  
   591  // GoString returns the string representation.
   592  //
   593  // API parameter values that are decorated as "sensitive" in the API will not
   594  // be included in the string output. The member name will be present, but the
   595  // value will be replaced with "sensitive".
   596  func (s DuplicateReportNameException) GoString() string {
   597  	return s.String()
   598  }
   599  
   600  func newErrorDuplicateReportNameException(v protocol.ResponseMetadata) error {
   601  	return &DuplicateReportNameException{
   602  		RespMetadata: v,
   603  	}
   604  }
   605  
   606  // Code returns the exception type name.
   607  func (s *DuplicateReportNameException) Code() string {
   608  	return "DuplicateReportNameException"
   609  }
   610  
   611  // Message returns the exception's message.
   612  func (s *DuplicateReportNameException) Message() string {
   613  	if s.Message_ != nil {
   614  		return *s.Message_
   615  	}
   616  	return ""
   617  }
   618  
   619  // OrigErr always returns nil, satisfies awserr.Error interface.
   620  func (s *DuplicateReportNameException) OrigErr() error {
   621  	return nil
   622  }
   623  
   624  func (s *DuplicateReportNameException) Error() string {
   625  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
   626  }
   627  
   628  // Status code returns the HTTP status code for the request's response error.
   629  func (s *DuplicateReportNameException) StatusCode() int {
   630  	return s.RespMetadata.StatusCode
   631  }
   632  
   633  // RequestID returns the service's response RequestID for request.
   634  func (s *DuplicateReportNameException) RequestID() string {
   635  	return s.RespMetadata.RequestID
   636  }
   637  
   638  // An error on the server occurred during the processing of your request. Try
   639  // again later.
   640  type InternalErrorException struct {
   641  	_            struct{}                  `type:"structure"`
   642  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
   643  
   644  	// A message to show the detail of the exception.
   645  	Message_ *string `locationName:"Message" type:"string"`
   646  }
   647  
   648  // String returns the string representation.
   649  //
   650  // API parameter values that are decorated as "sensitive" in the API will not
   651  // be included in the string output. The member name will be present, but the
   652  // value will be replaced with "sensitive".
   653  func (s InternalErrorException) String() string {
   654  	return awsutil.Prettify(s)
   655  }
   656  
   657  // GoString returns the string representation.
   658  //
   659  // API parameter values that are decorated as "sensitive" in the API will not
   660  // be included in the string output. The member name will be present, but the
   661  // value will be replaced with "sensitive".
   662  func (s InternalErrorException) GoString() string {
   663  	return s.String()
   664  }
   665  
   666  func newErrorInternalErrorException(v protocol.ResponseMetadata) error {
   667  	return &InternalErrorException{
   668  		RespMetadata: v,
   669  	}
   670  }
   671  
   672  // Code returns the exception type name.
   673  func (s *InternalErrorException) Code() string {
   674  	return "InternalErrorException"
   675  }
   676  
   677  // Message returns the exception's message.
   678  func (s *InternalErrorException) Message() string {
   679  	if s.Message_ != nil {
   680  		return *s.Message_
   681  	}
   682  	return ""
   683  }
   684  
   685  // OrigErr always returns nil, satisfies awserr.Error interface.
   686  func (s *InternalErrorException) OrigErr() error {
   687  	return nil
   688  }
   689  
   690  func (s *InternalErrorException) Error() string {
   691  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
   692  }
   693  
   694  // Status code returns the HTTP status code for the request's response error.
   695  func (s *InternalErrorException) StatusCode() int {
   696  	return s.RespMetadata.StatusCode
   697  }
   698  
   699  // RequestID returns the service's response RequestID for request.
   700  func (s *InternalErrorException) RequestID() string {
   701  	return s.RespMetadata.RequestID
   702  }
   703  
   704  type ModifyReportDefinitionInput struct {
   705  	_ struct{} `type:"structure"`
   706  
   707  	// The definition of AWS Cost and Usage Report. You can specify the report name,
   708  	// time unit, report format, compression format, S3 bucket, additional artifacts,
   709  	// and schema elements in the definition.
   710  	//
   711  	// ReportDefinition is a required field
   712  	ReportDefinition *ReportDefinition `type:"structure" required:"true"`
   713  
   714  	// The name of the report that you want to create. The name must be unique,
   715  	// is case sensitive, and can't include spaces.
   716  	//
   717  	// ReportName is a required field
   718  	ReportName *string `type:"string" required:"true"`
   719  }
   720  
   721  // String returns the string representation.
   722  //
   723  // API parameter values that are decorated as "sensitive" in the API will not
   724  // be included in the string output. The member name will be present, but the
   725  // value will be replaced with "sensitive".
   726  func (s ModifyReportDefinitionInput) String() string {
   727  	return awsutil.Prettify(s)
   728  }
   729  
   730  // GoString returns the string representation.
   731  //
   732  // API parameter values that are decorated as "sensitive" in the API will not
   733  // be included in the string output. The member name will be present, but the
   734  // value will be replaced with "sensitive".
   735  func (s ModifyReportDefinitionInput) GoString() string {
   736  	return s.String()
   737  }
   738  
   739  // Validate inspects the fields of the type to determine if they are valid.
   740  func (s *ModifyReportDefinitionInput) Validate() error {
   741  	invalidParams := request.ErrInvalidParams{Context: "ModifyReportDefinitionInput"}
   742  	if s.ReportDefinition == nil {
   743  		invalidParams.Add(request.NewErrParamRequired("ReportDefinition"))
   744  	}
   745  	if s.ReportName == nil {
   746  		invalidParams.Add(request.NewErrParamRequired("ReportName"))
   747  	}
   748  	if s.ReportDefinition != nil {
   749  		if err := s.ReportDefinition.Validate(); err != nil {
   750  			invalidParams.AddNested("ReportDefinition", err.(request.ErrInvalidParams))
   751  		}
   752  	}
   753  
   754  	if invalidParams.Len() > 0 {
   755  		return invalidParams
   756  	}
   757  	return nil
   758  }
   759  
   760  // SetReportDefinition sets the ReportDefinition field's value.
   761  func (s *ModifyReportDefinitionInput) SetReportDefinition(v *ReportDefinition) *ModifyReportDefinitionInput {
   762  	s.ReportDefinition = v
   763  	return s
   764  }
   765  
   766  // SetReportName sets the ReportName field's value.
   767  func (s *ModifyReportDefinitionInput) SetReportName(v string) *ModifyReportDefinitionInput {
   768  	s.ReportName = &v
   769  	return s
   770  }
   771  
   772  type ModifyReportDefinitionOutput struct {
   773  	_ struct{} `type:"structure"`
   774  }
   775  
   776  // String returns the string representation.
   777  //
   778  // API parameter values that are decorated as "sensitive" in the API will not
   779  // be included in the string output. The member name will be present, but the
   780  // value will be replaced with "sensitive".
   781  func (s ModifyReportDefinitionOutput) String() string {
   782  	return awsutil.Prettify(s)
   783  }
   784  
   785  // GoString returns the string representation.
   786  //
   787  // API parameter values that are decorated as "sensitive" in the API will not
   788  // be included in the string output. The member name will be present, but the
   789  // value will be replaced with "sensitive".
   790  func (s ModifyReportDefinitionOutput) GoString() string {
   791  	return s.String()
   792  }
   793  
   794  // Creates a Cost and Usage Report.
   795  type PutReportDefinitionInput struct {
   796  	_ struct{} `type:"structure"`
   797  
   798  	// Represents the output of the PutReportDefinition operation. The content consists
   799  	// of the detailed metadata and data file information.
   800  	//
   801  	// ReportDefinition is a required field
   802  	ReportDefinition *ReportDefinition `type:"structure" required:"true"`
   803  }
   804  
   805  // String returns the string representation.
   806  //
   807  // API parameter values that are decorated as "sensitive" in the API will not
   808  // be included in the string output. The member name will be present, but the
   809  // value will be replaced with "sensitive".
   810  func (s PutReportDefinitionInput) String() string {
   811  	return awsutil.Prettify(s)
   812  }
   813  
   814  // GoString returns the string representation.
   815  //
   816  // API parameter values that are decorated as "sensitive" in the API will not
   817  // be included in the string output. The member name will be present, but the
   818  // value will be replaced with "sensitive".
   819  func (s PutReportDefinitionInput) GoString() string {
   820  	return s.String()
   821  }
   822  
   823  // Validate inspects the fields of the type to determine if they are valid.
   824  func (s *PutReportDefinitionInput) Validate() error {
   825  	invalidParams := request.ErrInvalidParams{Context: "PutReportDefinitionInput"}
   826  	if s.ReportDefinition == nil {
   827  		invalidParams.Add(request.NewErrParamRequired("ReportDefinition"))
   828  	}
   829  	if s.ReportDefinition != nil {
   830  		if err := s.ReportDefinition.Validate(); err != nil {
   831  			invalidParams.AddNested("ReportDefinition", err.(request.ErrInvalidParams))
   832  		}
   833  	}
   834  
   835  	if invalidParams.Len() > 0 {
   836  		return invalidParams
   837  	}
   838  	return nil
   839  }
   840  
   841  // SetReportDefinition sets the ReportDefinition field's value.
   842  func (s *PutReportDefinitionInput) SetReportDefinition(v *ReportDefinition) *PutReportDefinitionInput {
   843  	s.ReportDefinition = v
   844  	return s
   845  }
   846  
   847  // If the action is successful, the service sends back an HTTP 200 response
   848  // with an empty HTTP body.
   849  type PutReportDefinitionOutput struct {
   850  	_ struct{} `type:"structure"`
   851  }
   852  
   853  // String returns the string representation.
   854  //
   855  // API parameter values that are decorated as "sensitive" in the API will not
   856  // be included in the string output. The member name will be present, but the
   857  // value will be replaced with "sensitive".
   858  func (s PutReportDefinitionOutput) String() string {
   859  	return awsutil.Prettify(s)
   860  }
   861  
   862  // GoString returns the string representation.
   863  //
   864  // API parameter values that are decorated as "sensitive" in the API will not
   865  // be included in the string output. The member name will be present, but the
   866  // value will be replaced with "sensitive".
   867  func (s PutReportDefinitionOutput) GoString() string {
   868  	return s.String()
   869  }
   870  
   871  // The definition of AWS Cost and Usage Report. You can specify the report name,
   872  // time unit, report format, compression format, S3 bucket, additional artifacts,
   873  // and schema elements in the definition.
   874  type ReportDefinition struct {
   875  	_ struct{} `type:"structure"`
   876  
   877  	// A list of manifests that you want Amazon Web Services to create for this
   878  	// report.
   879  	AdditionalArtifacts []*string `type:"list"`
   880  
   881  	// A list of strings that indicate additional content that Amazon Web Services
   882  	// includes in the report, such as individual resource IDs.
   883  	//
   884  	// AdditionalSchemaElements is a required field
   885  	AdditionalSchemaElements []*string `type:"list" required:"true"`
   886  
   887  	// The Amazon resource name of the billing view. You can get this value by using
   888  	// the billing view service public APIs.
   889  	BillingViewArn *string `type:"string"`
   890  
   891  	// The compression format that AWS uses for the report.
   892  	//
   893  	// Compression is a required field
   894  	Compression *string `type:"string" required:"true" enum:"CompressionFormat"`
   895  
   896  	// The format that AWS saves the report in.
   897  	//
   898  	// Format is a required field
   899  	Format *string `type:"string" required:"true" enum:"ReportFormat"`
   900  
   901  	// Whether you want Amazon Web Services to update your reports after they have
   902  	// been finalized if Amazon Web Services detects charges related to previous
   903  	// months. These charges can include refunds, credits, or support fees.
   904  	RefreshClosedReports *bool `type:"boolean"`
   905  
   906  	// The name of the report that you want to create. The name must be unique,
   907  	// is case sensitive, and can't include spaces.
   908  	//
   909  	// ReportName is a required field
   910  	ReportName *string `type:"string" required:"true"`
   911  
   912  	// Whether you want Amazon Web Services to overwrite the previous version of
   913  	// each report or to deliver the report in addition to the previous versions.
   914  	ReportVersioning *string `type:"string" enum:"ReportVersioning"`
   915  
   916  	// The S3 bucket where AWS delivers the report.
   917  	//
   918  	// S3Bucket is a required field
   919  	S3Bucket *string `type:"string" required:"true"`
   920  
   921  	// The prefix that AWS adds to the report name when AWS delivers the report.
   922  	// Your prefix can't include spaces.
   923  	//
   924  	// S3Prefix is a required field
   925  	S3Prefix *string `type:"string" required:"true"`
   926  
   927  	// The region of the S3 bucket that AWS delivers the report into.
   928  	//
   929  	// S3Region is a required field
   930  	S3Region *string `type:"string" required:"true" enum:"AWSRegion"`
   931  
   932  	// The length of time covered by the report.
   933  	//
   934  	// TimeUnit is a required field
   935  	TimeUnit *string `type:"string" required:"true" enum:"TimeUnit"`
   936  }
   937  
   938  // String returns the string representation.
   939  //
   940  // API parameter values that are decorated as "sensitive" in the API will not
   941  // be included in the string output. The member name will be present, but the
   942  // value will be replaced with "sensitive".
   943  func (s ReportDefinition) String() string {
   944  	return awsutil.Prettify(s)
   945  }
   946  
   947  // GoString returns the string representation.
   948  //
   949  // API parameter values that are decorated as "sensitive" in the API will not
   950  // be included in the string output. The member name will be present, but the
   951  // value will be replaced with "sensitive".
   952  func (s ReportDefinition) GoString() string {
   953  	return s.String()
   954  }
   955  
   956  // Validate inspects the fields of the type to determine if they are valid.
   957  func (s *ReportDefinition) Validate() error {
   958  	invalidParams := request.ErrInvalidParams{Context: "ReportDefinition"}
   959  	if s.AdditionalSchemaElements == nil {
   960  		invalidParams.Add(request.NewErrParamRequired("AdditionalSchemaElements"))
   961  	}
   962  	if s.Compression == nil {
   963  		invalidParams.Add(request.NewErrParamRequired("Compression"))
   964  	}
   965  	if s.Format == nil {
   966  		invalidParams.Add(request.NewErrParamRequired("Format"))
   967  	}
   968  	if s.ReportName == nil {
   969  		invalidParams.Add(request.NewErrParamRequired("ReportName"))
   970  	}
   971  	if s.S3Bucket == nil {
   972  		invalidParams.Add(request.NewErrParamRequired("S3Bucket"))
   973  	}
   974  	if s.S3Prefix == nil {
   975  		invalidParams.Add(request.NewErrParamRequired("S3Prefix"))
   976  	}
   977  	if s.S3Region == nil {
   978  		invalidParams.Add(request.NewErrParamRequired("S3Region"))
   979  	}
   980  	if s.TimeUnit == nil {
   981  		invalidParams.Add(request.NewErrParamRequired("TimeUnit"))
   982  	}
   983  
   984  	if invalidParams.Len() > 0 {
   985  		return invalidParams
   986  	}
   987  	return nil
   988  }
   989  
   990  // SetAdditionalArtifacts sets the AdditionalArtifacts field's value.
   991  func (s *ReportDefinition) SetAdditionalArtifacts(v []*string) *ReportDefinition {
   992  	s.AdditionalArtifacts = v
   993  	return s
   994  }
   995  
   996  // SetAdditionalSchemaElements sets the AdditionalSchemaElements field's value.
   997  func (s *ReportDefinition) SetAdditionalSchemaElements(v []*string) *ReportDefinition {
   998  	s.AdditionalSchemaElements = v
   999  	return s
  1000  }
  1001  
  1002  // SetBillingViewArn sets the BillingViewArn field's value.
  1003  func (s *ReportDefinition) SetBillingViewArn(v string) *ReportDefinition {
  1004  	s.BillingViewArn = &v
  1005  	return s
  1006  }
  1007  
  1008  // SetCompression sets the Compression field's value.
  1009  func (s *ReportDefinition) SetCompression(v string) *ReportDefinition {
  1010  	s.Compression = &v
  1011  	return s
  1012  }
  1013  
  1014  // SetFormat sets the Format field's value.
  1015  func (s *ReportDefinition) SetFormat(v string) *ReportDefinition {
  1016  	s.Format = &v
  1017  	return s
  1018  }
  1019  
  1020  // SetRefreshClosedReports sets the RefreshClosedReports field's value.
  1021  func (s *ReportDefinition) SetRefreshClosedReports(v bool) *ReportDefinition {
  1022  	s.RefreshClosedReports = &v
  1023  	return s
  1024  }
  1025  
  1026  // SetReportName sets the ReportName field's value.
  1027  func (s *ReportDefinition) SetReportName(v string) *ReportDefinition {
  1028  	s.ReportName = &v
  1029  	return s
  1030  }
  1031  
  1032  // SetReportVersioning sets the ReportVersioning field's value.
  1033  func (s *ReportDefinition) SetReportVersioning(v string) *ReportDefinition {
  1034  	s.ReportVersioning = &v
  1035  	return s
  1036  }
  1037  
  1038  // SetS3Bucket sets the S3Bucket field's value.
  1039  func (s *ReportDefinition) SetS3Bucket(v string) *ReportDefinition {
  1040  	s.S3Bucket = &v
  1041  	return s
  1042  }
  1043  
  1044  // SetS3Prefix sets the S3Prefix field's value.
  1045  func (s *ReportDefinition) SetS3Prefix(v string) *ReportDefinition {
  1046  	s.S3Prefix = &v
  1047  	return s
  1048  }
  1049  
  1050  // SetS3Region sets the S3Region field's value.
  1051  func (s *ReportDefinition) SetS3Region(v string) *ReportDefinition {
  1052  	s.S3Region = &v
  1053  	return s
  1054  }
  1055  
  1056  // SetTimeUnit sets the TimeUnit field's value.
  1057  func (s *ReportDefinition) SetTimeUnit(v string) *ReportDefinition {
  1058  	s.TimeUnit = &v
  1059  	return s
  1060  }
  1061  
  1062  // This account already has five reports defined. To define a new report, you
  1063  // must delete an existing report.
  1064  type ReportLimitReachedException struct {
  1065  	_            struct{}                  `type:"structure"`
  1066  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1067  
  1068  	// A message to show the detail of the exception.
  1069  	Message_ *string `locationName:"Message" type:"string"`
  1070  }
  1071  
  1072  // String returns the string representation.
  1073  //
  1074  // API parameter values that are decorated as "sensitive" in the API will not
  1075  // be included in the string output. The member name will be present, but the
  1076  // value will be replaced with "sensitive".
  1077  func (s ReportLimitReachedException) String() string {
  1078  	return awsutil.Prettify(s)
  1079  }
  1080  
  1081  // GoString returns the string representation.
  1082  //
  1083  // API parameter values that are decorated as "sensitive" in the API will not
  1084  // be included in the string output. The member name will be present, but the
  1085  // value will be replaced with "sensitive".
  1086  func (s ReportLimitReachedException) GoString() string {
  1087  	return s.String()
  1088  }
  1089  
  1090  func newErrorReportLimitReachedException(v protocol.ResponseMetadata) error {
  1091  	return &ReportLimitReachedException{
  1092  		RespMetadata: v,
  1093  	}
  1094  }
  1095  
  1096  // Code returns the exception type name.
  1097  func (s *ReportLimitReachedException) Code() string {
  1098  	return "ReportLimitReachedException"
  1099  }
  1100  
  1101  // Message returns the exception's message.
  1102  func (s *ReportLimitReachedException) Message() string {
  1103  	if s.Message_ != nil {
  1104  		return *s.Message_
  1105  	}
  1106  	return ""
  1107  }
  1108  
  1109  // OrigErr always returns nil, satisfies awserr.Error interface.
  1110  func (s *ReportLimitReachedException) OrigErr() error {
  1111  	return nil
  1112  }
  1113  
  1114  func (s *ReportLimitReachedException) Error() string {
  1115  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  1116  }
  1117  
  1118  // Status code returns the HTTP status code for the request's response error.
  1119  func (s *ReportLimitReachedException) StatusCode() int {
  1120  	return s.RespMetadata.StatusCode
  1121  }
  1122  
  1123  // RequestID returns the service's response RequestID for request.
  1124  func (s *ReportLimitReachedException) RequestID() string {
  1125  	return s.RespMetadata.RequestID
  1126  }
  1127  
  1128  // The input fails to satisfy the constraints specified by an AWS service.
  1129  type ValidationException struct {
  1130  	_            struct{}                  `type:"structure"`
  1131  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1132  
  1133  	// A message to show the detail of the exception.
  1134  	Message_ *string `locationName:"Message" type:"string"`
  1135  }
  1136  
  1137  // String returns the string representation.
  1138  //
  1139  // API parameter values that are decorated as "sensitive" in the API will not
  1140  // be included in the string output. The member name will be present, but the
  1141  // value will be replaced with "sensitive".
  1142  func (s ValidationException) String() string {
  1143  	return awsutil.Prettify(s)
  1144  }
  1145  
  1146  // GoString returns the string representation.
  1147  //
  1148  // API parameter values that are decorated as "sensitive" in the API will not
  1149  // be included in the string output. The member name will be present, but the
  1150  // value will be replaced with "sensitive".
  1151  func (s ValidationException) GoString() string {
  1152  	return s.String()
  1153  }
  1154  
  1155  func newErrorValidationException(v protocol.ResponseMetadata) error {
  1156  	return &ValidationException{
  1157  		RespMetadata: v,
  1158  	}
  1159  }
  1160  
  1161  // Code returns the exception type name.
  1162  func (s *ValidationException) Code() string {
  1163  	return "ValidationException"
  1164  }
  1165  
  1166  // Message returns the exception's message.
  1167  func (s *ValidationException) Message() string {
  1168  	if s.Message_ != nil {
  1169  		return *s.Message_
  1170  	}
  1171  	return ""
  1172  }
  1173  
  1174  // OrigErr always returns nil, satisfies awserr.Error interface.
  1175  func (s *ValidationException) OrigErr() error {
  1176  	return nil
  1177  }
  1178  
  1179  func (s *ValidationException) Error() string {
  1180  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  1181  }
  1182  
  1183  // Status code returns the HTTP status code for the request's response error.
  1184  func (s *ValidationException) StatusCode() int {
  1185  	return s.RespMetadata.StatusCode
  1186  }
  1187  
  1188  // RequestID returns the service's response RequestID for request.
  1189  func (s *ValidationException) RequestID() string {
  1190  	return s.RespMetadata.RequestID
  1191  }
  1192  
  1193  // The region of the S3 bucket that AWS delivers the report into.
  1194  const (
  1195  	// AWSRegionAfSouth1 is a AWSRegion enum value
  1196  	AWSRegionAfSouth1 = "af-south-1"
  1197  
  1198  	// AWSRegionApEast1 is a AWSRegion enum value
  1199  	AWSRegionApEast1 = "ap-east-1"
  1200  
  1201  	// AWSRegionApSouth1 is a AWSRegion enum value
  1202  	AWSRegionApSouth1 = "ap-south-1"
  1203  
  1204  	// AWSRegionApSoutheast1 is a AWSRegion enum value
  1205  	AWSRegionApSoutheast1 = "ap-southeast-1"
  1206  
  1207  	// AWSRegionApSoutheast2 is a AWSRegion enum value
  1208  	AWSRegionApSoutheast2 = "ap-southeast-2"
  1209  
  1210  	// AWSRegionApNortheast1 is a AWSRegion enum value
  1211  	AWSRegionApNortheast1 = "ap-northeast-1"
  1212  
  1213  	// AWSRegionApNortheast2 is a AWSRegion enum value
  1214  	AWSRegionApNortheast2 = "ap-northeast-2"
  1215  
  1216  	// AWSRegionApNortheast3 is a AWSRegion enum value
  1217  	AWSRegionApNortheast3 = "ap-northeast-3"
  1218  
  1219  	// AWSRegionCaCentral1 is a AWSRegion enum value
  1220  	AWSRegionCaCentral1 = "ca-central-1"
  1221  
  1222  	// AWSRegionEuCentral1 is a AWSRegion enum value
  1223  	AWSRegionEuCentral1 = "eu-central-1"
  1224  
  1225  	// AWSRegionEuWest1 is a AWSRegion enum value
  1226  	AWSRegionEuWest1 = "eu-west-1"
  1227  
  1228  	// AWSRegionEuWest2 is a AWSRegion enum value
  1229  	AWSRegionEuWest2 = "eu-west-2"
  1230  
  1231  	// AWSRegionEuWest3 is a AWSRegion enum value
  1232  	AWSRegionEuWest3 = "eu-west-3"
  1233  
  1234  	// AWSRegionEuNorth1 is a AWSRegion enum value
  1235  	AWSRegionEuNorth1 = "eu-north-1"
  1236  
  1237  	// AWSRegionEuSouth1 is a AWSRegion enum value
  1238  	AWSRegionEuSouth1 = "eu-south-1"
  1239  
  1240  	// AWSRegionMeSouth1 is a AWSRegion enum value
  1241  	AWSRegionMeSouth1 = "me-south-1"
  1242  
  1243  	// AWSRegionSaEast1 is a AWSRegion enum value
  1244  	AWSRegionSaEast1 = "sa-east-1"
  1245  
  1246  	// AWSRegionUsEast1 is a AWSRegion enum value
  1247  	AWSRegionUsEast1 = "us-east-1"
  1248  
  1249  	// AWSRegionUsEast2 is a AWSRegion enum value
  1250  	AWSRegionUsEast2 = "us-east-2"
  1251  
  1252  	// AWSRegionUsWest1 is a AWSRegion enum value
  1253  	AWSRegionUsWest1 = "us-west-1"
  1254  
  1255  	// AWSRegionUsWest2 is a AWSRegion enum value
  1256  	AWSRegionUsWest2 = "us-west-2"
  1257  
  1258  	// AWSRegionCnNorth1 is a AWSRegion enum value
  1259  	AWSRegionCnNorth1 = "cn-north-1"
  1260  
  1261  	// AWSRegionCnNorthwest1 is a AWSRegion enum value
  1262  	AWSRegionCnNorthwest1 = "cn-northwest-1"
  1263  )
  1264  
  1265  // AWSRegion_Values returns all elements of the AWSRegion enum
  1266  func AWSRegion_Values() []string {
  1267  	return []string{
  1268  		AWSRegionAfSouth1,
  1269  		AWSRegionApEast1,
  1270  		AWSRegionApSouth1,
  1271  		AWSRegionApSoutheast1,
  1272  		AWSRegionApSoutheast2,
  1273  		AWSRegionApNortheast1,
  1274  		AWSRegionApNortheast2,
  1275  		AWSRegionApNortheast3,
  1276  		AWSRegionCaCentral1,
  1277  		AWSRegionEuCentral1,
  1278  		AWSRegionEuWest1,
  1279  		AWSRegionEuWest2,
  1280  		AWSRegionEuWest3,
  1281  		AWSRegionEuNorth1,
  1282  		AWSRegionEuSouth1,
  1283  		AWSRegionMeSouth1,
  1284  		AWSRegionSaEast1,
  1285  		AWSRegionUsEast1,
  1286  		AWSRegionUsEast2,
  1287  		AWSRegionUsWest1,
  1288  		AWSRegionUsWest2,
  1289  		AWSRegionCnNorth1,
  1290  		AWSRegionCnNorthwest1,
  1291  	}
  1292  }
  1293  
  1294  // The types of manifest that you want AWS to create for this report.
  1295  const (
  1296  	// AdditionalArtifactRedshift is a AdditionalArtifact enum value
  1297  	AdditionalArtifactRedshift = "REDSHIFT"
  1298  
  1299  	// AdditionalArtifactQuicksight is a AdditionalArtifact enum value
  1300  	AdditionalArtifactQuicksight = "QUICKSIGHT"
  1301  
  1302  	// AdditionalArtifactAthena is a AdditionalArtifact enum value
  1303  	AdditionalArtifactAthena = "ATHENA"
  1304  )
  1305  
  1306  // AdditionalArtifact_Values returns all elements of the AdditionalArtifact enum
  1307  func AdditionalArtifact_Values() []string {
  1308  	return []string{
  1309  		AdditionalArtifactRedshift,
  1310  		AdditionalArtifactQuicksight,
  1311  		AdditionalArtifactAthena,
  1312  	}
  1313  }
  1314  
  1315  // The compression format that AWS uses for the report.
  1316  const (
  1317  	// CompressionFormatZip is a CompressionFormat enum value
  1318  	CompressionFormatZip = "ZIP"
  1319  
  1320  	// CompressionFormatGzip is a CompressionFormat enum value
  1321  	CompressionFormatGzip = "GZIP"
  1322  
  1323  	// CompressionFormatParquet is a CompressionFormat enum value
  1324  	CompressionFormatParquet = "Parquet"
  1325  )
  1326  
  1327  // CompressionFormat_Values returns all elements of the CompressionFormat enum
  1328  func CompressionFormat_Values() []string {
  1329  	return []string{
  1330  		CompressionFormatZip,
  1331  		CompressionFormatGzip,
  1332  		CompressionFormatParquet,
  1333  	}
  1334  }
  1335  
  1336  // The format that AWS saves the report in.
  1337  const (
  1338  	// ReportFormatTextOrcsv is a ReportFormat enum value
  1339  	ReportFormatTextOrcsv = "textORcsv"
  1340  
  1341  	// ReportFormatParquet is a ReportFormat enum value
  1342  	ReportFormatParquet = "Parquet"
  1343  )
  1344  
  1345  // ReportFormat_Values returns all elements of the ReportFormat enum
  1346  func ReportFormat_Values() []string {
  1347  	return []string{
  1348  		ReportFormatTextOrcsv,
  1349  		ReportFormatParquet,
  1350  	}
  1351  }
  1352  
  1353  const (
  1354  	// ReportVersioningCreateNewReport is a ReportVersioning enum value
  1355  	ReportVersioningCreateNewReport = "CREATE_NEW_REPORT"
  1356  
  1357  	// ReportVersioningOverwriteReport is a ReportVersioning enum value
  1358  	ReportVersioningOverwriteReport = "OVERWRITE_REPORT"
  1359  )
  1360  
  1361  // ReportVersioning_Values returns all elements of the ReportVersioning enum
  1362  func ReportVersioning_Values() []string {
  1363  	return []string{
  1364  		ReportVersioningCreateNewReport,
  1365  		ReportVersioningOverwriteReport,
  1366  	}
  1367  }
  1368  
  1369  // Whether or not AWS includes resource IDs in the report.
  1370  const (
  1371  	// SchemaElementResources is a SchemaElement enum value
  1372  	SchemaElementResources = "RESOURCES"
  1373  )
  1374  
  1375  // SchemaElement_Values returns all elements of the SchemaElement enum
  1376  func SchemaElement_Values() []string {
  1377  	return []string{
  1378  		SchemaElementResources,
  1379  	}
  1380  }
  1381  
  1382  // The length of time covered by the report.
  1383  const (
  1384  	// TimeUnitHourly is a TimeUnit enum value
  1385  	TimeUnitHourly = "HOURLY"
  1386  
  1387  	// TimeUnitDaily is a TimeUnit enum value
  1388  	TimeUnitDaily = "DAILY"
  1389  
  1390  	// TimeUnitMonthly is a TimeUnit enum value
  1391  	TimeUnitMonthly = "MONTHLY"
  1392  )
  1393  
  1394  // TimeUnit_Values returns all elements of the TimeUnit enum
  1395  func TimeUnit_Values() []string {
  1396  	return []string{
  1397  		TimeUnitHourly,
  1398  		TimeUnitDaily,
  1399  		TimeUnitMonthly,
  1400  	}
  1401  }