/// <summary>
		/// Retrieves eBay IDs and codes (e.g., site IDs and shipping service
		/// codes), enumerated data (e.g., payment methods), and other common eBay
		/// meta-data. This call enables you to keep certain data up to date in your
		/// applications without referring to the schema, the documentation, or the
		/// eBay online help. Other data is returned for your reference, but you may
		/// need to refer to the schema or the documentation for information about
		/// valid values and usage.
		/// 
		/// In some cases, the data returned in the response will vary according to
		/// the site that you use for the request.
		/// 
		/// If you use GeteBayDetails in preparation for listing in the US Motors Parts
		/// and Accessories categories, use site ID 0 (which is the site ID of the US
		/// site) when you call GeteBayDetails.
		/// 
		/// Sellers who engage in cross-border trade on sites that require a recoupment agreement, must agree to the
		/// recoupment terms before adding items to the site. This agreement allows eBay to reimburse
		/// a buyer during a dispute and then recoup the cost from the seller. Information about whether a site
		/// is a recoupment site is returned in the GeteBayDetailsResponse.RecoupmentPolicyDetails container.
		/// </summary>
		/// 
		/// <param name="DetailNameList">
		/// A designation of what kind of information you wish returned for the
		/// specified eBay site. If omitted, all details are returned. The
		/// possible values for input (the enumeration values of
		/// DetailNameCodeType) are the same name as fields returned by the
		/// response. See the documentation for the GeteBayDetails response to
		/// better understand the DetailName options.
		/// </param>
		///
		public void GeteBayDetails(DetailNameCodeTypeCollection DetailNameList)
		{
			this.DetailNameList = DetailNameList;

			Execute();
			
		}
        private DetailNameCodeTypeCollection getDetailsNames()
        {
        	DetailNameCodeTypeCollection names=new DetailNameCodeTypeCollection();
			names.Add(DetailNameCodeType.ShippingLocationDetails);
			names.Add(DetailNameCodeType.ShippingServiceDetails);
			names.Add(DetailNameCodeType.ReturnPolicyDetails);
            return names;
        }
		//get eBay Details
		public static GeteBayDetailsResponseType GetShippingServices(ApiContext apiContext)
		{
				GeteBayDetailsCall api = new GeteBayDetailsCall(apiContext);
				DetailNameCodeTypeCollection names=new DetailNameCodeTypeCollection();
				names.Add(DetailNameCodeType.ShippingLocationDetails);
				names.Add(DetailNameCodeType.ShippingServiceDetails);
				api.GeteBayDetails(null);
				return api.ApiResponse;
		}
예제 #4
0
        private void loadRegionDetailsForSite(GeteBayDetailsResponseType resp, SiteCodeType site)
        {
            if (resp == null)
            {
                DetailNameCodeTypeCollection detailNames =
                    new DetailNameCodeTypeCollection(new DetailNameCodeType[] { DetailNameCodeType.RegionDetails });
                resp = makeApiCall(detailNames, site);
            }
            RegionDetailsTypeCollection details = resp.RegionDetails;

            if (details != null)
            {
                _RegionDetailsBySite.Add(site, details);
                Hashtable detailsByRegionIDMap = new Hashtable();
                for (int i = 0; i < details.Count; i++)
                {
                    RegionDetailsType detail = details[i];
                    detailsByRegionIDMap.Add(detail.RegionID, detail);
                }
                _RegionDetailsMapsBySite.Add(site, detailsByRegionIDMap);
            }
        }
예제 #5
0
        private GeteBayDetailsResponseType makeApiCall(DetailNameCodeTypeCollection detailNames, SiteCodeType site)
        {
            SiteCodeType savedSite = _site;
            _apiContext.Site = site;
            GeteBayDetailsCall api = new GeteBayDetailsCall(_apiContext);
            DetailLevelCodeTypeCollection detailLevels = new DetailLevelCodeTypeCollection( new DetailLevelCodeType[] {DetailLevelCodeType.ReturnAll});
            api.DetailLevelList = detailLevels;
            api.GeteBayDetails(detailNames);
            _apiContext.Site = savedSite;

            return api.ApiResponse;
        }
예제 #6
0
 private void loadURLDetailsForSite(GeteBayDetailsResponseType resp, SiteCodeType site)
 {
     if(resp == null) {
     DetailNameCodeTypeCollection detailNames = new DetailNameCodeTypeCollection(new DetailNameCodeType[] {DetailNameCodeType.URLDetails});
     resp = makeApiCall(detailNames, site);
     }
     URLDetailsTypeCollection urlDetails = resp.URLDetails;
     if(urlDetails != null) {
     _URLDetailsBySite.Add(site, urlDetails);
     Hashtable detailsByURLTypeMap = new Hashtable();
     for(int i = 0; i < urlDetails.Count; i++) {
         URLDetailsType detail = urlDetails[i];
         detailsByURLTypeMap.Add(detail.URLType, detail);
     }
     _URLDetailsMapsBySite.Add(site, detailsByURLTypeMap);
     }
 }
예제 #7
0
 private void loadTaxJurisdictionDetailsForSite(GeteBayDetailsResponseType resp, SiteCodeType site)
 {
     if(resp == null)
     {
     DetailNameCodeTypeCollection detailNames =
         new DetailNameCodeTypeCollection(new DetailNameCodeType[] {DetailNameCodeType.TaxJurisdiction});
     resp = makeApiCall(detailNames, site);
     }
     TaxJurisdictionTypeCollection details = resp.TaxJurisdiction;
     if(details != null)
     {
     _TaxJurisdictionDetailsBySite.Add(site, details);
     Hashtable detailsByJurisdictionIDMap = new Hashtable();
     for(int i = 0; i < details.Count; i++)
     {
         TaxJurisdictionType detail = details[i];
         detailsByJurisdictionIDMap.Add(detail.JurisdictionID, detail);
     }
     _TaxJurisdictionDetailsMapsBySite.Add(site, detailsByJurisdictionIDMap);
     }
 }
예제 #8
0
 private void loadShippingServiceDetailsForSite(GeteBayDetailsResponseType resp, SiteCodeType site)
 {
     if(resp == null)
     {
     DetailNameCodeTypeCollection detailNames =
         new DetailNameCodeTypeCollection(new DetailNameCodeType[] {DetailNameCodeType.ShippingServiceDetails});
     resp = makeApiCall(detailNames, site);
     }
     ShippingServiceDetailsTypeCollection details = resp.ShippingServiceDetails;
     if(details != null)
     {
     _ShippingServiceDetailsBySite.Add(site, details);
     Hashtable detailsByShippingServiceIDMap = new Hashtable();
     for(int i = 0; i < details.Count; i++)
     {
         ShippingServiceDetailsType detail = details[i];
         detailsByShippingServiceIDMap.Add(detail.ShippingServiceID, detail);
     }
     _ShippingServiceDetailsMapsBySite.Add(site, detailsByShippingServiceIDMap);
     }
 }
예제 #9
0
 private void loadPaymentOptionsDetailsForSite(GeteBayDetailsResponseType resp, SiteCodeType site)
 {
     if(resp == null) {
     DetailNameCodeTypeCollection detailNames = new DetailNameCodeTypeCollection(new DetailNameCodeType[]{DetailNameCodeType.PaymentOptionDetails});
     resp = makeApiCall(detailNames, site);
     }
     PaymentOptionDetailsTypeCollection details = resp.PaymentOptionDetails;
     if(details != null) {
     _PaymentOptionDetailsBySite.Add(site, details);
     Hashtable detailsByPaymentMethodMap = new Hashtable();
     for(int i = 0; i < details.Count; i++) {
         PaymentOptionDetailsType detail = details[i];
         detailsByPaymentMethodMap.Add(detail.PaymentOption, detail);
     }
     _PaymentOptionDetailsMapsBySite.Add(site, detailsByPaymentMethodMap);
     }
 }
예제 #10
0
 /// <summary>
 /// 
 /// </summary>
 public TaxJurisdictionTypeCollection getTaxJurisdictionDetailsForSite(SiteCodeType site)
 {
     Hashtable detalisMap = (Hashtable)_SiteRelatedDetailsByName[DetailNameCodeType.TaxJurisdiction];
     if(!detalisMap.ContainsKey(site))
     {
     DetailNameCodeTypeCollection detailNames = new DetailNameCodeTypeCollection(new DetailNameCodeType[] {DetailNameCodeType.TaxJurisdiction});
     loadTaxJurisdictionDetailsForSite(site);
     }
     return (TaxJurisdictionTypeCollection)detalisMap[site];
 }
예제 #11
0
 /// <summary>
 /// 
 /// </summary>
 public ShippingServiceDetailsTypeCollection getShippingServiceDetailsForSite(SiteCodeType site)
 {
     Hashtable detalisMap = (Hashtable)_SiteRelatedDetailsByName[DetailNameCodeType.ShippingServiceDetails];
     if(!detalisMap.ContainsKey(site))
     {
     DetailNameCodeTypeCollection detailNames = new DetailNameCodeTypeCollection(new DetailNameCodeType[] {DetailNameCodeType.ShippingServiceDetails});
     loadShippingServiceDetailsForSite(site);
     }
     return (ShippingServiceDetailsTypeCollection)detalisMap[site];
 }
예제 #12
0
 /// <summary>
 /// 
 /// </summary>
 public PaymentOptionDetailsTypeCollection getPaymentOptionDetailsForSite(SiteCodeType site)
 {
     Hashtable detalisMap = (Hashtable)_SiteRelatedDetailsByName[DetailNameCodeType.PaymentOptionDetails];
     if(!detalisMap.ContainsKey(site))
     {
     DetailNameCodeTypeCollection detailNames = new DetailNameCodeTypeCollection(new DetailNameCodeType[] {DetailNameCodeType.PaymentOptionDetails});
     loadPaymentOptionsDetailsForSite(site);
     }
     return (PaymentOptionDetailsTypeCollection)detalisMap[site];
 }
예제 #13
0
        /// <summary>
        /// This is the base request type for the <b>GeteBayDetails</b> call. This call retrieves the latest eBay feature-related metadata values that are supported when listing items. This metadata includes country codes, currency codes, Item Specifics thresholds, supported Return Policy values, available shipping carriers and shipping service options, and more. This call may be used to keep metadata up-to-date in your applications.
        ///
        /// In some cases, the data returned in the response will vary according to
        /// the eBay site that you use for the request.
        /// </summary>
        ///
        /// <param name="DetailNameList">
        /// One or more <b>DetailName</b> fields may be used to control the the type of metadata that is returned in the response. If no <b>DetailName</b> fields are used, all metadata will be returned in the response. It is a good idea to familiarize yourself with the metadata that can be returned with <b>GeteBayDetails</b> by reading through the enumeration values in <a href="types/DetailNameCodeType.html">DetailNameCodeType</a>.
        /// </param>
        ///
        public void GeteBayDetails(DetailNameCodeTypeCollection DetailNameList)
        {
            this.DetailNameList = DetailNameList;

            Execute();
        }