Can ProductID come back empty even if the listing has one specified in its item specifics?
I'm doing some testing with findItemsByProduct and noticed that I'm getting back some listings where there doesn't appear to be a ProductId element set in the response, but when I go look at the listing on eBay, I can see one in the Item Specifics. Is it expected that this can happen? I looked at a different listing where the ProductId does come back in the response and noticed that on this listing, there's an additional "About this product" section when viewing the listing on the eBay site. In both cases, I can see a UPC code in the Item Specifics but there's only a ProductId in the response for the second item.
Right. I was asking if it's normal to get back an empty or missing ProductId element in the response even when a UPC or other non-ReferenceID value can be found in the item specifics for the listing on the actual web site. Is it expected that that can happen?
Back in May they started suppressing UPC/EAN/ISBN in the productId responses and ProductID entirely in the Shopping API. AFAIK it no longer returns anything but the useless ReferenceID/ePID in the productId tag. The Shopping docs for GetSingle/MultipleItems refer developers to the Trading API GetItem call which is too time/call intensive at one item per request. They've been all over the map about how they handle these identifiers. There was a big push to require UPCs and then they just retracted that information. Presumably, the suppression of UPCs is intended to drive developers to using the eBayProductID/ePID/Reference ID. They can't even figure out what to call it. The productId data still has poor coverage, so there's no simple way to integrate items for price comparison, and we've had to exclude eBay data where we can't match it up. They haven't made any progress in providing a productID based URL for all products (as Amazon does with ASIN). If you need to get products by UPC, the only reliable way to do it is using findItemsAdvanced and plug in the UPC for keywords=. It now understands leading zeroes, so the EAN and GTIN forms are also supported. It also now supports boolean OR search with multiple UPCs, but it doesn't return the UPC with each item, so you have to have some other method if you want to sort the results out or stick to one UPC at a time. It does return the ePID if the item was listed using one, but it isn't smart enough to automatically cross-reference the UPC to the ePID .