Возможно ли получить список категорий eBay через API программно?

Моя цель – получить список категорий eBay программно.

Похоже, что метод GetCategories доступен только из торгового API. Если я правильно понимаю, для входа в Торговый API требуется взаимодействие с пользователем: http://developer.ebay.com/DevZone/XML/docs/HowTo/Tokens/GettingTokens.html

Есть ли другой способ получить список категорий eBay программно?

Я использую Drupal 7, поэтому PHP.

Вам не нужен токен, чтобы получить категории. Все, что вам нужно, это ваш App-ID

Ссылка ниже с вашим APP-идентификатором вернет список категорий XML с сайта: UK (siteid = 3) Setting CategoryID = -1 запускает список на корневом уровне, вы можете начать с любой категории, просто используйте IncludeSelector = ChildCategories, чтобы получить дети

http://open.api.ebay.com/Shopping?callname=GetCategoryInfo&appid=YOUR-APP-ID&siteid=3&CategoryID=-1&version=729&IncludeSelector=ChildCategories

Теперь просто используйте SimpleXML или что-то другое для синтаксического анализа.

Возможно, это было правильно в то время, однако этот вызов в API теперь возвращает только один уровень категорий, а не всю иерархию. Чтобы сделать это для всего сайта, в одном запросе (который может стать довольно большим) вам нужно использовать вызов GetCategories с допустимым токеном Ebay и указать <DetailLevel>ReturnAll</DetailLevel> и <ViewAllNodes>true</ViewAllNodes> ,

Также обратите внимание, что вам нужно будет регулярно обновлять их и предоставлять алгоритм сопоставления, поскольку Ebay истекает и переназначает категории с новыми именами / идентификаторами с течением времени.

Вы можете использовать следующий URL-адрес, чтобы получить список категорий верхнего уровня. Как только вы получите список категорий, вы можете проверить, является ли [LeafCategory] истинным или ложным. Если это верно для категории, вы можете снова получить подкатегорию, указав categoryParentId . Вы можете использовать php Curl для получения результатов, а затем вы можете использовать simple_xml_object для получения возвращаемого ответа xml $url= ' http://open.api.ebay.com/Shopping?callname=GetCategoryInfo&appid=YOUR-APP-ID&siteid=3&CategoryID=-1&version=729&IncludeSelector=ChildCategories '; $sXML = download_page($url); $oXML = simplexml_load_string($sXML); print_r($oXML);exit; function download_page($path){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$path); curl_setopt($ch, CURLOPT_FAILONERROR,1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_TIMEOUT, 15); $retValue = curl_exec($ch); curl_close($ch); return $retValue; } $url= ' http://open.api.ebay.com/Shopping?callname=GetCategoryInfo&appid=YOUR-APP-ID&siteid=3&CategoryID=-1&version=729&IncludeSelector=ChildCategories '; $sXML = download_page($url); $oXML = simplexml_load_string($sXML); print_r($oXML);exit; function download_page($path){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$path); curl_setopt($ch, CURLOPT_FAILONERROR,1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_TIMEOUT, 15); $retValue = curl_exec($ch); curl_close($ch); return $retValue; }