Cancels a pending transfer for the specified certificate.
Note Only the transfer source account can use this operation to cancel a transfer. (Transfer destinations can use RejectCertificateTransfer instead.) After transfer, IoT returns the certificate to the source account in the INACTIVE state. After the destination account has accepted the transfer, the transfer cannot be cancelled.
After a certificate transfer is cancelled, the status of the certificate changes from PENDING_TRANSFER to INACTIVE.
Requires permission to access the CancelCertificateTransfer action.
Parameters:
-
certificate_id
(CertificateId)
–
The ID of the certificate. (The last part of the certificate ARN contains the certificate ID.)
Raises:
Source code in docs_src/capo_iot/_services/async_io_t.py
| async def cancel_certificate_transfer(
self,
certificate_id: "capo_iot.types.certificate_id.CertificateId",
*,
config_overrides: Optional[AsyncIoTClientConfig] = None,
) -> None:
"""<p>Cancels a pending transfer for the specified certificate.</p> <p> <b>Note</b> Only the transfer source account can use this operation to cancel a transfer. (Transfer destinations can use <a>RejectCertificateTransfer</a> instead.) After transfer, IoT returns the certificate to the source account in the INACTIVE state. After the destination account has accepted the transfer, the transfer cannot be cancelled.</p> <p>After a certificate transfer is cancelled, the status of the certificate changes from PENDING_TRANSFER to INACTIVE.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">CancelCertificateTransfer</a> action.</p>
Args:
certificate_id: <p>The ID of the certificate. (The last part of the certificate ARN contains the certificate ID.)</p>
Raises:
capo_iot.errors.internal_failure_exception.InternalFailureException: <p>An unexpected error has occurred.</p>
capo_iot.errors.invalid_request_exception.InvalidRequestException: <p>The request is not valid.</p>
capo_iot.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
capo_iot.errors.service_unavailable_exception.ServiceUnavailableException: <p>The service is temporarily unavailable.</p>
capo_iot.errors.throttling_exception.ThrottlingException: <p>The rate exceeds the limit.</p>
capo_iot.errors.transfer_already_completed_exception.TransferAlreadyCompletedException: <p>You can't revert the certificate transfer because the transfer is already complete.</p>
capo_iot.errors.unauthorized_exception.UnauthorizedException: <p>You are not authorized to perform this operation.</p>
capo_iot.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_iot.types.cancel_certificate_transfer_request.CancelCertificateTransferRequest]",
) -> AsyncOperationResponse[None]:
import capo_iot._operations.aws_iot_service.cancel_certificate_transfer
(
output,
http_response,
) = await capo_iot._operations.aws_iot_service.cancel_certificate_transfer.async_cancel_certificate_transfer(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("CancelCertificateTransfer")
)
input_: capo_iot.types.cancel_certificate_transfer_request.CancelCertificateTransferRequest = {
"certificate_id": certificate_id
}
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output
|