def METHOD_NAME(self, request: Request, project, rule_id) -> Response:
    rule = self.get_rule(rule_id)
    # find if there is a mute for all that I can remove
    shared_snooze = None
    deletion_type = None
    kwargs = {self.rule_field: rule, "user_id": None}
    try:
        shared_snooze = RuleSnooze.objects.get(**kwargs)
    except RuleSnooze.DoesNotExist:
        pass
    # if user can edit then delete it
    if shared_snooze and can_edit_alert_rule(rule, project.organization, None, request.user):
        shared_snooze.METHOD_NAME()
        deletion_type = "everyone"
    # next check if there is a mute for me that I can remove
    kwargs = {self.rule_field: rule, "user_id": request.user.id}
    my_snooze = None
    try:
        my_snooze = RuleSnooze.objects.get(**kwargs)
    except RuleSnooze.DoesNotExist:
        pass
    else:
        my_snooze.METHOD_NAME()
        # everyone takes priority over me
        if not deletion_type:
            deletion_type = "me"
    if deletion_type:
        analytics.record(
            "rule.unsnoozed",
            user_id=request.user.id,
            organization_id=project.organization_id,
            project_id=project.id,
            rule_id=rule_id,
            rule_type=self.rule_field,
            target=deletion_type,
        )
        return Response(status=status.HTTP_204_NO_CONTENT)
    # didn't find a match but there is a shared snooze
    if shared_snooze:
        raise PermissionDenied(
            detail="Requesting user cannot unmute this rule.", code=status.HTTP_403_FORBIDDEN
        )
    # no snooze at all found
    return Response(
        {"detail": "This rulesnooze object doesn't exist."},
        status=status.HTTP_404_NOT_FOUND,
    )