public void SetStoreCategories()
		{
			// Skip if the user is not store enabled.
			if (TestData.Store == null)
			return;
			SetStoreCategoriesCall api = new SetStoreCategoriesCall(this.apiContext);
			// Build the StoreType object.
			StoreType st = new StoreType();
			st.Description = TestData.Store.Description;
			st.Logo = TestData.Store.Logo;
			st.MerchDisplay = TestData.Store.MerchDisplay;
			st.Name = TestData.Store.Name;
			api.Action = StoreCategoryUpdateActionCodeType.Add;
			api.DestinationParentCategoryID = 1234;
			api.ItemDestinationCategoryID = 4321;
			StoreCustomCategoryTypeCollection catArray = new StoreCustomCategoryTypeCollection();
			api.StoreCategoryList = catArray;
			StoreCustomCategoryType cat = new StoreCustomCategoryType();
			catArray.Add(cat);
			cat.CategoryID = 102;
			cat.Name = "TestStoreCategory";
			// Make API call.
			ApiException gotException = null;
			// Negative test.
			try 
			{
				api.Execute();
			} 
			catch (ApiException ex) 
			{
				gotException = ex;
			}
			Assert.IsNotNull(gotException);		
		}
        /// <summary>
        ///
        /// </summary>
        /// <param name="Action"></param>
        /// <param name="StoreCategoryList"></param>
        /// <returns></returns>
        public long SetStoreCategories(StoreCategoryUpdateActionCodeType Action, StoreCustomCategoryTypeCollection StoreCategoryList)
        {
            this.Action            = Action;
            this.StoreCategoryList = StoreCategoryList;

            Execute();
            return(ApiResponse.TaskID);
        }
		/// <summary>
		/// Changes the category structure of an eBay store.
		/// </summary>
		/// 
		/// <param name="Action">
		/// Specifies the type of action (Add, Move, Delete, or Rename) to carry out
		/// for the specified categories.
		/// </param>
		///
		/// <param name="ItemDestinationCategoryID">
		/// Items can only be contained within child categories. A parent category
		/// cannot contain items. If adding, moving, or deleting categories displaces
		/// items, you must specify a destination child category under which the
		/// displaced items will be moved. The destination category must have no
		/// child categories.
		/// </param>
		///
		/// <param name="DestinationParentCategoryID">
		/// When adding or moving store categories, specifies the category under
		/// which the listed categories will be located. To add or move categories to
		/// the top level, set the value to -999.
		/// </param>
		///
		/// <param name="StoreCategoryList">
		/// Specifies the store categories on which to act.
		/// </param>
		///
		public long SetStoreCategories(StoreCategoryUpdateActionCodeType Action, long ItemDestinationCategoryID, long DestinationParentCategoryID, StoreCustomCategoryTypeCollection StoreCategoryList)
		{
			this.Action = Action;
			this.ItemDestinationCategoryID = ItemDestinationCategoryID;
			this.DestinationParentCategoryID = DestinationParentCategoryID;
			this.StoreCategoryList = StoreCategoryList;

			Execute();
			return ApiResponse.TaskID;
		}
        public void SetStoreCategories()
        {
            // Skip if the user is not store enabled.
            if (TestData.Store == null)
            {
                return;
            }
            SetStoreCategoriesCall api = new SetStoreCategoriesCall(this.apiContext);
            // Build the StoreType object.
            StoreType st = new StoreType();

            st.Description  = TestData.Store.Description;
            st.Logo         = TestData.Store.Logo;
            st.MerchDisplay = TestData.Store.MerchDisplay;
            st.Name         = TestData.Store.Name;
            api.Action      = StoreCategoryUpdateActionCodeType.Add;
            api.DestinationParentCategoryID = 1234;
            api.ItemDestinationCategoryID   = 4321;
            StoreCustomCategoryTypeCollection catArray = new StoreCustomCategoryTypeCollection();

            api.StoreCategoryList = catArray;
            StoreCustomCategoryType cat = new StoreCustomCategoryType();

            catArray.Add(cat);
            cat.CategoryID = 102;
            cat.Name       = "TestStoreCategory";
            // Make API call.
            ApiException gotException = null;

            // Negative test.
            try
            {
                api.Execute();
            }
            catch (ApiException ex)
            {
                gotException = ex;
            }
            Assert.IsNotNull(gotException);
        }
        /// <summary>
        /// Changes the category structure of an eBay store.
        /// </summary>
        ///
        /// <param name="Action">
        /// Specifies the type of action (Add, Move, Delete, or Rename) to carry out
        /// for the specified categories.
        /// </param>
        ///
        /// <param name="ItemDestinationCategoryID">
        /// Items can only be contained within child categories. A parent category
        /// cannot contain items. If adding, moving, or deleting categories displaces
        /// items, you must specify a destination child category under which the
        /// displaced items will be moved. The destination category must have no
        /// child categories.
        /// </param>
        ///
        /// <param name="DestinationParentCategoryID">
        /// When adding or moving store categories, specifies the category under
        /// which the listed categories will be located. To add or move categories to
        /// the top level, set the value to -999.
        /// </param>
        ///
        /// <param name="StoreCategoryList">
        /// Specifies the store categories on which to act.
        /// </param>
        ///
        public long SetStoreCategories(StoreCategoryUpdateActionCodeType Action, long ItemDestinationCategoryID, long DestinationParentCategoryID, StoreCustomCategoryTypeCollection StoreCategoryList)
        {
            this.Action = Action;
            this.ItemDestinationCategoryID   = ItemDestinationCategoryID;
            this.DestinationParentCategoryID = DestinationParentCategoryID;
            this.StoreCategoryList           = StoreCategoryList;

            Execute();
            return(ApiResponse.TaskID);
        }
		public long SetStoreCategories(StoreCategoryUpdateActionCodeType Action, StoreCustomCategoryTypeCollection StoreCategoryList)
		{
			this.Action = Action;
			this.StoreCategoryList = StoreCategoryList;

			Execute();
			return ApiResponse.TaskID;
		}