public boolean subs(String user, String tag, boolean unsubscribe) {
        clearResultMetaInformation();
        boolean subscribeResult = false;
        StringBuffer result = new StringBuffer();

        GetMethod get;
        if (!unsubscribe) {
            get = new GetMethod(apiEndpoint + DeliciousConstants.INBOX_SUB);
        } else {
            get = new GetMethod(apiEndpoint + DeliciousConstants.INBOX_UNSUB);
        }
        get.setDoAuthentication(true);

        List params = new ArrayList();

        NameValuePair userParam = new NameValuePair(DeliciousConstants.USER_PARAMETER, user);
        params.add(userParam);
        if (!DeliciousUtils.checkNullOrBlank(tag)) {
            NameValuePair tagParam = new NameValuePair(DeliciousConstants.TAG_PARAMETER, tag);
            params.add(tagParam);
        }

        if (params.size() > 0) {
            get.setQueryString((NameValuePair[]) params.toArray(new NameValuePair[params.size()]));
        }

        try {
            httpResult = httpClient.executeMethod(get);
            checkNotAuthorized(httpResult);
            logger.debug("Result: " + httpResult);
            if (get.getResponseBodyAsStream() != null) {
                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(get.getResponseBodyAsStream(), DeliciousUtils.UTF_8));
                String input;
                while ((input = bufferedReader.readLine()) != null) {
                    result.append(input).append(DeliciousUtils.LINE_SEPARATOR);
                }

                get.releaseConnection();

                if (result.indexOf(DeliciousConstants.CODE_OK) != -1) {
                    subscribeResult = true;
                }
            }
        } catch (IOException e) {
            logger.error(e);
        }

        return subscribeResult;
    }