/// <summary> /// Get a list of all categories and IDs /// This will help with setting the leaf category for you item. /// </summary> public static void GetAllCategoriesRequest() { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("GetCategories"); GetCategoriesRequestType request = new GetCategoriesRequestType(); request.Version = "949"; request.CategorySiteID = "3"; request.DetailLevel = new DetailLevelCodeTypeCollection { DetailLevelCodeType.ReturnAll }; GetCategoriesResponseType response = service.GetCategories(request); Console.WriteLine("====================================="); Console.WriteLine("CategoryID - Name List"); Console.WriteLine("====================================="); using (StreamWriter writetext = new StreamWriter("categories.csv")) { foreach (dynamic cat in response.CategoryArray) { Console.WriteLine("{0} - {1}", cat.CategoryID, cat.CategoryName); writetext.WriteLine("{0},\"{1}\"", cat.CategoryID, cat.CategoryName); } } }
/// <summary> /// Returns a list of Level 2 categories. /// </summary> /// <param name="TopLevel">Top level category ID</param> public static void GetLevel2Categories(string TopLevel) { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("GetCategories"); GetCategoriesRequestType request = new GetCategoriesRequestType(); request.Version = "949"; request.CategorySiteID = "0"; request.LevelLimit = 2; request.CategoryParent = new StringCollection { TopLevel }; request.DetailLevel = new DetailLevelCodeTypeCollection { DetailLevelCodeType.ReturnAll }; GetCategoriesResponseType response = service.GetCategories(request); Console.WriteLine("====================================="); Console.WriteLine("Level 2 Categories"); Console.WriteLine("====================================="); foreach (dynamic cat in response.CategoryArray) { Console.WriteLine("{0} - {1}", cat.CategoryID, cat.CategoryName); } }
/// <summary> /// Returns a list of the top level categories for the UK. /// </summary> public static void GetTopLevelCategories() { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("GetCategories"); GetCategoriesRequestType request = new GetCategoriesRequestType(); request.Version = "949"; request.CategorySiteID = "0"; // US request.LevelLimit = 1; // Top Level request.DetailLevel = new DetailLevelCodeTypeCollection { DetailLevelCodeType.ReturnAll }; GetCategoriesResponseType response = service.GetCategories(request); Console.WriteLine("====================================="); Console.WriteLine("Top-Level Categories"); Console.WriteLine("====================================="); foreach (dynamic cat in response.CategoryArray) { Console.WriteLine("{0} - {1}", cat.CategoryID, cat.CategoryName); } // Uncomment to return sub categories /*Will prompt for CategoryID to return Sub categories * Console.WriteLine("====================================="); * Console.WriteLine("Please enter a Top-Level Category ID: "); * Console.WriteLine("====================================="); * var TopLevel = Console.ReadLine(); * GetCategories2Request(TopLevel);*/ }
/// <summary> /// Add item to eBay. Once verified. /// </summary> /// <param name="item">Accepts ItemType object from VerifyAddItem method.</param> public static void AddItemRequest(ItemType item) { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("AddItem"); AddItemRequestType request = new AddItemRequestType(); request.Version = "949"; request.ErrorLanguage = "en_US"; request.WarningLevel = WarningLevelCodeType.High; request.Item = item; AddItemResponseType response = service.AddItem(request); Console.WriteLine("Item Added"); Console.WriteLine("ItemID: {0}", response.ItemID); // Item ID }
/// <summary> /// Returns metadata for a specific Detail. /// </summary> public static void GeteBayDetailsRequest() { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("GeteBayDetails"); GeteBayDetailsRequestType request = new GeteBayDetailsRequestType(); request.Version = "949"; request.DetailName = new DetailNameCodeTypeCollection { DetailNameCodeType.ReturnPolicyDetails }; GeteBayDetailsResponseType response = service.GeteBayDetails(request); Console.WriteLine("====================================="); Console.WriteLine("eBay Request Details"); Console.WriteLine("====================================="); Console.WriteLine("Ack: {0}", response.Ack); Console.WriteLine("Version: {0}", response.Version); Console.WriteLine("Build: {0}", response.Build); // ... }
/// <summary> /// Retrieve item details. /// </summary> /// <param name="ItemID">eBay Item ID</param> public static void GetItemRequest(string ItemID) { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("GetItem"); GetItemRequestType request = new GetItemRequestType(); request.Version = "949"; request.ItemID = ItemID; GetItemResponseType response = service.GetItem(request); Console.WriteLine("====================================="); Console.WriteLine("Item Iitle - {0}", response.Item.Title); Console.WriteLine("====================================="); Console.WriteLine("ItemID: {0}", response.Item.ItemID); Console.WriteLine("Primary Category: {0}", response.Item.PrimaryCategory.CategoryName); Console.WriteLine("Listing Duration: {0}", response.Item.ListingDuration); Console.WriteLine("Start Price: {0} {1}", response.Item.StartPrice.Value, response.Item.Currency); Console.WriteLine("Payment Type[0]: {0}", response.Item.PaymentMethods[0]); Console.WriteLine("PayPal Email Address: {0}", response.Item.PayPalEmailAddress); Console.WriteLine("Postal Code: {0}", response.Item.PostalCode); // ...Convert response object to JSON to see all }
/// <summary> /// Get features for a specific category ID /// </summary> /// <param name="CategoryID">Any CategoryID</param> public static void GetCategoryFeaturesRequest(string CategoryID) { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("GetCategoryFeatures"); GetCategoryFeaturesRequestType request = new GetCategoryFeaturesRequestType(); request.Version = "949"; request.WarningLevel = WarningLevelCodeType.High; request.CategoryID = CategoryID; request.FeatureID = new FeatureIDCodeTypeCollection { FeatureIDCodeType.ConditionValues, FeatureIDCodeType.ListingDurations, FeatureIDCodeType.HandlingTimeEnabled, FeatureIDCodeType.MaxFlatShippingCost, FeatureIDCodeType.PayPalRequired, FeatureIDCodeType.BestOfferEnabled, FeatureIDCodeType.ReturnPolicyEnabled }; request.DetailLevel = new DetailLevelCodeTypeCollection { DetailLevelCodeType.ReturnAll }; GetCategoryFeaturesResponseType response = service.GetCategoryFeatures(request); Console.WriteLine("====================================="); Console.WriteLine("Category Features"); Console.WriteLine("====================================="); Console.WriteLine("Ack: {0}", response.Ack); Console.WriteLine("Version: {0}", response.Version); Console.WriteLine("Build: {0}", response.Build); Console.WriteLine("Category Version: {0}", response.CategoryVersion); Console.WriteLine("Update Time: {0}", response.UpdateTime); Console.WriteLine("Return Policy Enabled: {0}", response.SiteDefaults.ReturnPolicyEnabled); Console.WriteLine("PayPal Required: {0}", response.SiteDefaults.PayPalRequired); // ... }
/// <summary> /// Verify whether item is ready to be added to eBay. /// /// My presets are: /// NEW condition /// BuyItNow fixed price /// 30 day duration /// 14-day returns w/ 20% restocking fee /// payment method=PayPal /// FREE shipping /// buyer pays for return shipping /// </summary> public static void VerifyAddItemRequest(string title, string description, string categoryID, double price, List <string> pictureURLs) { eBayAPIInterfaceService service = EbayCalls.eBayServiceCall("VerifyAddItem"); VerifyAddItemRequestType request = new VerifyAddItemRequestType(); request.Version = "949"; request.ErrorLanguage = "en_US"; request.WarningLevel = WarningLevelCodeType.High; var item = new ItemType(); item.Title = title; item.Description = description; item.PrimaryCategory = new CategoryType { CategoryID = categoryID }; item.StartPrice = new AmountType { Value = price, currencyID = CurrencyCodeType.USD }; // To view ConditionIDs follow the URL // http://developer.ebay.com/devzone/guides/ebayfeatures/Development/Desc-ItemCondition.html#HelpingSellersChoosetheRightCondition item.ConditionID = 1000; // new item.Country = CountryCodeType.US; item.Currency = CurrencyCodeType.USD; item.DispatchTimeMax = 3; item.ListingDuration = "Days_30"; // Buy It Now fixed price item.ListingType = ListingTypeCodeType.FixedPriceItem; // Auction //item.ListingType = ListingTypeCodeType.Chinese; item.PaymentMethods = new BuyerPaymentMethodCodeTypeCollection { BuyerPaymentMethodCodeType.PayPal }; item.AutoPay = true; // require immediate payment // Default testing paypal email address item.PayPalEmailAddress = "*****@*****.**"; item.PictureDetails = new PictureDetailsType(); item.PictureDetails.PictureURL = new StringCollection(); item.PictureDetails.PictureURL.AddRange(pictureURLs.ToArray()); item.PostalCode = "33772"; item.Quantity = 1; // 1 If Auction item.ReturnPolicy = new ReturnPolicyType { ReturnsAcceptedOption = "ReturnsAccepted", ReturnsWithinOption = "Days_14", //RefundOption = "MoneyBack", Description = "Please return if unstatisfied.", ShippingCostPaidByOption = "Buyer", RestockingFeeValue = "Percent_20", RestockingFeeValueOption = "Percent_20" }; item.ShippingDetails = GetShippingDetail(); item.Site = SiteCodeType.US; request.Item = item; VerifyAddItemResponseType response = service.VerifyAddItem(request); Console.WriteLine("ItemID: {0}", response.ItemID); // If item is verified, the item will be added. if (response.ItemID == "0") { Console.WriteLine("====================================="); Console.WriteLine("Add Item Verified"); Console.WriteLine("====================================="); AddItemRequest(item); } }