Success on various API calls, but no results, despite results in itemSearchURL
I have tried many variations of the find Items Advanced Request call to eBay UK and US, - all return Success but none have any items, though if I paste the item Search URL into a browser there are matches. I have waited 24 hours to see if it was caching but still no results? I also get similar (e.g. successful but zero) results from calls to find Competed Items Request - when it's not timing out with the error: > There is error when calling search > backend: Search Driver exception > Unable to connect to the search node > Backend=
comp-agg-slc2-001.vip.ebay.com > Socket connection to >
comp-agg-slc2-001.vip.ebay.com:9,090 > timed out after 1 milli-seconds Headers: array ( 0 => 'Content-Type:text/xml', 1 => 'X-EBAY-SOA-GLOBAL-ID: EBAY-US', 2 => 'X-EBAY-SOA-OPERATION-NAME: findItemsAdvanced', 3 => 'X-EBAY-SOA-REQUEST-DATA-FORMAT: XML', 4 => 'X-EBAY-SOA-RESPONSE-DATA-FORMAT: XML', 5 => 'X-EBAY-SOA-SERVICE-VERSION: 1.0.0', 6 => 'X-EBAY-SOA-SERVICE-NAME: FindingService', 7 => 'X-EBAY-SOA-SECURITY-APPNAME: [REDACTED]', ) Request: 377 harry,potter true 25 1 SellerInfo Response: Success 1.12.0 2014-03-28T14:54:00.917Z 0 25 0 0
**I am accessing the sandbox - I should have included the url in the code dump:
http://svcs.sandbox.ebay.com/services/search/FindingService/v1** Don't see the problem, unless it's something sandbox related. You are allowed to test Finding in production if that works for you. This works for PHP. Only change was the version to 1.12.0 and its in production. 377 harry,potter true 25 1 SellerInfo '; $callName = 'findItemsAdvanced'; $globalID = 'EBAY-US'; ////////////////////////////////////////////////// $apiVersion = "1.12.0"; $endpoint = "
http://svcs.ebay.com/services/search/FindingService/v1"; $hdrs = "Content-Type: text/xml"; $hdrs = "X-EBAY-SOA-OPERATION-NAME: $callName"; $hdrs = "X-EBAY-SOA-SECURITY-APPNAME: $appID"; $hdrs = "X-EBAY-SOA-SERVICE-VERSION: $apiVersion"; $hdrs = "X-EBAY-SOA-SERVICE-NAME: FindingService"; $hdrs = "X-EBAY-SOA-REQUEST-DATA-FORMAT: XML"; $hdrs = "X-EBAY-SOA-RESPONSE-DATA-FORMAT: XML"; $hdrs = "X-EBAY-SOA-GLOBAL-ID: $globalID"; $ch = curl_init($endpoint); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, $hdrs); curl_setopt($ch, CURLOPT_POSTFIELDS, $request); $response = curl_exec($ch); header("Content-Type: text/xml\r\n"); echo $response; ?>
Thanks for the reply, but my PHP is basically what you've posted (though a lot more complex), and works perfectly, and I'm testing in the sandbox because that's what it's for, no? If there's no error in my code and it returns Ack success then shouldn't the results match those returned by pasting the searchURL into a browser? And if they don't then it's an eBay bug? Otherwise why would I spend ages listing things in the sandbox for testing purposes? My code makes 7 calls to eBay, GetItem, GetSellerList, GetFeedback (Trading API), GetSimilarItems & GetRelatedCategoryItems (Merchandising API), findItemsAdvanced and findCompletedItems (Search API) - and copes with the mental differences between those apis. (Why are two camelCased Xml while one is ProperCased????!!! Why aren't the DTDs the same???? Aaargh. Anyway ...) All calls complete with Ack success (except for findCompletedItems which keeps timing out with the error above. All of these were returning results a few weeks ago. Since then I have changed my code - however it still sends a correctly formatted request and receives a response with Ack success. But no results for anything except the Trading API calls. Now maybe there are no matching completed or related items in the sandbox - but the searchURL shows that at least the search calls should be returning results - and they're not. Any ideas anyone? eBay bug?
**I'm testing in the sandbox because that's what it's for, no? ...... Otherwise why would I spend ages listing things in the sandbox for testing purposes?** Good question. Maybe so you don't have to spend ages creating data in the sandbox and dealing with sandbox bugs and unsupported features. My code as posted, used in sandbox doesn't work either. Removing the descriptionSearch tag or setting it to false fixes the issue. So it looks like that feature isn't supported in sandbox. Did you add that recently? Otherwise something changed at the server. Other things not supported in sandbox:
That's great - I've bookmarked the unsupported features page and removing the description search tag allows me to test my code for that call again. Unfortunately I can't confirm whether / when I changed this - but I know that I added it for a reason and it's not (currently) on the list of unsupported features. Surely either the call should return an error message 'unsupported tag' in the sandbox - or there should be *some* explanation why the itemcount from the 'successful' API call doesn't match the results from pasting the returned searchUrl into a browser? In other words, this is actually an undocumented unsupported feature, which makes it a bug? And the constant time-outs (after 1 milli-second) from the completed item search are also a bug? Or just to be expected when testing in the sandbox? My code for this call was actually fine and works now I've found some suitable keywords - but it's hard to test when the request fails 9 times out of 10 with what seems like a ridiculously short timeout. Is this normal? I do appreciate your help :-)
Yeah no doubt it's a bug or doc issue. You can file a bug report, or wait for them to address it with a fix or doc change. You can add a comment to the findItemsAdvanced page about it too. Otherwise, have to wait until a Dev pops in to answer this. descriptionSearch does cause long searches. That 1ms value makes me think they used timeouts to disable the feature. Test in production when you can and avoid all this.