Skip to content

purchase_capacity_block_extension async

purchase_capacity_block_extension(
    *,
    config_overrides: Optional[AsyncEC2ClientConfig] = None,
    capacity_block_extension_offering_id: Optional[OfferingId] = None,
    capacity_reservation_id: Optional[CapacityReservationId] = None,
    dry_run: Optional[Boolean] = None,
) -> PurchaseCapacityBlockExtensionResult

Purchase the Capacity Block extension for use with your account. You must specify the ID of the Capacity Block extension offering you are purchasing.

Parameters:

  • capacity_block_extension_offering_id (Optional[OfferingId], default: None ) –

    The ID of the Capacity Block extension offering to purchase.

  • capacity_reservation_id (Optional[CapacityReservationId], default: None ) –

    The ID of the Capacity reservation to be extended.

  • dry_run (Optional[Boolean], default: None ) –

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

Raises:

Source code in docs_src/capo_ec2/_services/async_ec2.py
async def purchase_capacity_block_extension(
    self,
    *,
    config_overrides: Optional[AsyncEC2ClientConfig] = None,
    capacity_block_extension_offering_id: Optional[
        "capo_ec2.types.offering_id.OfferingId"
    ] = None,
    capacity_reservation_id: Optional[
        "capo_ec2.types.capacity_reservation_id.CapacityReservationId"
    ] = None,
    dry_run: Optional["capo_ec2.types.boolean.Boolean"] = None,
) -> "capo_ec2.types.purchase_capacity_block_extension_result.PurchaseCapacityBlockExtensionResult":
    """<p>Purchase the Capacity Block extension for use with your account. You must specify the ID of the Capacity Block extension offering you are purchasing.</p>

    Args:
        capacity_block_extension_offering_id: <p>The ID of the Capacity Block extension offering to purchase.</p>
        capacity_reservation_id: <p>The ID of the Capacity reservation to be extended.</p>
        dry_run: <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>

    Raises:
        capo_ec2.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_ec2.types.purchase_capacity_block_extension_request.PurchaseCapacityBlockExtensionRequest]",
    ) -> AsyncOperationResponse[
        "capo_ec2.types.purchase_capacity_block_extension_result.PurchaseCapacityBlockExtensionResult"
    ]:
        import capo_ec2._operations.amazon_ec2.purchase_capacity_block_extension

        (
            output,
            http_response,
        ) = await capo_ec2._operations.amazon_ec2.purchase_capacity_block_extension.async_purchase_capacity_block_extension(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("PurchaseCapacityBlockExtension")
    )
    input_: capo_ec2.types.purchase_capacity_block_extension_request.PurchaseCapacityBlockExtensionRequest = {}
    if capacity_block_extension_offering_id is not None:
        input_["capacity_block_extension_offering_id"] = (
            capacity_block_extension_offering_id
        )
    if capacity_reservation_id is not None:
        input_["capacity_reservation_id"] = capacity_reservation_id
    if dry_run is not None:
        input_["dry_run"] = dry_run

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output