File: //proc/self/root/opt/go/pkg/mod/github.com/aws/
[email protected]/service/billingconductor/api.go
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package billingconductor
import (
"fmt"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
"github.com/aws/aws-sdk-go/private/protocol"
"github.com/aws/aws-sdk-go/private/protocol/restjson"
)
const opAssociateAccounts = "AssociateAccounts"
// AssociateAccountsRequest generates a "aws/request.Request" representing the
// client's request for the AssociateAccounts operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See AssociateAccounts for more information on using the AssociateAccounts
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the AssociateAccountsRequest method.
// req, resp := client.AssociateAccountsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/AssociateAccounts
func (c *BillingConductor) AssociateAccountsRequest(input *AssociateAccountsInput) (req *request.Request, output *AssociateAccountsOutput) {
op := &request.Operation{
Name: opAssociateAccounts,
HTTPMethod: "POST",
HTTPPath: "/associate-accounts",
}
if input == nil {
input = &AssociateAccountsInput{}
}
output = &AssociateAccountsOutput{}
req = c.newRequest(op, input, output)
return
}
// AssociateAccounts API operation for AWSBillingConductor.
//
// Connects an array of account IDs in a consolidated billing family to a predefined
// billing group. The account IDs must be a part of the consolidated billing
// family during the current month, and not already associated with another
// billing group. The maximum number of accounts that can be associated in one
// call is 30.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation AssociateAccounts for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - ServiceLimitExceededException
// The request would cause a service limit to exceed.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/AssociateAccounts
func (c *BillingConductor) AssociateAccounts(input *AssociateAccountsInput) (*AssociateAccountsOutput, error) {
req, out := c.AssociateAccountsRequest(input)
return out, req.Send()
}
// AssociateAccountsWithContext is the same as AssociateAccounts with the addition of
// the ability to pass a context and additional request options.
//
// See AssociateAccounts for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) AssociateAccountsWithContext(ctx aws.Context, input *AssociateAccountsInput, opts ...request.Option) (*AssociateAccountsOutput, error) {
req, out := c.AssociateAccountsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opAssociatePricingRules = "AssociatePricingRules"
// AssociatePricingRulesRequest generates a "aws/request.Request" representing the
// client's request for the AssociatePricingRules operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See AssociatePricingRules for more information on using the AssociatePricingRules
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the AssociatePricingRulesRequest method.
// req, resp := client.AssociatePricingRulesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/AssociatePricingRules
func (c *BillingConductor) AssociatePricingRulesRequest(input *AssociatePricingRulesInput) (req *request.Request, output *AssociatePricingRulesOutput) {
op := &request.Operation{
Name: opAssociatePricingRules,
HTTPMethod: "PUT",
HTTPPath: "/associate-pricing-rules",
}
if input == nil {
input = &AssociatePricingRulesInput{}
}
output = &AssociatePricingRulesOutput{}
req = c.newRequest(op, input, output)
return
}
// AssociatePricingRules API operation for AWSBillingConductor.
//
// Connects an array of PricingRuleArns to a defined PricingPlan. The maximum
// number PricingRuleArn that can be associated in one call is 30.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation AssociatePricingRules for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - ServiceLimitExceededException
// The request would cause a service limit to exceed.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/AssociatePricingRules
func (c *BillingConductor) AssociatePricingRules(input *AssociatePricingRulesInput) (*AssociatePricingRulesOutput, error) {
req, out := c.AssociatePricingRulesRequest(input)
return out, req.Send()
}
// AssociatePricingRulesWithContext is the same as AssociatePricingRules with the addition of
// the ability to pass a context and additional request options.
//
// See AssociatePricingRules for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) AssociatePricingRulesWithContext(ctx aws.Context, input *AssociatePricingRulesInput, opts ...request.Option) (*AssociatePricingRulesOutput, error) {
req, out := c.AssociatePricingRulesRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opBatchAssociateResourcesToCustomLineItem = "BatchAssociateResourcesToCustomLineItem"
// BatchAssociateResourcesToCustomLineItemRequest generates a "aws/request.Request" representing the
// client's request for the BatchAssociateResourcesToCustomLineItem operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See BatchAssociateResourcesToCustomLineItem for more information on using the BatchAssociateResourcesToCustomLineItem
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the BatchAssociateResourcesToCustomLineItemRequest method.
// req, resp := client.BatchAssociateResourcesToCustomLineItemRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/BatchAssociateResourcesToCustomLineItem
func (c *BillingConductor) BatchAssociateResourcesToCustomLineItemRequest(input *BatchAssociateResourcesToCustomLineItemInput) (req *request.Request, output *BatchAssociateResourcesToCustomLineItemOutput) {
op := &request.Operation{
Name: opBatchAssociateResourcesToCustomLineItem,
HTTPMethod: "PUT",
HTTPPath: "/batch-associate-resources-to-custom-line-item",
}
if input == nil {
input = &BatchAssociateResourcesToCustomLineItemInput{}
}
output = &BatchAssociateResourcesToCustomLineItemOutput{}
req = c.newRequest(op, input, output)
return
}
// BatchAssociateResourcesToCustomLineItem API operation for AWSBillingConductor.
//
// Associates a batch of resources to a percentage custom line item.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation BatchAssociateResourcesToCustomLineItem for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - ServiceLimitExceededException
// The request would cause a service limit to exceed.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/BatchAssociateResourcesToCustomLineItem
func (c *BillingConductor) BatchAssociateResourcesToCustomLineItem(input *BatchAssociateResourcesToCustomLineItemInput) (*BatchAssociateResourcesToCustomLineItemOutput, error) {
req, out := c.BatchAssociateResourcesToCustomLineItemRequest(input)
return out, req.Send()
}
// BatchAssociateResourcesToCustomLineItemWithContext is the same as BatchAssociateResourcesToCustomLineItem with the addition of
// the ability to pass a context and additional request options.
//
// See BatchAssociateResourcesToCustomLineItem for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) BatchAssociateResourcesToCustomLineItemWithContext(ctx aws.Context, input *BatchAssociateResourcesToCustomLineItemInput, opts ...request.Option) (*BatchAssociateResourcesToCustomLineItemOutput, error) {
req, out := c.BatchAssociateResourcesToCustomLineItemRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opBatchDisassociateResourcesFromCustomLineItem = "BatchDisassociateResourcesFromCustomLineItem"
// BatchDisassociateResourcesFromCustomLineItemRequest generates a "aws/request.Request" representing the
// client's request for the BatchDisassociateResourcesFromCustomLineItem operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See BatchDisassociateResourcesFromCustomLineItem for more information on using the BatchDisassociateResourcesFromCustomLineItem
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the BatchDisassociateResourcesFromCustomLineItemRequest method.
// req, resp := client.BatchDisassociateResourcesFromCustomLineItemRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/BatchDisassociateResourcesFromCustomLineItem
func (c *BillingConductor) BatchDisassociateResourcesFromCustomLineItemRequest(input *BatchDisassociateResourcesFromCustomLineItemInput) (req *request.Request, output *BatchDisassociateResourcesFromCustomLineItemOutput) {
op := &request.Operation{
Name: opBatchDisassociateResourcesFromCustomLineItem,
HTTPMethod: "PUT",
HTTPPath: "/batch-disassociate-resources-from-custom-line-item",
}
if input == nil {
input = &BatchDisassociateResourcesFromCustomLineItemInput{}
}
output = &BatchDisassociateResourcesFromCustomLineItemOutput{}
req = c.newRequest(op, input, output)
return
}
// BatchDisassociateResourcesFromCustomLineItem API operation for AWSBillingConductor.
//
// Disassociates a batch of resources from a percentage custom line item.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation BatchDisassociateResourcesFromCustomLineItem for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/BatchDisassociateResourcesFromCustomLineItem
func (c *BillingConductor) BatchDisassociateResourcesFromCustomLineItem(input *BatchDisassociateResourcesFromCustomLineItemInput) (*BatchDisassociateResourcesFromCustomLineItemOutput, error) {
req, out := c.BatchDisassociateResourcesFromCustomLineItemRequest(input)
return out, req.Send()
}
// BatchDisassociateResourcesFromCustomLineItemWithContext is the same as BatchDisassociateResourcesFromCustomLineItem with the addition of
// the ability to pass a context and additional request options.
//
// See BatchDisassociateResourcesFromCustomLineItem for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) BatchDisassociateResourcesFromCustomLineItemWithContext(ctx aws.Context, input *BatchDisassociateResourcesFromCustomLineItemInput, opts ...request.Option) (*BatchDisassociateResourcesFromCustomLineItemOutput, error) {
req, out := c.BatchDisassociateResourcesFromCustomLineItemRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateBillingGroup = "CreateBillingGroup"
// CreateBillingGroupRequest generates a "aws/request.Request" representing the
// client's request for the CreateBillingGroup operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateBillingGroup for more information on using the CreateBillingGroup
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the CreateBillingGroupRequest method.
// req, resp := client.CreateBillingGroupRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreateBillingGroup
func (c *BillingConductor) CreateBillingGroupRequest(input *CreateBillingGroupInput) (req *request.Request, output *CreateBillingGroupOutput) {
op := &request.Operation{
Name: opCreateBillingGroup,
HTTPMethod: "POST",
HTTPPath: "/create-billing-group",
}
if input == nil {
input = &CreateBillingGroupInput{}
}
output = &CreateBillingGroupOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateBillingGroup API operation for AWSBillingConductor.
//
// Creates a billing group that resembles a consolidated billing family that
// Amazon Web Services charges, based off of the predefined pricing plan computation.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation CreateBillingGroup for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - ServiceLimitExceededException
// The request would cause a service limit to exceed.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreateBillingGroup
func (c *BillingConductor) CreateBillingGroup(input *CreateBillingGroupInput) (*CreateBillingGroupOutput, error) {
req, out := c.CreateBillingGroupRequest(input)
return out, req.Send()
}
// CreateBillingGroupWithContext is the same as CreateBillingGroup with the addition of
// the ability to pass a context and additional request options.
//
// See CreateBillingGroup for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) CreateBillingGroupWithContext(ctx aws.Context, input *CreateBillingGroupInput, opts ...request.Option) (*CreateBillingGroupOutput, error) {
req, out := c.CreateBillingGroupRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateCustomLineItem = "CreateCustomLineItem"
// CreateCustomLineItemRequest generates a "aws/request.Request" representing the
// client's request for the CreateCustomLineItem operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateCustomLineItem for more information on using the CreateCustomLineItem
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the CreateCustomLineItemRequest method.
// req, resp := client.CreateCustomLineItemRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreateCustomLineItem
func (c *BillingConductor) CreateCustomLineItemRequest(input *CreateCustomLineItemInput) (req *request.Request, output *CreateCustomLineItemOutput) {
op := &request.Operation{
Name: opCreateCustomLineItem,
HTTPMethod: "POST",
HTTPPath: "/create-custom-line-item",
}
if input == nil {
input = &CreateCustomLineItemInput{}
}
output = &CreateCustomLineItemOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateCustomLineItem API operation for AWSBillingConductor.
//
// Creates a custom line item that can be used to create a one-time fixed charge
// that can be applied to a single billing group for the current or previous
// billing period. The one-time fixed charge is either a fee or discount.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation CreateCustomLineItem for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - ServiceLimitExceededException
// The request would cause a service limit to exceed.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreateCustomLineItem
func (c *BillingConductor) CreateCustomLineItem(input *CreateCustomLineItemInput) (*CreateCustomLineItemOutput, error) {
req, out := c.CreateCustomLineItemRequest(input)
return out, req.Send()
}
// CreateCustomLineItemWithContext is the same as CreateCustomLineItem with the addition of
// the ability to pass a context and additional request options.
//
// See CreateCustomLineItem for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) CreateCustomLineItemWithContext(ctx aws.Context, input *CreateCustomLineItemInput, opts ...request.Option) (*CreateCustomLineItemOutput, error) {
req, out := c.CreateCustomLineItemRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreatePricingPlan = "CreatePricingPlan"
// CreatePricingPlanRequest generates a "aws/request.Request" representing the
// client's request for the CreatePricingPlan operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreatePricingPlan for more information on using the CreatePricingPlan
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the CreatePricingPlanRequest method.
// req, resp := client.CreatePricingPlanRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreatePricingPlan
func (c *BillingConductor) CreatePricingPlanRequest(input *CreatePricingPlanInput) (req *request.Request, output *CreatePricingPlanOutput) {
op := &request.Operation{
Name: opCreatePricingPlan,
HTTPMethod: "POST",
HTTPPath: "/create-pricing-plan",
}
if input == nil {
input = &CreatePricingPlanInput{}
}
output = &CreatePricingPlanOutput{}
req = c.newRequest(op, input, output)
return
}
// CreatePricingPlan API operation for AWSBillingConductor.
//
// Creates a pricing plan that is used for computing Amazon Web Services charges
// for billing groups.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation CreatePricingPlan for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - ServiceLimitExceededException
// The request would cause a service limit to exceed.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreatePricingPlan
func (c *BillingConductor) CreatePricingPlan(input *CreatePricingPlanInput) (*CreatePricingPlanOutput, error) {
req, out := c.CreatePricingPlanRequest(input)
return out, req.Send()
}
// CreatePricingPlanWithContext is the same as CreatePricingPlan with the addition of
// the ability to pass a context and additional request options.
//
// See CreatePricingPlan for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) CreatePricingPlanWithContext(ctx aws.Context, input *CreatePricingPlanInput, opts ...request.Option) (*CreatePricingPlanOutput, error) {
req, out := c.CreatePricingPlanRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreatePricingRule = "CreatePricingRule"
// CreatePricingRuleRequest generates a "aws/request.Request" representing the
// client's request for the CreatePricingRule operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreatePricingRule for more information on using the CreatePricingRule
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the CreatePricingRuleRequest method.
// req, resp := client.CreatePricingRuleRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreatePricingRule
func (c *BillingConductor) CreatePricingRuleRequest(input *CreatePricingRuleInput) (req *request.Request, output *CreatePricingRuleOutput) {
op := &request.Operation{
Name: opCreatePricingRule,
HTTPMethod: "POST",
HTTPPath: "/create-pricing-rule",
}
if input == nil {
input = &CreatePricingRuleInput{}
}
output = &CreatePricingRuleOutput{}
req = c.newRequest(op, input, output)
return
}
// CreatePricingRule API operation for AWSBillingConductor.
//
// Creates a pricing rule can be associated to a pricing plan, or a set of pricing
// plans.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation CreatePricingRule for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - ServiceLimitExceededException
// The request would cause a service limit to exceed.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreatePricingRule
func (c *BillingConductor) CreatePricingRule(input *CreatePricingRuleInput) (*CreatePricingRuleOutput, error) {
req, out := c.CreatePricingRuleRequest(input)
return out, req.Send()
}
// CreatePricingRuleWithContext is the same as CreatePricingRule with the addition of
// the ability to pass a context and additional request options.
//
// See CreatePricingRule for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) CreatePricingRuleWithContext(ctx aws.Context, input *CreatePricingRuleInput, opts ...request.Option) (*CreatePricingRuleOutput, error) {
req, out := c.CreatePricingRuleRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteBillingGroup = "DeleteBillingGroup"
// DeleteBillingGroupRequest generates a "aws/request.Request" representing the
// client's request for the DeleteBillingGroup operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteBillingGroup for more information on using the DeleteBillingGroup
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the DeleteBillingGroupRequest method.
// req, resp := client.DeleteBillingGroupRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeleteBillingGroup
func (c *BillingConductor) DeleteBillingGroupRequest(input *DeleteBillingGroupInput) (req *request.Request, output *DeleteBillingGroupOutput) {
op := &request.Operation{
Name: opDeleteBillingGroup,
HTTPMethod: "POST",
HTTPPath: "/delete-billing-group",
}
if input == nil {
input = &DeleteBillingGroupInput{}
}
output = &DeleteBillingGroupOutput{}
req = c.newRequest(op, input, output)
return
}
// DeleteBillingGroup API operation for AWSBillingConductor.
//
// Deletes a billing group.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation DeleteBillingGroup for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeleteBillingGroup
func (c *BillingConductor) DeleteBillingGroup(input *DeleteBillingGroupInput) (*DeleteBillingGroupOutput, error) {
req, out := c.DeleteBillingGroupRequest(input)
return out, req.Send()
}
// DeleteBillingGroupWithContext is the same as DeleteBillingGroup with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteBillingGroup for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) DeleteBillingGroupWithContext(ctx aws.Context, input *DeleteBillingGroupInput, opts ...request.Option) (*DeleteBillingGroupOutput, error) {
req, out := c.DeleteBillingGroupRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteCustomLineItem = "DeleteCustomLineItem"
// DeleteCustomLineItemRequest generates a "aws/request.Request" representing the
// client's request for the DeleteCustomLineItem operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteCustomLineItem for more information on using the DeleteCustomLineItem
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the DeleteCustomLineItemRequest method.
// req, resp := client.DeleteCustomLineItemRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeleteCustomLineItem
func (c *BillingConductor) DeleteCustomLineItemRequest(input *DeleteCustomLineItemInput) (req *request.Request, output *DeleteCustomLineItemOutput) {
op := &request.Operation{
Name: opDeleteCustomLineItem,
HTTPMethod: "POST",
HTTPPath: "/delete-custom-line-item",
}
if input == nil {
input = &DeleteCustomLineItemInput{}
}
output = &DeleteCustomLineItemOutput{}
req = c.newRequest(op, input, output)
return
}
// DeleteCustomLineItem API operation for AWSBillingConductor.
//
// Deletes the custom line item identified by the given ARN in the current,
// or previous billing period.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation DeleteCustomLineItem for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeleteCustomLineItem
func (c *BillingConductor) DeleteCustomLineItem(input *DeleteCustomLineItemInput) (*DeleteCustomLineItemOutput, error) {
req, out := c.DeleteCustomLineItemRequest(input)
return out, req.Send()
}
// DeleteCustomLineItemWithContext is the same as DeleteCustomLineItem with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteCustomLineItem for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) DeleteCustomLineItemWithContext(ctx aws.Context, input *DeleteCustomLineItemInput, opts ...request.Option) (*DeleteCustomLineItemOutput, error) {
req, out := c.DeleteCustomLineItemRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeletePricingPlan = "DeletePricingPlan"
// DeletePricingPlanRequest generates a "aws/request.Request" representing the
// client's request for the DeletePricingPlan operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeletePricingPlan for more information on using the DeletePricingPlan
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the DeletePricingPlanRequest method.
// req, resp := client.DeletePricingPlanRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeletePricingPlan
func (c *BillingConductor) DeletePricingPlanRequest(input *DeletePricingPlanInput) (req *request.Request, output *DeletePricingPlanOutput) {
op := &request.Operation{
Name: opDeletePricingPlan,
HTTPMethod: "POST",
HTTPPath: "/delete-pricing-plan",
}
if input == nil {
input = &DeletePricingPlanInput{}
}
output = &DeletePricingPlanOutput{}
req = c.newRequest(op, input, output)
return
}
// DeletePricingPlan API operation for AWSBillingConductor.
//
// Deletes a pricing plan. The pricing plan must not be associated with any
// billing groups to delete successfully.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation DeletePricingPlan for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeletePricingPlan
func (c *BillingConductor) DeletePricingPlan(input *DeletePricingPlanInput) (*DeletePricingPlanOutput, error) {
req, out := c.DeletePricingPlanRequest(input)
return out, req.Send()
}
// DeletePricingPlanWithContext is the same as DeletePricingPlan with the addition of
// the ability to pass a context and additional request options.
//
// See DeletePricingPlan for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) DeletePricingPlanWithContext(ctx aws.Context, input *DeletePricingPlanInput, opts ...request.Option) (*DeletePricingPlanOutput, error) {
req, out := c.DeletePricingPlanRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeletePricingRule = "DeletePricingRule"
// DeletePricingRuleRequest generates a "aws/request.Request" representing the
// client's request for the DeletePricingRule operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeletePricingRule for more information on using the DeletePricingRule
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the DeletePricingRuleRequest method.
// req, resp := client.DeletePricingRuleRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeletePricingRule
func (c *BillingConductor) DeletePricingRuleRequest(input *DeletePricingRuleInput) (req *request.Request, output *DeletePricingRuleOutput) {
op := &request.Operation{
Name: opDeletePricingRule,
HTTPMethod: "POST",
HTTPPath: "/delete-pricing-rule",
}
if input == nil {
input = &DeletePricingRuleInput{}
}
output = &DeletePricingRuleOutput{}
req = c.newRequest(op, input, output)
return
}
// DeletePricingRule API operation for AWSBillingConductor.
//
// Deletes the pricing rule that's identified by the input Amazon Resource Name
// (ARN).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation DeletePricingRule for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeletePricingRule
func (c *BillingConductor) DeletePricingRule(input *DeletePricingRuleInput) (*DeletePricingRuleOutput, error) {
req, out := c.DeletePricingRuleRequest(input)
return out, req.Send()
}
// DeletePricingRuleWithContext is the same as DeletePricingRule with the addition of
// the ability to pass a context and additional request options.
//
// See DeletePricingRule for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) DeletePricingRuleWithContext(ctx aws.Context, input *DeletePricingRuleInput, opts ...request.Option) (*DeletePricingRuleOutput, error) {
req, out := c.DeletePricingRuleRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDisassociateAccounts = "DisassociateAccounts"
// DisassociateAccountsRequest generates a "aws/request.Request" representing the
// client's request for the DisassociateAccounts operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DisassociateAccounts for more information on using the DisassociateAccounts
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the DisassociateAccountsRequest method.
// req, resp := client.DisassociateAccountsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DisassociateAccounts
func (c *BillingConductor) DisassociateAccountsRequest(input *DisassociateAccountsInput) (req *request.Request, output *DisassociateAccountsOutput) {
op := &request.Operation{
Name: opDisassociateAccounts,
HTTPMethod: "POST",
HTTPPath: "/disassociate-accounts",
}
if input == nil {
input = &DisassociateAccountsInput{}
}
output = &DisassociateAccountsOutput{}
req = c.newRequest(op, input, output)
return
}
// DisassociateAccounts API operation for AWSBillingConductor.
//
// Removes the specified list of account IDs from the given billing group.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation DisassociateAccounts for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DisassociateAccounts
func (c *BillingConductor) DisassociateAccounts(input *DisassociateAccountsInput) (*DisassociateAccountsOutput, error) {
req, out := c.DisassociateAccountsRequest(input)
return out, req.Send()
}
// DisassociateAccountsWithContext is the same as DisassociateAccounts with the addition of
// the ability to pass a context and additional request options.
//
// See DisassociateAccounts for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) DisassociateAccountsWithContext(ctx aws.Context, input *DisassociateAccountsInput, opts ...request.Option) (*DisassociateAccountsOutput, error) {
req, out := c.DisassociateAccountsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDisassociatePricingRules = "DisassociatePricingRules"
// DisassociatePricingRulesRequest generates a "aws/request.Request" representing the
// client's request for the DisassociatePricingRules operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DisassociatePricingRules for more information on using the DisassociatePricingRules
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the DisassociatePricingRulesRequest method.
// req, resp := client.DisassociatePricingRulesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DisassociatePricingRules
func (c *BillingConductor) DisassociatePricingRulesRequest(input *DisassociatePricingRulesInput) (req *request.Request, output *DisassociatePricingRulesOutput) {
op := &request.Operation{
Name: opDisassociatePricingRules,
HTTPMethod: "PUT",
HTTPPath: "/disassociate-pricing-rules",
}
if input == nil {
input = &DisassociatePricingRulesInput{}
}
output = &DisassociatePricingRulesOutput{}
req = c.newRequest(op, input, output)
return
}
// DisassociatePricingRules API operation for AWSBillingConductor.
//
// Disassociates a list of pricing rules from a pricing plan.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation DisassociatePricingRules for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DisassociatePricingRules
func (c *BillingConductor) DisassociatePricingRules(input *DisassociatePricingRulesInput) (*DisassociatePricingRulesOutput, error) {
req, out := c.DisassociatePricingRulesRequest(input)
return out, req.Send()
}
// DisassociatePricingRulesWithContext is the same as DisassociatePricingRules with the addition of
// the ability to pass a context and additional request options.
//
// See DisassociatePricingRules for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) DisassociatePricingRulesWithContext(ctx aws.Context, input *DisassociatePricingRulesInput, opts ...request.Option) (*DisassociatePricingRulesOutput, error) {
req, out := c.DisassociatePricingRulesRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetBillingGroupCostReport = "GetBillingGroupCostReport"
// GetBillingGroupCostReportRequest generates a "aws/request.Request" representing the
// client's request for the GetBillingGroupCostReport operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetBillingGroupCostReport for more information on using the GetBillingGroupCostReport
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the GetBillingGroupCostReportRequest method.
// req, resp := client.GetBillingGroupCostReportRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/GetBillingGroupCostReport
func (c *BillingConductor) GetBillingGroupCostReportRequest(input *GetBillingGroupCostReportInput) (req *request.Request, output *GetBillingGroupCostReportOutput) {
op := &request.Operation{
Name: opGetBillingGroupCostReport,
HTTPMethod: "POST",
HTTPPath: "/get-billing-group-cost-report",
}
if input == nil {
input = &GetBillingGroupCostReportInput{}
}
output = &GetBillingGroupCostReportOutput{}
req = c.newRequest(op, input, output)
return
}
// GetBillingGroupCostReport API operation for AWSBillingConductor.
//
// Retrieves the margin summary report, which includes the Amazon Web Services
// cost and charged amount (pro forma cost) by Amazon Web Service for a specific
// billing group.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation GetBillingGroupCostReport for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/GetBillingGroupCostReport
func (c *BillingConductor) GetBillingGroupCostReport(input *GetBillingGroupCostReportInput) (*GetBillingGroupCostReportOutput, error) {
req, out := c.GetBillingGroupCostReportRequest(input)
return out, req.Send()
}
// GetBillingGroupCostReportWithContext is the same as GetBillingGroupCostReport with the addition of
// the ability to pass a context and additional request options.
//
// See GetBillingGroupCostReport for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) GetBillingGroupCostReportWithContext(ctx aws.Context, input *GetBillingGroupCostReportInput, opts ...request.Option) (*GetBillingGroupCostReportOutput, error) {
req, out := c.GetBillingGroupCostReportRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opListAccountAssociations = "ListAccountAssociations"
// ListAccountAssociationsRequest generates a "aws/request.Request" representing the
// client's request for the ListAccountAssociations operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListAccountAssociations for more information on using the ListAccountAssociations
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListAccountAssociationsRequest method.
// req, resp := client.ListAccountAssociationsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListAccountAssociations
func (c *BillingConductor) ListAccountAssociationsRequest(input *ListAccountAssociationsInput) (req *request.Request, output *ListAccountAssociationsOutput) {
op := &request.Operation{
Name: opListAccountAssociations,
HTTPMethod: "POST",
HTTPPath: "/list-account-associations",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "",
TruncationToken: "",
},
}
if input == nil {
input = &ListAccountAssociationsInput{}
}
output = &ListAccountAssociationsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListAccountAssociations API operation for AWSBillingConductor.
//
// This is a paginated call to list linked accounts that are linked to the payer
// account for the specified time period. If no information is provided, the
// current billing period is used. The response will optionally include the
// billing group that's associated with the linked account.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListAccountAssociations for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListAccountAssociations
func (c *BillingConductor) ListAccountAssociations(input *ListAccountAssociationsInput) (*ListAccountAssociationsOutput, error) {
req, out := c.ListAccountAssociationsRequest(input)
return out, req.Send()
}
// ListAccountAssociationsWithContext is the same as ListAccountAssociations with the addition of
// the ability to pass a context and additional request options.
//
// See ListAccountAssociations for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListAccountAssociationsWithContext(ctx aws.Context, input *ListAccountAssociationsInput, opts ...request.Option) (*ListAccountAssociationsOutput, error) {
req, out := c.ListAccountAssociationsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListAccountAssociationsPages iterates over the pages of a ListAccountAssociations operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListAccountAssociations method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListAccountAssociations operation.
// pageNum := 0
// err := client.ListAccountAssociationsPages(params,
// func(page *billingconductor.ListAccountAssociationsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListAccountAssociationsPages(input *ListAccountAssociationsInput, fn func(*ListAccountAssociationsOutput, bool) bool) error {
return c.ListAccountAssociationsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListAccountAssociationsPagesWithContext same as ListAccountAssociationsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListAccountAssociationsPagesWithContext(ctx aws.Context, input *ListAccountAssociationsInput, fn func(*ListAccountAssociationsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListAccountAssociationsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListAccountAssociationsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListAccountAssociationsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListBillingGroupCostReports = "ListBillingGroupCostReports"
// ListBillingGroupCostReportsRequest generates a "aws/request.Request" representing the
// client's request for the ListBillingGroupCostReports operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListBillingGroupCostReports for more information on using the ListBillingGroupCostReports
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListBillingGroupCostReportsRequest method.
// req, resp := client.ListBillingGroupCostReportsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListBillingGroupCostReports
func (c *BillingConductor) ListBillingGroupCostReportsRequest(input *ListBillingGroupCostReportsInput) (req *request.Request, output *ListBillingGroupCostReportsOutput) {
op := &request.Operation{
Name: opListBillingGroupCostReports,
HTTPMethod: "POST",
HTTPPath: "/list-billing-group-cost-reports",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListBillingGroupCostReportsInput{}
}
output = &ListBillingGroupCostReportsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListBillingGroupCostReports API operation for AWSBillingConductor.
//
// A paginated call to retrieve a summary report of actual Amazon Web Services
// charges and the calculated Amazon Web Services charges based on the associated
// pricing plan of a billing group.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListBillingGroupCostReports for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListBillingGroupCostReports
func (c *BillingConductor) ListBillingGroupCostReports(input *ListBillingGroupCostReportsInput) (*ListBillingGroupCostReportsOutput, error) {
req, out := c.ListBillingGroupCostReportsRequest(input)
return out, req.Send()
}
// ListBillingGroupCostReportsWithContext is the same as ListBillingGroupCostReports with the addition of
// the ability to pass a context and additional request options.
//
// See ListBillingGroupCostReports for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListBillingGroupCostReportsWithContext(ctx aws.Context, input *ListBillingGroupCostReportsInput, opts ...request.Option) (*ListBillingGroupCostReportsOutput, error) {
req, out := c.ListBillingGroupCostReportsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListBillingGroupCostReportsPages iterates over the pages of a ListBillingGroupCostReports operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListBillingGroupCostReports method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListBillingGroupCostReports operation.
// pageNum := 0
// err := client.ListBillingGroupCostReportsPages(params,
// func(page *billingconductor.ListBillingGroupCostReportsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListBillingGroupCostReportsPages(input *ListBillingGroupCostReportsInput, fn func(*ListBillingGroupCostReportsOutput, bool) bool) error {
return c.ListBillingGroupCostReportsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListBillingGroupCostReportsPagesWithContext same as ListBillingGroupCostReportsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListBillingGroupCostReportsPagesWithContext(ctx aws.Context, input *ListBillingGroupCostReportsInput, fn func(*ListBillingGroupCostReportsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListBillingGroupCostReportsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListBillingGroupCostReportsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListBillingGroupCostReportsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListBillingGroups = "ListBillingGroups"
// ListBillingGroupsRequest generates a "aws/request.Request" representing the
// client's request for the ListBillingGroups operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListBillingGroups for more information on using the ListBillingGroups
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListBillingGroupsRequest method.
// req, resp := client.ListBillingGroupsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListBillingGroups
func (c *BillingConductor) ListBillingGroupsRequest(input *ListBillingGroupsInput) (req *request.Request, output *ListBillingGroupsOutput) {
op := &request.Operation{
Name: opListBillingGroups,
HTTPMethod: "POST",
HTTPPath: "/list-billing-groups",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListBillingGroupsInput{}
}
output = &ListBillingGroupsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListBillingGroups API operation for AWSBillingConductor.
//
// A paginated call to retrieve a list of billing groups for the given billing
// period. If you don't provide a billing group, the current billing period
// is used.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListBillingGroups for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListBillingGroups
func (c *BillingConductor) ListBillingGroups(input *ListBillingGroupsInput) (*ListBillingGroupsOutput, error) {
req, out := c.ListBillingGroupsRequest(input)
return out, req.Send()
}
// ListBillingGroupsWithContext is the same as ListBillingGroups with the addition of
// the ability to pass a context and additional request options.
//
// See ListBillingGroups for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListBillingGroupsWithContext(ctx aws.Context, input *ListBillingGroupsInput, opts ...request.Option) (*ListBillingGroupsOutput, error) {
req, out := c.ListBillingGroupsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListBillingGroupsPages iterates over the pages of a ListBillingGroups operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListBillingGroups method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListBillingGroups operation.
// pageNum := 0
// err := client.ListBillingGroupsPages(params,
// func(page *billingconductor.ListBillingGroupsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListBillingGroupsPages(input *ListBillingGroupsInput, fn func(*ListBillingGroupsOutput, bool) bool) error {
return c.ListBillingGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListBillingGroupsPagesWithContext same as ListBillingGroupsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListBillingGroupsPagesWithContext(ctx aws.Context, input *ListBillingGroupsInput, fn func(*ListBillingGroupsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListBillingGroupsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListBillingGroupsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListBillingGroupsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListCustomLineItemVersions = "ListCustomLineItemVersions"
// ListCustomLineItemVersionsRequest generates a "aws/request.Request" representing the
// client's request for the ListCustomLineItemVersions operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListCustomLineItemVersions for more information on using the ListCustomLineItemVersions
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListCustomLineItemVersionsRequest method.
// req, resp := client.ListCustomLineItemVersionsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListCustomLineItemVersions
func (c *BillingConductor) ListCustomLineItemVersionsRequest(input *ListCustomLineItemVersionsInput) (req *request.Request, output *ListCustomLineItemVersionsOutput) {
op := &request.Operation{
Name: opListCustomLineItemVersions,
HTTPMethod: "POST",
HTTPPath: "/list-custom-line-item-versions",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListCustomLineItemVersionsInput{}
}
output = &ListCustomLineItemVersionsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListCustomLineItemVersions API operation for AWSBillingConductor.
//
// A paginated call to get a list of all custom line item versions.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListCustomLineItemVersions for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListCustomLineItemVersions
func (c *BillingConductor) ListCustomLineItemVersions(input *ListCustomLineItemVersionsInput) (*ListCustomLineItemVersionsOutput, error) {
req, out := c.ListCustomLineItemVersionsRequest(input)
return out, req.Send()
}
// ListCustomLineItemVersionsWithContext is the same as ListCustomLineItemVersions with the addition of
// the ability to pass a context and additional request options.
//
// See ListCustomLineItemVersions for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListCustomLineItemVersionsWithContext(ctx aws.Context, input *ListCustomLineItemVersionsInput, opts ...request.Option) (*ListCustomLineItemVersionsOutput, error) {
req, out := c.ListCustomLineItemVersionsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListCustomLineItemVersionsPages iterates over the pages of a ListCustomLineItemVersions operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListCustomLineItemVersions method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListCustomLineItemVersions operation.
// pageNum := 0
// err := client.ListCustomLineItemVersionsPages(params,
// func(page *billingconductor.ListCustomLineItemVersionsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListCustomLineItemVersionsPages(input *ListCustomLineItemVersionsInput, fn func(*ListCustomLineItemVersionsOutput, bool) bool) error {
return c.ListCustomLineItemVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListCustomLineItemVersionsPagesWithContext same as ListCustomLineItemVersionsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListCustomLineItemVersionsPagesWithContext(ctx aws.Context, input *ListCustomLineItemVersionsInput, fn func(*ListCustomLineItemVersionsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListCustomLineItemVersionsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListCustomLineItemVersionsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListCustomLineItemVersionsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListCustomLineItems = "ListCustomLineItems"
// ListCustomLineItemsRequest generates a "aws/request.Request" representing the
// client's request for the ListCustomLineItems operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListCustomLineItems for more information on using the ListCustomLineItems
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListCustomLineItemsRequest method.
// req, resp := client.ListCustomLineItemsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListCustomLineItems
func (c *BillingConductor) ListCustomLineItemsRequest(input *ListCustomLineItemsInput) (req *request.Request, output *ListCustomLineItemsOutput) {
op := &request.Operation{
Name: opListCustomLineItems,
HTTPMethod: "POST",
HTTPPath: "/list-custom-line-items",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListCustomLineItemsInput{}
}
output = &ListCustomLineItemsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListCustomLineItems API operation for AWSBillingConductor.
//
// A paginated call to get a list of all custom line items (FFLIs) for the given
// billing period. If you don't provide a billing period, the current billing
// period is used.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListCustomLineItems for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListCustomLineItems
func (c *BillingConductor) ListCustomLineItems(input *ListCustomLineItemsInput) (*ListCustomLineItemsOutput, error) {
req, out := c.ListCustomLineItemsRequest(input)
return out, req.Send()
}
// ListCustomLineItemsWithContext is the same as ListCustomLineItems with the addition of
// the ability to pass a context and additional request options.
//
// See ListCustomLineItems for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListCustomLineItemsWithContext(ctx aws.Context, input *ListCustomLineItemsInput, opts ...request.Option) (*ListCustomLineItemsOutput, error) {
req, out := c.ListCustomLineItemsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListCustomLineItemsPages iterates over the pages of a ListCustomLineItems operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListCustomLineItems method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListCustomLineItems operation.
// pageNum := 0
// err := client.ListCustomLineItemsPages(params,
// func(page *billingconductor.ListCustomLineItemsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListCustomLineItemsPages(input *ListCustomLineItemsInput, fn func(*ListCustomLineItemsOutput, bool) bool) error {
return c.ListCustomLineItemsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListCustomLineItemsPagesWithContext same as ListCustomLineItemsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListCustomLineItemsPagesWithContext(ctx aws.Context, input *ListCustomLineItemsInput, fn func(*ListCustomLineItemsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListCustomLineItemsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListCustomLineItemsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListCustomLineItemsOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListPricingPlans = "ListPricingPlans"
// ListPricingPlansRequest generates a "aws/request.Request" representing the
// client's request for the ListPricingPlans operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListPricingPlans for more information on using the ListPricingPlans
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListPricingPlansRequest method.
// req, resp := client.ListPricingPlansRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingPlans
func (c *BillingConductor) ListPricingPlansRequest(input *ListPricingPlansInput) (req *request.Request, output *ListPricingPlansOutput) {
op := &request.Operation{
Name: opListPricingPlans,
HTTPMethod: "POST",
HTTPPath: "/list-pricing-plans",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListPricingPlansInput{}
}
output = &ListPricingPlansOutput{}
req = c.newRequest(op, input, output)
return
}
// ListPricingPlans API operation for AWSBillingConductor.
//
// A paginated call to get pricing plans for the given billing period. If you
// don't provide a billing period, the current billing period is used.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListPricingPlans for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingPlans
func (c *BillingConductor) ListPricingPlans(input *ListPricingPlansInput) (*ListPricingPlansOutput, error) {
req, out := c.ListPricingPlansRequest(input)
return out, req.Send()
}
// ListPricingPlansWithContext is the same as ListPricingPlans with the addition of
// the ability to pass a context and additional request options.
//
// See ListPricingPlans for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingPlansWithContext(ctx aws.Context, input *ListPricingPlansInput, opts ...request.Option) (*ListPricingPlansOutput, error) {
req, out := c.ListPricingPlansRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListPricingPlansPages iterates over the pages of a ListPricingPlans operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListPricingPlans method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListPricingPlans operation.
// pageNum := 0
// err := client.ListPricingPlansPages(params,
// func(page *billingconductor.ListPricingPlansOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListPricingPlansPages(input *ListPricingPlansInput, fn func(*ListPricingPlansOutput, bool) bool) error {
return c.ListPricingPlansPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListPricingPlansPagesWithContext same as ListPricingPlansPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingPlansPagesWithContext(ctx aws.Context, input *ListPricingPlansInput, fn func(*ListPricingPlansOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListPricingPlansInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListPricingPlansRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListPricingPlansOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListPricingPlansAssociatedWithPricingRule = "ListPricingPlansAssociatedWithPricingRule"
// ListPricingPlansAssociatedWithPricingRuleRequest generates a "aws/request.Request" representing the
// client's request for the ListPricingPlansAssociatedWithPricingRule operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListPricingPlansAssociatedWithPricingRule for more information on using the ListPricingPlansAssociatedWithPricingRule
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListPricingPlansAssociatedWithPricingRuleRequest method.
// req, resp := client.ListPricingPlansAssociatedWithPricingRuleRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingPlansAssociatedWithPricingRule
func (c *BillingConductor) ListPricingPlansAssociatedWithPricingRuleRequest(input *ListPricingPlansAssociatedWithPricingRuleInput) (req *request.Request, output *ListPricingPlansAssociatedWithPricingRuleOutput) {
op := &request.Operation{
Name: opListPricingPlansAssociatedWithPricingRule,
HTTPMethod: "POST",
HTTPPath: "/list-pricing-plans-associated-with-pricing-rule",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListPricingPlansAssociatedWithPricingRuleInput{}
}
output = &ListPricingPlansAssociatedWithPricingRuleOutput{}
req = c.newRequest(op, input, output)
return
}
// ListPricingPlansAssociatedWithPricingRule API operation for AWSBillingConductor.
//
// A list of the pricing plans that are associated with a pricing rule.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListPricingPlansAssociatedWithPricingRule for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingPlansAssociatedWithPricingRule
func (c *BillingConductor) ListPricingPlansAssociatedWithPricingRule(input *ListPricingPlansAssociatedWithPricingRuleInput) (*ListPricingPlansAssociatedWithPricingRuleOutput, error) {
req, out := c.ListPricingPlansAssociatedWithPricingRuleRequest(input)
return out, req.Send()
}
// ListPricingPlansAssociatedWithPricingRuleWithContext is the same as ListPricingPlansAssociatedWithPricingRule with the addition of
// the ability to pass a context and additional request options.
//
// See ListPricingPlansAssociatedWithPricingRule for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingPlansAssociatedWithPricingRuleWithContext(ctx aws.Context, input *ListPricingPlansAssociatedWithPricingRuleInput, opts ...request.Option) (*ListPricingPlansAssociatedWithPricingRuleOutput, error) {
req, out := c.ListPricingPlansAssociatedWithPricingRuleRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListPricingPlansAssociatedWithPricingRulePages iterates over the pages of a ListPricingPlansAssociatedWithPricingRule operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListPricingPlansAssociatedWithPricingRule method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListPricingPlansAssociatedWithPricingRule operation.
// pageNum := 0
// err := client.ListPricingPlansAssociatedWithPricingRulePages(params,
// func(page *billingconductor.ListPricingPlansAssociatedWithPricingRuleOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListPricingPlansAssociatedWithPricingRulePages(input *ListPricingPlansAssociatedWithPricingRuleInput, fn func(*ListPricingPlansAssociatedWithPricingRuleOutput, bool) bool) error {
return c.ListPricingPlansAssociatedWithPricingRulePagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListPricingPlansAssociatedWithPricingRulePagesWithContext same as ListPricingPlansAssociatedWithPricingRulePages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingPlansAssociatedWithPricingRulePagesWithContext(ctx aws.Context, input *ListPricingPlansAssociatedWithPricingRuleInput, fn func(*ListPricingPlansAssociatedWithPricingRuleOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListPricingPlansAssociatedWithPricingRuleInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListPricingPlansAssociatedWithPricingRuleRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListPricingPlansAssociatedWithPricingRuleOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListPricingRules = "ListPricingRules"
// ListPricingRulesRequest generates a "aws/request.Request" representing the
// client's request for the ListPricingRules operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListPricingRules for more information on using the ListPricingRules
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListPricingRulesRequest method.
// req, resp := client.ListPricingRulesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingRules
func (c *BillingConductor) ListPricingRulesRequest(input *ListPricingRulesInput) (req *request.Request, output *ListPricingRulesOutput) {
op := &request.Operation{
Name: opListPricingRules,
HTTPMethod: "POST",
HTTPPath: "/list-pricing-rules",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListPricingRulesInput{}
}
output = &ListPricingRulesOutput{}
req = c.newRequest(op, input, output)
return
}
// ListPricingRules API operation for AWSBillingConductor.
//
// Describes a pricing rule that can be associated to a pricing plan, or set
// of pricing plans.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListPricingRules for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingRules
func (c *BillingConductor) ListPricingRules(input *ListPricingRulesInput) (*ListPricingRulesOutput, error) {
req, out := c.ListPricingRulesRequest(input)
return out, req.Send()
}
// ListPricingRulesWithContext is the same as ListPricingRules with the addition of
// the ability to pass a context and additional request options.
//
// See ListPricingRules for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingRulesWithContext(ctx aws.Context, input *ListPricingRulesInput, opts ...request.Option) (*ListPricingRulesOutput, error) {
req, out := c.ListPricingRulesRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListPricingRulesPages iterates over the pages of a ListPricingRules operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListPricingRules method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListPricingRules operation.
// pageNum := 0
// err := client.ListPricingRulesPages(params,
// func(page *billingconductor.ListPricingRulesOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListPricingRulesPages(input *ListPricingRulesInput, fn func(*ListPricingRulesOutput, bool) bool) error {
return c.ListPricingRulesPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListPricingRulesPagesWithContext same as ListPricingRulesPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingRulesPagesWithContext(ctx aws.Context, input *ListPricingRulesInput, fn func(*ListPricingRulesOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListPricingRulesInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListPricingRulesRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListPricingRulesOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListPricingRulesAssociatedToPricingPlan = "ListPricingRulesAssociatedToPricingPlan"
// ListPricingRulesAssociatedToPricingPlanRequest generates a "aws/request.Request" representing the
// client's request for the ListPricingRulesAssociatedToPricingPlan operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListPricingRulesAssociatedToPricingPlan for more information on using the ListPricingRulesAssociatedToPricingPlan
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListPricingRulesAssociatedToPricingPlanRequest method.
// req, resp := client.ListPricingRulesAssociatedToPricingPlanRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingRulesAssociatedToPricingPlan
func (c *BillingConductor) ListPricingRulesAssociatedToPricingPlanRequest(input *ListPricingRulesAssociatedToPricingPlanInput) (req *request.Request, output *ListPricingRulesAssociatedToPricingPlanOutput) {
op := &request.Operation{
Name: opListPricingRulesAssociatedToPricingPlan,
HTTPMethod: "POST",
HTTPPath: "/list-pricing-rules-associated-to-pricing-plan",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListPricingRulesAssociatedToPricingPlanInput{}
}
output = &ListPricingRulesAssociatedToPricingPlanOutput{}
req = c.newRequest(op, input, output)
return
}
// ListPricingRulesAssociatedToPricingPlan API operation for AWSBillingConductor.
//
// Lists the pricing rules that are associated with a pricing plan.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListPricingRulesAssociatedToPricingPlan for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListPricingRulesAssociatedToPricingPlan
func (c *BillingConductor) ListPricingRulesAssociatedToPricingPlan(input *ListPricingRulesAssociatedToPricingPlanInput) (*ListPricingRulesAssociatedToPricingPlanOutput, error) {
req, out := c.ListPricingRulesAssociatedToPricingPlanRequest(input)
return out, req.Send()
}
// ListPricingRulesAssociatedToPricingPlanWithContext is the same as ListPricingRulesAssociatedToPricingPlan with the addition of
// the ability to pass a context and additional request options.
//
// See ListPricingRulesAssociatedToPricingPlan for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingRulesAssociatedToPricingPlanWithContext(ctx aws.Context, input *ListPricingRulesAssociatedToPricingPlanInput, opts ...request.Option) (*ListPricingRulesAssociatedToPricingPlanOutput, error) {
req, out := c.ListPricingRulesAssociatedToPricingPlanRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListPricingRulesAssociatedToPricingPlanPages iterates over the pages of a ListPricingRulesAssociatedToPricingPlan operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListPricingRulesAssociatedToPricingPlan method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListPricingRulesAssociatedToPricingPlan operation.
// pageNum := 0
// err := client.ListPricingRulesAssociatedToPricingPlanPages(params,
// func(page *billingconductor.ListPricingRulesAssociatedToPricingPlanOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListPricingRulesAssociatedToPricingPlanPages(input *ListPricingRulesAssociatedToPricingPlanInput, fn func(*ListPricingRulesAssociatedToPricingPlanOutput, bool) bool) error {
return c.ListPricingRulesAssociatedToPricingPlanPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListPricingRulesAssociatedToPricingPlanPagesWithContext same as ListPricingRulesAssociatedToPricingPlanPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListPricingRulesAssociatedToPricingPlanPagesWithContext(ctx aws.Context, input *ListPricingRulesAssociatedToPricingPlanInput, fn func(*ListPricingRulesAssociatedToPricingPlanOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListPricingRulesAssociatedToPricingPlanInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListPricingRulesAssociatedToPricingPlanRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListPricingRulesAssociatedToPricingPlanOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListResourcesAssociatedToCustomLineItem = "ListResourcesAssociatedToCustomLineItem"
// ListResourcesAssociatedToCustomLineItemRequest generates a "aws/request.Request" representing the
// client's request for the ListResourcesAssociatedToCustomLineItem operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListResourcesAssociatedToCustomLineItem for more information on using the ListResourcesAssociatedToCustomLineItem
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListResourcesAssociatedToCustomLineItemRequest method.
// req, resp := client.ListResourcesAssociatedToCustomLineItemRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListResourcesAssociatedToCustomLineItem
func (c *BillingConductor) ListResourcesAssociatedToCustomLineItemRequest(input *ListResourcesAssociatedToCustomLineItemInput) (req *request.Request, output *ListResourcesAssociatedToCustomLineItemOutput) {
op := &request.Operation{
Name: opListResourcesAssociatedToCustomLineItem,
HTTPMethod: "POST",
HTTPPath: "/list-resources-associated-to-custom-line-item",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListResourcesAssociatedToCustomLineItemInput{}
}
output = &ListResourcesAssociatedToCustomLineItemOutput{}
req = c.newRequest(op, input, output)
return
}
// ListResourcesAssociatedToCustomLineItem API operation for AWSBillingConductor.
//
// List the resources that are associated to a custom line item.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListResourcesAssociatedToCustomLineItem for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListResourcesAssociatedToCustomLineItem
func (c *BillingConductor) ListResourcesAssociatedToCustomLineItem(input *ListResourcesAssociatedToCustomLineItemInput) (*ListResourcesAssociatedToCustomLineItemOutput, error) {
req, out := c.ListResourcesAssociatedToCustomLineItemRequest(input)
return out, req.Send()
}
// ListResourcesAssociatedToCustomLineItemWithContext is the same as ListResourcesAssociatedToCustomLineItem with the addition of
// the ability to pass a context and additional request options.
//
// See ListResourcesAssociatedToCustomLineItem for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListResourcesAssociatedToCustomLineItemWithContext(ctx aws.Context, input *ListResourcesAssociatedToCustomLineItemInput, opts ...request.Option) (*ListResourcesAssociatedToCustomLineItemOutput, error) {
req, out := c.ListResourcesAssociatedToCustomLineItemRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListResourcesAssociatedToCustomLineItemPages iterates over the pages of a ListResourcesAssociatedToCustomLineItem operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListResourcesAssociatedToCustomLineItem method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a ListResourcesAssociatedToCustomLineItem operation.
// pageNum := 0
// err := client.ListResourcesAssociatedToCustomLineItemPages(params,
// func(page *billingconductor.ListResourcesAssociatedToCustomLineItemOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
func (c *BillingConductor) ListResourcesAssociatedToCustomLineItemPages(input *ListResourcesAssociatedToCustomLineItemInput, fn func(*ListResourcesAssociatedToCustomLineItemOutput, bool) bool) error {
return c.ListResourcesAssociatedToCustomLineItemPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListResourcesAssociatedToCustomLineItemPagesWithContext same as ListResourcesAssociatedToCustomLineItemPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListResourcesAssociatedToCustomLineItemPagesWithContext(ctx aws.Context, input *ListResourcesAssociatedToCustomLineItemInput, fn func(*ListResourcesAssociatedToCustomLineItemOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListResourcesAssociatedToCustomLineItemInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListResourcesAssociatedToCustomLineItemRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
for p.Next() {
if !fn(p.Page().(*ListResourcesAssociatedToCustomLineItemOutput), !p.HasNextPage()) {
break
}
}
return p.Err()
}
const opListTagsForResource = "ListTagsForResource"
// ListTagsForResourceRequest generates a "aws/request.Request" representing the
// client's request for the ListTagsForResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListTagsForResource for more information on using the ListTagsForResource
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the ListTagsForResourceRequest method.
// req, resp := client.ListTagsForResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListTagsForResource
func (c *BillingConductor) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
op := &request.Operation{
Name: opListTagsForResource,
HTTPMethod: "GET",
HTTPPath: "/tags/{ResourceArn}",
}
if input == nil {
input = &ListTagsForResourceInput{}
}
output = &ListTagsForResourceOutput{}
req = c.newRequest(op, input, output)
return
}
// ListTagsForResource API operation for AWSBillingConductor.
//
// A list the tags for a resource.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation ListTagsForResource for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListTagsForResource
func (c *BillingConductor) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
req, out := c.ListTagsForResourceRequest(input)
return out, req.Send()
}
// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
// the ability to pass a context and additional request options.
//
// See ListTagsForResource for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
req, out := c.ListTagsForResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opTagResource = "TagResource"
// TagResourceRequest generates a "aws/request.Request" representing the
// client's request for the TagResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See TagResource for more information on using the TagResource
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the TagResourceRequest method.
// req, resp := client.TagResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/TagResource
func (c *BillingConductor) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
op := &request.Operation{
Name: opTagResource,
HTTPMethod: "POST",
HTTPPath: "/tags/{ResourceArn}",
}
if input == nil {
input = &TagResourceInput{}
}
output = &TagResourceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// TagResource API operation for AWSBillingConductor.
//
// Associates the specified tags to a resource with the specified resourceArn.
// If existing tags on a resource are not specified in the request parameters,
// they are not changed.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation TagResource for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/TagResource
func (c *BillingConductor) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
req, out := c.TagResourceRequest(input)
return out, req.Send()
}
// TagResourceWithContext is the same as TagResource with the addition of
// the ability to pass a context and additional request options.
//
// See TagResource for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
req, out := c.TagResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUntagResource = "UntagResource"
// UntagResourceRequest generates a "aws/request.Request" representing the
// client's request for the UntagResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UntagResource for more information on using the UntagResource
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the UntagResourceRequest method.
// req, resp := client.UntagResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UntagResource
func (c *BillingConductor) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
op := &request.Operation{
Name: opUntagResource,
HTTPMethod: "DELETE",
HTTPPath: "/tags/{ResourceArn}",
}
if input == nil {
input = &UntagResourceInput{}
}
output = &UntagResourceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// UntagResource API operation for AWSBillingConductor.
//
// Deletes specified tags from a resource.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation UntagResource for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UntagResource
func (c *BillingConductor) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
req, out := c.UntagResourceRequest(input)
return out, req.Send()
}
// UntagResourceWithContext is the same as UntagResource with the addition of
// the ability to pass a context and additional request options.
//
// See UntagResource for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
req, out := c.UntagResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdateBillingGroup = "UpdateBillingGroup"
// UpdateBillingGroupRequest generates a "aws/request.Request" representing the
// client's request for the UpdateBillingGroup operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UpdateBillingGroup for more information on using the UpdateBillingGroup
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the UpdateBillingGroupRequest method.
// req, resp := client.UpdateBillingGroupRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdateBillingGroup
func (c *BillingConductor) UpdateBillingGroupRequest(input *UpdateBillingGroupInput) (req *request.Request, output *UpdateBillingGroupOutput) {
op := &request.Operation{
Name: opUpdateBillingGroup,
HTTPMethod: "POST",
HTTPPath: "/update-billing-group",
}
if input == nil {
input = &UpdateBillingGroupInput{}
}
output = &UpdateBillingGroupOutput{}
req = c.newRequest(op, input, output)
return
}
// UpdateBillingGroup API operation for AWSBillingConductor.
//
// This updates an existing billing group.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation UpdateBillingGroup for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdateBillingGroup
func (c *BillingConductor) UpdateBillingGroup(input *UpdateBillingGroupInput) (*UpdateBillingGroupOutput, error) {
req, out := c.UpdateBillingGroupRequest(input)
return out, req.Send()
}
// UpdateBillingGroupWithContext is the same as UpdateBillingGroup with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateBillingGroup for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) UpdateBillingGroupWithContext(ctx aws.Context, input *UpdateBillingGroupInput, opts ...request.Option) (*UpdateBillingGroupOutput, error) {
req, out := c.UpdateBillingGroupRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdateCustomLineItem = "UpdateCustomLineItem"
// UpdateCustomLineItemRequest generates a "aws/request.Request" representing the
// client's request for the UpdateCustomLineItem operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UpdateCustomLineItem for more information on using the UpdateCustomLineItem
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the UpdateCustomLineItemRequest method.
// req, resp := client.UpdateCustomLineItemRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdateCustomLineItem
func (c *BillingConductor) UpdateCustomLineItemRequest(input *UpdateCustomLineItemInput) (req *request.Request, output *UpdateCustomLineItemOutput) {
op := &request.Operation{
Name: opUpdateCustomLineItem,
HTTPMethod: "POST",
HTTPPath: "/update-custom-line-item",
}
if input == nil {
input = &UpdateCustomLineItemInput{}
}
output = &UpdateCustomLineItemOutput{}
req = c.newRequest(op, input, output)
return
}
// UpdateCustomLineItem API operation for AWSBillingConductor.
//
// Update an existing custom line item in the current or previous billing period.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation UpdateCustomLineItem for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdateCustomLineItem
func (c *BillingConductor) UpdateCustomLineItem(input *UpdateCustomLineItemInput) (*UpdateCustomLineItemOutput, error) {
req, out := c.UpdateCustomLineItemRequest(input)
return out, req.Send()
}
// UpdateCustomLineItemWithContext is the same as UpdateCustomLineItem with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateCustomLineItem for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) UpdateCustomLineItemWithContext(ctx aws.Context, input *UpdateCustomLineItemInput, opts ...request.Option) (*UpdateCustomLineItemOutput, error) {
req, out := c.UpdateCustomLineItemRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdatePricingPlan = "UpdatePricingPlan"
// UpdatePricingPlanRequest generates a "aws/request.Request" representing the
// client's request for the UpdatePricingPlan operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UpdatePricingPlan for more information on using the UpdatePricingPlan
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the UpdatePricingPlanRequest method.
// req, resp := client.UpdatePricingPlanRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdatePricingPlan
func (c *BillingConductor) UpdatePricingPlanRequest(input *UpdatePricingPlanInput) (req *request.Request, output *UpdatePricingPlanOutput) {
op := &request.Operation{
Name: opUpdatePricingPlan,
HTTPMethod: "PUT",
HTTPPath: "/update-pricing-plan",
}
if input == nil {
input = &UpdatePricingPlanInput{}
}
output = &UpdatePricingPlanOutput{}
req = c.newRequest(op, input, output)
return
}
// UpdatePricingPlan API operation for AWSBillingConductor.
//
// This updates an existing pricing plan.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation UpdatePricingPlan for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdatePricingPlan
func (c *BillingConductor) UpdatePricingPlan(input *UpdatePricingPlanInput) (*UpdatePricingPlanOutput, error) {
req, out := c.UpdatePricingPlanRequest(input)
return out, req.Send()
}
// UpdatePricingPlanWithContext is the same as UpdatePricingPlan with the addition of
// the ability to pass a context and additional request options.
//
// See UpdatePricingPlan for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) UpdatePricingPlanWithContext(ctx aws.Context, input *UpdatePricingPlanInput, opts ...request.Option) (*UpdatePricingPlanOutput, error) {
req, out := c.UpdatePricingPlanRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdatePricingRule = "UpdatePricingRule"
// UpdatePricingRuleRequest generates a "aws/request.Request" representing the
// client's request for the UpdatePricingRule operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UpdatePricingRule for more information on using the UpdatePricingRule
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
// // Example sending a request using the UpdatePricingRuleRequest method.
// req, resp := client.UpdatePricingRuleRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdatePricingRule
func (c *BillingConductor) UpdatePricingRuleRequest(input *UpdatePricingRuleInput) (req *request.Request, output *UpdatePricingRuleOutput) {
op := &request.Operation{
Name: opUpdatePricingRule,
HTTPMethod: "PUT",
HTTPPath: "/update-pricing-rule",
}
if input == nil {
input = &UpdatePricingRuleInput{}
}
output = &UpdatePricingRuleOutput{}
req = c.newRequest(op, input, output)
return
}
// UpdatePricingRule API operation for AWSBillingConductor.
//
// Updates an existing pricing rule.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWSBillingConductor's
// API operation UpdatePricingRule for usage and error information.
//
// Returned Error Types:
//
// - ThrottlingException
// The request was denied due to request throttling.
//
// - ConflictException
// You can cause an inconsistent state by updating or deleting a resource.
//
// - AccessDeniedException
// You do not have sufficient access to perform this action.
//
// - ValidationException
// The input doesn't match with the constraints specified by Amazon Web Services.
//
// - InternalServerException
// An unexpected error occurred while processing a request.
//
// - ResourceNotFoundException
// The request references a resource that doesn't exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/UpdatePricingRule
func (c *BillingConductor) UpdatePricingRule(input *UpdatePricingRuleInput) (*UpdatePricingRuleOutput, error) {
req, out := c.UpdatePricingRuleRequest(input)
return out, req.Send()
}
// UpdatePricingRuleWithContext is the same as UpdatePricingRule with the addition of
// the ability to pass a context and additional request options.
//
// See UpdatePricingRule for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *BillingConductor) UpdatePricingRuleWithContext(ctx aws.Context, input *UpdatePricingRuleInput, opts ...request.Option) (*UpdatePricingRuleOutput, error) {
req, out := c.UpdatePricingRuleRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// You do not have sufficient access to perform this action.
type AccessDeniedException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"Message" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AccessDeniedException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AccessDeniedException) GoString() string {
return s.String()
}
func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
return &AccessDeniedException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *AccessDeniedException) Code() string {
return "AccessDeniedException"
}
// Message returns the exception's message.
func (s *AccessDeniedException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *AccessDeniedException) OrigErr() error {
return nil
}
func (s *AccessDeniedException) Error() string {
return fmt.Sprintf("%s: %s", s.Code(), s.Message())
}
// Status code returns the HTTP status code for the request's response error.
func (s *AccessDeniedException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *AccessDeniedException) RequestID() string {
return s.RespMetadata.RequestID
}
// A representation of a linked account.
type AccountAssociationsListElement struct {
_ struct{} `type:"structure"`
// The Amazon Web Services account email.
//
// AccountEmail is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by AccountAssociationsListElement's
// String and GoString methods.
AccountEmail *string `type:"string" sensitive:"true"`
// The associating array of account IDs.
AccountId *string `type:"string"`
// The Amazon Web Services account name.
//
// AccountName is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by AccountAssociationsListElement's
// String and GoString methods.
AccountName *string `type:"string" sensitive:"true"`
// The Billing Group Arn that the linked account is associated to.
BillingGroupArn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AccountAssociationsListElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AccountAssociationsListElement) GoString() string {
return s.String()
}
// SetAccountEmail sets the AccountEmail field's value.
func (s *AccountAssociationsListElement) SetAccountEmail(v string) *AccountAssociationsListElement {
s.AccountEmail = &v
return s
}
// SetAccountId sets the AccountId field's value.
func (s *AccountAssociationsListElement) SetAccountId(v string) *AccountAssociationsListElement {
s.AccountId = &v
return s
}
// SetAccountName sets the AccountName field's value.
func (s *AccountAssociationsListElement) SetAccountName(v string) *AccountAssociationsListElement {
s.AccountName = &v
return s
}
// SetBillingGroupArn sets the BillingGroupArn field's value.
func (s *AccountAssociationsListElement) SetBillingGroupArn(v string) *AccountAssociationsListElement {
s.BillingGroupArn = &v
return s
}
// The set of accounts that will be under the billing group. The set of accounts
// resemble the linked accounts in a consolidated billing family.
type AccountGrouping struct {
_ struct{} `type:"structure"`
// Specifies if this billing group will automatically associate newly added
// Amazon Web Services accounts that join your consolidated billing family.
AutoAssociate *bool `type:"boolean"`
// The account IDs that make up the billing group. Account IDs must be a part
// of the consolidated billing family, and not associated with another billing
// group.
//
// LinkedAccountIds is a required field
LinkedAccountIds []*string `min:"1" type:"list" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AccountGrouping) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AccountGrouping) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *AccountGrouping) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "AccountGrouping"}
if s.LinkedAccountIds == nil {
invalidParams.Add(request.NewErrParamRequired("LinkedAccountIds"))
}
if s.LinkedAccountIds != nil && len(s.LinkedAccountIds) < 1 {
invalidParams.Add(request.NewErrParamMinLen("LinkedAccountIds", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAutoAssociate sets the AutoAssociate field's value.
func (s *AccountGrouping) SetAutoAssociate(v bool) *AccountGrouping {
s.AutoAssociate = &v
return s
}
// SetLinkedAccountIds sets the LinkedAccountIds field's value.
func (s *AccountGrouping) SetLinkedAccountIds(v []*string) *AccountGrouping {
s.LinkedAccountIds = v
return s
}
type AssociateAccountsInput struct {
_ struct{} `type:"structure"`
// The associating array of account IDs.
//
// AccountIds is a required field
AccountIds []*string `min:"1" type:"list" required:"true"`
// The Amazon Resource Name (ARN) of the billing group that associates the array
// of account IDs.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateAccountsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateAccountsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *AssociateAccountsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "AssociateAccountsInput"}
if s.AccountIds == nil {
invalidParams.Add(request.NewErrParamRequired("AccountIds"))
}
if s.AccountIds != nil && len(s.AccountIds) < 1 {
invalidParams.Add(request.NewErrParamMinLen("AccountIds", 1))
}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAccountIds sets the AccountIds field's value.
func (s *AssociateAccountsInput) SetAccountIds(v []*string) *AssociateAccountsInput {
s.AccountIds = v
return s
}
// SetArn sets the Arn field's value.
func (s *AssociateAccountsInput) SetArn(v string) *AssociateAccountsInput {
s.Arn = &v
return s
}
type AssociateAccountsOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the billing group that associates the array
// of account IDs.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateAccountsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateAccountsOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *AssociateAccountsOutput) SetArn(v string) *AssociateAccountsOutput {
s.Arn = &v
return s
}
type AssociatePricingRulesInput struct {
_ struct{} `type:"structure"`
// The PricingPlanArn that the PricingRuleArns are associated with.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// The PricingRuleArns that are associated with the Pricing Plan.
//
// PricingRuleArns is a required field
PricingRuleArns []*string `min:"1" type:"list" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociatePricingRulesInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociatePricingRulesInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *AssociatePricingRulesInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "AssociatePricingRulesInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.PricingRuleArns == nil {
invalidParams.Add(request.NewErrParamRequired("PricingRuleArns"))
}
if s.PricingRuleArns != nil && len(s.PricingRuleArns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("PricingRuleArns", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *AssociatePricingRulesInput) SetArn(v string) *AssociatePricingRulesInput {
s.Arn = &v
return s
}
// SetPricingRuleArns sets the PricingRuleArns field's value.
func (s *AssociatePricingRulesInput) SetPricingRuleArns(v []*string) *AssociatePricingRulesInput {
s.PricingRuleArns = v
return s
}
type AssociatePricingRulesOutput struct {
_ struct{} `type:"structure"`
// The PricingPlanArn that the PricingRuleArns are associated with.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociatePricingRulesOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociatePricingRulesOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *AssociatePricingRulesOutput) SetArn(v string) *AssociatePricingRulesOutput {
s.Arn = &v
return s
}
// A representation of a resource association error.
type AssociateResourceError struct {
_ struct{} `type:"structure"`
// The reason why the resource association failed.
Message *string `type:"string"`
// A static error code that's used to classify the type of failure.
Reason *string `type:"string" enum:"AssociateResourceErrorReason"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateResourceError) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateResourceError) GoString() string {
return s.String()
}
// SetMessage sets the Message field's value.
func (s *AssociateResourceError) SetMessage(v string) *AssociateResourceError {
s.Message = &v
return s
}
// SetReason sets the Reason field's value.
func (s *AssociateResourceError) SetReason(v string) *AssociateResourceError {
s.Reason = &v
return s
}
// A resource association result for a percentage custom line item.
type AssociateResourceResponseElement struct {
_ struct{} `type:"structure"`
// The resource ARN that was associated to the custom line item.
Arn *string `type:"string"`
// An AssociateResourceError that will populate if the resource association
// fails.
Error *AssociateResourceError `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateResourceResponseElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s AssociateResourceResponseElement) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *AssociateResourceResponseElement) SetArn(v string) *AssociateResourceResponseElement {
s.Arn = &v
return s
}
// SetError sets the Error field's value.
func (s *AssociateResourceResponseElement) SetError(v *AssociateResourceError) *AssociateResourceResponseElement {
s.Error = v
return s
}
// The key-value pair that represents the attribute by which the BillingGroupCostReportResults
// are grouped. For example, if you want a service-level breakdown for Amazon
// Simple Storage Service (Amazon S3) of the billing group, the attribute will
// be a key-value pair of "PRODUCT_NAME" and "S3".
type Attribute struct {
_ struct{} `type:"structure"`
// The key in a key-value pair that describes the margin summary.
Key *string `type:"string"`
// The value in a key-value pair that describes the margin summary.
Value *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Attribute) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Attribute) GoString() string {
return s.String()
}
// SetKey sets the Key field's value.
func (s *Attribute) SetKey(v string) *Attribute {
s.Key = &v
return s
}
// SetValue sets the Value field's value.
func (s *Attribute) SetValue(v string) *Attribute {
s.Value = &v
return s
}
type BatchAssociateResourcesToCustomLineItemInput struct {
_ struct{} `type:"structure"`
// The billing period range in which the custom line item request will be applied.
BillingPeriodRange *CustomLineItemBillingPeriodRange `type:"structure"`
// A list containing the ARNs of the resources to be associated.
//
// ResourceArns is a required field
ResourceArns []*string `min:"1" type:"list" required:"true"`
// A percentage custom line item ARN to associate the resources to.
//
// TargetArn is a required field
TargetArn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchAssociateResourcesToCustomLineItemInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchAssociateResourcesToCustomLineItemInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *BatchAssociateResourcesToCustomLineItemInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "BatchAssociateResourcesToCustomLineItemInput"}
if s.ResourceArns == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArns"))
}
if s.ResourceArns != nil && len(s.ResourceArns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArns", 1))
}
if s.TargetArn == nil {
invalidParams.Add(request.NewErrParamRequired("TargetArn"))
}
if s.BillingPeriodRange != nil {
if err := s.BillingPeriodRange.Validate(); err != nil {
invalidParams.AddNested("BillingPeriodRange", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriodRange sets the BillingPeriodRange field's value.
func (s *BatchAssociateResourcesToCustomLineItemInput) SetBillingPeriodRange(v *CustomLineItemBillingPeriodRange) *BatchAssociateResourcesToCustomLineItemInput {
s.BillingPeriodRange = v
return s
}
// SetResourceArns sets the ResourceArns field's value.
func (s *BatchAssociateResourcesToCustomLineItemInput) SetResourceArns(v []*string) *BatchAssociateResourcesToCustomLineItemInput {
s.ResourceArns = v
return s
}
// SetTargetArn sets the TargetArn field's value.
func (s *BatchAssociateResourcesToCustomLineItemInput) SetTargetArn(v string) *BatchAssociateResourcesToCustomLineItemInput {
s.TargetArn = &v
return s
}
type BatchAssociateResourcesToCustomLineItemOutput struct {
_ struct{} `type:"structure"`
// A list of AssociateResourceResponseElement for each resource that failed
// association to a percentage custom line item.
FailedAssociatedResources []*AssociateResourceResponseElement `type:"list"`
// A list of AssociateResourceResponseElement for each resource that's been
// associated to a percentage custom line item successfully.
SuccessfullyAssociatedResources []*AssociateResourceResponseElement `type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchAssociateResourcesToCustomLineItemOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchAssociateResourcesToCustomLineItemOutput) GoString() string {
return s.String()
}
// SetFailedAssociatedResources sets the FailedAssociatedResources field's value.
func (s *BatchAssociateResourcesToCustomLineItemOutput) SetFailedAssociatedResources(v []*AssociateResourceResponseElement) *BatchAssociateResourcesToCustomLineItemOutput {
s.FailedAssociatedResources = v
return s
}
// SetSuccessfullyAssociatedResources sets the SuccessfullyAssociatedResources field's value.
func (s *BatchAssociateResourcesToCustomLineItemOutput) SetSuccessfullyAssociatedResources(v []*AssociateResourceResponseElement) *BatchAssociateResourcesToCustomLineItemOutput {
s.SuccessfullyAssociatedResources = v
return s
}
type BatchDisassociateResourcesFromCustomLineItemInput struct {
_ struct{} `type:"structure"`
// The billing period range in which the custom line item request will be applied.
BillingPeriodRange *CustomLineItemBillingPeriodRange `type:"structure"`
// A list containing the ARNs of resources to be disassociated.
//
// ResourceArns is a required field
ResourceArns []*string `min:"1" type:"list" required:"true"`
// A percentage custom line item ARN to disassociate the resources from.
//
// TargetArn is a required field
TargetArn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchDisassociateResourcesFromCustomLineItemInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchDisassociateResourcesFromCustomLineItemInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *BatchDisassociateResourcesFromCustomLineItemInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "BatchDisassociateResourcesFromCustomLineItemInput"}
if s.ResourceArns == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArns"))
}
if s.ResourceArns != nil && len(s.ResourceArns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArns", 1))
}
if s.TargetArn == nil {
invalidParams.Add(request.NewErrParamRequired("TargetArn"))
}
if s.BillingPeriodRange != nil {
if err := s.BillingPeriodRange.Validate(); err != nil {
invalidParams.AddNested("BillingPeriodRange", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriodRange sets the BillingPeriodRange field's value.
func (s *BatchDisassociateResourcesFromCustomLineItemInput) SetBillingPeriodRange(v *CustomLineItemBillingPeriodRange) *BatchDisassociateResourcesFromCustomLineItemInput {
s.BillingPeriodRange = v
return s
}
// SetResourceArns sets the ResourceArns field's value.
func (s *BatchDisassociateResourcesFromCustomLineItemInput) SetResourceArns(v []*string) *BatchDisassociateResourcesFromCustomLineItemInput {
s.ResourceArns = v
return s
}
// SetTargetArn sets the TargetArn field's value.
func (s *BatchDisassociateResourcesFromCustomLineItemInput) SetTargetArn(v string) *BatchDisassociateResourcesFromCustomLineItemInput {
s.TargetArn = &v
return s
}
type BatchDisassociateResourcesFromCustomLineItemOutput struct {
_ struct{} `type:"structure"`
// A list of DisassociateResourceResponseElement for each resource that failed
// disassociation from a percentage custom line item.
FailedDisassociatedResources []*DisassociateResourceResponseElement `type:"list"`
// A list of DisassociateResourceResponseElement for each resource that's been
// disassociated from a percentage custom line item successfully.
SuccessfullyDisassociatedResources []*DisassociateResourceResponseElement `type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchDisassociateResourcesFromCustomLineItemOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BatchDisassociateResourcesFromCustomLineItemOutput) GoString() string {
return s.String()
}
// SetFailedDisassociatedResources sets the FailedDisassociatedResources field's value.
func (s *BatchDisassociateResourcesFromCustomLineItemOutput) SetFailedDisassociatedResources(v []*DisassociateResourceResponseElement) *BatchDisassociateResourcesFromCustomLineItemOutput {
s.FailedDisassociatedResources = v
return s
}
// SetSuccessfullyDisassociatedResources sets the SuccessfullyDisassociatedResources field's value.
func (s *BatchDisassociateResourcesFromCustomLineItemOutput) SetSuccessfullyDisassociatedResources(v []*DisassociateResourceResponseElement) *BatchDisassociateResourcesFromCustomLineItemOutput {
s.SuccessfullyDisassociatedResources = v
return s
}
// A summary report of actual Amazon Web Services charges and calculated Amazon
// Web Services charges, based on the associated pricing plan of a billing group.
type BillingGroupCostReportElement struct {
_ struct{} `type:"structure"`
// The actual Amazon Web Services charges for the billing group.
AWSCost *string `type:"string"`
// The Amazon Resource Name (ARN) of a billing group.
Arn *string `type:"string"`
// The displayed currency.
Currency *string `type:"string"`
// The billing group margin.
Margin *string `type:"string"`
// The percentage of billing group margin.
MarginPercentage *string `type:"string"`
// The hypothetical Amazon Web Services charges based on the associated pricing
// plan of a billing group.
ProformaCost *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingGroupCostReportElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingGroupCostReportElement) GoString() string {
return s.String()
}
// SetAWSCost sets the AWSCost field's value.
func (s *BillingGroupCostReportElement) SetAWSCost(v string) *BillingGroupCostReportElement {
s.AWSCost = &v
return s
}
// SetArn sets the Arn field's value.
func (s *BillingGroupCostReportElement) SetArn(v string) *BillingGroupCostReportElement {
s.Arn = &v
return s
}
// SetCurrency sets the Currency field's value.
func (s *BillingGroupCostReportElement) SetCurrency(v string) *BillingGroupCostReportElement {
s.Currency = &v
return s
}
// SetMargin sets the Margin field's value.
func (s *BillingGroupCostReportElement) SetMargin(v string) *BillingGroupCostReportElement {
s.Margin = &v
return s
}
// SetMarginPercentage sets the MarginPercentage field's value.
func (s *BillingGroupCostReportElement) SetMarginPercentage(v string) *BillingGroupCostReportElement {
s.MarginPercentage = &v
return s
}
// SetProformaCost sets the ProformaCost field's value.
func (s *BillingGroupCostReportElement) SetProformaCost(v string) *BillingGroupCostReportElement {
s.ProformaCost = &v
return s
}
// A paginated call to retrieve a list of summary reports of actual Amazon Web
// Services charges and the calculated Amazon Web Services charges, broken down
// by attributes.
type BillingGroupCostReportResultElement struct {
_ struct{} `type:"structure"`
// The actual Amazon Web Services charges for the billing group.
AWSCost *string `type:"string"`
// The Amazon Resource Number (ARN) that uniquely identifies the billing group.
Arn *string `type:"string"`
// The list of key-value pairs that represent the attributes by which the BillingGroupCostReportResults
// are grouped. For example, if you want the Amazon S3 service-level breakdown
// of a billing group for November 2023, the attributes list will contain a
// key-value pair of "PRODUCT_NAME" and "S3" and a key-value pair of "BILLING_PERIOD"
// and "Nov 2023".
Attributes []*Attribute `type:"list"`
// The displayed currency.
Currency *string `type:"string"`
// The billing group margin.
Margin *string `type:"string"`
// The percentage of the billing group margin.
MarginPercentage *string `type:"string"`
// The hypothetical Amazon Web Services charges based on the associated pricing
// plan of a billing group.
ProformaCost *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingGroupCostReportResultElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingGroupCostReportResultElement) GoString() string {
return s.String()
}
// SetAWSCost sets the AWSCost field's value.
func (s *BillingGroupCostReportResultElement) SetAWSCost(v string) *BillingGroupCostReportResultElement {
s.AWSCost = &v
return s
}
// SetArn sets the Arn field's value.
func (s *BillingGroupCostReportResultElement) SetArn(v string) *BillingGroupCostReportResultElement {
s.Arn = &v
return s
}
// SetAttributes sets the Attributes field's value.
func (s *BillingGroupCostReportResultElement) SetAttributes(v []*Attribute) *BillingGroupCostReportResultElement {
s.Attributes = v
return s
}
// SetCurrency sets the Currency field's value.
func (s *BillingGroupCostReportResultElement) SetCurrency(v string) *BillingGroupCostReportResultElement {
s.Currency = &v
return s
}
// SetMargin sets the Margin field's value.
func (s *BillingGroupCostReportResultElement) SetMargin(v string) *BillingGroupCostReportResultElement {
s.Margin = &v
return s
}
// SetMarginPercentage sets the MarginPercentage field's value.
func (s *BillingGroupCostReportResultElement) SetMarginPercentage(v string) *BillingGroupCostReportResultElement {
s.MarginPercentage = &v
return s
}
// SetProformaCost sets the ProformaCost field's value.
func (s *BillingGroupCostReportResultElement) SetProformaCost(v string) *BillingGroupCostReportResultElement {
s.ProformaCost = &v
return s
}
// A representation of a billing group.
type BillingGroupListElement struct {
_ struct{} `type:"structure"`
// Specifies if the billing group has automatic account association (AutoAssociate)
// enabled.
AccountGrouping *ListBillingGroupAccountGrouping `type:"structure"`
// The Amazon Resource Number (ARN) that can be used to uniquely identify the
// billing group.
Arn *string `type:"string"`
// The preferences and settings that will be used to compute the Amazon Web
// Services charges for a billing group.
ComputationPreference *ComputationPreference `type:"structure"`
// The time when the billing group was created.
CreationTime *int64 `type:"long"`
// The description of the billing group.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by BillingGroupListElement's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The most recent time when the billing group was modified.
LastModifiedTime *int64 `type:"long"`
// The name of the billing group.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by BillingGroupListElement's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The account ID that serves as the main account in a billing group.
PrimaryAccountId *string `type:"string"`
// The number of accounts in the particular billing group.
Size *int64 `type:"long"`
// The billing group status. Only one of the valid values can be used.
Status *string `type:"string" enum:"BillingGroupStatus"`
// The reason why the billing group is in its current status.
StatusReason *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingGroupListElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingGroupListElement) GoString() string {
return s.String()
}
// SetAccountGrouping sets the AccountGrouping field's value.
func (s *BillingGroupListElement) SetAccountGrouping(v *ListBillingGroupAccountGrouping) *BillingGroupListElement {
s.AccountGrouping = v
return s
}
// SetArn sets the Arn field's value.
func (s *BillingGroupListElement) SetArn(v string) *BillingGroupListElement {
s.Arn = &v
return s
}
// SetComputationPreference sets the ComputationPreference field's value.
func (s *BillingGroupListElement) SetComputationPreference(v *ComputationPreference) *BillingGroupListElement {
s.ComputationPreference = v
return s
}
// SetCreationTime sets the CreationTime field's value.
func (s *BillingGroupListElement) SetCreationTime(v int64) *BillingGroupListElement {
s.CreationTime = &v
return s
}
// SetDescription sets the Description field's value.
func (s *BillingGroupListElement) SetDescription(v string) *BillingGroupListElement {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *BillingGroupListElement) SetLastModifiedTime(v int64) *BillingGroupListElement {
s.LastModifiedTime = &v
return s
}
// SetName sets the Name field's value.
func (s *BillingGroupListElement) SetName(v string) *BillingGroupListElement {
s.Name = &v
return s
}
// SetPrimaryAccountId sets the PrimaryAccountId field's value.
func (s *BillingGroupListElement) SetPrimaryAccountId(v string) *BillingGroupListElement {
s.PrimaryAccountId = &v
return s
}
// SetSize sets the Size field's value.
func (s *BillingGroupListElement) SetSize(v int64) *BillingGroupListElement {
s.Size = &v
return s
}
// SetStatus sets the Status field's value.
func (s *BillingGroupListElement) SetStatus(v string) *BillingGroupListElement {
s.Status = &v
return s
}
// SetStatusReason sets the StatusReason field's value.
func (s *BillingGroupListElement) SetStatusReason(v string) *BillingGroupListElement {
s.StatusReason = &v
return s
}
// A time range for which the margin summary is effective. The time range can
// be up to 12 months.
type BillingPeriodRange struct {
_ struct{} `type:"structure"`
// The exclusive end billing period that defines a billing period range for
// the margin summary. For example, if you choose a billing period that starts
// in October 2023 and ends in December 2023, the margin summary will only include
// data from October 2023 and November 2023.
//
// ExclusiveEndBillingPeriod is a required field
ExclusiveEndBillingPeriod *string `type:"string" required:"true"`
// The inclusive start billing period that defines a billing period range for
// the margin summary.
//
// InclusiveStartBillingPeriod is a required field
InclusiveStartBillingPeriod *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingPeriodRange) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s BillingPeriodRange) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *BillingPeriodRange) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "BillingPeriodRange"}
if s.ExclusiveEndBillingPeriod == nil {
invalidParams.Add(request.NewErrParamRequired("ExclusiveEndBillingPeriod"))
}
if s.InclusiveStartBillingPeriod == nil {
invalidParams.Add(request.NewErrParamRequired("InclusiveStartBillingPeriod"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetExclusiveEndBillingPeriod sets the ExclusiveEndBillingPeriod field's value.
func (s *BillingPeriodRange) SetExclusiveEndBillingPeriod(v string) *BillingPeriodRange {
s.ExclusiveEndBillingPeriod = &v
return s
}
// SetInclusiveStartBillingPeriod sets the InclusiveStartBillingPeriod field's value.
func (s *BillingPeriodRange) SetInclusiveStartBillingPeriod(v string) *BillingPeriodRange {
s.InclusiveStartBillingPeriod = &v
return s
}
// The preferences and settings that will be used to compute the Amazon Web
// Services charges for a billing group.
type ComputationPreference struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the pricing plan that's used to compute
// the Amazon Web Services charges for a billing group.
//
// PricingPlanArn is a required field
PricingPlanArn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ComputationPreference) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ComputationPreference) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ComputationPreference) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ComputationPreference"}
if s.PricingPlanArn == nil {
invalidParams.Add(request.NewErrParamRequired("PricingPlanArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetPricingPlanArn sets the PricingPlanArn field's value.
func (s *ComputationPreference) SetPricingPlanArn(v string) *ComputationPreference {
s.PricingPlanArn = &v
return s
}
// You can cause an inconsistent state by updating or deleting a resource.
type ConflictException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"Message" type:"string"`
// Reason for the inconsistent state.
Reason *string `type:"string" enum:"ConflictExceptionReason"`
// Identifier of the resource in use.
//
// ResourceId is a required field
ResourceId *string `type:"string" required:"true"`
// Type of the resource in use.
//
// ResourceType is a required field
ResourceType *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ConflictException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ConflictException) GoString() string {
return s.String()
}
func newErrorConflictException(v protocol.ResponseMetadata) error {
return &ConflictException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ConflictException) Code() string {
return "ConflictException"
}
// Message returns the exception's message.
func (s *ConflictException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ConflictException) OrigErr() error {
return nil
}
func (s *ConflictException) Error() string {
return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ConflictException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ConflictException) RequestID() string {
return s.RespMetadata.RequestID
}
type CreateBillingGroupInput struct {
_ struct{} `type:"structure"`
// The set of accounts that will be under the billing group. The set of accounts
// resemble the linked accounts in a consolidated billing family.
//
// AccountGrouping is a required field
AccountGrouping *AccountGrouping `type:"structure" required:"true"`
// The token that is needed to support idempotency. Idempotency isn't currently
// supported, but will be implemented in a future update.
ClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
// The preferences and settings that will be used to compute the Amazon Web
// Services charges for a billing group.
//
// ComputationPreference is a required field
ComputationPreference *ComputationPreference `type:"structure" required:"true"`
// The description of the billing group.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreateBillingGroupInput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The billing group name. The names must be unique.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreateBillingGroupInput's
// String and GoString methods.
//
// Name is a required field
Name *string `min:"1" type:"string" required:"true" sensitive:"true"`
// The account ID that serves as the main account in a billing group.
PrimaryAccountId *string `type:"string"`
// A map that contains tag keys and tag values that are attached to a billing
// group. This feature isn't available during the beta.
Tags map[string]*string `min:"1" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateBillingGroupInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateBillingGroupInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateBillingGroupInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateBillingGroupInput"}
if s.AccountGrouping == nil {
invalidParams.Add(request.NewErrParamRequired("AccountGrouping"))
}
if s.ClientToken != nil && len(*s.ClientToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
}
if s.ComputationPreference == nil {
invalidParams.Add(request.NewErrParamRequired("ComputationPreference"))
}
if s.Name == nil {
invalidParams.Add(request.NewErrParamRequired("Name"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.Tags != nil && len(s.Tags) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
}
if s.AccountGrouping != nil {
if err := s.AccountGrouping.Validate(); err != nil {
invalidParams.AddNested("AccountGrouping", err.(request.ErrInvalidParams))
}
}
if s.ComputationPreference != nil {
if err := s.ComputationPreference.Validate(); err != nil {
invalidParams.AddNested("ComputationPreference", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAccountGrouping sets the AccountGrouping field's value.
func (s *CreateBillingGroupInput) SetAccountGrouping(v *AccountGrouping) *CreateBillingGroupInput {
s.AccountGrouping = v
return s
}
// SetClientToken sets the ClientToken field's value.
func (s *CreateBillingGroupInput) SetClientToken(v string) *CreateBillingGroupInput {
s.ClientToken = &v
return s
}
// SetComputationPreference sets the ComputationPreference field's value.
func (s *CreateBillingGroupInput) SetComputationPreference(v *ComputationPreference) *CreateBillingGroupInput {
s.ComputationPreference = v
return s
}
// SetDescription sets the Description field's value.
func (s *CreateBillingGroupInput) SetDescription(v string) *CreateBillingGroupInput {
s.Description = &v
return s
}
// SetName sets the Name field's value.
func (s *CreateBillingGroupInput) SetName(v string) *CreateBillingGroupInput {
s.Name = &v
return s
}
// SetPrimaryAccountId sets the PrimaryAccountId field's value.
func (s *CreateBillingGroupInput) SetPrimaryAccountId(v string) *CreateBillingGroupInput {
s.PrimaryAccountId = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateBillingGroupInput) SetTags(v map[string]*string) *CreateBillingGroupInput {
s.Tags = v
return s
}
type CreateBillingGroupOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the created billing group.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateBillingGroupOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateBillingGroupOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *CreateBillingGroupOutput) SetArn(v string) *CreateBillingGroupOutput {
s.Arn = &v
return s
}
type CreateCustomLineItemInput struct {
_ struct{} `type:"structure"`
// The Amazon Web Services account in which this custom line item will be applied
// to.
AccountId *string `type:"string"`
// The Amazon Resource Name (ARN) that references the billing group where the
// custom line item applies to.
//
// BillingGroupArn is a required field
BillingGroupArn *string `type:"string" required:"true"`
// A time range for which the custom line item is effective.
BillingPeriodRange *CustomLineItemBillingPeriodRange `type:"structure"`
// A CustomLineItemChargeDetails that describes the charge details for a custom
// line item.
//
// ChargeDetails is a required field
ChargeDetails *CustomLineItemChargeDetails `type:"structure" required:"true"`
// The token that is needed to support idempotency. Idempotency isn't currently
// supported, but will be implemented in a future update.
ClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
// The description of the custom line item. This is shown on the Bills page
// in association with the charge value.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreateCustomLineItemInput's
// String and GoString methods.
//
// Description is a required field
Description *string `min:"1" type:"string" required:"true" sensitive:"true"`
// The name of the custom line item.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreateCustomLineItemInput's
// String and GoString methods.
//
// Name is a required field
Name *string `min:"1" type:"string" required:"true" sensitive:"true"`
// A map that contains tag keys and tag values that are attached to a custom
// line item.
Tags map[string]*string `min:"1" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateCustomLineItemInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateCustomLineItemInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateCustomLineItemInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateCustomLineItemInput"}
if s.BillingGroupArn == nil {
invalidParams.Add(request.NewErrParamRequired("BillingGroupArn"))
}
if s.ChargeDetails == nil {
invalidParams.Add(request.NewErrParamRequired("ChargeDetails"))
}
if s.ClientToken != nil && len(*s.ClientToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
}
if s.Description == nil {
invalidParams.Add(request.NewErrParamRequired("Description"))
}
if s.Description != nil && len(*s.Description) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Description", 1))
}
if s.Name == nil {
invalidParams.Add(request.NewErrParamRequired("Name"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.Tags != nil && len(s.Tags) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
}
if s.BillingPeriodRange != nil {
if err := s.BillingPeriodRange.Validate(); err != nil {
invalidParams.AddNested("BillingPeriodRange", err.(request.ErrInvalidParams))
}
}
if s.ChargeDetails != nil {
if err := s.ChargeDetails.Validate(); err != nil {
invalidParams.AddNested("ChargeDetails", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAccountId sets the AccountId field's value.
func (s *CreateCustomLineItemInput) SetAccountId(v string) *CreateCustomLineItemInput {
s.AccountId = &v
return s
}
// SetBillingGroupArn sets the BillingGroupArn field's value.
func (s *CreateCustomLineItemInput) SetBillingGroupArn(v string) *CreateCustomLineItemInput {
s.BillingGroupArn = &v
return s
}
// SetBillingPeriodRange sets the BillingPeriodRange field's value.
func (s *CreateCustomLineItemInput) SetBillingPeriodRange(v *CustomLineItemBillingPeriodRange) *CreateCustomLineItemInput {
s.BillingPeriodRange = v
return s
}
// SetChargeDetails sets the ChargeDetails field's value.
func (s *CreateCustomLineItemInput) SetChargeDetails(v *CustomLineItemChargeDetails) *CreateCustomLineItemInput {
s.ChargeDetails = v
return s
}
// SetClientToken sets the ClientToken field's value.
func (s *CreateCustomLineItemInput) SetClientToken(v string) *CreateCustomLineItemInput {
s.ClientToken = &v
return s
}
// SetDescription sets the Description field's value.
func (s *CreateCustomLineItemInput) SetDescription(v string) *CreateCustomLineItemInput {
s.Description = &v
return s
}
// SetName sets the Name field's value.
func (s *CreateCustomLineItemInput) SetName(v string) *CreateCustomLineItemInput {
s.Name = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateCustomLineItemInput) SetTags(v map[string]*string) *CreateCustomLineItemInput {
s.Tags = v
return s
}
type CreateCustomLineItemOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the created custom line item.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateCustomLineItemOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateCustomLineItemOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *CreateCustomLineItemOutput) SetArn(v string) *CreateCustomLineItemOutput {
s.Arn = &v
return s
}
// The possible Amazon Web Services Free Tier configurations.
type CreateFreeTierConfig struct {
_ struct{} `type:"structure"`
// Activate or deactivate Amazon Web Services Free Tier.
//
// Activated is a required field
Activated *bool `type:"boolean" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateFreeTierConfig) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateFreeTierConfig) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateFreeTierConfig) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateFreeTierConfig"}
if s.Activated == nil {
invalidParams.Add(request.NewErrParamRequired("Activated"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetActivated sets the Activated field's value.
func (s *CreateFreeTierConfig) SetActivated(v bool) *CreateFreeTierConfig {
s.Activated = &v
return s
}
type CreatePricingPlanInput struct {
_ struct{} `type:"structure"`
// The token that is needed to support idempotency. Idempotency isn't currently
// supported, but will be implemented in a future update.
ClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
// The description of the pricing plan.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreatePricingPlanInput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The name of the pricing plan. The names must be unique to each pricing plan.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreatePricingPlanInput's
// String and GoString methods.
//
// Name is a required field
Name *string `min:"1" type:"string" required:"true" sensitive:"true"`
// A list of Amazon Resource Names (ARNs) that define the pricing plan parameters.
PricingRuleArns []*string `type:"list"`
// A map that contains tag keys and tag values that are attached to a pricing
// plan.
Tags map[string]*string `min:"1" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingPlanInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingPlanInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreatePricingPlanInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreatePricingPlanInput"}
if s.ClientToken != nil && len(*s.ClientToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
}
if s.Name == nil {
invalidParams.Add(request.NewErrParamRequired("Name"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.Tags != nil && len(s.Tags) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetClientToken sets the ClientToken field's value.
func (s *CreatePricingPlanInput) SetClientToken(v string) *CreatePricingPlanInput {
s.ClientToken = &v
return s
}
// SetDescription sets the Description field's value.
func (s *CreatePricingPlanInput) SetDescription(v string) *CreatePricingPlanInput {
s.Description = &v
return s
}
// SetName sets the Name field's value.
func (s *CreatePricingPlanInput) SetName(v string) *CreatePricingPlanInput {
s.Name = &v
return s
}
// SetPricingRuleArns sets the PricingRuleArns field's value.
func (s *CreatePricingPlanInput) SetPricingRuleArns(v []*string) *CreatePricingPlanInput {
s.PricingRuleArns = v
return s
}
// SetTags sets the Tags field's value.
func (s *CreatePricingPlanInput) SetTags(v map[string]*string) *CreatePricingPlanInput {
s.Tags = v
return s
}
type CreatePricingPlanOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the created pricing plan.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingPlanOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingPlanOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *CreatePricingPlanOutput) SetArn(v string) *CreatePricingPlanOutput {
s.Arn = &v
return s
}
type CreatePricingRuleInput struct {
_ struct{} `type:"structure"`
// The seller of services provided by Amazon Web Services, their affiliates,
// or third-party providers selling services via Amazon Web Services Marketplace.
BillingEntity *string `type:"string"`
// The token that's needed to support idempotency. Idempotency isn't currently
// supported, but will be implemented in a future update.
ClientToken *string `location:"header" locationName:"X-Amzn-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
// The pricing rule description.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreatePricingRuleInput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// A percentage modifier that's applied on the public pricing rates.
ModifierPercentage *float64 `type:"double"`
// The pricing rule name. The names must be unique to each pricing rule.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CreatePricingRuleInput's
// String and GoString methods.
//
// Name is a required field
Name *string `min:"1" type:"string" required:"true" sensitive:"true"`
// Operation is the specific Amazon Web Services action covered by this line
// item. This describes the specific usage of the line item.
//
// If the Scope attribute is set to SKU, this attribute indicates which operation
// the PricingRule is modifying. For example, a value of RunInstances:0202 indicates
// the operation of running an Amazon EC2 instance.
Operation *string `min:"1" type:"string"`
// The scope of pricing rule that indicates if it's globally applicable, or
// it's service-specific.
//
// Scope is a required field
Scope *string `type:"string" required:"true" enum:"PricingRuleScope"`
// If the Scope attribute is set to SERVICE or SKU, the attribute indicates
// which service the PricingRule is applicable for.
Service *string `min:"1" type:"string"`
// A map that contains tag keys and tag values that are attached to a pricing
// rule.
Tags map[string]*string `min:"1" type:"map"`
// The set of tiering configurations for the pricing rule.
Tiering *CreateTieringInput_ `type:"structure"`
// The type of pricing rule.
//
// Type is a required field
Type *string `type:"string" required:"true" enum:"PricingRuleType"`
// Usage type is the unit that each service uses to measure the usage of a specific
// type of resource.
UsageType *string `min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingRuleInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingRuleInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreatePricingRuleInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreatePricingRuleInput"}
if s.ClientToken != nil && len(*s.ClientToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
}
if s.Name == nil {
invalidParams.Add(request.NewErrParamRequired("Name"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.Operation != nil && len(*s.Operation) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Operation", 1))
}
if s.Scope == nil {
invalidParams.Add(request.NewErrParamRequired("Scope"))
}
if s.Service != nil && len(*s.Service) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Service", 1))
}
if s.Tags != nil && len(s.Tags) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
}
if s.Type == nil {
invalidParams.Add(request.NewErrParamRequired("Type"))
}
if s.UsageType != nil && len(*s.UsageType) < 1 {
invalidParams.Add(request.NewErrParamMinLen("UsageType", 1))
}
if s.Tiering != nil {
if err := s.Tiering.Validate(); err != nil {
invalidParams.AddNested("Tiering", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingEntity sets the BillingEntity field's value.
func (s *CreatePricingRuleInput) SetBillingEntity(v string) *CreatePricingRuleInput {
s.BillingEntity = &v
return s
}
// SetClientToken sets the ClientToken field's value.
func (s *CreatePricingRuleInput) SetClientToken(v string) *CreatePricingRuleInput {
s.ClientToken = &v
return s
}
// SetDescription sets the Description field's value.
func (s *CreatePricingRuleInput) SetDescription(v string) *CreatePricingRuleInput {
s.Description = &v
return s
}
// SetModifierPercentage sets the ModifierPercentage field's value.
func (s *CreatePricingRuleInput) SetModifierPercentage(v float64) *CreatePricingRuleInput {
s.ModifierPercentage = &v
return s
}
// SetName sets the Name field's value.
func (s *CreatePricingRuleInput) SetName(v string) *CreatePricingRuleInput {
s.Name = &v
return s
}
// SetOperation sets the Operation field's value.
func (s *CreatePricingRuleInput) SetOperation(v string) *CreatePricingRuleInput {
s.Operation = &v
return s
}
// SetScope sets the Scope field's value.
func (s *CreatePricingRuleInput) SetScope(v string) *CreatePricingRuleInput {
s.Scope = &v
return s
}
// SetService sets the Service field's value.
func (s *CreatePricingRuleInput) SetService(v string) *CreatePricingRuleInput {
s.Service = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreatePricingRuleInput) SetTags(v map[string]*string) *CreatePricingRuleInput {
s.Tags = v
return s
}
// SetTiering sets the Tiering field's value.
func (s *CreatePricingRuleInput) SetTiering(v *CreateTieringInput_) *CreatePricingRuleInput {
s.Tiering = v
return s
}
// SetType sets the Type field's value.
func (s *CreatePricingRuleInput) SetType(v string) *CreatePricingRuleInput {
s.Type = &v
return s
}
// SetUsageType sets the UsageType field's value.
func (s *CreatePricingRuleInput) SetUsageType(v string) *CreatePricingRuleInput {
s.UsageType = &v
return s
}
type CreatePricingRuleOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the created pricing rule.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingRuleOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreatePricingRuleOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *CreatePricingRuleOutput) SetArn(v string) *CreatePricingRuleOutput {
s.Arn = &v
return s
}
// The set of tiering configurations for the pricing rule.
type CreateTieringInput_ struct {
_ struct{} `type:"structure"`
// The possible Amazon Web Services Free Tier configurations.
//
// FreeTier is a required field
FreeTier *CreateFreeTierConfig `type:"structure" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateTieringInput_) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CreateTieringInput_) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateTieringInput_) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateTieringInput_"}
if s.FreeTier == nil {
invalidParams.Add(request.NewErrParamRequired("FreeTier"))
}
if s.FreeTier != nil {
if err := s.FreeTier.Validate(); err != nil {
invalidParams.AddNested("FreeTier", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetFreeTier sets the FreeTier field's value.
func (s *CreateTieringInput_) SetFreeTier(v *CreateFreeTierConfig) *CreateTieringInput_ {
s.FreeTier = v
return s
}
// The billing period range in which the custom line item request will be applied.
type CustomLineItemBillingPeriodRange struct {
_ struct{} `type:"structure"`
// The inclusive end billing period that defines a billing period range where
// a custom line is applied.
ExclusiveEndBillingPeriod *string `type:"string"`
// The inclusive start billing period that defines a billing period range where
// a custom line is applied.
//
// InclusiveStartBillingPeriod is a required field
InclusiveStartBillingPeriod *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemBillingPeriodRange) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemBillingPeriodRange) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CustomLineItemBillingPeriodRange) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CustomLineItemBillingPeriodRange"}
if s.InclusiveStartBillingPeriod == nil {
invalidParams.Add(request.NewErrParamRequired("InclusiveStartBillingPeriod"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetExclusiveEndBillingPeriod sets the ExclusiveEndBillingPeriod field's value.
func (s *CustomLineItemBillingPeriodRange) SetExclusiveEndBillingPeriod(v string) *CustomLineItemBillingPeriodRange {
s.ExclusiveEndBillingPeriod = &v
return s
}
// SetInclusiveStartBillingPeriod sets the InclusiveStartBillingPeriod field's value.
func (s *CustomLineItemBillingPeriodRange) SetInclusiveStartBillingPeriod(v string) *CustomLineItemBillingPeriodRange {
s.InclusiveStartBillingPeriod = &v
return s
}
// The charge details of a custom line item. It should contain only one of Flat
// or Percentage.
type CustomLineItemChargeDetails struct {
_ struct{} `type:"structure"`
// A CustomLineItemFlatChargeDetails that describes the charge details of a
// flat custom line item.
Flat *CustomLineItemFlatChargeDetails `type:"structure"`
// A representation of the line item filter.
LineItemFilters []*LineItemFilter `type:"list"`
// A CustomLineItemPercentageChargeDetails that describes the charge details
// of a percentage custom line item.
Percentage *CustomLineItemPercentageChargeDetails `type:"structure"`
// The type of the custom line item that indicates whether the charge is a fee
// or credit.
//
// Type is a required field
Type *string `type:"string" required:"true" enum:"CustomLineItemType"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemChargeDetails) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CustomLineItemChargeDetails) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CustomLineItemChargeDetails"}
if s.Type == nil {
invalidParams.Add(request.NewErrParamRequired("Type"))
}
if s.Flat != nil {
if err := s.Flat.Validate(); err != nil {
invalidParams.AddNested("Flat", err.(request.ErrInvalidParams))
}
}
if s.LineItemFilters != nil {
for i, v := range s.LineItemFilters {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LineItemFilters", i), err.(request.ErrInvalidParams))
}
}
}
if s.Percentage != nil {
if err := s.Percentage.Validate(); err != nil {
invalidParams.AddNested("Percentage", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetFlat sets the Flat field's value.
func (s *CustomLineItemChargeDetails) SetFlat(v *CustomLineItemFlatChargeDetails) *CustomLineItemChargeDetails {
s.Flat = v
return s
}
// SetLineItemFilters sets the LineItemFilters field's value.
func (s *CustomLineItemChargeDetails) SetLineItemFilters(v []*LineItemFilter) *CustomLineItemChargeDetails {
s.LineItemFilters = v
return s
}
// SetPercentage sets the Percentage field's value.
func (s *CustomLineItemChargeDetails) SetPercentage(v *CustomLineItemPercentageChargeDetails) *CustomLineItemChargeDetails {
s.Percentage = v
return s
}
// SetType sets the Type field's value.
func (s *CustomLineItemChargeDetails) SetType(v string) *CustomLineItemChargeDetails {
s.Type = &v
return s
}
// A representation of the charge details that are associated with a flat custom
// line item.
type CustomLineItemFlatChargeDetails struct {
_ struct{} `type:"structure"`
// The custom line item's fixed charge value in USD.
//
// ChargeValue is a required field
ChargeValue *float64 `type:"double" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemFlatChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemFlatChargeDetails) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CustomLineItemFlatChargeDetails) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CustomLineItemFlatChargeDetails"}
if s.ChargeValue == nil {
invalidParams.Add(request.NewErrParamRequired("ChargeValue"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetChargeValue sets the ChargeValue field's value.
func (s *CustomLineItemFlatChargeDetails) SetChargeValue(v float64) *CustomLineItemFlatChargeDetails {
s.ChargeValue = &v
return s
}
// A representation of a custom line item.
type CustomLineItemListElement struct {
_ struct{} `type:"structure"`
// The Amazon Web Services account in which this custom line item will be applied
// to.
AccountId *string `type:"string"`
// The Amazon Resource Names (ARNs) for custom line items.
Arn *string `type:"string"`
// The number of resources that are associated to the custom line item.
AssociationSize *int64 `type:"long"`
// The Amazon Resource Name (ARN) that references the billing group where the
// custom line item applies to.
BillingGroupArn *string `type:"string"`
// A ListCustomLineItemChargeDetails that describes the charge details of a
// custom line item.
ChargeDetails *ListCustomLineItemChargeDetails `type:"structure"`
// The time created.
CreationTime *int64 `type:"long"`
// The custom line item's charge value currency. Only one of the valid values
// can be used.
CurrencyCode *string `type:"string" enum:"CurrencyCode"`
// The custom line item's description. This is shown on the Bills page in association
// with the charge value.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CustomLineItemListElement's
// String and GoString methods.
Description *string `min:"1" type:"string" sensitive:"true"`
// The most recent time when the custom line item was modified.
LastModifiedTime *int64 `type:"long"`
// The custom line item's name.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CustomLineItemListElement's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The product code that's associated with the custom line item.
ProductCode *string `min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemListElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemListElement) GoString() string {
return s.String()
}
// SetAccountId sets the AccountId field's value.
func (s *CustomLineItemListElement) SetAccountId(v string) *CustomLineItemListElement {
s.AccountId = &v
return s
}
// SetArn sets the Arn field's value.
func (s *CustomLineItemListElement) SetArn(v string) *CustomLineItemListElement {
s.Arn = &v
return s
}
// SetAssociationSize sets the AssociationSize field's value.
func (s *CustomLineItemListElement) SetAssociationSize(v int64) *CustomLineItemListElement {
s.AssociationSize = &v
return s
}
// SetBillingGroupArn sets the BillingGroupArn field's value.
func (s *CustomLineItemListElement) SetBillingGroupArn(v string) *CustomLineItemListElement {
s.BillingGroupArn = &v
return s
}
// SetChargeDetails sets the ChargeDetails field's value.
func (s *CustomLineItemListElement) SetChargeDetails(v *ListCustomLineItemChargeDetails) *CustomLineItemListElement {
s.ChargeDetails = v
return s
}
// SetCreationTime sets the CreationTime field's value.
func (s *CustomLineItemListElement) SetCreationTime(v int64) *CustomLineItemListElement {
s.CreationTime = &v
return s
}
// SetCurrencyCode sets the CurrencyCode field's value.
func (s *CustomLineItemListElement) SetCurrencyCode(v string) *CustomLineItemListElement {
s.CurrencyCode = &v
return s
}
// SetDescription sets the Description field's value.
func (s *CustomLineItemListElement) SetDescription(v string) *CustomLineItemListElement {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *CustomLineItemListElement) SetLastModifiedTime(v int64) *CustomLineItemListElement {
s.LastModifiedTime = &v
return s
}
// SetName sets the Name field's value.
func (s *CustomLineItemListElement) SetName(v string) *CustomLineItemListElement {
s.Name = &v
return s
}
// SetProductCode sets the ProductCode field's value.
func (s *CustomLineItemListElement) SetProductCode(v string) *CustomLineItemListElement {
s.ProductCode = &v
return s
}
// A representation of the charge details that are associated with a percentage
// custom line item.
type CustomLineItemPercentageChargeDetails struct {
_ struct{} `type:"structure"`
// A list of resource ARNs to associate to the percentage custom line item.
AssociatedValues []*string `type:"list"`
// The custom line item's percentage value. This will be multiplied against
// the combined value of its associated resources to determine its charge value.
//
// PercentageValue is a required field
PercentageValue *float64 `type:"double" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemPercentageChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemPercentageChargeDetails) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CustomLineItemPercentageChargeDetails) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CustomLineItemPercentageChargeDetails"}
if s.PercentageValue == nil {
invalidParams.Add(request.NewErrParamRequired("PercentageValue"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAssociatedValues sets the AssociatedValues field's value.
func (s *CustomLineItemPercentageChargeDetails) SetAssociatedValues(v []*string) *CustomLineItemPercentageChargeDetails {
s.AssociatedValues = v
return s
}
// SetPercentageValue sets the PercentageValue field's value.
func (s *CustomLineItemPercentageChargeDetails) SetPercentageValue(v float64) *CustomLineItemPercentageChargeDetails {
s.PercentageValue = &v
return s
}
// A representation of a custom line item version.
type CustomLineItemVersionListElement struct {
_ struct{} `type:"structure"`
// The Amazon Web Services account in which this custom line item will be applied
// to.
AccountId *string `type:"string"`
// A list of custom line item Amazon Resource Names (ARNs) to retrieve information.
Arn *string `type:"string"`
// The number of resources that are associated with the custom line item.
AssociationSize *int64 `type:"long"`
// The Amazon Resource Name (ARN) of the billing group that the custom line
// item applies to.
BillingGroupArn *string `type:"string"`
// A representation of the charge details of a custom line item.
ChargeDetails *ListCustomLineItemChargeDetails `type:"structure"`
// The time when the custom line item version was created.
CreationTime *int64 `type:"long"`
// The charge value currency of the custom line item.
CurrencyCode *string `type:"string" enum:"CurrencyCode"`
// The description of the custom line item.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CustomLineItemVersionListElement's
// String and GoString methods.
Description *string `min:"1" type:"string" sensitive:"true"`
// The end billing period of the custom line item version.
EndBillingPeriod *string `type:"string"`
// The most recent time that the custom line item version was modified.
LastModifiedTime *int64 `type:"long"`
// The name of the custom line item.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by CustomLineItemVersionListElement's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The product code that’s associated with the custom line item.
ProductCode *string `min:"1" type:"string"`
// The start billing period of the custom line item version.
StartBillingPeriod *string `type:"string"`
// The inclusive start time.
StartTime *int64 `type:"long"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemVersionListElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s CustomLineItemVersionListElement) GoString() string {
return s.String()
}
// SetAccountId sets the AccountId field's value.
func (s *CustomLineItemVersionListElement) SetAccountId(v string) *CustomLineItemVersionListElement {
s.AccountId = &v
return s
}
// SetArn sets the Arn field's value.
func (s *CustomLineItemVersionListElement) SetArn(v string) *CustomLineItemVersionListElement {
s.Arn = &v
return s
}
// SetAssociationSize sets the AssociationSize field's value.
func (s *CustomLineItemVersionListElement) SetAssociationSize(v int64) *CustomLineItemVersionListElement {
s.AssociationSize = &v
return s
}
// SetBillingGroupArn sets the BillingGroupArn field's value.
func (s *CustomLineItemVersionListElement) SetBillingGroupArn(v string) *CustomLineItemVersionListElement {
s.BillingGroupArn = &v
return s
}
// SetChargeDetails sets the ChargeDetails field's value.
func (s *CustomLineItemVersionListElement) SetChargeDetails(v *ListCustomLineItemChargeDetails) *CustomLineItemVersionListElement {
s.ChargeDetails = v
return s
}
// SetCreationTime sets the CreationTime field's value.
func (s *CustomLineItemVersionListElement) SetCreationTime(v int64) *CustomLineItemVersionListElement {
s.CreationTime = &v
return s
}
// SetCurrencyCode sets the CurrencyCode field's value.
func (s *CustomLineItemVersionListElement) SetCurrencyCode(v string) *CustomLineItemVersionListElement {
s.CurrencyCode = &v
return s
}
// SetDescription sets the Description field's value.
func (s *CustomLineItemVersionListElement) SetDescription(v string) *CustomLineItemVersionListElement {
s.Description = &v
return s
}
// SetEndBillingPeriod sets the EndBillingPeriod field's value.
func (s *CustomLineItemVersionListElement) SetEndBillingPeriod(v string) *CustomLineItemVersionListElement {
s.EndBillingPeriod = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *CustomLineItemVersionListElement) SetLastModifiedTime(v int64) *CustomLineItemVersionListElement {
s.LastModifiedTime = &v
return s
}
// SetName sets the Name field's value.
func (s *CustomLineItemVersionListElement) SetName(v string) *CustomLineItemVersionListElement {
s.Name = &v
return s
}
// SetProductCode sets the ProductCode field's value.
func (s *CustomLineItemVersionListElement) SetProductCode(v string) *CustomLineItemVersionListElement {
s.ProductCode = &v
return s
}
// SetStartBillingPeriod sets the StartBillingPeriod field's value.
func (s *CustomLineItemVersionListElement) SetStartBillingPeriod(v string) *CustomLineItemVersionListElement {
s.StartBillingPeriod = &v
return s
}
// SetStartTime sets the StartTime field's value.
func (s *CustomLineItemVersionListElement) SetStartTime(v int64) *CustomLineItemVersionListElement {
s.StartTime = &v
return s
}
type DeleteBillingGroupInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the billing group that you're deleting.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteBillingGroupInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteBillingGroupInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeleteBillingGroupInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeleteBillingGroupInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *DeleteBillingGroupInput) SetArn(v string) *DeleteBillingGroupInput {
s.Arn = &v
return s
}
type DeleteBillingGroupOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the deleted billing group.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteBillingGroupOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteBillingGroupOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *DeleteBillingGroupOutput) SetArn(v string) *DeleteBillingGroupOutput {
s.Arn = &v
return s
}
type DeleteCustomLineItemInput struct {
_ struct{} `type:"structure"`
// The ARN of the custom line item to be deleted.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// The billing period range in which the custom line item request will be applied.
BillingPeriodRange *CustomLineItemBillingPeriodRange `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteCustomLineItemInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteCustomLineItemInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeleteCustomLineItemInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeleteCustomLineItemInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.BillingPeriodRange != nil {
if err := s.BillingPeriodRange.Validate(); err != nil {
invalidParams.AddNested("BillingPeriodRange", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *DeleteCustomLineItemInput) SetArn(v string) *DeleteCustomLineItemInput {
s.Arn = &v
return s
}
// SetBillingPeriodRange sets the BillingPeriodRange field's value.
func (s *DeleteCustomLineItemInput) SetBillingPeriodRange(v *CustomLineItemBillingPeriodRange) *DeleteCustomLineItemInput {
s.BillingPeriodRange = v
return s
}
type DeleteCustomLineItemOutput struct {
_ struct{} `type:"structure"`
// The ARN of the deleted custom line item.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteCustomLineItemOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeleteCustomLineItemOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *DeleteCustomLineItemOutput) SetArn(v string) *DeleteCustomLineItemOutput {
s.Arn = &v
return s
}
type DeletePricingPlanInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the pricing plan that you're deleting.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingPlanInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingPlanInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeletePricingPlanInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeletePricingPlanInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *DeletePricingPlanInput) SetArn(v string) *DeletePricingPlanInput {
s.Arn = &v
return s
}
type DeletePricingPlanOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the deleted pricing plan.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingPlanOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingPlanOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *DeletePricingPlanOutput) SetArn(v string) *DeletePricingPlanOutput {
s.Arn = &v
return s
}
type DeletePricingRuleInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the pricing rule that you are deleting.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingRuleInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingRuleInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeletePricingRuleInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeletePricingRuleInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *DeletePricingRuleInput) SetArn(v string) *DeletePricingRuleInput {
s.Arn = &v
return s
}
type DeletePricingRuleOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the deleted pricing rule.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingRuleOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DeletePricingRuleOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *DeletePricingRuleOutput) SetArn(v string) *DeletePricingRuleOutput {
s.Arn = &v
return s
}
type DisassociateAccountsInput struct {
_ struct{} `type:"structure"`
// The array of account IDs to disassociate.
//
// AccountIds is a required field
AccountIds []*string `min:"1" type:"list" required:"true"`
// The Amazon Resource Name (ARN) of the billing group that the array of account
// IDs will disassociate from.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociateAccountsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociateAccountsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DisassociateAccountsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DisassociateAccountsInput"}
if s.AccountIds == nil {
invalidParams.Add(request.NewErrParamRequired("AccountIds"))
}
if s.AccountIds != nil && len(s.AccountIds) < 1 {
invalidParams.Add(request.NewErrParamMinLen("AccountIds", 1))
}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAccountIds sets the AccountIds field's value.
func (s *DisassociateAccountsInput) SetAccountIds(v []*string) *DisassociateAccountsInput {
s.AccountIds = v
return s
}
// SetArn sets the Arn field's value.
func (s *DisassociateAccountsInput) SetArn(v string) *DisassociateAccountsInput {
s.Arn = &v
return s
}
type DisassociateAccountsOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the billing group that the array of account
// IDs is disassociated from.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociateAccountsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociateAccountsOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *DisassociateAccountsOutput) SetArn(v string) *DisassociateAccountsOutput {
s.Arn = &v
return s
}
type DisassociatePricingRulesInput struct {
_ struct{} `type:"structure"`
// The pricing plan Amazon Resource Name (ARN) to disassociate pricing rules
// from.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// A list containing the Amazon Resource Name (ARN) of the pricing rules that
// will be disassociated.
//
// PricingRuleArns is a required field
PricingRuleArns []*string `min:"1" type:"list" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociatePricingRulesInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociatePricingRulesInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DisassociatePricingRulesInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DisassociatePricingRulesInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.PricingRuleArns == nil {
invalidParams.Add(request.NewErrParamRequired("PricingRuleArns"))
}
if s.PricingRuleArns != nil && len(s.PricingRuleArns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("PricingRuleArns", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *DisassociatePricingRulesInput) SetArn(v string) *DisassociatePricingRulesInput {
s.Arn = &v
return s
}
// SetPricingRuleArns sets the PricingRuleArns field's value.
func (s *DisassociatePricingRulesInput) SetPricingRuleArns(v []*string) *DisassociatePricingRulesInput {
s.PricingRuleArns = v
return s
}
type DisassociatePricingRulesOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the pricing plan that the pricing rules
// successfully disassociated from.
Arn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociatePricingRulesOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociatePricingRulesOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *DisassociatePricingRulesOutput) SetArn(v string) *DisassociatePricingRulesOutput {
s.Arn = &v
return s
}
// A resource disassociation result for a percentage custom line item.
type DisassociateResourceResponseElement struct {
_ struct{} `type:"structure"`
// The resource ARN that was disassociated from the custom line item.
Arn *string `type:"string"`
// An AssociateResourceError that's shown if the resource disassociation fails.
Error *AssociateResourceError `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociateResourceResponseElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s DisassociateResourceResponseElement) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *DisassociateResourceResponseElement) SetArn(v string) *DisassociateResourceResponseElement {
s.Arn = &v
return s
}
// SetError sets the Error field's value.
func (s *DisassociateResourceResponseElement) SetError(v *AssociateResourceError) *DisassociateResourceResponseElement {
s.Error = v
return s
}
// The possible Amazon Web Services Free Tier configurations.
type FreeTierConfig struct {
_ struct{} `type:"structure"`
// Activate or deactivate Amazon Web Services Free Tier application.
//
// Activated is a required field
Activated *bool `type:"boolean" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s FreeTierConfig) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s FreeTierConfig) GoString() string {
return s.String()
}
// SetActivated sets the Activated field's value.
func (s *FreeTierConfig) SetActivated(v bool) *FreeTierConfig {
s.Activated = &v
return s
}
type GetBillingGroupCostReportInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Number (ARN) that uniquely identifies the billing group.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// A time range for which the margin summary is effective. You can specify up
// to 12 months.
BillingPeriodRange *BillingPeriodRange `type:"structure"`
// A list of strings that specify the attributes that are used to break down
// costs in the margin summary reports for the billing group. For example, you
// can view your costs by the Amazon Web Service name or the billing period.
GroupBy []*string `type:"list" enum:"GroupByAttributeName"`
// The maximum number of margin summary reports to retrieve.
MaxResults *int64 `min:"200" type:"integer"`
// The pagination token used on subsequent calls to get reports.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetBillingGroupCostReportInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetBillingGroupCostReportInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *GetBillingGroupCostReportInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "GetBillingGroupCostReportInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.MaxResults != nil && *s.MaxResults < 200 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 200))
}
if s.BillingPeriodRange != nil {
if err := s.BillingPeriodRange.Validate(); err != nil {
invalidParams.AddNested("BillingPeriodRange", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *GetBillingGroupCostReportInput) SetArn(v string) *GetBillingGroupCostReportInput {
s.Arn = &v
return s
}
// SetBillingPeriodRange sets the BillingPeriodRange field's value.
func (s *GetBillingGroupCostReportInput) SetBillingPeriodRange(v *BillingPeriodRange) *GetBillingGroupCostReportInput {
s.BillingPeriodRange = v
return s
}
// SetGroupBy sets the GroupBy field's value.
func (s *GetBillingGroupCostReportInput) SetGroupBy(v []*string) *GetBillingGroupCostReportInput {
s.GroupBy = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *GetBillingGroupCostReportInput) SetMaxResults(v int64) *GetBillingGroupCostReportInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *GetBillingGroupCostReportInput) SetNextToken(v string) *GetBillingGroupCostReportInput {
s.NextToken = &v
return s
}
type GetBillingGroupCostReportOutput struct {
_ struct{} `type:"structure"`
// The list of margin summary reports.
BillingGroupCostReportResults []*BillingGroupCostReportResultElement `type:"list"`
// The pagination token used on subsequent calls to get reports.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetBillingGroupCostReportOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s GetBillingGroupCostReportOutput) GoString() string {
return s.String()
}
// SetBillingGroupCostReportResults sets the BillingGroupCostReportResults field's value.
func (s *GetBillingGroupCostReportOutput) SetBillingGroupCostReportResults(v []*BillingGroupCostReportResultElement) *GetBillingGroupCostReportOutput {
s.BillingGroupCostReportResults = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *GetBillingGroupCostReportOutput) SetNextToken(v string) *GetBillingGroupCostReportOutput {
s.NextToken = &v
return s
}
// An unexpected error occurred while processing a request.
type InternalServerException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"Message" type:"string"`
// Number of seconds you can retry after the call.
RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InternalServerException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s InternalServerException) GoString() string {
return s.String()
}
func newErrorInternalServerException(v protocol.ResponseMetadata) error {
return &InternalServerException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *InternalServerException) Code() string {
return "InternalServerException"
}
// Message returns the exception's message.
func (s *InternalServerException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *InternalServerException) OrigErr() error {
return nil
}
func (s *InternalServerException) Error() string {
return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
}
// Status code returns the HTTP status code for the request's response error.
func (s *InternalServerException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *InternalServerException) RequestID() string {
return s.RespMetadata.RequestID
}
// A representation of the line item filter for your custom line item. You can
// use line item filters to include or exclude specific resource values from
// the billing group's total cost. For example, if you create a custom line
// item and you want to filter out a value, such as Savings Plan discounts,
// you can update LineItemFilter to exclude it.
type LineItemFilter struct {
_ struct{} `type:"structure"`
// The attribute of the line item filter. This specifies what attribute that
// you can filter on.
//
// Attribute is a required field
Attribute *string `type:"string" required:"true" enum:"LineItemFilterAttributeName"`
// The match criteria of the line item filter. This parameter specifies whether
// not to include the resource value from the billing group total cost.
//
// MatchOption is a required field
MatchOption *string `type:"string" required:"true" enum:"MatchOption"`
// The values of the line item filter. This specifies the values to filter on.
// Currently, you can only exclude Savings Plan discounts.
//
// Values is a required field
Values []*string `min:"1" type:"list" required:"true" enum:"LineItemFilterValue"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s LineItemFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s LineItemFilter) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *LineItemFilter) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "LineItemFilter"}
if s.Attribute == nil {
invalidParams.Add(request.NewErrParamRequired("Attribute"))
}
if s.MatchOption == nil {
invalidParams.Add(request.NewErrParamRequired("MatchOption"))
}
if s.Values == nil {
invalidParams.Add(request.NewErrParamRequired("Values"))
}
if s.Values != nil && len(s.Values) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Values", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAttribute sets the Attribute field's value.
func (s *LineItemFilter) SetAttribute(v string) *LineItemFilter {
s.Attribute = &v
return s
}
// SetMatchOption sets the MatchOption field's value.
func (s *LineItemFilter) SetMatchOption(v string) *LineItemFilter {
s.MatchOption = &v
return s
}
// SetValues sets the Values field's value.
func (s *LineItemFilter) SetValues(v []*string) *LineItemFilter {
s.Values = v
return s
}
// The filter on the account ID of the linked account, or any of the following:
//
// MONITORED: linked accounts that are associated to billing groups.
//
// UNMONITORED: linked accounts that are not associated to billing groups.
//
// Billing Group Arn: linked accounts that are associated to the provided Billing
// Group Arn.
type ListAccountAssociationsFilter struct {
_ struct{} `type:"structure"`
// The Amazon Web Services account ID to filter on.
AccountId *string `type:"string"`
// The list of Amazon Web Services IDs to retrieve their associated billing
// group for a given time range.
AccountIds []*string `min:"1" type:"list"`
// MONITORED: linked accounts that are associated to billing groups.
//
// UNMONITORED: linked accounts that are not associated to billing groups.
//
// Billing Group Arn: linked accounts that are associated to the provided Billing
// Group Arn.
Association *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListAccountAssociationsFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListAccountAssociationsFilter) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListAccountAssociationsFilter) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListAccountAssociationsFilter"}
if s.AccountIds != nil && len(s.AccountIds) < 1 {
invalidParams.Add(request.NewErrParamMinLen("AccountIds", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAccountId sets the AccountId field's value.
func (s *ListAccountAssociationsFilter) SetAccountId(v string) *ListAccountAssociationsFilter {
s.AccountId = &v
return s
}
// SetAccountIds sets the AccountIds field's value.
func (s *ListAccountAssociationsFilter) SetAccountIds(v []*string) *ListAccountAssociationsFilter {
s.AccountIds = v
return s
}
// SetAssociation sets the Association field's value.
func (s *ListAccountAssociationsFilter) SetAssociation(v string) *ListAccountAssociationsFilter {
s.Association = &v
return s
}
type ListAccountAssociationsInput struct {
_ struct{} `type:"structure"`
// The preferred billing period to get account associations.
BillingPeriod *string `type:"string"`
// The filter on the account ID of the linked account, or any of the following:
//
// MONITORED: linked accounts that are associated to billing groups.
//
// UNMONITORED: linked accounts that aren't associated to billing groups.
//
// Billing Group Arn: linked accounts that are associated to the provided billing
// group Arn.
Filters *ListAccountAssociationsFilter `type:"structure"`
// The pagination token that's used on subsequent calls to retrieve accounts.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListAccountAssociationsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListAccountAssociationsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListAccountAssociationsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListAccountAssociationsInput"}
if s.Filters != nil {
if err := s.Filters.Validate(); err != nil {
invalidParams.AddNested("Filters", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListAccountAssociationsInput) SetBillingPeriod(v string) *ListAccountAssociationsInput {
s.BillingPeriod = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListAccountAssociationsInput) SetFilters(v *ListAccountAssociationsFilter) *ListAccountAssociationsInput {
s.Filters = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListAccountAssociationsInput) SetNextToken(v string) *ListAccountAssociationsInput {
s.NextToken = &v
return s
}
type ListAccountAssociationsOutput struct {
_ struct{} `type:"structure"`
// The list of linked accounts in the payer account.
LinkedAccounts []*AccountAssociationsListElement `type:"list"`
// The pagination token that's used on subsequent calls to get accounts.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListAccountAssociationsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListAccountAssociationsOutput) GoString() string {
return s.String()
}
// SetLinkedAccounts sets the LinkedAccounts field's value.
func (s *ListAccountAssociationsOutput) SetLinkedAccounts(v []*AccountAssociationsListElement) *ListAccountAssociationsOutput {
s.LinkedAccounts = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListAccountAssociationsOutput) SetNextToken(v string) *ListAccountAssociationsOutput {
s.NextToken = &v
return s
}
// Specifies if the billing group has the following features enabled.
type ListBillingGroupAccountGrouping struct {
_ struct{} `type:"structure"`
// Specifies if this billing group will automatically associate newly added
// Amazon Web Services accounts that join your consolidated billing family.
AutoAssociate *bool `type:"boolean"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupAccountGrouping) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupAccountGrouping) GoString() string {
return s.String()
}
// SetAutoAssociate sets the AutoAssociate field's value.
func (s *ListBillingGroupAccountGrouping) SetAutoAssociate(v bool) *ListBillingGroupAccountGrouping {
s.AutoAssociate = &v
return s
}
// The filter used to retrieve specific BillingGroupCostReportElements.
type ListBillingGroupCostReportsFilter struct {
_ struct{} `type:"structure"`
// The list of Amazon Resource Names (ARNs) used to filter billing groups to
// retrieve reports.
BillingGroupArns []*string `min:"1" type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupCostReportsFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupCostReportsFilter) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListBillingGroupCostReportsFilter) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListBillingGroupCostReportsFilter"}
if s.BillingGroupArns != nil && len(s.BillingGroupArns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("BillingGroupArns", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingGroupArns sets the BillingGroupArns field's value.
func (s *ListBillingGroupCostReportsFilter) SetBillingGroupArns(v []*string) *ListBillingGroupCostReportsFilter {
s.BillingGroupArns = v
return s
}
type ListBillingGroupCostReportsInput struct {
_ struct{} `type:"structure"`
// The preferred billing period for your report.
BillingPeriod *string `type:"string"`
// A ListBillingGroupCostReportsFilter to specify billing groups to retrieve
// reports from.
Filters *ListBillingGroupCostReportsFilter `type:"structure"`
// The maximum number of reports to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The pagination token that's used on subsequent calls to get reports.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupCostReportsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupCostReportsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListBillingGroupCostReportsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListBillingGroupCostReportsInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.Filters != nil {
if err := s.Filters.Validate(); err != nil {
invalidParams.AddNested("Filters", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListBillingGroupCostReportsInput) SetBillingPeriod(v string) *ListBillingGroupCostReportsInput {
s.BillingPeriod = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListBillingGroupCostReportsInput) SetFilters(v *ListBillingGroupCostReportsFilter) *ListBillingGroupCostReportsInput {
s.Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListBillingGroupCostReportsInput) SetMaxResults(v int64) *ListBillingGroupCostReportsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListBillingGroupCostReportsInput) SetNextToken(v string) *ListBillingGroupCostReportsInput {
s.NextToken = &v
return s
}
type ListBillingGroupCostReportsOutput struct {
_ struct{} `type:"structure"`
// A list of BillingGroupCostReportElement retrieved.
BillingGroupCostReports []*BillingGroupCostReportElement `type:"list"`
// The pagination token that's used on subsequent calls to get reports.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupCostReportsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupCostReportsOutput) GoString() string {
return s.String()
}
// SetBillingGroupCostReports sets the BillingGroupCostReports field's value.
func (s *ListBillingGroupCostReportsOutput) SetBillingGroupCostReports(v []*BillingGroupCostReportElement) *ListBillingGroupCostReportsOutput {
s.BillingGroupCostReports = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListBillingGroupCostReportsOutput) SetNextToken(v string) *ListBillingGroupCostReportsOutput {
s.NextToken = &v
return s
}
// The filter that specifies the billing groups and pricing plans to retrieve
// billing group information.
type ListBillingGroupsFilter struct {
_ struct{} `type:"structure"`
// The list of billing group Amazon Resource Names (ARNs) to retrieve information.
Arns []*string `min:"1" type:"list"`
// Specifies if this billing group will automatically associate newly added
// Amazon Web Services accounts that join your consolidated billing family.
AutoAssociate *bool `type:"boolean"`
// The pricing plan Amazon Resource Names (ARNs) to retrieve information.
PricingPlan *string `type:"string"`
// A list of billing groups to retrieve their current status for a specific
// time range
Statuses []*string `min:"1" type:"list" enum:"BillingGroupStatus"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupsFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupsFilter) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListBillingGroupsFilter) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListBillingGroupsFilter"}
if s.Arns != nil && len(s.Arns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Arns", 1))
}
if s.Statuses != nil && len(s.Statuses) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Statuses", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArns sets the Arns field's value.
func (s *ListBillingGroupsFilter) SetArns(v []*string) *ListBillingGroupsFilter {
s.Arns = v
return s
}
// SetAutoAssociate sets the AutoAssociate field's value.
func (s *ListBillingGroupsFilter) SetAutoAssociate(v bool) *ListBillingGroupsFilter {
s.AutoAssociate = &v
return s
}
// SetPricingPlan sets the PricingPlan field's value.
func (s *ListBillingGroupsFilter) SetPricingPlan(v string) *ListBillingGroupsFilter {
s.PricingPlan = &v
return s
}
// SetStatuses sets the Statuses field's value.
func (s *ListBillingGroupsFilter) SetStatuses(v []*string) *ListBillingGroupsFilter {
s.Statuses = v
return s
}
type ListBillingGroupsInput struct {
_ struct{} `type:"structure"`
// The preferred billing period to get billing groups.
BillingPeriod *string `type:"string"`
// A ListBillingGroupsFilter that specifies the billing group and pricing plan
// to retrieve billing group information.
Filters *ListBillingGroupsFilter `type:"structure"`
// The maximum number of billing groups to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The pagination token that's used on subsequent calls to get billing groups.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListBillingGroupsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListBillingGroupsInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.Filters != nil {
if err := s.Filters.Validate(); err != nil {
invalidParams.AddNested("Filters", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListBillingGroupsInput) SetBillingPeriod(v string) *ListBillingGroupsInput {
s.BillingPeriod = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListBillingGroupsInput) SetFilters(v *ListBillingGroupsFilter) *ListBillingGroupsInput {
s.Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListBillingGroupsInput) SetMaxResults(v int64) *ListBillingGroupsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListBillingGroupsInput) SetNextToken(v string) *ListBillingGroupsInput {
s.NextToken = &v
return s
}
type ListBillingGroupsOutput struct {
_ struct{} `type:"structure"`
// A list of BillingGroupListElement retrieved.
BillingGroups []*BillingGroupListElement `type:"list"`
// The pagination token that's used on subsequent calls to get billing groups.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListBillingGroupsOutput) GoString() string {
return s.String()
}
// SetBillingGroups sets the BillingGroups field's value.
func (s *ListBillingGroupsOutput) SetBillingGroups(v []*BillingGroupListElement) *ListBillingGroupsOutput {
s.BillingGroups = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListBillingGroupsOutput) SetNextToken(v string) *ListBillingGroupsOutput {
s.NextToken = &v
return s
}
// A representation of the charge details of a custom line item.
type ListCustomLineItemChargeDetails struct {
_ struct{} `type:"structure"`
// A ListCustomLineItemFlatChargeDetails that describes the charge details of
// a flat custom line item.
Flat *ListCustomLineItemFlatChargeDetails `type:"structure"`
// A representation of the line item filter.
LineItemFilters []*LineItemFilter `type:"list"`
// A ListCustomLineItemPercentageChargeDetails that describes the charge details
// of a percentage custom line item.
Percentage *ListCustomLineItemPercentageChargeDetails `type:"structure"`
// The type of the custom line item that indicates whether the charge is a fee
// or credit.
//
// Type is a required field
Type *string `type:"string" required:"true" enum:"CustomLineItemType"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemChargeDetails) GoString() string {
return s.String()
}
// SetFlat sets the Flat field's value.
func (s *ListCustomLineItemChargeDetails) SetFlat(v *ListCustomLineItemFlatChargeDetails) *ListCustomLineItemChargeDetails {
s.Flat = v
return s
}
// SetLineItemFilters sets the LineItemFilters field's value.
func (s *ListCustomLineItemChargeDetails) SetLineItemFilters(v []*LineItemFilter) *ListCustomLineItemChargeDetails {
s.LineItemFilters = v
return s
}
// SetPercentage sets the Percentage field's value.
func (s *ListCustomLineItemChargeDetails) SetPercentage(v *ListCustomLineItemPercentageChargeDetails) *ListCustomLineItemChargeDetails {
s.Percentage = v
return s
}
// SetType sets the Type field's value.
func (s *ListCustomLineItemChargeDetails) SetType(v string) *ListCustomLineItemChargeDetails {
s.Type = &v
return s
}
// A representation of the charge details that are associated with a flat custom
// line item.
type ListCustomLineItemFlatChargeDetails struct {
_ struct{} `type:"structure"`
// The custom line item's fixed charge value in USD.
//
// ChargeValue is a required field
ChargeValue *float64 `type:"double" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemFlatChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemFlatChargeDetails) GoString() string {
return s.String()
}
// SetChargeValue sets the ChargeValue field's value.
func (s *ListCustomLineItemFlatChargeDetails) SetChargeValue(v float64) *ListCustomLineItemFlatChargeDetails {
s.ChargeValue = &v
return s
}
// A representation of the charge details that are associated with a percentage
// custom line item.
type ListCustomLineItemPercentageChargeDetails struct {
_ struct{} `type:"structure"`
// The custom line item's percentage value. This will be multiplied against
// the combined value of its associated resources to determine its charge value.
//
// PercentageValue is a required field
PercentageValue *float64 `type:"double" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemPercentageChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemPercentageChargeDetails) GoString() string {
return s.String()
}
// SetPercentageValue sets the PercentageValue field's value.
func (s *ListCustomLineItemPercentageChargeDetails) SetPercentageValue(v float64) *ListCustomLineItemPercentageChargeDetails {
s.PercentageValue = &v
return s
}
// A billing period filter that specifies the custom line item versions to retrieve.
type ListCustomLineItemVersionsBillingPeriodRangeFilter struct {
_ struct{} `type:"structure"`
// The exclusive end billing period that defines a billing period range where
// a custom line item version is applied.
EndBillingPeriod *string `type:"string"`
// The inclusive start billing period that defines a billing period range where
// a custom line item version is applied.
StartBillingPeriod *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsBillingPeriodRangeFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsBillingPeriodRangeFilter) GoString() string {
return s.String()
}
// SetEndBillingPeriod sets the EndBillingPeriod field's value.
func (s *ListCustomLineItemVersionsBillingPeriodRangeFilter) SetEndBillingPeriod(v string) *ListCustomLineItemVersionsBillingPeriodRangeFilter {
s.EndBillingPeriod = &v
return s
}
// SetStartBillingPeriod sets the StartBillingPeriod field's value.
func (s *ListCustomLineItemVersionsBillingPeriodRangeFilter) SetStartBillingPeriod(v string) *ListCustomLineItemVersionsBillingPeriodRangeFilter {
s.StartBillingPeriod = &v
return s
}
// A filter that specifies the billing period range where the custom line item
// versions reside.
type ListCustomLineItemVersionsFilter struct {
_ struct{} `type:"structure"`
// The billing period range in which the custom line item version is applied.
BillingPeriodRange *ListCustomLineItemVersionsBillingPeriodRangeFilter `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsFilter) GoString() string {
return s.String()
}
// SetBillingPeriodRange sets the BillingPeriodRange field's value.
func (s *ListCustomLineItemVersionsFilter) SetBillingPeriodRange(v *ListCustomLineItemVersionsBillingPeriodRangeFilter) *ListCustomLineItemVersionsFilter {
s.BillingPeriodRange = v
return s
}
type ListCustomLineItemVersionsInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) for the custom line item.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// A ListCustomLineItemVersionsFilter that specifies the billing period range
// in which the custom line item versions are applied.
Filters *ListCustomLineItemVersionsFilter `type:"structure"`
// The maximum number of custom line item versions to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The pagination token that's used on subsequent calls to retrieve custom line
// item versions.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListCustomLineItemVersionsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListCustomLineItemVersionsInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *ListCustomLineItemVersionsInput) SetArn(v string) *ListCustomLineItemVersionsInput {
s.Arn = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListCustomLineItemVersionsInput) SetFilters(v *ListCustomLineItemVersionsFilter) *ListCustomLineItemVersionsInput {
s.Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListCustomLineItemVersionsInput) SetMaxResults(v int64) *ListCustomLineItemVersionsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListCustomLineItemVersionsInput) SetNextToken(v string) *ListCustomLineItemVersionsInput {
s.NextToken = &v
return s
}
type ListCustomLineItemVersionsOutput struct {
_ struct{} `type:"structure"`
// A list of CustomLineItemVersionListElements that are received.
CustomLineItemVersions []*CustomLineItemVersionListElement `type:"list"`
// The pagination token that's used on subsequent calls to retrieve custom line
// item versions.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemVersionsOutput) GoString() string {
return s.String()
}
// SetCustomLineItemVersions sets the CustomLineItemVersions field's value.
func (s *ListCustomLineItemVersionsOutput) SetCustomLineItemVersions(v []*CustomLineItemVersionListElement) *ListCustomLineItemVersionsOutput {
s.CustomLineItemVersions = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListCustomLineItemVersionsOutput) SetNextToken(v string) *ListCustomLineItemVersionsOutput {
s.NextToken = &v
return s
}
// A filter that specifies the custom line items and billing groups to retrieve
// FFLI information.
type ListCustomLineItemsFilter struct {
_ struct{} `type:"structure"`
// The Amazon Web Services accounts in which this custom line item will be applied
// to.
AccountIds []*string `min:"1" type:"list"`
// A list of custom line item ARNs to retrieve information.
Arns []*string `min:"1" type:"list"`
// The billing group Amazon Resource Names (ARNs) to retrieve information.
BillingGroups []*string `min:"1" type:"list"`
// A list of custom line items to retrieve information.
Names []*string `min:"1" type:"list" sensitive:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemsFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemsFilter) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListCustomLineItemsFilter) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListCustomLineItemsFilter"}
if s.AccountIds != nil && len(s.AccountIds) < 1 {
invalidParams.Add(request.NewErrParamMinLen("AccountIds", 1))
}
if s.Arns != nil && len(s.Arns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Arns", 1))
}
if s.BillingGroups != nil && len(s.BillingGroups) < 1 {
invalidParams.Add(request.NewErrParamMinLen("BillingGroups", 1))
}
if s.Names != nil && len(s.Names) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Names", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAccountIds sets the AccountIds field's value.
func (s *ListCustomLineItemsFilter) SetAccountIds(v []*string) *ListCustomLineItemsFilter {
s.AccountIds = v
return s
}
// SetArns sets the Arns field's value.
func (s *ListCustomLineItemsFilter) SetArns(v []*string) *ListCustomLineItemsFilter {
s.Arns = v
return s
}
// SetBillingGroups sets the BillingGroups field's value.
func (s *ListCustomLineItemsFilter) SetBillingGroups(v []*string) *ListCustomLineItemsFilter {
s.BillingGroups = v
return s
}
// SetNames sets the Names field's value.
func (s *ListCustomLineItemsFilter) SetNames(v []*string) *ListCustomLineItemsFilter {
s.Names = v
return s
}
type ListCustomLineItemsInput struct {
_ struct{} `type:"structure"`
// The preferred billing period to get custom line items (FFLIs).
BillingPeriod *string `type:"string"`
// A ListCustomLineItemsFilter that specifies the custom line item names and/or
// billing group Amazon Resource Names (ARNs) to retrieve FFLI information.
Filters *ListCustomLineItemsFilter `type:"structure"`
// The maximum number of billing groups to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The pagination token that's used on subsequent calls to get custom line items
// (FFLIs).
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListCustomLineItemsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListCustomLineItemsInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.Filters != nil {
if err := s.Filters.Validate(); err != nil {
invalidParams.AddNested("Filters", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListCustomLineItemsInput) SetBillingPeriod(v string) *ListCustomLineItemsInput {
s.BillingPeriod = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListCustomLineItemsInput) SetFilters(v *ListCustomLineItemsFilter) *ListCustomLineItemsInput {
s.Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListCustomLineItemsInput) SetMaxResults(v int64) *ListCustomLineItemsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListCustomLineItemsInput) SetNextToken(v string) *ListCustomLineItemsInput {
s.NextToken = &v
return s
}
type ListCustomLineItemsOutput struct {
_ struct{} `type:"structure"`
// A list of FreeFormLineItemListElements received.
CustomLineItems []*CustomLineItemListElement `type:"list"`
// The pagination token that's used on subsequent calls to get custom line items
// (FFLIs).
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListCustomLineItemsOutput) GoString() string {
return s.String()
}
// SetCustomLineItems sets the CustomLineItems field's value.
func (s *ListCustomLineItemsOutput) SetCustomLineItems(v []*CustomLineItemListElement) *ListCustomLineItemsOutput {
s.CustomLineItems = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListCustomLineItemsOutput) SetNextToken(v string) *ListCustomLineItemsOutput {
s.NextToken = &v
return s
}
type ListPricingPlansAssociatedWithPricingRuleInput struct {
_ struct{} `type:"structure"`
// The pricing plan billing period for which associations will be listed.
BillingPeriod *string `type:"string"`
// The optional maximum number of pricing rule associations to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The optional pagination token returned by a previous call.
NextToken *string `type:"string"`
// The pricing rule Amazon Resource Name (ARN) for which associations will be
// listed.
//
// PricingRuleArn is a required field
PricingRuleArn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansAssociatedWithPricingRuleInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansAssociatedWithPricingRuleInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListPricingPlansAssociatedWithPricingRuleInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListPricingPlansAssociatedWithPricingRuleInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.PricingRuleArn == nil {
invalidParams.Add(request.NewErrParamRequired("PricingRuleArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleInput) SetBillingPeriod(v string) *ListPricingPlansAssociatedWithPricingRuleInput {
s.BillingPeriod = &v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleInput) SetMaxResults(v int64) *ListPricingPlansAssociatedWithPricingRuleInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleInput) SetNextToken(v string) *ListPricingPlansAssociatedWithPricingRuleInput {
s.NextToken = &v
return s
}
// SetPricingRuleArn sets the PricingRuleArn field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleInput) SetPricingRuleArn(v string) *ListPricingPlansAssociatedWithPricingRuleInput {
s.PricingRuleArn = &v
return s
}
type ListPricingPlansAssociatedWithPricingRuleOutput struct {
_ struct{} `type:"structure"`
// The pricing plan billing period for which associations will be listed.
BillingPeriod *string `type:"string"`
// The pagination token to be used on subsequent calls.
NextToken *string `type:"string"`
// The list containing pricing plans that are associated with the requested
// pricing rule.
PricingPlanArns []*string `min:"1" type:"list"`
// The pricing rule Amazon Resource Name (ARN) for which associations will be
// listed.
PricingRuleArn *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansAssociatedWithPricingRuleOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansAssociatedWithPricingRuleOutput) GoString() string {
return s.String()
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleOutput) SetBillingPeriod(v string) *ListPricingPlansAssociatedWithPricingRuleOutput {
s.BillingPeriod = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleOutput) SetNextToken(v string) *ListPricingPlansAssociatedWithPricingRuleOutput {
s.NextToken = &v
return s
}
// SetPricingPlanArns sets the PricingPlanArns field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleOutput) SetPricingPlanArns(v []*string) *ListPricingPlansAssociatedWithPricingRuleOutput {
s.PricingPlanArns = v
return s
}
// SetPricingRuleArn sets the PricingRuleArn field's value.
func (s *ListPricingPlansAssociatedWithPricingRuleOutput) SetPricingRuleArn(v string) *ListPricingPlansAssociatedWithPricingRuleOutput {
s.PricingRuleArn = &v
return s
}
// The filter that specifies the Amazon Resource Names (ARNs) of pricing plans,
// to retrieve pricing plan information.
type ListPricingPlansFilter struct {
_ struct{} `type:"structure"`
// A list of pricing plan Amazon Resource Names (ARNs) to retrieve information.
Arns []*string `min:"1" type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansFilter) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListPricingPlansFilter) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListPricingPlansFilter"}
if s.Arns != nil && len(s.Arns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Arns", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArns sets the Arns field's value.
func (s *ListPricingPlansFilter) SetArns(v []*string) *ListPricingPlansFilter {
s.Arns = v
return s
}
type ListPricingPlansInput struct {
_ struct{} `type:"structure"`
// The preferred billing period to get pricing plan.
BillingPeriod *string `type:"string"`
// A ListPricingPlansFilter that specifies the Amazon Resource Name (ARNs) of
// pricing plans to retrieve pricing plans information.
Filters *ListPricingPlansFilter `type:"structure"`
// The maximum number of pricing plans to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The pagination token that's used on subsequent call to get pricing plans.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListPricingPlansInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListPricingPlansInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.Filters != nil {
if err := s.Filters.Validate(); err != nil {
invalidParams.AddNested("Filters", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingPlansInput) SetBillingPeriod(v string) *ListPricingPlansInput {
s.BillingPeriod = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListPricingPlansInput) SetFilters(v *ListPricingPlansFilter) *ListPricingPlansInput {
s.Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListPricingPlansInput) SetMaxResults(v int64) *ListPricingPlansInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingPlansInput) SetNextToken(v string) *ListPricingPlansInput {
s.NextToken = &v
return s
}
type ListPricingPlansOutput struct {
_ struct{} `type:"structure"`
// The billing period for which the described pricing plans are applicable.
BillingPeriod *string `type:"string"`
// The pagination token that's used on subsequent calls to get pricing plans.
NextToken *string `type:"string"`
// A list of PricingPlanListElement retrieved.
PricingPlans []*PricingPlanListElement `type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingPlansOutput) GoString() string {
return s.String()
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingPlansOutput) SetBillingPeriod(v string) *ListPricingPlansOutput {
s.BillingPeriod = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingPlansOutput) SetNextToken(v string) *ListPricingPlansOutput {
s.NextToken = &v
return s
}
// SetPricingPlans sets the PricingPlans field's value.
func (s *ListPricingPlansOutput) SetPricingPlans(v []*PricingPlanListElement) *ListPricingPlansOutput {
s.PricingPlans = v
return s
}
type ListPricingRulesAssociatedToPricingPlanInput struct {
_ struct{} `type:"structure"`
// The billing period for which the pricing rule associations are to be listed.
BillingPeriod *string `type:"string"`
// The optional maximum number of pricing rule associations to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The optional pagination token returned by a previous call.
NextToken *string `type:"string"`
// The Amazon Resource Name (ARN) of the pricing plan for which associations
// are to be listed.
//
// PricingPlanArn is a required field
PricingPlanArn *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesAssociatedToPricingPlanInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesAssociatedToPricingPlanInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListPricingRulesAssociatedToPricingPlanInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListPricingRulesAssociatedToPricingPlanInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.PricingPlanArn == nil {
invalidParams.Add(request.NewErrParamRequired("PricingPlanArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingRulesAssociatedToPricingPlanInput) SetBillingPeriod(v string) *ListPricingRulesAssociatedToPricingPlanInput {
s.BillingPeriod = &v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListPricingRulesAssociatedToPricingPlanInput) SetMaxResults(v int64) *ListPricingRulesAssociatedToPricingPlanInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingRulesAssociatedToPricingPlanInput) SetNextToken(v string) *ListPricingRulesAssociatedToPricingPlanInput {
s.NextToken = &v
return s
}
// SetPricingPlanArn sets the PricingPlanArn field's value.
func (s *ListPricingRulesAssociatedToPricingPlanInput) SetPricingPlanArn(v string) *ListPricingRulesAssociatedToPricingPlanInput {
s.PricingPlanArn = &v
return s
}
type ListPricingRulesAssociatedToPricingPlanOutput struct {
_ struct{} `type:"structure"`
// The billing period for which the pricing rule associations are listed.
BillingPeriod *string `type:"string"`
// The pagination token to be used on subsequent calls.
NextToken *string `type:"string"`
// The Amazon Resource Name (ARN) of the pricing plan for which associations
// are listed.
PricingPlanArn *string `type:"string"`
// A list containing pricing rules that are associated with the requested pricing
// plan.
PricingRuleArns []*string `min:"1" type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesAssociatedToPricingPlanOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesAssociatedToPricingPlanOutput) GoString() string {
return s.String()
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingRulesAssociatedToPricingPlanOutput) SetBillingPeriod(v string) *ListPricingRulesAssociatedToPricingPlanOutput {
s.BillingPeriod = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingRulesAssociatedToPricingPlanOutput) SetNextToken(v string) *ListPricingRulesAssociatedToPricingPlanOutput {
s.NextToken = &v
return s
}
// SetPricingPlanArn sets the PricingPlanArn field's value.
func (s *ListPricingRulesAssociatedToPricingPlanOutput) SetPricingPlanArn(v string) *ListPricingRulesAssociatedToPricingPlanOutput {
s.PricingPlanArn = &v
return s
}
// SetPricingRuleArns sets the PricingRuleArns field's value.
func (s *ListPricingRulesAssociatedToPricingPlanOutput) SetPricingRuleArns(v []*string) *ListPricingRulesAssociatedToPricingPlanOutput {
s.PricingRuleArns = v
return s
}
// The filter that specifies criteria that the pricing rules returned by the
// ListPricingRules API will adhere to.
type ListPricingRulesFilter struct {
_ struct{} `type:"structure"`
// A list containing the pricing rule Amazon Resource Names (ARNs) to include
// in the API response.
Arns []*string `min:"1" type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesFilter) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListPricingRulesFilter) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListPricingRulesFilter"}
if s.Arns != nil && len(s.Arns) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Arns", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArns sets the Arns field's value.
func (s *ListPricingRulesFilter) SetArns(v []*string) *ListPricingRulesFilter {
s.Arns = v
return s
}
type ListPricingRulesInput struct {
_ struct{} `type:"structure"`
// The preferred billing period to get the pricing plan.
BillingPeriod *string `type:"string"`
// A DescribePricingRuleFilter that specifies the Amazon Resource Name (ARNs)
// of pricing rules to retrieve pricing rules information.
Filters *ListPricingRulesFilter `type:"structure"`
// The maximum number of pricing rules to retrieve.
MaxResults *int64 `min:"1" type:"integer"`
// The pagination token that's used on subsequent call to get pricing rules.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListPricingRulesInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListPricingRulesInput"}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if s.Filters != nil {
if err := s.Filters.Validate(); err != nil {
invalidParams.AddNested("Filters", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingRulesInput) SetBillingPeriod(v string) *ListPricingRulesInput {
s.BillingPeriod = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListPricingRulesInput) SetFilters(v *ListPricingRulesFilter) *ListPricingRulesInput {
s.Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListPricingRulesInput) SetMaxResults(v int64) *ListPricingRulesInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingRulesInput) SetNextToken(v string) *ListPricingRulesInput {
s.NextToken = &v
return s
}
type ListPricingRulesOutput struct {
_ struct{} `type:"structure"`
// The billing period for which the described pricing rules are applicable.
BillingPeriod *string `type:"string"`
// The pagination token that's used on subsequent calls to get pricing rules.
NextToken *string `type:"string"`
// A list containing the described pricing rules.
PricingRules []*PricingRuleListElement `type:"list"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListPricingRulesOutput) GoString() string {
return s.String()
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListPricingRulesOutput) SetBillingPeriod(v string) *ListPricingRulesOutput {
s.BillingPeriod = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListPricingRulesOutput) SetNextToken(v string) *ListPricingRulesOutput {
s.NextToken = &v
return s
}
// SetPricingRules sets the PricingRules field's value.
func (s *ListPricingRulesOutput) SetPricingRules(v []*PricingRuleListElement) *ListPricingRulesOutput {
s.PricingRules = v
return s
}
// A filter that specifies the type of resource associations that should be
// retrieved for a custom line item.
type ListResourcesAssociatedToCustomLineItemFilter struct {
_ struct{} `type:"structure"`
// The type of relationship between the custom line item and the associated
// resource.
Relationship *string `type:"string" enum:"CustomLineItemRelationship"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemFilter) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemFilter) GoString() string {
return s.String()
}
// SetRelationship sets the Relationship field's value.
func (s *ListResourcesAssociatedToCustomLineItemFilter) SetRelationship(v string) *ListResourcesAssociatedToCustomLineItemFilter {
s.Relationship = &v
return s
}
type ListResourcesAssociatedToCustomLineItemInput struct {
_ struct{} `type:"structure"`
// The ARN of the custom line item for which the resource associations will
// be listed.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// The billing period for which the resource associations will be listed.
BillingPeriod *string `type:"string"`
// (Optional) A ListResourcesAssociatedToCustomLineItemFilter that can specify
// the types of resources that should be retrieved.
Filters *ListResourcesAssociatedToCustomLineItemFilter `type:"structure"`
// (Optional) The maximum number of resource associations to be retrieved.
MaxResults *int64 `min:"1" type:"integer"`
// (Optional) The pagination token that's returned by a previous request.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListResourcesAssociatedToCustomLineItemInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListResourcesAssociatedToCustomLineItemInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.MaxResults != nil && *s.MaxResults < 1 {
invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *ListResourcesAssociatedToCustomLineItemInput) SetArn(v string) *ListResourcesAssociatedToCustomLineItemInput {
s.Arn = &v
return s
}
// SetBillingPeriod sets the BillingPeriod field's value.
func (s *ListResourcesAssociatedToCustomLineItemInput) SetBillingPeriod(v string) *ListResourcesAssociatedToCustomLineItemInput {
s.BillingPeriod = &v
return s
}
// SetFilters sets the Filters field's value.
func (s *ListResourcesAssociatedToCustomLineItemInput) SetFilters(v *ListResourcesAssociatedToCustomLineItemFilter) *ListResourcesAssociatedToCustomLineItemInput {
s.Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListResourcesAssociatedToCustomLineItemInput) SetMaxResults(v int64) *ListResourcesAssociatedToCustomLineItemInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListResourcesAssociatedToCustomLineItemInput) SetNextToken(v string) *ListResourcesAssociatedToCustomLineItemInput {
s.NextToken = &v
return s
}
type ListResourcesAssociatedToCustomLineItemOutput struct {
_ struct{} `type:"structure"`
// The custom line item ARN for which the resource associations are listed.
Arn *string `type:"string"`
// A list of ListResourcesAssociatedToCustomLineItemResponseElement for each
// resource association retrieved.
AssociatedResources []*ListResourcesAssociatedToCustomLineItemResponseElement `type:"list"`
// The pagination token to be used in subsequent requests to retrieve additional
// results.
NextToken *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *ListResourcesAssociatedToCustomLineItemOutput) SetArn(v string) *ListResourcesAssociatedToCustomLineItemOutput {
s.Arn = &v
return s
}
// SetAssociatedResources sets the AssociatedResources field's value.
func (s *ListResourcesAssociatedToCustomLineItemOutput) SetAssociatedResources(v []*ListResourcesAssociatedToCustomLineItemResponseElement) *ListResourcesAssociatedToCustomLineItemOutput {
s.AssociatedResources = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListResourcesAssociatedToCustomLineItemOutput) SetNextToken(v string) *ListResourcesAssociatedToCustomLineItemOutput {
s.NextToken = &v
return s
}
// A representation of a resource association for a custom line item.
type ListResourcesAssociatedToCustomLineItemResponseElement struct {
_ struct{} `type:"structure"`
// The ARN of the associated resource.
Arn *string `type:"string"`
// The end billing period of the associated resource.
EndBillingPeriod *string `type:"string"`
// The type of relationship between the custom line item and the associated
// resource.
Relationship *string `type:"string" enum:"CustomLineItemRelationship"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemResponseElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListResourcesAssociatedToCustomLineItemResponseElement) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *ListResourcesAssociatedToCustomLineItemResponseElement) SetArn(v string) *ListResourcesAssociatedToCustomLineItemResponseElement {
s.Arn = &v
return s
}
// SetEndBillingPeriod sets the EndBillingPeriod field's value.
func (s *ListResourcesAssociatedToCustomLineItemResponseElement) SetEndBillingPeriod(v string) *ListResourcesAssociatedToCustomLineItemResponseElement {
s.EndBillingPeriod = &v
return s
}
// SetRelationship sets the Relationship field's value.
func (s *ListResourcesAssociatedToCustomLineItemResponseElement) SetRelationship(v string) *ListResourcesAssociatedToCustomLineItemResponseElement {
s.Relationship = &v
return s
}
type ListTagsForResourceInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The Amazon Resource Name (ARN) that identifies the resource to list the tags.
//
// ResourceArn is a required field
ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListTagsForResourceInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
if s.ResourceArn == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
}
if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetResourceArn sets the ResourceArn field's value.
func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
s.ResourceArn = &v
return s
}
type ListTagsForResourceOutput struct {
_ struct{} `type:"structure"`
// The tags for the resource.
Tags map[string]*string `min:"1" type:"map"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ListTagsForResourceOutput) GoString() string {
return s.String()
}
// SetTags sets the Tags field's value.
func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
s.Tags = v
return s
}
// A representation of a pricing plan.
type PricingPlanListElement struct {
_ struct{} `type:"structure"`
// The pricing plan Amazon Resource Names (ARN). This can be used to uniquely
// identify a pricing plan.
Arn *string `type:"string"`
// The time when the pricing plan was created.
CreationTime *int64 `type:"long"`
// The pricing plan description.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by PricingPlanListElement's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The most recent time when the pricing plan was modified.
LastModifiedTime *int64 `type:"long"`
// The name of a pricing plan.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by PricingPlanListElement's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The pricing rules count that's currently associated with this pricing plan
// list element.
Size *int64 `min:"1" type:"long"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s PricingPlanListElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s PricingPlanListElement) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *PricingPlanListElement) SetArn(v string) *PricingPlanListElement {
s.Arn = &v
return s
}
// SetCreationTime sets the CreationTime field's value.
func (s *PricingPlanListElement) SetCreationTime(v int64) *PricingPlanListElement {
s.CreationTime = &v
return s
}
// SetDescription sets the Description field's value.
func (s *PricingPlanListElement) SetDescription(v string) *PricingPlanListElement {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *PricingPlanListElement) SetLastModifiedTime(v int64) *PricingPlanListElement {
s.LastModifiedTime = &v
return s
}
// SetName sets the Name field's value.
func (s *PricingPlanListElement) SetName(v string) *PricingPlanListElement {
s.Name = &v
return s
}
// SetSize sets the Size field's value.
func (s *PricingPlanListElement) SetSize(v int64) *PricingPlanListElement {
s.Size = &v
return s
}
// A representation of a pricing rule.
type PricingRuleListElement struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) used to uniquely identify a pricing rule.
Arn *string `type:"string"`
// The pricing plans count that this pricing rule is associated with.
AssociatedPricingPlanCount *int64 `type:"long"`
// The seller of services provided by Amazon Web Services, their affiliates,
// or third-party providers selling services via Amazon Web Services Marketplace.
BillingEntity *string `type:"string"`
// The time when the pricing rule was created.
CreationTime *int64 `type:"long"`
// The pricing rule description.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by PricingRuleListElement's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The most recent time when the pricing rule was modified.
LastModifiedTime *int64 `type:"long"`
// A percentage modifier applied on the public pricing rates.
ModifierPercentage *float64 `type:"double"`
// The name of a pricing rule.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by PricingRuleListElement's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// Operation is the specific Amazon Web Services action covered by this line
// item. This describes the specific usage of the line item.
//
// If the Scope attribute is set to SKU, this attribute indicates which operation
// the PricingRule is modifying. For example, a value of RunInstances:0202 indicates
// the operation of running an Amazon EC2 instance.
Operation *string `min:"1" type:"string"`
// The scope of pricing rule that indicates if it is globally applicable, or
// if it is service-specific.
Scope *string `type:"string" enum:"PricingRuleScope"`
// If the Scope attribute is SERVICE, this attribute indicates which service
// the PricingRule is applicable for.
Service *string `min:"1" type:"string"`
// The set of tiering configurations for the pricing rule.
Tiering *Tiering `type:"structure"`
// The type of pricing rule.
Type *string `type:"string" enum:"PricingRuleType"`
// Usage type is the unit that each service uses to measure the usage of a specific
// type of resource.
UsageType *string `min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s PricingRuleListElement) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s PricingRuleListElement) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *PricingRuleListElement) SetArn(v string) *PricingRuleListElement {
s.Arn = &v
return s
}
// SetAssociatedPricingPlanCount sets the AssociatedPricingPlanCount field's value.
func (s *PricingRuleListElement) SetAssociatedPricingPlanCount(v int64) *PricingRuleListElement {
s.AssociatedPricingPlanCount = &v
return s
}
// SetBillingEntity sets the BillingEntity field's value.
func (s *PricingRuleListElement) SetBillingEntity(v string) *PricingRuleListElement {
s.BillingEntity = &v
return s
}
// SetCreationTime sets the CreationTime field's value.
func (s *PricingRuleListElement) SetCreationTime(v int64) *PricingRuleListElement {
s.CreationTime = &v
return s
}
// SetDescription sets the Description field's value.
func (s *PricingRuleListElement) SetDescription(v string) *PricingRuleListElement {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *PricingRuleListElement) SetLastModifiedTime(v int64) *PricingRuleListElement {
s.LastModifiedTime = &v
return s
}
// SetModifierPercentage sets the ModifierPercentage field's value.
func (s *PricingRuleListElement) SetModifierPercentage(v float64) *PricingRuleListElement {
s.ModifierPercentage = &v
return s
}
// SetName sets the Name field's value.
func (s *PricingRuleListElement) SetName(v string) *PricingRuleListElement {
s.Name = &v
return s
}
// SetOperation sets the Operation field's value.
func (s *PricingRuleListElement) SetOperation(v string) *PricingRuleListElement {
s.Operation = &v
return s
}
// SetScope sets the Scope field's value.
func (s *PricingRuleListElement) SetScope(v string) *PricingRuleListElement {
s.Scope = &v
return s
}
// SetService sets the Service field's value.
func (s *PricingRuleListElement) SetService(v string) *PricingRuleListElement {
s.Service = &v
return s
}
// SetTiering sets the Tiering field's value.
func (s *PricingRuleListElement) SetTiering(v *Tiering) *PricingRuleListElement {
s.Tiering = v
return s
}
// SetType sets the Type field's value.
func (s *PricingRuleListElement) SetType(v string) *PricingRuleListElement {
s.Type = &v
return s
}
// SetUsageType sets the UsageType field's value.
func (s *PricingRuleListElement) SetUsageType(v string) *PricingRuleListElement {
s.UsageType = &v
return s
}
// The request references a resource that doesn't exist.
type ResourceNotFoundException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"Message" type:"string"`
// Resource identifier that was not found.
//
// ResourceId is a required field
ResourceId *string `type:"string" required:"true"`
// Resource type that was not found.
//
// ResourceType is a required field
ResourceType *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ResourceNotFoundException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ResourceNotFoundException) GoString() string {
return s.String()
}
func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
return &ResourceNotFoundException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ResourceNotFoundException) Code() string {
return "ResourceNotFoundException"
}
// Message returns the exception's message.
func (s *ResourceNotFoundException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ResourceNotFoundException) OrigErr() error {
return nil
}
func (s *ResourceNotFoundException) Error() string {
return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ResourceNotFoundException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ResourceNotFoundException) RequestID() string {
return s.RespMetadata.RequestID
}
// The request would cause a service limit to exceed.
type ServiceLimitExceededException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
// The unique code identifier of the service limit that is being exceeded.
//
// LimitCode is a required field
LimitCode *string `type:"string" required:"true"`
Message_ *string `locationName:"Message" type:"string"`
// Identifier of the resource affected.
ResourceId *string `type:"string"`
// Type of the resource affected.
ResourceType *string `type:"string"`
// The unique code for the service of the limit that is being exceeded.
//
// ServiceCode is a required field
ServiceCode *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ServiceLimitExceededException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ServiceLimitExceededException) GoString() string {
return s.String()
}
func newErrorServiceLimitExceededException(v protocol.ResponseMetadata) error {
return &ServiceLimitExceededException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ServiceLimitExceededException) Code() string {
return "ServiceLimitExceededException"
}
// Message returns the exception's message.
func (s *ServiceLimitExceededException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ServiceLimitExceededException) OrigErr() error {
return nil
}
func (s *ServiceLimitExceededException) Error() string {
return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ServiceLimitExceededException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ServiceLimitExceededException) RequestID() string {
return s.RespMetadata.RequestID
}
type TagResourceInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the resource to which to add tags.
//
// ResourceArn is a required field
ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"`
// The tags to add to the resource as a list of key-value pairs.
//
// Tags is a required field
Tags map[string]*string `min:"1" type:"map" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *TagResourceInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
if s.ResourceArn == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
}
if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
}
if s.Tags == nil {
invalidParams.Add(request.NewErrParamRequired("Tags"))
}
if s.Tags != nil && len(s.Tags) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetResourceArn sets the ResourceArn field's value.
func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
s.ResourceArn = &v
return s
}
// SetTags sets the Tags field's value.
func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
s.Tags = v
return s
}
type TagResourceOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s TagResourceOutput) GoString() string {
return s.String()
}
// The request was denied due to request throttling.
type ThrottlingException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
Message_ *string `locationName:"Message" type:"string"`
// Number of seconds you can safely retry after the call.
RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ThrottlingException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ThrottlingException) GoString() string {
return s.String()
}
func newErrorThrottlingException(v protocol.ResponseMetadata) error {
return &ThrottlingException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ThrottlingException) Code() string {
return "ThrottlingException"
}
// Message returns the exception's message.
func (s *ThrottlingException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ThrottlingException) OrigErr() error {
return nil
}
func (s *ThrottlingException) Error() string {
return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ThrottlingException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ThrottlingException) RequestID() string {
return s.RespMetadata.RequestID
}
// The set of tiering configurations for the pricing rule.
type Tiering struct {
_ struct{} `type:"structure"`
// The possible Amazon Web Services Free Tier configurations.
//
// FreeTier is a required field
FreeTier *FreeTierConfig `type:"structure" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Tiering) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s Tiering) GoString() string {
return s.String()
}
// SetFreeTier sets the FreeTier field's value.
func (s *Tiering) SetFreeTier(v *FreeTierConfig) *Tiering {
s.FreeTier = v
return s
}
type UntagResourceInput struct {
_ struct{} `type:"structure" nopayload:"true"`
// The Amazon Resource Name (ARN) of the resource to which to delete tags.
//
// ResourceArn is a required field
ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"`
// The tags to delete from the resource as a list of key-value pairs.
//
// TagKeys is a required field
TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UntagResourceInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
if s.ResourceArn == nil {
invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
}
if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
}
if s.TagKeys == nil {
invalidParams.Add(request.NewErrParamRequired("TagKeys"))
}
if s.TagKeys != nil && len(s.TagKeys) < 1 {
invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetResourceArn sets the ResourceArn field's value.
func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
s.ResourceArn = &v
return s
}
// SetTagKeys sets the TagKeys field's value.
func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
s.TagKeys = v
return s
}
type UntagResourceOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UntagResourceOutput) GoString() string {
return s.String()
}
// Specifies if the billing group has the following features enabled.
type UpdateBillingGroupAccountGrouping struct {
_ struct{} `type:"structure"`
// Specifies if this billing group will automatically associate newly added
// Amazon Web Services accounts that join your consolidated billing family.
AutoAssociate *bool `type:"boolean"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateBillingGroupAccountGrouping) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateBillingGroupAccountGrouping) GoString() string {
return s.String()
}
// SetAutoAssociate sets the AutoAssociate field's value.
func (s *UpdateBillingGroupAccountGrouping) SetAutoAssociate(v bool) *UpdateBillingGroupAccountGrouping {
s.AutoAssociate = &v
return s
}
type UpdateBillingGroupInput struct {
_ struct{} `type:"structure"`
// Specifies if the billing group has automatic account association (AutoAssociate)
// enabled.
AccountGrouping *UpdateBillingGroupAccountGrouping `type:"structure"`
// The Amazon Resource Name (ARN) of the billing group being updated.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// The preferences and settings that will be used to compute the Amazon Web
// Services charges for a billing group.
ComputationPreference *ComputationPreference `type:"structure"`
// A description of the billing group.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateBillingGroupInput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The name of the billing group. The names must be unique to each billing group.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateBillingGroupInput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The status of the billing group. Only one of the valid values can be used.
Status *string `type:"string" enum:"BillingGroupStatus"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateBillingGroupInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateBillingGroupInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateBillingGroupInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateBillingGroupInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.ComputationPreference != nil {
if err := s.ComputationPreference.Validate(); err != nil {
invalidParams.AddNested("ComputationPreference", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAccountGrouping sets the AccountGrouping field's value.
func (s *UpdateBillingGroupInput) SetAccountGrouping(v *UpdateBillingGroupAccountGrouping) *UpdateBillingGroupInput {
s.AccountGrouping = v
return s
}
// SetArn sets the Arn field's value.
func (s *UpdateBillingGroupInput) SetArn(v string) *UpdateBillingGroupInput {
s.Arn = &v
return s
}
// SetComputationPreference sets the ComputationPreference field's value.
func (s *UpdateBillingGroupInput) SetComputationPreference(v *ComputationPreference) *UpdateBillingGroupInput {
s.ComputationPreference = v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdateBillingGroupInput) SetDescription(v string) *UpdateBillingGroupInput {
s.Description = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdateBillingGroupInput) SetName(v string) *UpdateBillingGroupInput {
s.Name = &v
return s
}
// SetStatus sets the Status field's value.
func (s *UpdateBillingGroupInput) SetStatus(v string) *UpdateBillingGroupInput {
s.Status = &v
return s
}
type UpdateBillingGroupOutput struct {
_ struct{} `type:"structure"`
// Specifies if the billing group has automatic account association (AutoAssociate)
// enabled.
AccountGrouping *UpdateBillingGroupAccountGrouping `type:"structure"`
// The Amazon Resource Name (ARN) of the billing group that was updated.
Arn *string `type:"string"`
// A description of the billing group.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateBillingGroupOutput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The most recent time when the billing group was modified.
LastModifiedTime *int64 `type:"long"`
// The name of the billing group. The names must be unique to each billing group.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateBillingGroupOutput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The Amazon Resource Name (ARN) of the pricing plan to compute Amazon Web
// Services charges for the billing group.
PricingPlanArn *string `type:"string"`
// The account ID that serves as the main account in a billing group.
PrimaryAccountId *string `type:"string"`
// The number of accounts in the particular billing group.
Size *int64 `type:"long"`
// The status of the billing group. Only one of the valid values can be used.
Status *string `type:"string" enum:"BillingGroupStatus"`
// The reason why the billing group is in its current status.
StatusReason *string `type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateBillingGroupOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateBillingGroupOutput) GoString() string {
return s.String()
}
// SetAccountGrouping sets the AccountGrouping field's value.
func (s *UpdateBillingGroupOutput) SetAccountGrouping(v *UpdateBillingGroupAccountGrouping) *UpdateBillingGroupOutput {
s.AccountGrouping = v
return s
}
// SetArn sets the Arn field's value.
func (s *UpdateBillingGroupOutput) SetArn(v string) *UpdateBillingGroupOutput {
s.Arn = &v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdateBillingGroupOutput) SetDescription(v string) *UpdateBillingGroupOutput {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *UpdateBillingGroupOutput) SetLastModifiedTime(v int64) *UpdateBillingGroupOutput {
s.LastModifiedTime = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdateBillingGroupOutput) SetName(v string) *UpdateBillingGroupOutput {
s.Name = &v
return s
}
// SetPricingPlanArn sets the PricingPlanArn field's value.
func (s *UpdateBillingGroupOutput) SetPricingPlanArn(v string) *UpdateBillingGroupOutput {
s.PricingPlanArn = &v
return s
}
// SetPrimaryAccountId sets the PrimaryAccountId field's value.
func (s *UpdateBillingGroupOutput) SetPrimaryAccountId(v string) *UpdateBillingGroupOutput {
s.PrimaryAccountId = &v
return s
}
// SetSize sets the Size field's value.
func (s *UpdateBillingGroupOutput) SetSize(v int64) *UpdateBillingGroupOutput {
s.Size = &v
return s
}
// SetStatus sets the Status field's value.
func (s *UpdateBillingGroupOutput) SetStatus(v string) *UpdateBillingGroupOutput {
s.Status = &v
return s
}
// SetStatusReason sets the StatusReason field's value.
func (s *UpdateBillingGroupOutput) SetStatusReason(v string) *UpdateBillingGroupOutput {
s.StatusReason = &v
return s
}
// A representation of the new charge details of a custom line item. This should
// contain only one of Flat or Percentage.
type UpdateCustomLineItemChargeDetails struct {
_ struct{} `type:"structure"`
// An UpdateCustomLineItemFlatChargeDetails that describes the new charge details
// of a flat custom line item.
Flat *UpdateCustomLineItemFlatChargeDetails `type:"structure"`
// A representation of the line item filter.
LineItemFilters []*LineItemFilter `type:"list"`
// An UpdateCustomLineItemPercentageChargeDetails that describes the new charge
// details of a percentage custom line item.
Percentage *UpdateCustomLineItemPercentageChargeDetails `type:"structure"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemChargeDetails) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateCustomLineItemChargeDetails) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateCustomLineItemChargeDetails"}
if s.Flat != nil {
if err := s.Flat.Validate(); err != nil {
invalidParams.AddNested("Flat", err.(request.ErrInvalidParams))
}
}
if s.LineItemFilters != nil {
for i, v := range s.LineItemFilters {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LineItemFilters", i), err.(request.ErrInvalidParams))
}
}
}
if s.Percentage != nil {
if err := s.Percentage.Validate(); err != nil {
invalidParams.AddNested("Percentage", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetFlat sets the Flat field's value.
func (s *UpdateCustomLineItemChargeDetails) SetFlat(v *UpdateCustomLineItemFlatChargeDetails) *UpdateCustomLineItemChargeDetails {
s.Flat = v
return s
}
// SetLineItemFilters sets the LineItemFilters field's value.
func (s *UpdateCustomLineItemChargeDetails) SetLineItemFilters(v []*LineItemFilter) *UpdateCustomLineItemChargeDetails {
s.LineItemFilters = v
return s
}
// SetPercentage sets the Percentage field's value.
func (s *UpdateCustomLineItemChargeDetails) SetPercentage(v *UpdateCustomLineItemPercentageChargeDetails) *UpdateCustomLineItemChargeDetails {
s.Percentage = v
return s
}
// A representation of the new charge details that are associated with a flat
// custom line item.
type UpdateCustomLineItemFlatChargeDetails struct {
_ struct{} `type:"structure"`
// The custom line item's new fixed charge value in USD.
//
// ChargeValue is a required field
ChargeValue *float64 `type:"double" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemFlatChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemFlatChargeDetails) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateCustomLineItemFlatChargeDetails) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateCustomLineItemFlatChargeDetails"}
if s.ChargeValue == nil {
invalidParams.Add(request.NewErrParamRequired("ChargeValue"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetChargeValue sets the ChargeValue field's value.
func (s *UpdateCustomLineItemFlatChargeDetails) SetChargeValue(v float64) *UpdateCustomLineItemFlatChargeDetails {
s.ChargeValue = &v
return s
}
type UpdateCustomLineItemInput struct {
_ struct{} `type:"structure"`
// The ARN of the custom line item to be updated.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// The billing period range in which the custom line item request will be applied.
BillingPeriodRange *CustomLineItemBillingPeriodRange `type:"structure"`
// A ListCustomLineItemChargeDetails containing the new charge details for the
// custom line item.
ChargeDetails *UpdateCustomLineItemChargeDetails `type:"structure"`
// The new line item description of the custom line item.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateCustomLineItemInput's
// String and GoString methods.
Description *string `min:"1" type:"string" sensitive:"true"`
// The new name for the custom line item.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateCustomLineItemInput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateCustomLineItemInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateCustomLineItemInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.Description != nil && len(*s.Description) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Description", 1))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.BillingPeriodRange != nil {
if err := s.BillingPeriodRange.Validate(); err != nil {
invalidParams.AddNested("BillingPeriodRange", err.(request.ErrInvalidParams))
}
}
if s.ChargeDetails != nil {
if err := s.ChargeDetails.Validate(); err != nil {
invalidParams.AddNested("ChargeDetails", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *UpdateCustomLineItemInput) SetArn(v string) *UpdateCustomLineItemInput {
s.Arn = &v
return s
}
// SetBillingPeriodRange sets the BillingPeriodRange field's value.
func (s *UpdateCustomLineItemInput) SetBillingPeriodRange(v *CustomLineItemBillingPeriodRange) *UpdateCustomLineItemInput {
s.BillingPeriodRange = v
return s
}
// SetChargeDetails sets the ChargeDetails field's value.
func (s *UpdateCustomLineItemInput) SetChargeDetails(v *UpdateCustomLineItemChargeDetails) *UpdateCustomLineItemInput {
s.ChargeDetails = v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdateCustomLineItemInput) SetDescription(v string) *UpdateCustomLineItemInput {
s.Description = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdateCustomLineItemInput) SetName(v string) *UpdateCustomLineItemInput {
s.Name = &v
return s
}
type UpdateCustomLineItemOutput struct {
_ struct{} `type:"structure"`
// The ARN of the successfully updated custom line item.
Arn *string `type:"string"`
// The number of resources that are associated to the custom line item.
AssociationSize *int64 `type:"long"`
// The ARN of the billing group that the custom line item is applied to.
BillingGroupArn *string `type:"string"`
// A ListCustomLineItemChargeDetails containing the charge details of the successfully
// updated custom line item.
ChargeDetails *ListCustomLineItemChargeDetails `type:"structure"`
// The description of the successfully updated custom line item.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateCustomLineItemOutput's
// String and GoString methods.
Description *string `min:"1" type:"string" sensitive:"true"`
// The most recent time when the custom line item was modified.
LastModifiedTime *int64 `type:"long"`
// The name of the successfully updated custom line item.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdateCustomLineItemOutput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *UpdateCustomLineItemOutput) SetArn(v string) *UpdateCustomLineItemOutput {
s.Arn = &v
return s
}
// SetAssociationSize sets the AssociationSize field's value.
func (s *UpdateCustomLineItemOutput) SetAssociationSize(v int64) *UpdateCustomLineItemOutput {
s.AssociationSize = &v
return s
}
// SetBillingGroupArn sets the BillingGroupArn field's value.
func (s *UpdateCustomLineItemOutput) SetBillingGroupArn(v string) *UpdateCustomLineItemOutput {
s.BillingGroupArn = &v
return s
}
// SetChargeDetails sets the ChargeDetails field's value.
func (s *UpdateCustomLineItemOutput) SetChargeDetails(v *ListCustomLineItemChargeDetails) *UpdateCustomLineItemOutput {
s.ChargeDetails = v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdateCustomLineItemOutput) SetDescription(v string) *UpdateCustomLineItemOutput {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *UpdateCustomLineItemOutput) SetLastModifiedTime(v int64) *UpdateCustomLineItemOutput {
s.LastModifiedTime = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdateCustomLineItemOutput) SetName(v string) *UpdateCustomLineItemOutput {
s.Name = &v
return s
}
// A representation of the new charge details that are associated with a percentage
// custom line item.
type UpdateCustomLineItemPercentageChargeDetails struct {
_ struct{} `type:"structure"`
// The custom line item's new percentage value. This will be multiplied against
// the combined value of its associated resources to determine its charge value.
//
// PercentageValue is a required field
PercentageValue *float64 `type:"double" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemPercentageChargeDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateCustomLineItemPercentageChargeDetails) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateCustomLineItemPercentageChargeDetails) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateCustomLineItemPercentageChargeDetails"}
if s.PercentageValue == nil {
invalidParams.Add(request.NewErrParamRequired("PercentageValue"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetPercentageValue sets the PercentageValue field's value.
func (s *UpdateCustomLineItemPercentageChargeDetails) SetPercentageValue(v float64) *UpdateCustomLineItemPercentageChargeDetails {
s.PercentageValue = &v
return s
}
// The possible Amazon Web Services Free Tier configurations.
type UpdateFreeTierConfig struct {
_ struct{} `type:"structure"`
// Activate or deactivate application of Amazon Web Services Free Tier.
//
// Activated is a required field
Activated *bool `type:"boolean" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateFreeTierConfig) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateFreeTierConfig) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateFreeTierConfig) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateFreeTierConfig"}
if s.Activated == nil {
invalidParams.Add(request.NewErrParamRequired("Activated"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetActivated sets the Activated field's value.
func (s *UpdateFreeTierConfig) SetActivated(v bool) *UpdateFreeTierConfig {
s.Activated = &v
return s
}
type UpdatePricingPlanInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the pricing plan that you're updating.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// The description of the pricing plan.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingPlanInput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The name of the pricing plan. The name must be unique to each pricing plan.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingPlanInput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingPlanInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingPlanInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdatePricingPlanInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdatePricingPlanInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *UpdatePricingPlanInput) SetArn(v string) *UpdatePricingPlanInput {
s.Arn = &v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdatePricingPlanInput) SetDescription(v string) *UpdatePricingPlanInput {
s.Description = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdatePricingPlanInput) SetName(v string) *UpdatePricingPlanInput {
s.Name = &v
return s
}
type UpdatePricingPlanOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the updated pricing plan.
Arn *string `type:"string"`
// The new description for the pricing rule.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingPlanOutput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The most recent time when the pricing plan was modified.
LastModifiedTime *int64 `type:"long"`
// The name of the pricing plan. The name must be unique to each pricing plan.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingPlanOutput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The pricing rules count that's currently associated with this pricing plan
// list.
Size *int64 `min:"1" type:"long"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingPlanOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingPlanOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *UpdatePricingPlanOutput) SetArn(v string) *UpdatePricingPlanOutput {
s.Arn = &v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdatePricingPlanOutput) SetDescription(v string) *UpdatePricingPlanOutput {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *UpdatePricingPlanOutput) SetLastModifiedTime(v int64) *UpdatePricingPlanOutput {
s.LastModifiedTime = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdatePricingPlanOutput) SetName(v string) *UpdatePricingPlanOutput {
s.Name = &v
return s
}
// SetSize sets the Size field's value.
func (s *UpdatePricingPlanOutput) SetSize(v int64) *UpdatePricingPlanOutput {
s.Size = &v
return s
}
type UpdatePricingRuleInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the pricing rule to update.
//
// Arn is a required field
Arn *string `type:"string" required:"true"`
// The new description for the pricing rule.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingRuleInput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The new modifier to show pricing plan rates as a percentage.
ModifierPercentage *float64 `type:"double"`
// The new name of the pricing rule. The name must be unique to each pricing
// rule.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingRuleInput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// The set of tiering configurations for the pricing rule.
Tiering *UpdateTieringInput_ `type:"structure"`
// The new pricing rule type.
Type *string `type:"string" enum:"PricingRuleType"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingRuleInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingRuleInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdatePricingRuleInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdatePricingRuleInput"}
if s.Arn == nil {
invalidParams.Add(request.NewErrParamRequired("Arn"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.Tiering != nil {
if err := s.Tiering.Validate(); err != nil {
invalidParams.AddNested("Tiering", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetArn sets the Arn field's value.
func (s *UpdatePricingRuleInput) SetArn(v string) *UpdatePricingRuleInput {
s.Arn = &v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdatePricingRuleInput) SetDescription(v string) *UpdatePricingRuleInput {
s.Description = &v
return s
}
// SetModifierPercentage sets the ModifierPercentage field's value.
func (s *UpdatePricingRuleInput) SetModifierPercentage(v float64) *UpdatePricingRuleInput {
s.ModifierPercentage = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdatePricingRuleInput) SetName(v string) *UpdatePricingRuleInput {
s.Name = &v
return s
}
// SetTiering sets the Tiering field's value.
func (s *UpdatePricingRuleInput) SetTiering(v *UpdateTieringInput_) *UpdatePricingRuleInput {
s.Tiering = v
return s
}
// SetType sets the Type field's value.
func (s *UpdatePricingRuleInput) SetType(v string) *UpdatePricingRuleInput {
s.Type = &v
return s
}
type UpdatePricingRuleOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the successfully updated pricing rule.
Arn *string `type:"string"`
// The pricing plans count that this pricing rule is associated with.
AssociatedPricingPlanCount *int64 `type:"long"`
// The seller of services provided by Amazon Web Services, their affiliates,
// or third-party providers selling services via Amazon Web Services Marketplace.
BillingEntity *string `type:"string"`
// The new description for the pricing rule.
//
// Description is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingRuleOutput's
// String and GoString methods.
Description *string `type:"string" sensitive:"true"`
// The most recent time the pricing rule was modified.
LastModifiedTime *int64 `type:"long"`
// The new modifier to show pricing plan rates as a percentage.
ModifierPercentage *float64 `type:"double"`
// The new name of the pricing rule. The name must be unique to each pricing
// rule.
//
// Name is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by UpdatePricingRuleOutput's
// String and GoString methods.
Name *string `min:"1" type:"string" sensitive:"true"`
// Operation refers to the specific Amazon Web Services covered by this line
// item. This describes the specific usage of the line item.
//
// If the Scope attribute is set to SKU, this attribute indicates which operation
// the PricingRule is modifying. For example, a value of RunInstances:0202 indicates
// the operation of running an Amazon EC2 instance.
Operation *string `min:"1" type:"string"`
// The scope of pricing rule that indicates if it's globally applicable, or
// it's service-specific.
Scope *string `type:"string" enum:"PricingRuleScope"`
// If the Scope attribute is set to SERVICE, the attribute indicates which service
// the PricingRule is applicable for.
Service *string `min:"1" type:"string"`
// The set of tiering configurations for the pricing rule.
Tiering *UpdateTieringInput_ `type:"structure"`
// The new pricing rule type.
Type *string `type:"string" enum:"PricingRuleType"`
// Usage type is the unit that each service uses to measure the usage of a specific
// type of resource.
//
// If the Scope attribute is set to SKU, this attribute indicates which usage
// type the PricingRule is modifying. For example, USW2-BoxUsage:m2.2xlarge
// describes an M2 High Memory Double Extra Large instance in the US West (Oregon)
// Region.
UsageType *string `min:"1" type:"string"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingRuleOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdatePricingRuleOutput) GoString() string {
return s.String()
}
// SetArn sets the Arn field's value.
func (s *UpdatePricingRuleOutput) SetArn(v string) *UpdatePricingRuleOutput {
s.Arn = &v
return s
}
// SetAssociatedPricingPlanCount sets the AssociatedPricingPlanCount field's value.
func (s *UpdatePricingRuleOutput) SetAssociatedPricingPlanCount(v int64) *UpdatePricingRuleOutput {
s.AssociatedPricingPlanCount = &v
return s
}
// SetBillingEntity sets the BillingEntity field's value.
func (s *UpdatePricingRuleOutput) SetBillingEntity(v string) *UpdatePricingRuleOutput {
s.BillingEntity = &v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdatePricingRuleOutput) SetDescription(v string) *UpdatePricingRuleOutput {
s.Description = &v
return s
}
// SetLastModifiedTime sets the LastModifiedTime field's value.
func (s *UpdatePricingRuleOutput) SetLastModifiedTime(v int64) *UpdatePricingRuleOutput {
s.LastModifiedTime = &v
return s
}
// SetModifierPercentage sets the ModifierPercentage field's value.
func (s *UpdatePricingRuleOutput) SetModifierPercentage(v float64) *UpdatePricingRuleOutput {
s.ModifierPercentage = &v
return s
}
// SetName sets the Name field's value.
func (s *UpdatePricingRuleOutput) SetName(v string) *UpdatePricingRuleOutput {
s.Name = &v
return s
}
// SetOperation sets the Operation field's value.
func (s *UpdatePricingRuleOutput) SetOperation(v string) *UpdatePricingRuleOutput {
s.Operation = &v
return s
}
// SetScope sets the Scope field's value.
func (s *UpdatePricingRuleOutput) SetScope(v string) *UpdatePricingRuleOutput {
s.Scope = &v
return s
}
// SetService sets the Service field's value.
func (s *UpdatePricingRuleOutput) SetService(v string) *UpdatePricingRuleOutput {
s.Service = &v
return s
}
// SetTiering sets the Tiering field's value.
func (s *UpdatePricingRuleOutput) SetTiering(v *UpdateTieringInput_) *UpdatePricingRuleOutput {
s.Tiering = v
return s
}
// SetType sets the Type field's value.
func (s *UpdatePricingRuleOutput) SetType(v string) *UpdatePricingRuleOutput {
s.Type = &v
return s
}
// SetUsageType sets the UsageType field's value.
func (s *UpdatePricingRuleOutput) SetUsageType(v string) *UpdatePricingRuleOutput {
s.UsageType = &v
return s
}
// The set of tiering configurations for the pricing rule.
type UpdateTieringInput_ struct {
_ struct{} `type:"structure"`
// The possible Amazon Web Services Free Tier configurations.
//
// FreeTier is a required field
FreeTier *UpdateFreeTierConfig `type:"structure" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateTieringInput_) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s UpdateTieringInput_) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateTieringInput_) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateTieringInput_"}
if s.FreeTier == nil {
invalidParams.Add(request.NewErrParamRequired("FreeTier"))
}
if s.FreeTier != nil {
if err := s.FreeTier.Validate(); err != nil {
invalidParams.AddNested("FreeTier", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetFreeTier sets the FreeTier field's value.
func (s *UpdateTieringInput_) SetFreeTier(v *UpdateFreeTierConfig) *UpdateTieringInput_ {
s.FreeTier = v
return s
}
// The input doesn't match with the constraints specified by Amazon Web Services.
type ValidationException struct {
_ struct{} `type:"structure"`
RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
// The fields that caused the error, if applicable.
Fields []*ValidationExceptionField `type:"list"`
Message_ *string `locationName:"Message" type:"string"`
// The reason the request's validation failed.
Reason *string `type:"string" enum:"ValidationExceptionReason"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ValidationException) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ValidationException) GoString() string {
return s.String()
}
func newErrorValidationException(v protocol.ResponseMetadata) error {
return &ValidationException{
RespMetadata: v,
}
}
// Code returns the exception type name.
func (s *ValidationException) Code() string {
return "ValidationException"
}
// Message returns the exception's message.
func (s *ValidationException) Message() string {
if s.Message_ != nil {
return *s.Message_
}
return ""
}
// OrigErr always returns nil, satisfies awserr.Error interface.
func (s *ValidationException) OrigErr() error {
return nil
}
func (s *ValidationException) Error() string {
return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
}
// Status code returns the HTTP status code for the request's response error.
func (s *ValidationException) StatusCode() int {
return s.RespMetadata.StatusCode
}
// RequestID returns the service's response RequestID for request.
func (s *ValidationException) RequestID() string {
return s.RespMetadata.RequestID
}
// The field's information of a request that resulted in an exception.
type ValidationExceptionField struct {
_ struct{} `type:"structure"`
// The message describing why the field failed validation.
//
// Message is a required field
Message *string `type:"string" required:"true"`
// The field name.
//
// Name is a required field
Name *string `type:"string" required:"true"`
}
// String returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ValidationExceptionField) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation.
//
// API parameter values that are decorated as "sensitive" in the API will not
// be included in the string output. The member name will be present, but the
// value will be replaced with "sensitive".
func (s ValidationExceptionField) GoString() string {
return s.String()
}
// SetMessage sets the Message field's value.
func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField {
s.Message = &v
return s
}
// SetName sets the Name field's value.
func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField {
s.Name = &v
return s
}
const (
// AssociateResourceErrorReasonInvalidArn is a AssociateResourceErrorReason enum value
AssociateResourceErrorReasonInvalidArn = "INVALID_ARN"
// AssociateResourceErrorReasonServiceLimitExceeded is a AssociateResourceErrorReason enum value
AssociateResourceErrorReasonServiceLimitExceeded = "SERVICE_LIMIT_EXCEEDED"
// AssociateResourceErrorReasonIllegalCustomlineitem is a AssociateResourceErrorReason enum value
AssociateResourceErrorReasonIllegalCustomlineitem = "ILLEGAL_CUSTOMLINEITEM"
// AssociateResourceErrorReasonInternalServerException is a AssociateResourceErrorReason enum value
AssociateResourceErrorReasonInternalServerException = "INTERNAL_SERVER_EXCEPTION"
// AssociateResourceErrorReasonInvalidBillingPeriodRange is a AssociateResourceErrorReason enum value
AssociateResourceErrorReasonInvalidBillingPeriodRange = "INVALID_BILLING_PERIOD_RANGE"
)
// AssociateResourceErrorReason_Values returns all elements of the AssociateResourceErrorReason enum
func AssociateResourceErrorReason_Values() []string {
return []string{
AssociateResourceErrorReasonInvalidArn,
AssociateResourceErrorReasonServiceLimitExceeded,
AssociateResourceErrorReasonIllegalCustomlineitem,
AssociateResourceErrorReasonInternalServerException,
AssociateResourceErrorReasonInvalidBillingPeriodRange,
}
}
const (
// BillingGroupStatusActive is a BillingGroupStatus enum value
BillingGroupStatusActive = "ACTIVE"
// BillingGroupStatusPrimaryAccountMissing is a BillingGroupStatus enum value
BillingGroupStatusPrimaryAccountMissing = "PRIMARY_ACCOUNT_MISSING"
)
// BillingGroupStatus_Values returns all elements of the BillingGroupStatus enum
func BillingGroupStatus_Values() []string {
return []string{
BillingGroupStatusActive,
BillingGroupStatusPrimaryAccountMissing,
}
}
const (
// ConflictExceptionReasonResourceNameConflict is a ConflictExceptionReason enum value
ConflictExceptionReasonResourceNameConflict = "RESOURCE_NAME_CONFLICT"
// ConflictExceptionReasonPricingRuleInPricingPlanConflict is a ConflictExceptionReason enum value
ConflictExceptionReasonPricingRuleInPricingPlanConflict = "PRICING_RULE_IN_PRICING_PLAN_CONFLICT"
// ConflictExceptionReasonPricingPlanAttachedToBillingGroupDeleteConflict is a ConflictExceptionReason enum value
ConflictExceptionReasonPricingPlanAttachedToBillingGroupDeleteConflict = "PRICING_PLAN_ATTACHED_TO_BILLING_GROUP_DELETE_CONFLICT"
// ConflictExceptionReasonPricingRuleAttachedToPricingPlanDeleteConflict is a ConflictExceptionReason enum value
ConflictExceptionReasonPricingRuleAttachedToPricingPlanDeleteConflict = "PRICING_RULE_ATTACHED_TO_PRICING_PLAN_DELETE_CONFLICT"
// ConflictExceptionReasonWriteConflictRetry is a ConflictExceptionReason enum value
ConflictExceptionReasonWriteConflictRetry = "WRITE_CONFLICT_RETRY"
)
// ConflictExceptionReason_Values returns all elements of the ConflictExceptionReason enum
func ConflictExceptionReason_Values() []string {
return []string{
ConflictExceptionReasonResourceNameConflict,
ConflictExceptionReasonPricingRuleInPricingPlanConflict,
ConflictExceptionReasonPricingPlanAttachedToBillingGroupDeleteConflict,
ConflictExceptionReasonPricingRuleAttachedToPricingPlanDeleteConflict,
ConflictExceptionReasonWriteConflictRetry,
}
}
const (
// CurrencyCodeUsd is a CurrencyCode enum value
CurrencyCodeUsd = "USD"
// CurrencyCodeCny is a CurrencyCode enum value
CurrencyCodeCny = "CNY"
)
// CurrencyCode_Values returns all elements of the CurrencyCode enum
func CurrencyCode_Values() []string {
return []string{
CurrencyCodeUsd,
CurrencyCodeCny,
}
}
const (
// CustomLineItemRelationshipParent is a CustomLineItemRelationship enum value
CustomLineItemRelationshipParent = "PARENT"
// CustomLineItemRelationshipChild is a CustomLineItemRelationship enum value
CustomLineItemRelationshipChild = "CHILD"
)
// CustomLineItemRelationship_Values returns all elements of the CustomLineItemRelationship enum
func CustomLineItemRelationship_Values() []string {
return []string{
CustomLineItemRelationshipParent,
CustomLineItemRelationshipChild,
}
}
const (
// CustomLineItemTypeCredit is a CustomLineItemType enum value
CustomLineItemTypeCredit = "CREDIT"
// CustomLineItemTypeFee is a CustomLineItemType enum value
CustomLineItemTypeFee = "FEE"
)
// CustomLineItemType_Values returns all elements of the CustomLineItemType enum
func CustomLineItemType_Values() []string {
return []string{
CustomLineItemTypeCredit,
CustomLineItemTypeFee,
}
}
const (
// GroupByAttributeNameProductName is a GroupByAttributeName enum value
GroupByAttributeNameProductName = "PRODUCT_NAME"
// GroupByAttributeNameBillingPeriod is a GroupByAttributeName enum value
GroupByAttributeNameBillingPeriod = "BILLING_PERIOD"
)
// GroupByAttributeName_Values returns all elements of the GroupByAttributeName enum
func GroupByAttributeName_Values() []string {
return []string{
GroupByAttributeNameProductName,
GroupByAttributeNameBillingPeriod,
}
}
const (
// LineItemFilterAttributeNameLineItemType is a LineItemFilterAttributeName enum value
LineItemFilterAttributeNameLineItemType = "LINE_ITEM_TYPE"
)
// LineItemFilterAttributeName_Values returns all elements of the LineItemFilterAttributeName enum
func LineItemFilterAttributeName_Values() []string {
return []string{
LineItemFilterAttributeNameLineItemType,
}
}
const (
// LineItemFilterValueSavingsPlanNegation is a LineItemFilterValue enum value
LineItemFilterValueSavingsPlanNegation = "SAVINGS_PLAN_NEGATION"
)
// LineItemFilterValue_Values returns all elements of the LineItemFilterValue enum
func LineItemFilterValue_Values() []string {
return []string{
LineItemFilterValueSavingsPlanNegation,
}
}
const (
// MatchOptionNotEqual is a MatchOption enum value
MatchOptionNotEqual = "NOT_EQUAL"
)
// MatchOption_Values returns all elements of the MatchOption enum
func MatchOption_Values() []string {
return []string{
MatchOptionNotEqual,
}
}
const (
// PricingRuleScopeGlobal is a PricingRuleScope enum value
PricingRuleScopeGlobal = "GLOBAL"
// PricingRuleScopeService is a PricingRuleScope enum value
PricingRuleScopeService = "SERVICE"
// PricingRuleScopeBillingEntity is a PricingRuleScope enum value
PricingRuleScopeBillingEntity = "BILLING_ENTITY"
// PricingRuleScopeSku is a PricingRuleScope enum value
PricingRuleScopeSku = "SKU"
)
// PricingRuleScope_Values returns all elements of the PricingRuleScope enum
func PricingRuleScope_Values() []string {
return []string{
PricingRuleScopeGlobal,
PricingRuleScopeService,
PricingRuleScopeBillingEntity,
PricingRuleScopeSku,
}
}
const (
// PricingRuleTypeMarkup is a PricingRuleType enum value
PricingRuleTypeMarkup = "MARKUP"
// PricingRuleTypeDiscount is a PricingRuleType enum value
PricingRuleTypeDiscount = "DISCOUNT"
// PricingRuleTypeTiering is a PricingRuleType enum value
PricingRuleTypeTiering = "TIERING"
)
// PricingRuleType_Values returns all elements of the PricingRuleType enum
func PricingRuleType_Values() []string {
return []string{
PricingRuleTypeMarkup,
PricingRuleTypeDiscount,
PricingRuleTypeTiering,
}
}
const (
// ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value
ValidationExceptionReasonUnknownOperation = "UNKNOWN_OPERATION"
// ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value
ValidationExceptionReasonCannotParse = "CANNOT_PARSE"
// ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value
ValidationExceptionReasonFieldValidationFailed = "FIELD_VALIDATION_FAILED"
// ValidationExceptionReasonOther is a ValidationExceptionReason enum value
ValidationExceptionReasonOther = "OTHER"
// ValidationExceptionReasonPrimaryNotAssociated is a ValidationExceptionReason enum value
ValidationExceptionReasonPrimaryNotAssociated = "PRIMARY_NOT_ASSOCIATED"
// ValidationExceptionReasonPrimaryCannotDisassociate is a ValidationExceptionReason enum value
ValidationExceptionReasonPrimaryCannotDisassociate = "PRIMARY_CANNOT_DISASSOCIATE"
// ValidationExceptionReasonAccountsNotAssociated is a ValidationExceptionReason enum value
ValidationExceptionReasonAccountsNotAssociated = "ACCOUNTS_NOT_ASSOCIATED"
// ValidationExceptionReasonAccountsAlreadyAssociated is a ValidationExceptionReason enum value
ValidationExceptionReasonAccountsAlreadyAssociated = "ACCOUNTS_ALREADY_ASSOCIATED"
// ValidationExceptionReasonIllegalPrimaryAccount is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalPrimaryAccount = "ILLEGAL_PRIMARY_ACCOUNT"
// ValidationExceptionReasonIllegalAccounts is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalAccounts = "ILLEGAL_ACCOUNTS"
// ValidationExceptionReasonMismatchedBillinggroupArn is a ValidationExceptionReason enum value
ValidationExceptionReasonMismatchedBillinggroupArn = "MISMATCHED_BILLINGGROUP_ARN"
// ValidationExceptionReasonMissingBillinggroup is a ValidationExceptionReason enum value
ValidationExceptionReasonMissingBillinggroup = "MISSING_BILLINGGROUP"
// ValidationExceptionReasonMismatchedCustomlineitemArn is a ValidationExceptionReason enum value
ValidationExceptionReasonMismatchedCustomlineitemArn = "MISMATCHED_CUSTOMLINEITEM_ARN"
// ValidationExceptionReasonIllegalBillingPeriod is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalBillingPeriod = "ILLEGAL_BILLING_PERIOD"
// ValidationExceptionReasonIllegalBillingPeriodRange is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalBillingPeriodRange = "ILLEGAL_BILLING_PERIOD_RANGE"
// ValidationExceptionReasonTooManyAccountsInRequest is a ValidationExceptionReason enum value
ValidationExceptionReasonTooManyAccountsInRequest = "TOO_MANY_ACCOUNTS_IN_REQUEST"
// ValidationExceptionReasonDuplicateAccount is a ValidationExceptionReason enum value
ValidationExceptionReasonDuplicateAccount = "DUPLICATE_ACCOUNT"
// ValidationExceptionReasonInvalidBillingGroupStatus is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidBillingGroupStatus = "INVALID_BILLING_GROUP_STATUS"
// ValidationExceptionReasonMismatchedPricingplanArn is a ValidationExceptionReason enum value
ValidationExceptionReasonMismatchedPricingplanArn = "MISMATCHED_PRICINGPLAN_ARN"
// ValidationExceptionReasonMissingPricingplan is a ValidationExceptionReason enum value
ValidationExceptionReasonMissingPricingplan = "MISSING_PRICINGPLAN"
// ValidationExceptionReasonMismatchedPricingruleArn is a ValidationExceptionReason enum value
ValidationExceptionReasonMismatchedPricingruleArn = "MISMATCHED_PRICINGRULE_ARN"
// ValidationExceptionReasonDuplicatePricingruleArns is a ValidationExceptionReason enum value
ValidationExceptionReasonDuplicatePricingruleArns = "DUPLICATE_PRICINGRULE_ARNS"
// ValidationExceptionReasonIllegalExpression is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalExpression = "ILLEGAL_EXPRESSION"
// ValidationExceptionReasonIllegalScope is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalScope = "ILLEGAL_SCOPE"
// ValidationExceptionReasonIllegalService is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalService = "ILLEGAL_SERVICE"
// ValidationExceptionReasonPricingrulesNotExist is a ValidationExceptionReason enum value
ValidationExceptionReasonPricingrulesNotExist = "PRICINGRULES_NOT_EXIST"
// ValidationExceptionReasonPricingrulesAlreadyAssociated is a ValidationExceptionReason enum value
ValidationExceptionReasonPricingrulesAlreadyAssociated = "PRICINGRULES_ALREADY_ASSOCIATED"
// ValidationExceptionReasonPricingrulesNotAssociated is a ValidationExceptionReason enum value
ValidationExceptionReasonPricingrulesNotAssociated = "PRICINGRULES_NOT_ASSOCIATED"
// ValidationExceptionReasonInvalidTimeRange is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidTimeRange = "INVALID_TIME_RANGE"
// ValidationExceptionReasonInvalidBillingviewArn is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidBillingviewArn = "INVALID_BILLINGVIEW_ARN"
// ValidationExceptionReasonMismatchedBillingviewArn is a ValidationExceptionReason enum value
ValidationExceptionReasonMismatchedBillingviewArn = "MISMATCHED_BILLINGVIEW_ARN"
// ValidationExceptionReasonIllegalCustomlineitem is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalCustomlineitem = "ILLEGAL_CUSTOMLINEITEM"
// ValidationExceptionReasonMissingCustomlineitem is a ValidationExceptionReason enum value
ValidationExceptionReasonMissingCustomlineitem = "MISSING_CUSTOMLINEITEM"
// ValidationExceptionReasonIllegalCustomlineitemUpdate is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalCustomlineitemUpdate = "ILLEGAL_CUSTOMLINEITEM_UPDATE"
// ValidationExceptionReasonTooManyCustomlineitemsInRequest is a ValidationExceptionReason enum value
ValidationExceptionReasonTooManyCustomlineitemsInRequest = "TOO_MANY_CUSTOMLINEITEMS_IN_REQUEST"
// ValidationExceptionReasonIllegalChargeDetails is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalChargeDetails = "ILLEGAL_CHARGE_DETAILS"
// ValidationExceptionReasonIllegalUpdateChargeDetails is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalUpdateChargeDetails = "ILLEGAL_UPDATE_CHARGE_DETAILS"
// ValidationExceptionReasonInvalidArn is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidArn = "INVALID_ARN"
// ValidationExceptionReasonIllegalResourceArns is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalResourceArns = "ILLEGAL_RESOURCE_ARNS"
// ValidationExceptionReasonIllegalCustomlineitemModification is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalCustomlineitemModification = "ILLEGAL_CUSTOMLINEITEM_MODIFICATION"
// ValidationExceptionReasonMissingLinkedAccountIds is a ValidationExceptionReason enum value
ValidationExceptionReasonMissingLinkedAccountIds = "MISSING_LINKED_ACCOUNT_IDS"
// ValidationExceptionReasonMultipleLinkedAccountIds is a ValidationExceptionReason enum value
ValidationExceptionReasonMultipleLinkedAccountIds = "MULTIPLE_LINKED_ACCOUNT_IDS"
// ValidationExceptionReasonMissingPricingPlanArn is a ValidationExceptionReason enum value
ValidationExceptionReasonMissingPricingPlanArn = "MISSING_PRICING_PLAN_ARN"
// ValidationExceptionReasonMultiplePricingPlanArn is a ValidationExceptionReason enum value
ValidationExceptionReasonMultiplePricingPlanArn = "MULTIPLE_PRICING_PLAN_ARN"
// ValidationExceptionReasonIllegalChildAssociateResource is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalChildAssociateResource = "ILLEGAL_CHILD_ASSOCIATE_RESOURCE"
// ValidationExceptionReasonCustomLineItemAssociationExists is a ValidationExceptionReason enum value
ValidationExceptionReasonCustomLineItemAssociationExists = "CUSTOM_LINE_ITEM_ASSOCIATION_EXISTS"
// ValidationExceptionReasonInvalidBillingGroup is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidBillingGroup = "INVALID_BILLING_GROUP"
// ValidationExceptionReasonInvalidBillingPeriodForOperation is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidBillingPeriodForOperation = "INVALID_BILLING_PERIOD_FOR_OPERATION"
// ValidationExceptionReasonIllegalBillingEntity is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalBillingEntity = "ILLEGAL_BILLING_ENTITY"
// ValidationExceptionReasonIllegalModifierPercentage is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalModifierPercentage = "ILLEGAL_MODIFIER_PERCENTAGE"
// ValidationExceptionReasonIllegalType is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalType = "ILLEGAL_TYPE"
// ValidationExceptionReasonIllegalEndedBillinggroup is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalEndedBillinggroup = "ILLEGAL_ENDED_BILLINGGROUP"
// ValidationExceptionReasonIllegalTieringInput is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalTieringInput = "ILLEGAL_TIERING_INPUT"
// ValidationExceptionReasonIllegalOperation is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalOperation = "ILLEGAL_OPERATION"
// ValidationExceptionReasonIllegalUsageType is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalUsageType = "ILLEGAL_USAGE_TYPE"
// ValidationExceptionReasonInvalidSkuCombo is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidSkuCombo = "INVALID_SKU_COMBO"
// ValidationExceptionReasonInvalidFilter is a ValidationExceptionReason enum value
ValidationExceptionReasonInvalidFilter = "INVALID_FILTER"
// ValidationExceptionReasonTooManyAutoAssociateBillingGroups is a ValidationExceptionReason enum value
ValidationExceptionReasonTooManyAutoAssociateBillingGroups = "TOO_MANY_AUTO_ASSOCIATE_BILLING_GROUPS"
// ValidationExceptionReasonCannotDeleteAutoAssociateBillingGroup is a ValidationExceptionReason enum value
ValidationExceptionReasonCannotDeleteAutoAssociateBillingGroup = "CANNOT_DELETE_AUTO_ASSOCIATE_BILLING_GROUP"
// ValidationExceptionReasonIllegalAccountId is a ValidationExceptionReason enum value
ValidationExceptionReasonIllegalAccountId = "ILLEGAL_ACCOUNT_ID"
)
// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum
func ValidationExceptionReason_Values() []string {
return []string{
ValidationExceptionReasonUnknownOperation,
ValidationExceptionReasonCannotParse,
ValidationExceptionReasonFieldValidationFailed,
ValidationExceptionReasonOther,
ValidationExceptionReasonPrimaryNotAssociated,
ValidationExceptionReasonPrimaryCannotDisassociate,
ValidationExceptionReasonAccountsNotAssociated,
ValidationExceptionReasonAccountsAlreadyAssociated,
ValidationExceptionReasonIllegalPrimaryAccount,
ValidationExceptionReasonIllegalAccounts,
ValidationExceptionReasonMismatchedBillinggroupArn,
ValidationExceptionReasonMissingBillinggroup,
ValidationExceptionReasonMismatchedCustomlineitemArn,
ValidationExceptionReasonIllegalBillingPeriod,
ValidationExceptionReasonIllegalBillingPeriodRange,
ValidationExceptionReasonTooManyAccountsInRequest,
ValidationExceptionReasonDuplicateAccount,
ValidationExceptionReasonInvalidBillingGroupStatus,
ValidationExceptionReasonMismatchedPricingplanArn,
ValidationExceptionReasonMissingPricingplan,
ValidationExceptionReasonMismatchedPricingruleArn,
ValidationExceptionReasonDuplicatePricingruleArns,
ValidationExceptionReasonIllegalExpression,
ValidationExceptionReasonIllegalScope,
ValidationExceptionReasonIllegalService,
ValidationExceptionReasonPricingrulesNotExist,
ValidationExceptionReasonPricingrulesAlreadyAssociated,
ValidationExceptionReasonPricingrulesNotAssociated,
ValidationExceptionReasonInvalidTimeRange,
ValidationExceptionReasonInvalidBillingviewArn,
ValidationExceptionReasonMismatchedBillingviewArn,
ValidationExceptionReasonIllegalCustomlineitem,
ValidationExceptionReasonMissingCustomlineitem,
ValidationExceptionReasonIllegalCustomlineitemUpdate,
ValidationExceptionReasonTooManyCustomlineitemsInRequest,
ValidationExceptionReasonIllegalChargeDetails,
ValidationExceptionReasonIllegalUpdateChargeDetails,
ValidationExceptionReasonInvalidArn,
ValidationExceptionReasonIllegalResourceArns,
ValidationExceptionReasonIllegalCustomlineitemModification,
ValidationExceptionReasonMissingLinkedAccountIds,
ValidationExceptionReasonMultipleLinkedAccountIds,
ValidationExceptionReasonMissingPricingPlanArn,
ValidationExceptionReasonMultiplePricingPlanArn,
ValidationExceptionReasonIllegalChildAssociateResource,
ValidationExceptionReasonCustomLineItemAssociationExists,
ValidationExceptionReasonInvalidBillingGroup,
ValidationExceptionReasonInvalidBillingPeriodForOperation,
ValidationExceptionReasonIllegalBillingEntity,
ValidationExceptionReasonIllegalModifierPercentage,
ValidationExceptionReasonIllegalType,
ValidationExceptionReasonIllegalEndedBillinggroup,
ValidationExceptionReasonIllegalTieringInput,
ValidationExceptionReasonIllegalOperation,
ValidationExceptionReasonIllegalUsageType,
ValidationExceptionReasonInvalidSkuCombo,
ValidationExceptionReasonInvalidFilter,
ValidationExceptionReasonTooManyAutoAssociateBillingGroups,
ValidationExceptionReasonCannotDeleteAutoAssociateBillingGroup,
ValidationExceptionReasonIllegalAccountId,
}
}