예제 #1
0
        /// <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);
                }
            }
        }
예제 #2
0
        /// <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);
            }
        }
예제 #3
0
        public static void GetTopLevelCategories()
        {
            eBayAPIInterfaceService service = EbayCalls.EbayServiceCall("GetCategories");

            GetCategoriesRequestType request = new GetCategoriesRequestType();

            request.Version        = "949";
            request.CategorySiteID = "3";
            request.LevelLimit     = 1;
            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);
            }

            Console.WriteLine("====================");
            Console.WriteLine("Please enter a Top-Level Category ID: ");
            Console.WriteLine("====================");
            var topLevel = Console.ReadLine();

            GetLevel2Categories(topLevel);
        }
예제 #4
0
        /// <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);*/
        }
        public static GetCategoriesResponseType GetCategoriesOf(string id)
        {
            var service = OpenEbayServiceConnection("GetCategories");

            // Get Virtual Reality Category
            var categoryRequestType = new GetCategoriesRequestType
            {
                DetailLevel    = new[] { DetailLevelCodeType.ReturnAll },
                CategorySiteID = "0",
                Version        = Version,
                CategoryParent = new[] { id }
            };

            return(service.GetCategories(categoryRequestType));
        }
예제 #6
0
        /// <summary>
        /// Get current eBay categories - All of them
        /// </summary>
        /// <returns></returns>
        public GetCategoriesResponseType GetEbayCategories()
        {
            var service = EbayServiceContext(ServiceCallType.GetCategories);
            var req = new GetCategoriesRequest
            {
                RequesterCredentials = Properties.EbayCredentials
            };

            var reqType = new GetCategoriesRequestType
            {
                CategorySiteID = "0"
            };
            SetupRequestType<GetCategoriesRequestType>(reqType);

            var res = service.GetCategories(ref req.RequesterCredentials, reqType);
            return res;
        }
예제 #7
0
        /// <summary>
        /// Get current eBay categories - All of them
        /// </summary>
        /// <returns></returns>
        public GetCategoriesResponseType GetEbayCategories()
        {
            var service = EbayServiceContext(ServiceCallType.GetCategories);
            var req     = new GetCategoriesRequest
            {
                RequesterCredentials = Properties.EbayCredentials
            };

            var reqType = new GetCategoriesRequestType
            {
                CategorySiteID = "0"
            };

            SetupRequestType <GetCategoriesRequestType>(reqType);

            var res = service.GetCategories(ref req.RequesterCredentials, reqType);

            return(res);
        }
    public CategoryType[] GetCategories(string userToken)
    {
        string callname = "GetCategories";

        #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";

        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

        GetCategoriesRequestType request = new GetCategoriesRequestType();
        request.CategorySiteID = siteID;
        request.LevelLimit = 4;
        request.Version = version;
        request.ViewAllNodes = true;
        request.DetailLevel = new DetailLevelCodeType[] { DetailLevelCodeType.ReturnAll };

        try
        {
            GetCategoriesResponseType response = service.GetCategories(request);
            return response.CategoryArray;
        }
        catch (Exception ex)
        {
            if (ex.Message.ToLower().Contains("auth token"))
                throw new InvalidEbayCredentialsException();
            else
                throw ex;
        }
    }
예제 #9
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="ApiContext">The <see cref="ApiCall.ApiContext"/> for this API Call of type <see cref="ApiContext"/>.</param>
 public GetCategoriesCall(ApiContext ApiContext)
 {
     ApiRequest      = new GetCategoriesRequestType();
     this.ApiContext = ApiContext;
 }
예제 #10
0
 /// <summary>
 ///
 /// </summary>
 public GetCategoriesCall()
 {
     ApiRequest = new GetCategoriesRequestType();
 }
예제 #11
0
		/// <summary>
		/// 
		/// </summary>
		/// <param name="ApiContext">The <see cref="ApiCall.ApiContext"/> for this API Call of type <see cref="ApiContext"/>.</param>
		public GetCategoriesCall(ApiContext ApiContext)
		{
			ApiRequest = new GetCategoriesRequestType();
			this.ApiContext = ApiContext;
		}
예제 #12
0
		/// <summary>
		/// 
		/// </summary>
		public GetCategoriesCall()
		{
			ApiRequest = new GetCategoriesRequestType();
		}