com.amazonaws.services.billingconductor.AWSBillingConductor Maven / Gradle / Ivy
Show all versions of aws-java-sdk-billingconductor Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.billingconductor;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.billingconductor.model.*;
/**
* Interface for accessing AWSBillingConductor.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.billingconductor.AbstractAWSBillingConductor} instead.
*
*
*
* Amazon Web Services Billing Conductor is a fully managed service that you can use to customize a proforma version of your billing data each month, to accurately show or chargeback your end customers. Amazon
* Web Services Billing Conductor doesn't change the way you're billed by Amazon Web Services each month by design.
* Instead, it provides you with a mechanism to configure, generate, and display rates to certain customers over a given
* billing period. You can also analyze the difference between the rates you apply to your accounting groupings relative
* to your actual rates from Amazon Web Services. As a result of your Amazon Web Services Billing Conductor
* configuration, the payer account can also see the custom rate applied on the billing details page of the Amazon Web Services Billing console, or configure a cost and usage
* report per billing group.
*
*
* This documentation shows how you can configure Amazon Web Services Billing Conductor using its API. For more
* information about using the Amazon Web Services Billing
* Conductor user interface, see the Amazon Web
* Services Billing Conductor User Guide.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AWSBillingConductor {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "billingconductor";
/**
*
* 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.
*
*
* @param associateAccountsRequest
* @return Result of the AssociateAccounts operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws ServiceLimitExceededException
* The request would cause a service limit to exceed.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.AssociateAccounts
* @see AWS API Documentation
*/
AssociateAccountsResult associateAccounts(AssociateAccountsRequest associateAccountsRequest);
/**
*
* Connects an array of PricingRuleArns
to a defined PricingPlan
. The maximum number
* PricingRuleArn
that can be associated in one call is 30.
*
*
* @param associatePricingRulesRequest
* @return Result of the AssociatePricingRules operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws ServiceLimitExceededException
* The request would cause a service limit to exceed.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.AssociatePricingRules
* @see AWS API Documentation
*/
AssociatePricingRulesResult associatePricingRules(AssociatePricingRulesRequest associatePricingRulesRequest);
/**
*
* Associates a batch of resources to a percentage custom line item.
*
*
* @param batchAssociateResourcesToCustomLineItemRequest
* @return Result of the BatchAssociateResourcesToCustomLineItem operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws ServiceLimitExceededException
* The request would cause a service limit to exceed.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.BatchAssociateResourcesToCustomLineItem
* @see AWS API Documentation
*/
BatchAssociateResourcesToCustomLineItemResult batchAssociateResourcesToCustomLineItem(
BatchAssociateResourcesToCustomLineItemRequest batchAssociateResourcesToCustomLineItemRequest);
/**
*
* Disassociates a batch of resources from a percentage custom line item.
*
*
* @param batchDisassociateResourcesFromCustomLineItemRequest
* @return Result of the BatchDisassociateResourcesFromCustomLineItem operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.BatchDisassociateResourcesFromCustomLineItem
* @see AWS API Documentation
*/
BatchDisassociateResourcesFromCustomLineItemResult batchDisassociateResourcesFromCustomLineItem(
BatchDisassociateResourcesFromCustomLineItemRequest batchDisassociateResourcesFromCustomLineItemRequest);
/**
*
* Creates a billing group that resembles a consolidated billing family that Amazon Web Services charges, based off
* of the predefined pricing plan computation.
*
*
* @param createBillingGroupRequest
* @return Result of the CreateBillingGroup operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws ServiceLimitExceededException
* The request would cause a service limit to exceed.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.CreateBillingGroup
* @see AWS API Documentation
*/
CreateBillingGroupResult createBillingGroup(CreateBillingGroupRequest createBillingGroupRequest);
/**
*
* 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.
*
*
* @param createCustomLineItemRequest
* @return Result of the CreateCustomLineItem operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws ServiceLimitExceededException
* The request would cause a service limit to exceed.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.CreateCustomLineItem
* @see AWS API Documentation
*/
CreateCustomLineItemResult createCustomLineItem(CreateCustomLineItemRequest createCustomLineItemRequest);
/**
*
* Creates a pricing plan that is used for computing Amazon Web Services charges for billing groups.
*
*
* @param createPricingPlanRequest
* @return Result of the CreatePricingPlan operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws ServiceLimitExceededException
* The request would cause a service limit to exceed.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.CreatePricingPlan
* @see AWS API Documentation
*/
CreatePricingPlanResult createPricingPlan(CreatePricingPlanRequest createPricingPlanRequest);
/**
*
* Creates a pricing rule can be associated to a pricing plan, or a set of pricing plans.
*
*
* @param createPricingRuleRequest
* @return Result of the CreatePricingRule operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws ServiceLimitExceededException
* The request would cause a service limit to exceed.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.CreatePricingRule
* @see AWS API Documentation
*/
CreatePricingRuleResult createPricingRule(CreatePricingRuleRequest createPricingRuleRequest);
/**
*
* Deletes a billing group.
*
*
* @param deleteBillingGroupRequest
* @return Result of the DeleteBillingGroup operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.DeleteBillingGroup
* @see AWS API Documentation
*/
DeleteBillingGroupResult deleteBillingGroup(DeleteBillingGroupRequest deleteBillingGroupRequest);
/**
*
* Deletes the custom line item identified by the given ARN in the current, or previous billing period.
*
*
* @param deleteCustomLineItemRequest
* @return Result of the DeleteCustomLineItem operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.DeleteCustomLineItem
* @see AWS API Documentation
*/
DeleteCustomLineItemResult deleteCustomLineItem(DeleteCustomLineItemRequest deleteCustomLineItemRequest);
/**
*
* Deletes a pricing plan. The pricing plan must not be associated with any billing groups to delete successfully.
*
*
* @param deletePricingPlanRequest
* @return Result of the DeletePricingPlan operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.DeletePricingPlan
* @see AWS API Documentation
*/
DeletePricingPlanResult deletePricingPlan(DeletePricingPlanRequest deletePricingPlanRequest);
/**
*
* Deletes the pricing rule that's identified by the input Amazon Resource Name (ARN).
*
*
* @param deletePricingRuleRequest
* @return Result of the DeletePricingRule operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.DeletePricingRule
* @see AWS API Documentation
*/
DeletePricingRuleResult deletePricingRule(DeletePricingRuleRequest deletePricingRuleRequest);
/**
*
* Removes the specified list of account IDs from the given billing group.
*
*
* @param disassociateAccountsRequest
* @return Result of the DisassociateAccounts operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.DisassociateAccounts
* @see AWS API Documentation
*/
DisassociateAccountsResult disassociateAccounts(DisassociateAccountsRequest disassociateAccountsRequest);
/**
*
* Disassociates a list of pricing rules from a pricing plan.
*
*
* @param disassociatePricingRulesRequest
* @return Result of the DisassociatePricingRules operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.DisassociatePricingRules
* @see AWS API Documentation
*/
DisassociatePricingRulesResult disassociatePricingRules(DisassociatePricingRulesRequest disassociatePricingRulesRequest);
/**
*
* 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.
*
*
* @param getBillingGroupCostReportRequest
* @return Result of the GetBillingGroupCostReport operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.GetBillingGroupCostReport
* @see AWS API Documentation
*/
GetBillingGroupCostReportResult getBillingGroupCostReport(GetBillingGroupCostReportRequest getBillingGroupCostReportRequest);
/**
*
* 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.
*
*
* @param listAccountAssociationsRequest
* @return Result of the ListAccountAssociations operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListAccountAssociations
* @see AWS API Documentation
*/
ListAccountAssociationsResult listAccountAssociations(ListAccountAssociationsRequest listAccountAssociationsRequest);
/**
*
* 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.
*
*
* @param listBillingGroupCostReportsRequest
* @return Result of the ListBillingGroupCostReports operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListBillingGroupCostReports
* @see AWS API Documentation
*/
ListBillingGroupCostReportsResult listBillingGroupCostReports(ListBillingGroupCostReportsRequest listBillingGroupCostReportsRequest);
/**
*
* 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.
*
*
* @param listBillingGroupsRequest
* @return Result of the ListBillingGroups operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListBillingGroups
* @see AWS API Documentation
*/
ListBillingGroupsResult listBillingGroups(ListBillingGroupsRequest listBillingGroupsRequest);
/**
*
* A paginated call to get a list of all custom line item versions.
*
*
* @param listCustomLineItemVersionsRequest
* @return Result of the ListCustomLineItemVersions operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.ListCustomLineItemVersions
* @see AWS API Documentation
*/
ListCustomLineItemVersionsResult listCustomLineItemVersions(ListCustomLineItemVersionsRequest listCustomLineItemVersionsRequest);
/**
*
* 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.
*
*
* @param listCustomLineItemsRequest
* @return Result of the ListCustomLineItems operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListCustomLineItems
* @see AWS API Documentation
*/
ListCustomLineItemsResult listCustomLineItems(ListCustomLineItemsRequest listCustomLineItemsRequest);
/**
*
* 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.
*
*
* @param listPricingPlansRequest
* @return Result of the ListPricingPlans operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.ListPricingPlans
* @see AWS API Documentation
*/
ListPricingPlansResult listPricingPlans(ListPricingPlansRequest listPricingPlansRequest);
/**
*
* A list of the pricing plans that are associated with a pricing rule.
*
*
* @param listPricingPlansAssociatedWithPricingRuleRequest
* @return Result of the ListPricingPlansAssociatedWithPricingRule operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListPricingPlansAssociatedWithPricingRule
* @see AWS API Documentation
*/
ListPricingPlansAssociatedWithPricingRuleResult listPricingPlansAssociatedWithPricingRule(
ListPricingPlansAssociatedWithPricingRuleRequest listPricingPlansAssociatedWithPricingRuleRequest);
/**
*
* Describes a pricing rule that can be associated to a pricing plan, or set of pricing plans.
*
*
* @param listPricingRulesRequest
* @return Result of the ListPricingRules operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @sample AWSBillingConductor.ListPricingRules
* @see AWS API Documentation
*/
ListPricingRulesResult listPricingRules(ListPricingRulesRequest listPricingRulesRequest);
/**
*
* Lists the pricing rules that are associated with a pricing plan.
*
*
* @param listPricingRulesAssociatedToPricingPlanRequest
* @return Result of the ListPricingRulesAssociatedToPricingPlan operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListPricingRulesAssociatedToPricingPlan
* @see AWS API Documentation
*/
ListPricingRulesAssociatedToPricingPlanResult listPricingRulesAssociatedToPricingPlan(
ListPricingRulesAssociatedToPricingPlanRequest listPricingRulesAssociatedToPricingPlanRequest);
/**
*
* List the resources that are associated to a custom line item.
*
*
* @param listResourcesAssociatedToCustomLineItemRequest
* @return Result of the ListResourcesAssociatedToCustomLineItem operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListResourcesAssociatedToCustomLineItem
* @see AWS API Documentation
*/
ListResourcesAssociatedToCustomLineItemResult listResourcesAssociatedToCustomLineItem(
ListResourcesAssociatedToCustomLineItemRequest listResourcesAssociatedToCustomLineItemRequest);
/**
*
* A list the tags for a resource.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.ListTagsForResource
* @see AWS API Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* 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.
*
*
* @param tagResourceRequest
* @return Result of the TagResource operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.TagResource
* @see AWS
* API Documentation
*/
TagResourceResult tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Deletes specified tags from a resource.
*
*
* @param untagResourceRequest
* @return Result of the UntagResource operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.UntagResource
* @see AWS
* API Documentation
*/
UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest);
/**
*
* This updates an existing billing group.
*
*
* @param updateBillingGroupRequest
* @return Result of the UpdateBillingGroup operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.UpdateBillingGroup
* @see AWS API Documentation
*/
UpdateBillingGroupResult updateBillingGroup(UpdateBillingGroupRequest updateBillingGroupRequest);
/**
*
* Update an existing custom line item in the current or previous billing period.
*
*
* @param updateCustomLineItemRequest
* @return Result of the UpdateCustomLineItem operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.UpdateCustomLineItem
* @see AWS API Documentation
*/
UpdateCustomLineItemResult updateCustomLineItem(UpdateCustomLineItemRequest updateCustomLineItemRequest);
/**
*
* This updates an existing pricing plan.
*
*
* @param updatePricingPlanRequest
* @return Result of the UpdatePricingPlan operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.UpdatePricingPlan
* @see AWS API Documentation
*/
UpdatePricingPlanResult updatePricingPlan(UpdatePricingPlanRequest updatePricingPlanRequest);
/**
*
* Updates an existing pricing rule.
*
*
* @param updatePricingRuleRequest
* @return Result of the UpdatePricingRule operation returned by the service.
* @throws ThrottlingException
* The request was denied due to request throttling.
* @throws ConflictException
* You can cause an inconsistent state by updating or deleting a resource.
* @throws AccessDeniedException
* You do not have sufficient access to perform this action.
* @throws ValidationException
* The input doesn't match with the constraints specified by Amazon Web Services.
* @throws InternalServerException
* An unexpected error occurred while processing a request.
* @throws ResourceNotFoundException
* The request references a resource that doesn't exist.
* @sample AWSBillingConductor.UpdatePricingRule
* @see AWS API Documentation
*/
UpdatePricingRuleResult updatePricingRule(UpdatePricingRuleRequest updatePricingRuleRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}