internal async Task <bool> AddFreeLicense(uint subID) { if (subID == 0) { Bot.ArchiLogger.LogNullError(nameof(subID)); return(false); } if (!await RefreshSessionIfNeeded().ConfigureAwait(false)) { return(false); } string sessionID = WebBrowser.CookieContainer.GetCookieValue(SteamCommunityURL, "sessionid"); if (string.IsNullOrEmpty(sessionID)) { Bot.ArchiLogger.LogNullError(nameof(sessionID)); return(false); } string request = SteamStoreURL + "/checkout/addfreelicense"; Dictionary <string, string> data = new Dictionary <string, string>(3) { { "sessionid", sessionID }, { "subid", subID.ToString() }, { "action", "add_to_cart" } }; HtmlDocument htmlDocument = await WebBrowser.UrlPostToHtmlDocumentRetry(request, data).ConfigureAwait(false); return(htmlDocument?.DocumentNode.SelectSingleNode("//div[@class='add_free_content_success_area']") != null); }