Ejemplo n.º 1
0
        /**
         * Convert GetMatchingProductForIdRequest to name value pairs
         */
        private IDictionary <String, String> ConvertGetMatchingProductForId(GetMatchingProductForIdRequest request)
        {
            IDictionary <String, String> parameters = new Dictionary <String, String>();

            parameters.Add("Action", "GetMatchingProductForId");
            if (request.IsSetSellerId())
            {
                parameters.Add("SellerId", request.SellerId);
            }
            if (request.IsSetMarketplaceId())
            {
                parameters.Add("MarketplaceId", request.MarketplaceId);
            }
            if (request.IsSetIdType())
            {
                parameters.Add("IdType", request.IdType);
            }
            if (request.IsSetIdList())
            {
                IdListType    getMatchingProductForIdRequestIdList = request.IdList;
                List <String> idListIdList      = getMatchingProductForIdRequestIdList.Id;
                int           idListIdListIndex = 1;
                foreach (String idListId in idListIdList)
                {
                    parameters.Add("IdList" + "." + "Id" + "." + idListIdListIndex, idListId);
                    idListIdListIndex++;
                }
            }

            return(parameters);
        }
Ejemplo n.º 2
0
        public void GetProductInformation(string asin)
        {
            GetMatchingProductForIdRequest request = new GetMatchingProductForIdRequest();

            request.IdList = new IdListType();
            // param IdType
            request.IdList.Id = new List <string>();
            // add the UPC to the list
            request.IdType = "ASIN";
            request.IdList.Id.Add(asin);
            request.SellerId      = merchantId;
            request.MarketplaceId = marketplaceId;

            InvokeGetMatchingProductForId(service, request);

            GetLowestOfferListingsForASINRequest request2 = new GetLowestOfferListingsForASINRequest();

            request2.ASINList = new ASINListType();
            request2.ASINList.ASIN.Add(asin);
            request2.MarketplaceId = marketplaceId;
            request2.SellerId      = merchantId;

            InvokeGetLowestOfferListingsForASIN(service, request2);

            GetCompetitivePricingForASINRequest request3 = new GetCompetitivePricingForASINRequest();

            request3.ASINList = new ASINListType();
            request3.ASINList.ASIN.Add(asin);
            request3.MarketplaceId = marketplaceId;
            request3.SellerId      = merchantId;

            InvokeGetCompetitivePricingForASIN(service, request3);
        }
Ejemplo n.º 3
0
        public List <MarketplaceProduct> GetProductsInfo(List <string> asins)
        {
            var request = new GetMatchingProductForIdRequest
            {
                SellerId      = _marketplaceCredential.MerchantId,
                MarketplaceId = _marketplaceCredential.MarketplaceIds.First(),
                IdType        = "ASIN",
                IdList        = new IdListType {
                    Id = asins
                }
            };

            // log info
            _logger.LogInfo(LogEntryType.AmazonProduct, string.Format("GetMatchingProductForIdRequest for \'{0}\' was unsuccessful!", asins));

            var response = _amazonClient.GetMatchingProductForId(request);
            var product  = parsedToMarketplaceProduct(response);

            if (product == null)
            {
                _logger.LogWarning(LogEntryType.AmazonProduct, string.Format("GetMatchingProductForIdRequest: Product ASIN \'{0}\' was not found!", asins));
                return(null);
            }

            // set other market place produt info
            //setMarketplaceProductPrice(product);
            //setMarketplaceProductOffer(product);

            return(null);
        }
Ejemplo n.º 4
0
        private void GetASINData(IEnumerable <Entry> entries)
        {
            Queue <Entry> pendingList = new Queue <Entry>(entries);

            while (pendingList.Count > 0)
            {
                List <string> idList = new List <string>();

                for (int i = 0; i < 5; i++)
                {
                    if (pendingList.Count > 0)
                    {
                        idList.Add(pendingList.Dequeue().UPC);
                    }
                }

                if (idList.Count > 0)
                {
                    GetMatchingProductForIdRequest request = new GetMatchingProductForIdRequest();
                    request.SellerId      = _marketplace.MerchantId;
                    request.MarketplaceId = _marketplace.MarketplaceId;
                    request.IdList        = new IdListType();
                    request.IdList.Id     = idList;
                    request.IdType        = "UPC";


                    while (_getMatchingProductQuota < 5)
                    {
                        Thread.Sleep(2000);
                    }

                    GetMatchingProductForIdResponse response = _marketplace.GetMWSProductsClient().GetMatchingProductForId(request);

                    _getMatchingProductQuota = _getMatchingProductQuota - 5;

                    if (response.IsSetGetMatchingProductForIdResult())
                    {
                        foreach (GetMatchingProductForIdResult result in response.GetMatchingProductForIdResult)
                        {
                            if (result.status.Equals("Success") && result.IsSetProducts() && result.Products.IsSetProduct())
                            {
                                Entry entry = entries.Where(p => p.UPC != null).Single(p => p.UPC.Equals(result.Id));
                                entry.ASIN = result.Products.Product.First().Identifiers.MarketplaceASIN.ASIN;
                            }
                        }
                    }
                }
            }
        }
 public GetMatchingProductForIdResponse InvokeGetMatchingProductForId()
 {
     // Create a request.
     GetMatchingProductForIdRequest request = new GetMatchingProductForIdRequest();
     
     request.SellerId = sellerId;
     
     request.MWSAuthToken = mwsAuthToken;
     
     request.MarketplaceId = marketplaceId;
     string idType = "example";
     request.IdType = idType;
     IdListType idList = new IdListType();
     request.IdList = idList;
     return this.client.GetMatchingProductForId(request);
 }
Ejemplo n.º 6
0
        public GetMatchingProductForIdResponse InvokeGetMatchingProductForId()
        {
            // Create a request.
            GetMatchingProductForIdRequest request = new GetMatchingProductForIdRequest();

            request.SellerId = sellerId;

            request.MWSAuthToken = mwsAuthToken;

            request.MarketplaceId = marketplaceId;
            string idType = "ASIN";

            request.IdType = idType;
            IdListType idList = new IdListType();

            idList.Id = new List <string>();
            idList.Id.Add("B0038G25VK");
            request.IdList = idList;
            return(this.client.GetMatchingProductForId(request));
        }
Ejemplo n.º 7
0
 public GetMatchingProductForIdResponse InvokeGetMatchingProductForId(string sellerId, string mwsAuthToken, string marketplaceId, string idType, out APIResults results)
 {
     try
     {
         // Create a request.
         GetMatchingProductForIdRequest request = new GetMatchingProductForIdRequest();
         request.SellerId      = sellerId;
         request.MWSAuthToken  = mwsAuthToken;
         request.MarketplaceId = marketplaceId;
         request.IdType        = idType;
         IdListType idList = new IdListType();
         request.IdList = idList;
         GetMatchingProductForIdResponse output = this.productClient.GetMatchingProductForId(request);
         results = new APIResults((IMWSResponse)output);
         return(output);
     }
     catch (MarketplaceWebServiceProductsException ex)
     {
         results = new APIResults(ex);
         throw ex;
     }
 }
Ejemplo n.º 8
0
        static void Main(string[] args)
        {
            /*  Config */

            var sellerId      = "<seller id>";
            var accessKey     = "<access key";
            var marketPlaceId = "<marketplace id>";
            var secretKey     = "<secret key>";

            var appName    = "<application name>";
            var appVersion = "<application version>";

            /* Example Products API Client */

            var config = new MarketplaceWebServiceProductsConfig {
                ServiceURL = "https://mws.amazonservices.com"
            };
            var client = new MarketplaceWebServiceProductsClient(appName, appVersion, accessKey, secretKey, config);

            var request = new GetMatchingProductForIdRequest();

            request.IdList = new IdListType();
            request.IdType = "<id type>"; // UPC, ISBN, EAN, ASIN
            request.IdList.Id.Add("<id>");

            request.MarketplaceId = marketPlaceId;

            try
            {
                // try to get the response from the server
                var response = client.GetMatchingProductForId(request);
            }
            catch (MarketplaceWebServiceProductsException ex)
            {
                // something went wrong
                // check the value of ErrorCode
            }
        }
Ejemplo n.º 9
0
 public GetMatchingProductForIdResponse GetMatchingProductForId(GetMatchingProductForIdRequest request)
 {
     return(newResponse <GetMatchingProductForIdResponse>());
 }
Ejemplo n.º 10
0
 /// <summary>
 /// Get Matching Product For Id
 /// </summary>
 /// <param name="request">Get Matching Product For Id  request</param>
 /// <returns>Get Matching Product For Id  Response from the service</returns>
 /// <remarks>
 /// GetMatchingProduct will return the details (attributes) for the
 /// given Identifier list. Identifer type can be one of [SKU|ASIN|UPC|EAN|ISBN|GTIN|JAN]
 ///
 /// </remarks>
 public GetMatchingProductForIdResponse GetMatchingProductForId(GetMatchingProductForIdRequest request)
 {
     return(Invoke <GetMatchingProductForIdResponse>(ConvertGetMatchingProductForId(request)));
 }
 public GetMatchingProductForIdResponse GetMatchingProductForId(GetMatchingProductForIdRequest request)
 {
     return(connection.Call(
                new MarketplaceWebServiceProductsClient.Request <GetMatchingProductForIdResponse>("GetMatchingProductForId", typeof(GetMatchingProductForIdResponse), servicePath),
                request));
 }
 /// <summary>
 /// Get Matching Product For Id
 /// </summary>
 /// <param name="request">Get Matching Product For Id  request</param>
 /// <returns>Get Matching Product For Id  Response from the service</returns>
 /// <remarks>
 /// GetMatchingProduct will return the details (attributes) for the
 /// given Identifier list. Identifer type can be one of [SKU|ASIN|UPC|EAN|ISBN|GTIN|JAN]
 ///
 /// </remarks>
 public GetMatchingProductForIdResponse GetMatchingProductForId(GetMatchingProductForIdRequest request)
 {
     return(Invoke <GetMatchingProductForIdResponse>("GetMatchingProductForIdResponse.xml"));
 }
Ejemplo n.º 13
0
        /// <summary>
        /// GetMatchingProduct will return the details (attributes) for the
        /// given Identifier list. Identifer type can be one of [SKU|ASIN|UPC|EAN|ISBN|GTIN|JAN]
        ///
        /// </summary>
        /// <param name="service">Instance of MarketplaceWebServiceProducts service</param>
        /// <param name="request">GetMatchingProductForIdRequest request</param>
        public static void InvokeGetMatchingProductForId(MarketplaceWebServiceProducts service, GetMatchingProductForIdRequest request)
        {
            try
            {
                GetMatchingProductForIdResponse response = service.GetMatchingProductForId(request);


                Console.WriteLine("Service Response");
                Console.WriteLine("=============================================================================");
                Console.WriteLine();

                Console.WriteLine("        GetMatchingProductForIdResponse");
                List <GetMatchingProductForIdResult> getMatchingProductForIdResultList = response.GetMatchingProductForIdResult;
                foreach (GetMatchingProductForIdResult getMatchingProductForIdResult in getMatchingProductForIdResultList)
                {
                    Console.WriteLine("            GetMatchingProductForIdResult");
                    if (getMatchingProductForIdResult.IsSetId())
                    {
                        Console.WriteLine("        Id");
                        Console.WriteLine();
                        Console.WriteLine("                {0}", getMatchingProductForIdResult.Id);
                        Console.WriteLine();
                    }
                    if (getMatchingProductForIdResult.IsSetIdType())
                    {
                        Console.WriteLine("        IdType");
                        Console.WriteLine();
                        Console.WriteLine("                {0}", getMatchingProductForIdResult.IdType);
                        Console.WriteLine();
                    }
                    if (getMatchingProductForIdResult.IsSetstatus())
                    {
                        Console.WriteLine("        status");
                        Console.WriteLine();
                        Console.WriteLine("                {0}", getMatchingProductForIdResult.status);
                        Console.WriteLine();
                    }
                    if (getMatchingProductForIdResult.IsSetProducts())
                    {
                        Console.WriteLine("                Products");
                        ProductList    products    = getMatchingProductForIdResult.Products;
                        List <Product> productList = products.Product;
                        foreach (Product product in productList)
                        {
                            Console.WriteLine("                    Product");
                            if (product.IsSetIdentifiers())
                            {
                                Console.WriteLine("                        Identifiers");
                                IdentifierType identifiers = product.Identifiers;
                                if (identifiers.IsSetMarketplaceASIN())
                                {
                                    Console.WriteLine("                            MarketplaceASIN");
                                    ASINIdentifier marketplaceASIN = identifiers.MarketplaceASIN;
                                    if (marketplaceASIN.IsSetMarketplaceId())
                                    {
                                        Console.WriteLine("                                MarketplaceId");
                                        Console.WriteLine("                                    {0}", marketplaceASIN.MarketplaceId);
                                    }
                                    if (marketplaceASIN.IsSetASIN())
                                    {
                                        Console.WriteLine("                                ASIN");
                                        Console.WriteLine("                                    {0}", marketplaceASIN.ASIN);
                                    }
                                }
                                if (identifiers.IsSetSKUIdentifier())
                                {
                                    Console.WriteLine("                            SKUIdentifier");
                                    SellerSKUIdentifier SKUIdentifier = identifiers.SKUIdentifier;
                                    if (SKUIdentifier.IsSetMarketplaceId())
                                    {
                                        Console.WriteLine("                                MarketplaceId");
                                        Console.WriteLine("                                    {0}", SKUIdentifier.MarketplaceId);
                                    }
                                    if (SKUIdentifier.IsSetSellerId())
                                    {
                                        Console.WriteLine("                                SellerId");
                                        Console.WriteLine("                                    {0}", SKUIdentifier.SellerId);
                                    }
                                    if (SKUIdentifier.IsSetSellerSKU())
                                    {
                                        Console.WriteLine("                                SellerSKU");
                                        Console.WriteLine("                                    {0}", SKUIdentifier.SellerSKU);
                                    }
                                }
                            }
                            if (product.IsSetAttributeSets())
                            {
                                Console.WriteLine("                                Attributes");
                                foreach (var attribute in product.AttributeSets.Any)
                                {
                                    Console.WriteLine(ProductsUtil.FormatXml((System.Xml.XmlElement)attribute));
                                }
                            }
                            if (product.IsSetRelationships())
                            {
                                Console.WriteLine(string.Empty);
                                Console.WriteLine("                                Relationships");
                                foreach (var relationship in product.Relationships.Any)
                                {
                                    Console.WriteLine(ProductsUtil.FormatXml((System.Xml.XmlElement)relationship));
                                }
                            }
                            if (product.IsSetCompetitivePricing())
                            {
                                Console.WriteLine("                        CompetitivePricing");
                                CompetitivePricingType competitivePricing = product.CompetitivePricing;
                                if (competitivePricing.IsSetCompetitivePrices())
                                {
                                    Console.WriteLine("                            CompetitivePrices");
                                    CompetitivePriceList        competitivePrices    = competitivePricing.CompetitivePrices;
                                    List <CompetitivePriceType> competitivePriceList = competitivePrices.CompetitivePrice;
                                    foreach (CompetitivePriceType competitivePrice in competitivePriceList)
                                    {
                                        Console.WriteLine("                                CompetitivePrice");
                                        if (competitivePrice.IsSetcondition())
                                        {
                                            Console.WriteLine("                            condition");
                                            Console.WriteLine();
                                            Console.WriteLine("                                    {0}", competitivePrice.condition);
                                            Console.WriteLine();
                                        }
                                        if (competitivePrice.IsSetsubcondition())
                                        {
                                            Console.WriteLine("                            subcondition");
                                            Console.WriteLine();
                                            Console.WriteLine("                                    {0}", competitivePrice.subcondition);
                                            Console.WriteLine();
                                        }
                                        if (competitivePrice.IsSetbelongsToRequester())
                                        {
                                            Console.WriteLine("                            belongsToRequester");
                                            Console.WriteLine();
                                            Console.WriteLine("                                    {0}", competitivePrice.belongsToRequester);
                                            Console.WriteLine();
                                        }
                                        if (competitivePrice.IsSetCompetitivePriceId())
                                        {
                                            Console.WriteLine("                                    CompetitivePriceId");
                                            Console.WriteLine("                                        {0}", competitivePrice.CompetitivePriceId);
                                        }
                                        if (competitivePrice.IsSetPrice())
                                        {
                                            Console.WriteLine("                                    Price");
                                            PriceType price = competitivePrice.Price;
                                            if (price.IsSetLandedPrice())
                                            {
                                                Console.WriteLine("                                        LandedPrice");
                                                MoneyType landedPrice = price.LandedPrice;
                                                if (landedPrice.IsSetCurrencyCode())
                                                {
                                                    Console.WriteLine("                                            CurrencyCode");
                                                    Console.WriteLine("                                                {0}", landedPrice.CurrencyCode);
                                                }
                                                if (landedPrice.IsSetAmount())
                                                {
                                                    Console.WriteLine("                                            Amount");
                                                    Console.WriteLine("                                                {0}", landedPrice.Amount);
                                                }
                                            }
                                            if (price.IsSetListingPrice())
                                            {
                                                Console.WriteLine("                                        ListingPrice");
                                                MoneyType listingPrice = price.ListingPrice;
                                                if (listingPrice.IsSetCurrencyCode())
                                                {
                                                    Console.WriteLine("                                            CurrencyCode");
                                                    Console.WriteLine("                                                {0}", listingPrice.CurrencyCode);
                                                }
                                                if (listingPrice.IsSetAmount())
                                                {
                                                    Console.WriteLine("                                            Amount");
                                                    Console.WriteLine("                                                {0}", listingPrice.Amount);
                                                }
                                            }
                                            if (price.IsSetShipping())
                                            {
                                                Console.WriteLine("                                        Shipping");
                                                MoneyType shipping = price.Shipping;
                                                if (shipping.IsSetCurrencyCode())
                                                {
                                                    Console.WriteLine("                                            CurrencyCode");
                                                    Console.WriteLine("                                                {0}", shipping.CurrencyCode);
                                                }
                                                if (shipping.IsSetAmount())
                                                {
                                                    Console.WriteLine("                                            Amount");
                                                    Console.WriteLine("                                                {0}", shipping.Amount);
                                                }
                                            }
                                        }
                                    }
                                }
                                if (competitivePricing.IsSetNumberOfOfferListings())
                                {
                                    Console.WriteLine("                            NumberOfOfferListings");
                                    NumberOfOfferListingsList    numberOfOfferListings = competitivePricing.NumberOfOfferListings;
                                    List <OfferListingCountType> offerListingCountList = numberOfOfferListings.OfferListingCount;
                                    foreach (OfferListingCountType offerListingCount in offerListingCountList)
                                    {
                                        Console.WriteLine("                                OfferListingCount");
                                        if (offerListingCount.IsSetcondition())
                                        {
                                            Console.WriteLine("                            condition");
                                            Console.WriteLine();
                                            Console.WriteLine("                                    {0}", offerListingCount.condition);
                                            Console.WriteLine();
                                        }
                                        if (offerListingCount.IsSetValue())
                                        {
                                            Console.WriteLine("                            Value");
                                            Console.WriteLine();
                                            Console.WriteLine("                                    {0}", offerListingCount.Value);
                                        }
                                    }
                                }
                                if (competitivePricing.IsSetTradeInValue())
                                {
                                    Console.WriteLine("                            TradeInValue");
                                    MoneyType tradeInValue = competitivePricing.TradeInValue;
                                    if (tradeInValue.IsSetCurrencyCode())
                                    {
                                        Console.WriteLine("                                CurrencyCode");
                                        Console.WriteLine("                                    {0}", tradeInValue.CurrencyCode);
                                    }
                                    if (tradeInValue.IsSetAmount())
                                    {
                                        Console.WriteLine("                                Amount");
                                        Console.WriteLine("                                    {0}", tradeInValue.Amount);
                                    }
                                }
                            }
                            if (product.IsSetSalesRankings())
                            {
                                Console.WriteLine("                        SalesRankings");
                                SalesRankList        salesRankings = product.SalesRankings;
                                List <SalesRankType> salesRankList = salesRankings.SalesRank;
                                foreach (SalesRankType salesRank in salesRankList)
                                {
                                    Console.WriteLine("                            SalesRank");
                                    if (salesRank.IsSetProductCategoryId())
                                    {
                                        Console.WriteLine("                                ProductCategoryId");
                                        Console.WriteLine("                                    {0}", salesRank.ProductCategoryId);
                                    }
                                    if (salesRank.IsSetRank())
                                    {
                                        Console.WriteLine("                                Rank");
                                        Console.WriteLine("                                    {0}", salesRank.Rank);
                                    }
                                }
                            }
                            if (product.IsSetLowestOfferListings())
                            {
                                Console.WriteLine("                        LowestOfferListings");
                                LowestOfferListingList        lowestOfferListings    = product.LowestOfferListings;
                                List <LowestOfferListingType> lowestOfferListingList = lowestOfferListings.LowestOfferListing;
                                foreach (LowestOfferListingType lowestOfferListing in lowestOfferListingList)
                                {
                                    Console.WriteLine("                            LowestOfferListing");
                                    if (lowestOfferListing.IsSetQualifiers())
                                    {
                                        Console.WriteLine("                                Qualifiers");
                                        QualifiersType qualifiers = lowestOfferListing.Qualifiers;
                                        if (qualifiers.IsSetItemCondition())
                                        {
                                            Console.WriteLine("                                    ItemCondition");
                                            Console.WriteLine("                                        {0}", qualifiers.ItemCondition);
                                        }
                                        if (qualifiers.IsSetItemSubcondition())
                                        {
                                            Console.WriteLine("                                    ItemSubcondition");
                                            Console.WriteLine("                                        {0}", qualifiers.ItemSubcondition);
                                        }
                                        if (qualifiers.IsSetFulfillmentChannel())
                                        {
                                            Console.WriteLine("                                    FulfillmentChannel");
                                            Console.WriteLine("                                        {0}", qualifiers.FulfillmentChannel);
                                        }
                                        if (qualifiers.IsSetShipsDomestically())
                                        {
                                            Console.WriteLine("                                    ShipsDomestically");
                                            Console.WriteLine("                                        {0}", qualifiers.ShipsDomestically);
                                        }
                                        if (qualifiers.IsSetShippingTime())
                                        {
                                            Console.WriteLine("                                    ShippingTime");
                                            ShippingTimeType shippingTime = qualifiers.ShippingTime;
                                            if (shippingTime.IsSetMax())
                                            {
                                                Console.WriteLine("                                        Max");
                                                Console.WriteLine("                                            {0}", shippingTime.Max);
                                            }
                                        }
                                        if (qualifiers.IsSetSellerPositiveFeedbackRating())
                                        {
                                            Console.WriteLine("                                    SellerPositiveFeedbackRating");
                                            Console.WriteLine("                                        {0}", qualifiers.SellerPositiveFeedbackRating);
                                        }
                                    }
                                    if (lowestOfferListing.IsSetNumberOfOfferListingsConsidered())
                                    {
                                        Console.WriteLine("                                NumberOfOfferListingsConsidered");
                                        Console.WriteLine("                                    {0}", lowestOfferListing.NumberOfOfferListingsConsidered);
                                    }
                                    if (lowestOfferListing.IsSetSellerFeedbackCount())
                                    {
                                        Console.WriteLine("                                SellerFeedbackCount");
                                        Console.WriteLine("                                    {0}", lowestOfferListing.SellerFeedbackCount);
                                    }
                                    if (lowestOfferListing.IsSetPrice())
                                    {
                                        Console.WriteLine("                                Price");
                                        PriceType price1 = lowestOfferListing.Price;
                                        if (price1.IsSetLandedPrice())
                                        {
                                            Console.WriteLine("                                    LandedPrice");
                                            MoneyType landedPrice1 = price1.LandedPrice;
                                            if (landedPrice1.IsSetCurrencyCode())
                                            {
                                                Console.WriteLine("                                        CurrencyCode");
                                                Console.WriteLine("                                            {0}", landedPrice1.CurrencyCode);
                                            }
                                            if (landedPrice1.IsSetAmount())
                                            {
                                                Console.WriteLine("                                        Amount");
                                                Console.WriteLine("                                            {0}", landedPrice1.Amount);
                                            }
                                        }
                                        if (price1.IsSetListingPrice())
                                        {
                                            Console.WriteLine("                                    ListingPrice");
                                            MoneyType listingPrice1 = price1.ListingPrice;
                                            if (listingPrice1.IsSetCurrencyCode())
                                            {
                                                Console.WriteLine("                                        CurrencyCode");
                                                Console.WriteLine("                                            {0}", listingPrice1.CurrencyCode);
                                            }
                                            if (listingPrice1.IsSetAmount())
                                            {
                                                Console.WriteLine("                                        Amount");
                                                Console.WriteLine("                                            {0}", listingPrice1.Amount);
                                            }
                                        }
                                        if (price1.IsSetShipping())
                                        {
                                            Console.WriteLine("                                    Shipping");
                                            MoneyType shipping1 = price1.Shipping;
                                            if (shipping1.IsSetCurrencyCode())
                                            {
                                                Console.WriteLine("                                        CurrencyCode");
                                                Console.WriteLine("                                            {0}", shipping1.CurrencyCode);
                                            }
                                            if (shipping1.IsSetAmount())
                                            {
                                                Console.WriteLine("                                        Amount");
                                                Console.WriteLine("                                            {0}", shipping1.Amount);
                                            }
                                        }
                                    }
                                    if (lowestOfferListing.IsSetMultipleOffersAtLowestPrice())
                                    {
                                        Console.WriteLine("                                MultipleOffersAtLowestPrice");
                                        Console.WriteLine("                                    {0}", lowestOfferListing.MultipleOffersAtLowestPrice);
                                    }
                                }
                            }
                            if (product.IsSetOffers())
                            {
                                Console.WriteLine("                        Offers");
                                OffersList       offers    = product.Offers;
                                List <OfferType> offerList = offers.Offer;
                                foreach (OfferType offer in offerList)
                                {
                                    Console.WriteLine("                            Offer");
                                    if (offer.IsSetBuyingPrice())
                                    {
                                        Console.WriteLine("                                BuyingPrice");
                                        PriceType buyingPrice = offer.BuyingPrice;
                                        if (buyingPrice.IsSetLandedPrice())
                                        {
                                            Console.WriteLine("                                    LandedPrice");
                                            MoneyType landedPrice2 = buyingPrice.LandedPrice;
                                            if (landedPrice2.IsSetCurrencyCode())
                                            {
                                                Console.WriteLine("                                        CurrencyCode");
                                                Console.WriteLine("                                            {0}", landedPrice2.CurrencyCode);
                                            }
                                            if (landedPrice2.IsSetAmount())
                                            {
                                                Console.WriteLine("                                        Amount");
                                                Console.WriteLine("                                            {0}", landedPrice2.Amount);
                                            }
                                        }
                                        if (buyingPrice.IsSetListingPrice())
                                        {
                                            Console.WriteLine("                                    ListingPrice");
                                            MoneyType listingPrice2 = buyingPrice.ListingPrice;
                                            if (listingPrice2.IsSetCurrencyCode())
                                            {
                                                Console.WriteLine("                                        CurrencyCode");
                                                Console.WriteLine("                                            {0}", listingPrice2.CurrencyCode);
                                            }
                                            if (listingPrice2.IsSetAmount())
                                            {
                                                Console.WriteLine("                                        Amount");
                                                Console.WriteLine("                                            {0}", listingPrice2.Amount);
                                            }
                                        }
                                        if (buyingPrice.IsSetShipping())
                                        {
                                            Console.WriteLine("                                    Shipping");
                                            MoneyType shipping2 = buyingPrice.Shipping;
                                            if (shipping2.IsSetCurrencyCode())
                                            {
                                                Console.WriteLine("                                        CurrencyCode");
                                                Console.WriteLine("                                            {0}", shipping2.CurrencyCode);
                                            }
                                            if (shipping2.IsSetAmount())
                                            {
                                                Console.WriteLine("                                        Amount");
                                                Console.WriteLine("                                            {0}", shipping2.Amount);
                                            }
                                        }
                                    }
                                    if (offer.IsSetRegularPrice())
                                    {
                                        Console.WriteLine("                                RegularPrice");
                                        MoneyType regularPrice = offer.RegularPrice;
                                        if (regularPrice.IsSetCurrencyCode())
                                        {
                                            Console.WriteLine("                                    CurrencyCode");
                                            Console.WriteLine("                                        {0}", regularPrice.CurrencyCode);
                                        }
                                        if (regularPrice.IsSetAmount())
                                        {
                                            Console.WriteLine("                                    Amount");
                                            Console.WriteLine("                                        {0}", regularPrice.Amount);
                                        }
                                    }
                                    if (offer.IsSetFulfillmentChannel())
                                    {
                                        Console.WriteLine("                                FulfillmentChannel");
                                        Console.WriteLine("                                    {0}", offer.FulfillmentChannel);
                                    }
                                    if (offer.IsSetItemCondition())
                                    {
                                        Console.WriteLine("                                ItemCondition");
                                        Console.WriteLine("                                    {0}", offer.ItemCondition);
                                    }
                                    if (offer.IsSetItemSubCondition())
                                    {
                                        Console.WriteLine("                                ItemSubCondition");
                                        Console.WriteLine("                                    {0}", offer.ItemSubCondition);
                                    }
                                    if (offer.IsSetSellerId())
                                    {
                                        Console.WriteLine("                                SellerId");
                                        Console.WriteLine("                                    {0}", offer.SellerId);
                                    }
                                    if (offer.IsSetSellerSKU())
                                    {
                                        Console.WriteLine("                                SellerSKU");
                                        Console.WriteLine("                                    {0}", offer.SellerSKU);
                                    }
                                }
                            }
                        }
                    }
                    if (getMatchingProductForIdResult.IsSetError())
                    {
                        Console.WriteLine("                Error");
                        Error error = getMatchingProductForIdResult.Error;
                        if (error.IsSetType())
                        {
                            Console.WriteLine("                    Type");
                            Console.WriteLine("                        {0}", error.Type);
                        }
                        if (error.IsSetCode())
                        {
                            Console.WriteLine("                    Code");
                            Console.WriteLine("                        {0}", error.Code);
                        }
                        if (error.IsSetMessage())
                        {
                            Console.WriteLine("                    Message");
                            Console.WriteLine("                        {0}", error.Message);
                        }
                    }
                }
                if (response.IsSetResponseMetadata())
                {
                    Console.WriteLine("            ResponseMetadata");
                    ResponseMetadata responseMetadata = response.ResponseMetadata;
                    if (responseMetadata.IsSetRequestId())
                    {
                        Console.WriteLine("                RequestId");
                        Console.WriteLine("                    {0}", responseMetadata.RequestId);
                    }
                }
                Console.WriteLine("            ResponseHeaderMetadata");
                Console.WriteLine("                RequestId");
                Console.WriteLine("                    " + response.ResponseHeaderMetadata.RequestId);
                Console.WriteLine("                ResponseContext");
                Console.WriteLine("                    " + response.ResponseHeaderMetadata.ResponseContext);
                Console.WriteLine("                Timestamp");
                Console.WriteLine("                    " + response.ResponseHeaderMetadata.Timestamp);
                Console.WriteLine();
            }
            catch (MarketplaceWebServiceProductsException ex)
            {
                Console.WriteLine("Caught Exception: " + ex.Message);
                Console.WriteLine("Response Status Code: " + ex.StatusCode);
                Console.WriteLine("Error Code: " + ex.ErrorCode);
                Console.WriteLine("Error Type: " + ex.ErrorType);
                Console.WriteLine("Request ID: " + ex.RequestId);
                Console.WriteLine("XML: " + ex.XML);
                Console.WriteLine("ResponseHeaderMetadata: " + ex.ResponseHeaderMetadata);
            }
        }
Ejemplo n.º 14
0
 public GetMatchingProductForIdResponse GetMatchingProductForId(GetMatchingProductForIdRequest request)
 {
     return(this.connection.Call(
                new ImwsProductsServiceClient.Request <GetMatchingProductForIdResponse>("GetMatchingProductForId", typeof(GetMatchingProductForIdResponse), this.servicePath),
                request));
 }
Ejemplo n.º 15
0
        public static void InvokeGetMatchingProductForId(MarketplaceWebServiceProducts service,
                                                         GetMatchingProductForIdRequest request)
        {
            try{
                GetMatchingProductForIdResponse response = service.GetMatchingProductForId(request);

                List <GetMatchingProductForIdResult> getMatchingProductForIdResultList =
                    response.GetMatchingProductForIdResult;
                foreach (
                    GetMatchingProductForIdResult getMatchingProductForIdResult in getMatchingProductForIdResultList)
                {
                    ProductList    products    = getMatchingProductForIdResult.Products;
                    List <Product> productList = products.Product;

                    foreach (Product product in productList)
                    {
                        if (getMatchingProductForIdResult.IsSetProducts())
                        {
                            if (product.IsSetAttributeSets())
                            {
                                //Binding, Format, ASIN, Height, Length, Width, Weight, Product Group, Small Image URL, Title, Sales Rank

                                foreach (var attribute in product.AttributeSets.Any)
                                {
                                    string xml = ProductsUtil.FormatXml((System.Xml.XmlElement)attribute);

                                    XElement element = XElement.Parse(xml);

                                    XNamespace ns2 =
                                        "http://mws.amazonservices.com/schema/Products/2011-10-01/default.xsd";
                                    title         = element.Element(ns2 + "Title").Value;
                                    binding       = element.Element(ns2 + "Binding").Value;
                                    productGroup  = element.Element(ns2 + "ProductGroup").Value;
                                    smallImageUrl =
                                        element.Element(ns2 + "SmallImage").Element(ns2 + "URL").Value;
                                    height = element.Element(ns2 + "ItemDimensions").Element(ns2 + "Height").Value;
                                    length = element.Element(ns2 + "ItemDimensions").Element(ns2 + "Length").Value;
                                    width  = element.Element(ns2 + "ItemDimensions").Element(ns2 + "Width").Value;
                                    weight = element.Element(ns2 + "ItemDimensions").Element(ns2 + "Weight").Value;
                                }
                            }

                            if (product.IsSetIdentifiers())
                            {
                                IdentifierType identifier = product.Identifiers;
                                if (identifier.IsSetMarketplaceASIN())
                                {
                                    ASINIdentifier marketplaceASIN = identifier.MarketplaceASIN;
                                    if (marketplaceASIN.IsSetASIN())
                                    {
                                        ASIN = marketplaceASIN.ASIN;
                                    }
                                }
                            }

                            if (product.IsSetSalesRankings())
                            {
                                int                  i             = 0;
                                SalesRankList        rankings      = product.SalesRankings;
                                List <SalesRankType> salesRankList = rankings.SalesRank;
                                foreach (SalesRankType saleRankings in salesRankList)
                                {
                                    for (; i < 1; i++)
                                    {
                                        if (saleRankings.IsSetRank())
                                        {
                                            salesRank = Convert.ToString(saleRankings.Rank);
                                        }
                                    }
                                }
                            }
                            Console.WriteLine("Height: {0} \nLength: {1} \nWidth: {2} " +
                                              "\nWeight: {3} \nBinding: {4} \nProduct Group: {5} " +
                                              "\nURL: {6} \nTitle: {7} \nASIN: {8} \nSale Rank: {9} \n",
                                              height, length, width, weight, binding, productGroup, smallImageUrl,
                                              title, ASIN, salesRank);
                        }
                    }
                }
            }
            catch (MarketplaceWebServiceProductsException ex) {
                Console.WriteLine("Caught Exception: " + ex.Message);
                Console.WriteLine("Response Status Code: " + ex.StatusCode);
                Console.WriteLine("Error Code: " + ex.ErrorCode);
                Console.WriteLine("Error Type: " + ex.ErrorType);
                Console.WriteLine("Request ID: " + ex.RequestId);
                Console.WriteLine("XML: " + ex.XML);
                Console.WriteLine("ResponseHeaderMetadata: " + ex.ResponseHeaderMetadata);
            }
        }