Deletes all versions of a bot, including the Draft version. To delete a specific version, use the DeleteBotVersion operation.
When you delete a bot, all of the resources contained in the bot are also deleted. Deleting a bot removes all locales, intents, slot, and slot types defined for the bot.
If a bot has an alias, the DeleteBot operation returns a ResourceInUseException exception. If you want to delete the bot and the alias, set the skipResourceInUseCheck parameter to true.
Parameters:
-
bot_id
(Id)
–
The identifier of the bot to delete.
-
skip_resource_in_use_check
(Optional[SkipResourceInUseCheck], default:
None
)
–
By default, Amazon Lex checks if any other resource, such as an alias or bot network, is using the bot version before it is deleted and throws a ResourceInUseException exception if the bot is being used by another resource. Set this parameter to true to skip this check and remove the bot even if it is being used by another resource.
Raises:
-
ConflictException
–
The action that you tried to perform couldn't be completed because the resource is in a conflicting state. For example, deleting a bot that is in the CREATING state. Try your request again.
-
InternalServerException
–
The service encountered an unexpected condition. Try your request again.
-
PreconditionFailedException
–
Your request couldn't be completed because one or more request fields aren't valid. Check the fields in your request and try again.
-
ServiceQuotaExceededException
–
You have reached a quota for your bot.
-
ThrottlingException
–
Your request rate is too high. Reduce the frequency of requests.
-
ValidationException
–
One of the input parameters in your request isn't valid. Check the parameters and try your request again.
-
UnknownServiceError
–
The service returned an error code this client does not model.
Source code in docs_src/capo_lex_models_v2/_services/lex_models_v2.py
| def delete_bot(
self,
bot_id: "capo_lex_models_v2.types.id.Id",
*,
config_overrides: Optional[LexModelsV2ClientConfig] = None,
skip_resource_in_use_check: Optional[
"capo_lex_models_v2.types.skip_resource_in_use_check.SkipResourceInUseCheck"
] = None,
) -> "capo_lex_models_v2.types.delete_bot_response.DeleteBotResponse":
"""<p>Deletes all versions of a bot, including the <code>Draft</code> version. To delete a specific version, use the <code>DeleteBotVersion</code> operation.</p> <p>When you delete a bot, all of the resources contained in the bot are also deleted. Deleting a bot removes all locales, intents, slot, and slot types defined for the bot.</p> <p>If a bot has an alias, the <code>DeleteBot</code> operation returns a <code>ResourceInUseException</code> exception. If you want to delete the bot and the alias, set the <code>skipResourceInUseCheck</code> parameter to <code>true</code>.</p>
Args:
bot_id: <p>The identifier of the bot to delete. </p>
skip_resource_in_use_check: <p>By default, Amazon Lex checks if any other resource, such as an alias or bot network, is using the bot version before it is deleted and throws a <code>ResourceInUseException</code> exception if the bot is being used by another resource. Set this parameter to <code>true</code> to skip this check and remove the bot even if it is being used by another resource.</p>
Raises:
capo_lex_models_v2.errors.conflict_exception.ConflictException: <p>The action that you tried to perform couldn't be completed because the resource is in a conflicting state. For example, deleting a bot that is in the CREATING state. Try your request again. </p>
capo_lex_models_v2.errors.internal_server_exception.InternalServerException: <p>The service encountered an unexpected condition. Try your request again.</p>
capo_lex_models_v2.errors.precondition_failed_exception.PreconditionFailedException: <p>Your request couldn't be completed because one or more request fields aren't valid. Check the fields in your request and try again.</p>
capo_lex_models_v2.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>You have reached a quota for your bot. </p>
capo_lex_models_v2.errors.throttling_exception.ThrottlingException: <p>Your request rate is too high. Reduce the frequency of requests.</p>
capo_lex_models_v2.errors.validation_exception.ValidationException: <p>One of the input parameters in your request isn't valid. Check the parameters and try your request again.</p>
capo_lex_models_v2.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_lex_models_v2.types.delete_bot_request.DeleteBotRequest]",
) -> OperationResponse[
"capo_lex_models_v2.types.delete_bot_response.DeleteBotResponse"
]:
import capo_lex_models_v2._operations.lex_model_building_service_v2.delete_bot
output, http_response = (
capo_lex_models_v2._operations.lex_model_building_service_v2.delete_bot.delete_bot(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("DeleteBot")
)
input_: capo_lex_models_v2.types.delete_bot_request.DeleteBotRequest = {
"bot_id": bot_id
}
if skip_resource_in_use_check is not None:
input_["skip_resource_in_use_check"] = skip_resource_in_use_check
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output
|