Delete usage that you have created in a Bill Scenario. You can only delete usage that you had added and cannot model deletion (or removal) of a existing usage. If you want model removal of an existing usage, see BatchUpdateBillScenarioUsageModification.
The BatchDeleteBillScenarioUsageModification operation doesn't have its own IAM permission. To authorize this operation for Amazon Web Services principals, include the permission bcm-pricing-calculator:DeleteBillScenarioUsageModification in your policies.
Parameters:
Raises:
Source code in docs_src/capo_bcm_pricing_calculator/_services/async_bcm_pricing_calculator.py
| async def batch_delete_bill_scenario_usage_modification(
self,
bill_scenario_id: "capo_bcm_pricing_calculator.types.resource_id.ResourceId",
ids: "capo_bcm_pricing_calculator.types.batch_delete_bill_scenario_usage_modification_entries.BatchDeleteBillScenarioUsageModificationEntries",
*,
config_overrides: Optional[AsyncBCMPricingCalculatorClientConfig] = None,
) -> "capo_bcm_pricing_calculator.types.batch_delete_bill_scenario_usage_modification_response.BatchDeleteBillScenarioUsageModificationResponse":
"""<p> Delete usage that you have created in a Bill Scenario. You can only delete usage that you had added and cannot model deletion (or removal) of a existing usage. If you want model removal of an existing usage, see <a href="https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_AWSBCMPricingCalculator_BatchUpdateBillScenarioUsageModification.html"> BatchUpdateBillScenarioUsageModification</a>. </p> <note> <p>The <code>BatchDeleteBillScenarioUsageModification</code> operation doesn't have its own IAM permission. To authorize this operation for Amazon Web Services principals, include the permission <code>bcm-pricing-calculator:DeleteBillScenarioUsageModification</code> in your policies.</p> </note>
Args:
bill_scenario_id: <p> The ID of the Bill Scenario for which you want to delete the modeled usage. </p>
ids: <p> List of usage that you want to delete from the Bill Scenario. </p>
Raises:
capo_bcm_pricing_calculator.errors.access_denied_exception.AccessDeniedException: <p> You do not have sufficient access to perform this action. </p>
capo_bcm_pricing_calculator.errors.internal_server_exception.InternalServerException: <p> An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support. </p>
capo_bcm_pricing_calculator.errors.throttling_exception.ThrottlingException: <p> The request was denied due to request throttling. </p>
capo_bcm_pricing_calculator.errors.validation_exception.ValidationException: <p> The input provided fails to satisfy the constraints specified by an Amazon Web Services service. </p>
capo_bcm_pricing_calculator.errors.conflict_exception.ConflictException: <p> The request could not be processed because of conflict in the current state of the resource. </p>
capo_bcm_pricing_calculator.errors.data_unavailable_exception.DataUnavailableException: <p> The requested data is currently unavailable. </p>
capo_bcm_pricing_calculator.errors.resource_not_found_exception.ResourceNotFoundException: <p> The specified resource was not found. </p>
capo_bcm_pricing_calculator.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p> The request would cause you to exceed your service quota. </p>
capo_bcm_pricing_calculator.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_bcm_pricing_calculator.types.batch_delete_bill_scenario_usage_modification_request.BatchDeleteBillScenarioUsageModificationRequest]",
) -> AsyncOperationResponse[
"capo_bcm_pricing_calculator.types.batch_delete_bill_scenario_usage_modification_response.BatchDeleteBillScenarioUsageModificationResponse"
]:
import capo_bcm_pricing_calculator._operations.awsbcm_pricing_calculator.batch_delete_bill_scenario_usage_modification
(
output,
http_response,
) = await capo_bcm_pricing_calculator._operations.awsbcm_pricing_calculator.batch_delete_bill_scenario_usage_modification.async_batch_delete_bill_scenario_usage_modification(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides,
OperationLogging("BatchDeleteBillScenarioUsageModification"),
)
input_: capo_bcm_pricing_calculator.types.batch_delete_bill_scenario_usage_modification_request.BatchDeleteBillScenarioUsageModificationRequest = {
"bill_scenario_id": bill_scenario_id,
"ids": ids,
}
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output
|