Skip to content

delete_web_function async

delete_web_function(
    function_name: FunctionName,
    *,
    config_overrides: Optional[AsyncLambdaWebClientConfig] = None,
) -> None

Deletes a web function and all of its associated revisions and endpoints.

To use this operation, you must have the DeleteWebFunction permission on the web function. You don't need the DeleteWebFunctionRevision or DeleteWebFunctionEndpoint permission.

Parameters:

  • function_name (FunctionName) –

    The web function to delete.

    You can specify either of the following:

    • The function name, for example my-function.

    • The function ARN.

    The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

Raises:

  • AccessDeniedException –

    You don't have permission to perform this operation. Check the IAM policies for your identity and any resource-based policy on the web function.

  • ConflictException –

    The request conflicts with the current state of the resource. For example, the resource is being modified by another request, you tried to delete a revision that is serving traffic on an endpoint, or the policy revision ID that you specified doesn't match the current policy. Resolve the conflict and try again.

  • InternalServerException –

    The request failed because of an internal error in the service. Retry the request. If the error persists, open a support case.

  • ResourceNotFoundException –

    The specified web function, revision, endpoint, or resource-based policy doesn't exist. Verify the resource identifier and try again.

  • ThrottlingException –

    The request was denied because it exceeded the request rate that Lambda allows for your account. Reduce the frequency of requests and retry with exponential backoff.

  • ValidationException –

    The request failed validation because a parameter was missing, malformed, or outside the allowed range. Check the request parameters and try again.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_lambda_web/_services/async_lambda_web.py
async def delete_web_function(
    self,
    function_name: "capo_lambda_web.types.function_name.FunctionName",
    *,
    config_overrides: Optional[AsyncLambdaWebClientConfig] = None,
) -> None:
    """<p>Deletes a web function and all of its associated revisions and endpoints.</p> <p>To use this operation, you must have the <code>DeleteWebFunction</code> permission on the web function. You don't need the <code>DeleteWebFunctionRevision</code> or <code>DeleteWebFunctionEndpoint</code> permission.</p>

    Args:
        function_name: <p>The web function to delete.</p> <p>You can specify either of the following:</p> <ul> <li> <p>The function name, for example <code>my-function</code>.</p> </li> <li> <p>The function ARN.</p> </li> </ul> <p>The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.</p>

    Raises:
        capo_lambda_web.errors.access_denied_exception.AccessDeniedException: <p>You don't have permission to perform this operation. Check the IAM policies for your identity and any resource-based policy on the web function.</p>
        capo_lambda_web.errors.conflict_exception.ConflictException: <p>The request conflicts with the current state of the resource. For example, the resource is being modified by another request, you tried to delete a revision that is serving traffic on an endpoint, or the policy revision ID that you specified doesn't match the current policy. Resolve the conflict and try again.</p>
        capo_lambda_web.errors.internal_server_exception.InternalServerException: <p>The request failed because of an internal error in the service. Retry the request. If the error persists, open a support case.</p>
        capo_lambda_web.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified web function, revision, endpoint, or resource-based policy doesn't exist. Verify the resource identifier and try again.</p>
        capo_lambda_web.errors.throttling_exception.ThrottlingException: <p>The request was denied because it exceeded the request rate that Lambda allows for your account. Reduce the frequency of requests and retry with exponential backoff.</p>
        capo_lambda_web.errors.validation_exception.ValidationException: <p>The request failed validation because a parameter was missing, malformed, or outside the allowed range. Check the request parameters and try again.</p>
        capo_lambda_web.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_lambda_web.types.delete_web_function_request.DeleteWebFunctionRequest]",
    ) -> AsyncOperationResponse[None]:
        import capo_lambda_web._operations.lambda_web.delete_web_function

        (
            output,
            http_response,
        ) = await capo_lambda_web._operations.lambda_web.delete_web_function.async_delete_web_function(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DeleteWebFunction")
    )
    input_: capo_lambda_web.types.delete_web_function_request.DeleteWebFunctionRequest = {
        "function_name": function_name
    }

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