/// <summary> /// /// </summary> public GetSellerListCall() { ApiRequest = new GetSellerListRequestType(); }
/// <summary> /// /// </summary> /// <param name="ApiContext">The <see cref="ApiCall.ApiContext"/> for this API Call of type <see cref="ApiContext"/>.</param> public GetSellerListCall(ApiContext ApiContext) { ApiRequest = new GetSellerListRequestType(); this.ApiContext = ApiContext; }
public List<Seller_Item> GetUserItems(string userToken) { string callname = "GetSellerList"; #region Initialise Needed Variables //Get the Server to use (Sandbox or Production) string serverUrl = ConfigurationManager.AppSettings["TradingService"]; //SiteID = 0 (US) - UK = 3, Canada = 2, Australia = 15, .... string siteID = "15";/*Updated by javed 27-11-2013 --- Previous value was 0*/ eBayAPIInterfaceService service = new eBayAPIInterfaceService(); string requestURL = serverUrl + "?callname=" + callname + "&siteid=" + siteID + "&appid=" + AppID + "&version=" + version + "&routing=default"; service.Url = requestURL; // Set credentials service.RequesterCredentials = new CustomSecurityHeaderType(); service.RequesterCredentials.Credentials = new UserIdPasswordType(); service.RequesterCredentials.Credentials.AppId = AppID; service.RequesterCredentials.Credentials.DevId = DevID; service.RequesterCredentials.Credentials.AuthCert = CertID; service.RequesterCredentials.eBayAuthToken = userToken; #endregion GetSellerListRequestType request = new GetSellerListRequestType(); request.WarningLevel = WarningLevelCodeType.High; request.EndTimeFrom = DateTime.Today; request.EndTimeFromSpecified = true; request.EndTimeTo = DateTime.Today.AddDays(120); request.EndTimeToSpecified = true; request.Version = version; request.DetailLevel = new DetailLevelCodeType[] { DetailLevelCodeType.ItemReturnDescription, DetailLevelCodeType.ItemReturnAttributes}; request.Pagination = new PaginationType(); request.Pagination.PageNumber = 1; request.Pagination.PageNumberSpecified = true; request.Pagination.EntriesPerPage = 200; request.Pagination.EntriesPerPageSpecified = true; try { List<Seller_Item> items = new List<Seller_Item>(); bool moreItem = true; while (moreItem == true) { GetSellerListResponseType response = service.GetSellerList(request); foreach (var s in response.ItemArray) { try { Seller_Item si = new Seller_Item() { CustomLabel = s.SKU, PictureURL = s.PictureDetails != null && s.PictureDetails.PictureURL != null ? s.PictureDetails.PictureURL[0] : string.Empty, ItemViewURL = s.ListingDetails.ViewItemURL, BinPrice = s.ListingDetails.ConvertedBuyItNowPrice.Value, CurrentPrice = s.ListingDetails.ConvertedStartPrice.Value, Currency = s.ListingDetails.ConvertedStartPrice.currencyID != null ? s.ListingDetails.ConvertedStartPrice.currencyID.ToString() : string.Empty, EndDate = s.ListingDetails.EndTime, StartDate = s.ListingDetails.StartTime, ItemID = s.ItemID, ItemName = s.Title, IsPromoItem = s.SellingStatus.PromotionalSaleDetails != null && s.SellingStatus.PromotionalSaleDetails.StartTime.Date <= System.DateTime.Today.Date && s.SellingStatus.PromotionalSaleDetails.EndTime.Date >= System.DateTime.Today.Date ? true : false, Height = s.ShippingPackageDetails.PackageDepth != null ? (decimal?)s.ShippingPackageDetails.PackageDepth.Value : null, Length = s.ShippingPackageDetails.PackageLength != null ? (decimal?)s.ShippingPackageDetails.PackageLength.Value : null, Width = s.ShippingPackageDetails.PackageWidth != null ? (decimal?)s.ShippingPackageDetails.PackageWidth.Value : null, Weight = s.ShippingPackageDetails.WeightMajor != null ? (decimal?)s.ShippingPackageDetails.WeightMajor.Value : null, WeightMinor = s.ShippingPackageDetails.WeightMinor != null ? (decimal?)s.ShippingPackageDetails.WeightMinor.Value : null, CategoryID = s.PrimaryCategory.CategoryID, CategoryName = s.PrimaryCategory.CategoryName, Quantity = s.Quantity, Discription = s.Description, CountryCode = countryID, CountryShortCode = countryShortID, CurrentSales = s.SellingStatus.QuantitySold, QuantityAvailable = s.QuantityAvailable }; items.Add(si); } catch (Exception ex) { Logging.WriteLog(LogType.Critical, ex.ToString()); } } if (response.ItemArray.Count() == 200) request.Pagination.PageNumber += 1; else moreItem = false; } return items; //List<Seller_Item> items = response.ItemArray.Select(s => new Seller_Item //{ // CustomLabel = s.SKU, // //PictureURL = s.PictureDetails != null && s.PictureDetails.PictureURL != null ? s.PictureDetails.PictureURL[0] : string.Empty, // //ItemViewURL = s.ListingDetails.ViewItemURL, // BinPrice = s.ListingDetails.ConvertedBuyItNowPrice.Value, // CurrentPrice = s.ListingDetails.ConvertedStartPrice.Value, // Currency = s.ListingDetails.ConvertedStartPrice.currencyID != null ? s.ListingDetails.ConvertedStartPrice.currencyID.ToString() : string.Empty, // EndDate = s.ListingDetails.EndTime, // StartDate = s.ListingDetails.StartTime, // ItemID = s.ItemID, // ItemName = s.Title, // IsPromoItem = s.SellingStatus.PromotionalSaleDetails != null && s.SellingStatus.PromotionalSaleDetails.StartTime.Date <= System.DateTime.Today.Date && s.SellingStatus.PromotionalSaleDetails.EndTime.Date >= System.DateTime.Today.Date ? true : false, // Height = s.ShippingPackageDetails.PackageDepth != null ? (decimal?)s.ShippingPackageDetails.PackageDepth.Value : null, // Length = s.ShippingPackageDetails.PackageLength != null ? (decimal?)s.ShippingPackageDetails.PackageLength.Value : null, // Width = s.ShippingPackageDetails.PackageWidth != null ? (decimal?)s.ShippingPackageDetails.PackageWidth.Value : null, // //Weight = s.ShippingPackageDetails.WeightMajor != null ? (decimal?)s.ShippingPackageDetails.WeightMajor.Value : null, // //WeightMinor = s.ShippingPackageDetails.WeightMinor != null ? (decimal?)s.ShippingPackageDetails.WeightMinor.Value : null, // CategoryID = s.PrimaryCategory.CategoryID, // CategoryName = s.PrimaryCategory.CategoryName //}).ToList(); } catch (Exception ex) { if (ex.Message.ToLower().Contains("auth token")) throw new InvalidEbayCredentialsException(); else throw ex; } }
private void EndActiveAuctions(IEnumerable <Article> articles) { try { GetSellerListRequestType request = new GetSellerListRequestType(); request.Version = "0.1"; request.GranularityLevelSpecified = true; request.GranularityLevel = GranularityLevelCodeType.Coarse; // Setting the date-range filter. This call required either EndTimeFrom & EndTimeTo pair OR StartTimeFrom & StartTimeTo pair // as a required input parameter. request.EndTimeFromSpecified = true; request.EndTimeFrom = DateTime.Now.ToUniversalTime(); request.EndTimeToSpecified = true; request.EndTimeTo = DateTime.Now.AddDays(14).ToUniversalTime(); // Setting the Pagination which is a required input parameter for GetSellerList call PaginationType pagination = new PaginationType(); pagination.EntriesPerPageSpecified = true; pagination.EntriesPerPage = 200; pagination.PageNumberSpecified = true; pagination.PageNumber = 1; request.Pagination = pagination; GetSellerListResponseType response = new GetSellerListResponseType(); GetSellerListCall listApiCall = new GetSellerListCall(apiContext); response = (GetSellerListResponseType)listApiCall.ExecuteRequest(request); if (response.Ack == AckCodeType.Success) { EndItemsCall endApiCall = new EndItemsCall(apiContext); EndItemRequestContainerTypeCollection endItems = new EndItemRequestContainerTypeCollection(); foreach (ItemType item in response.ItemArray) { EndItemRequestContainerType endItem = new EndItemRequestContainerType(); endItem.EndingReason = EndReasonCodeType.NotAvailable; endItem.EndingReasonSpecified = true; endItem.MessageID = item.ItemID; endItem.ItemID = item.ItemID; endItems.Add(endItem); } if (endItems.Count > 0) { EndItemResponseContainerTypeCollection endResponse = endApiCall.EndItems(endItems); String errMsg = String.Empty; foreach (EndItemResponseContainerType item in endResponse) { errMsg += EvaluateErrorMessages(item.Errors); } if (errMsg != String.Empty) { Assert.Fail(errMsg); } } } else { String errMsg = EvaluateErrorMessages(response.Errors); if (errMsg != String.Empty) { Assert.Fail(errMsg); } } } catch (Exception ex) { Assert.Fail(ex.Message); } }
/// <summary> /// Check whether the recently added items exists and if they has the right, changed quantity /// </summary> /// <returns>ItemType object</returns> #region CheckRevicedItems private bool CheckRevicedItems() { Boolean ret = false; String errMsg = String.Empty; try { GetSellerListRequestType request = new GetSellerListRequestType(); // Setting the date-range filter. This call required either EndTimeFrom & EndTimeTo pair OR StartTimeFrom & StartTimeTo pair // as a required input parameter. request.EndTimeFromSpecified = true; request.EndTimeFrom = DateTime.Now.ToUniversalTime(); request.EndTimeToSpecified = true; request.EndTimeTo = DateTime.Now.AddDays(14).ToUniversalTime(); request.DetailLevel = new DetailLevelCodeTypeCollection() { DetailLevelCodeType.ReturnAll }; // Setting the Pagination which is a required input parameter for GetSellerList call PaginationType pagination = new PaginationType(); pagination.EntriesPerPageSpecified = true; pagination.EntriesPerPage = 5; pagination.PageNumberSpecified = true; pagination.PageNumber = 1; request.Pagination = pagination; //Set SKUs we're looking for StringCollection skus = new StringCollection(); foreach (Article article in articles) { skus.Add(article.ArticleNumber); } request.SKUArray = skus; GetSellerListResponseType response = new GetSellerListResponseType(); GetSellerListCall listApiCall = new GetSellerListCall(apiContext); response = (GetSellerListResponseType)listApiCall.ExecuteRequest(request); if (response.Ack == AckCodeType.Success) { foreach (ItemType item in response.ItemArray) { if (item.Quantity != 88) { errMsg += "Wrong quantity of item no. " + item.ItemID; } } } } catch (Exception ex) { Assert.Fail(ex.Message); } if (errMsg == String.Empty) { ret = true; } else { Assert.Fail("CheckRevicedItems failed: " + errMsg); } return(ret); }