Skip to content

update_data_lake_exception_subscription

update_data_lake_exception_subscription(
    subscription_protocol: SubscriptionProtocol,
    notification_endpoint: SafeString,
    *,
    config_overrides: Optional[SecurityLakeClientConfig] = None,
    exception_time_to_live: Optional[int] = None,
) -> UpdateDataLakeExceptionSubscriptionResponse

Updates the specified notification subscription in Amazon Security Lake for the organization you specify.

Parameters:

  • subscription_protocol (SubscriptionProtocol) –

    The subscription protocol to which exception messages are posted.

  • notification_endpoint (SafeString) –

    The account that is subscribed to receive exception notifications.

  • exception_time_to_live (Optional[int], default: None ) –

    The time-to-live (TTL) for the exception message to remain. It is the duration of time until which the exception message remains.

Raises:

  • AccessDeniedException –

    You do not have sufficient access to perform this action. Access denied errors appear when Amazon Security Lake explicitly or implicitly denies an authorization request. An explicit denial occurs when a policy contains a Deny statement for the specific Amazon Web Services action. An implicit denial occurs when there is no applicable Deny statement and also no applicable Allow statement.

  • BadRequestException –

    The request is malformed or contains an error such as an invalid parameter value or a missing required parameter.

  • ConflictException –

    Occurs when a conflict with a previous successful write is detected. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.

  • InternalServerException –

    Internal service exceptions are sometimes caused by transient issues. Before you start troubleshooting, perform the operation again.

  • ResourceNotFoundException –

    The resource could not be found.

  • ThrottlingException –

    The limit on the number of requests per second was exceeded.

  • UnknownServiceError –

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

Source code in docs_src/capo_securitylake/_services/security_lake.py
def update_data_lake_exception_subscription(
    self,
    subscription_protocol: "capo_securitylake.types.subscription_protocol.SubscriptionProtocol",
    notification_endpoint: "capo_securitylake.types.safe_string.SafeString",
    *,
    config_overrides: Optional[SecurityLakeClientConfig] = None,
    exception_time_to_live: Optional[int] = None,
) -> "capo_securitylake.types.update_data_lake_exception_subscription_response.UpdateDataLakeExceptionSubscriptionResponse":
    """<p>Updates the specified notification subscription in Amazon Security Lake for the organization you specify.</p>

    Args:
        subscription_protocol: <p>The subscription protocol to which exception messages are posted.</p>
        notification_endpoint: <p>The account that is subscribed to receive exception notifications.</p>
        exception_time_to_live: <p>The time-to-live (TTL) for the exception message to remain. It is the duration of time until which the exception message remains. </p>

    Raises:
        capo_securitylake.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action. Access denied errors appear when Amazon Security Lake explicitly or implicitly denies an authorization request. An explicit denial occurs when a policy contains a Deny statement for the specific Amazon Web Services action. An implicit denial occurs when there is no applicable Deny statement and also no applicable Allow statement.</p>
        capo_securitylake.errors.bad_request_exception.BadRequestException: <p>The request is malformed or contains an error such as an invalid parameter value or a missing required parameter.</p>
        capo_securitylake.errors.conflict_exception.ConflictException: <p>Occurs when a conflict with a previous successful write is detected. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.</p>
        capo_securitylake.errors.internal_server_exception.InternalServerException: <p>Internal service exceptions are sometimes caused by transient issues. Before you start troubleshooting, perform the operation again.</p>
        capo_securitylake.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource could not be found.</p>
        capo_securitylake.errors.throttling_exception.ThrottlingException: <p>The limit on the number of requests per second was exceeded.</p>
        capo_securitylake.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_securitylake.types.update_data_lake_exception_subscription_request.UpdateDataLakeExceptionSubscriptionRequest]",
    ) -> OperationResponse[
        "capo_securitylake.types.update_data_lake_exception_subscription_response.UpdateDataLakeExceptionSubscriptionResponse"
    ]:
        import capo_securitylake._operations.security_lake.update_data_lake_exception_subscription

        output, http_response = (
            capo_securitylake._operations.security_lake.update_data_lake_exception_subscription.update_data_lake_exception_subscription(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateDataLakeExceptionSubscription")
    )
    input_: capo_securitylake.types.update_data_lake_exception_subscription_request.UpdateDataLakeExceptionSubscriptionRequest = {
        "subscription_protocol": subscription_protocol,
        "notification_endpoint": notification_endpoint,
    }
    if exception_time_to_live is not None:
        input_["exception_time_to_live"] = exception_time_to_live

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output