eBayのカテゴリーツリーを取得する方法 (NEW API)

eBayでは商品を出品する際に商品のカテゴリを選択する必要があります。

カテゴリーを1階層目→2階層目→3階層目と階層毎に選択させてカテゴリー決定させるような
ユーザインタフェースにする場合の方法を紹介します。

 

Taxonomy APIgetCategoryTreeコール及びgetCategorySubtreeコールを使用して
カテゴリーツリーを取得しますが、その前に自身の国のcategoryTreeIdを取得する必要があります。

getDefaultCategoryTreeIdコールを使って、categoryTreeIdを取得します。

 

 

以下のキーに値をセットしてPOSTでリクエストします。

[token] = 取得したtoken

[id] = marketplace_id

※marketplace_idは以下のURLを参考にして下さい。

https://developer.ebay.com/api-docs/commerce/taxonomy/static/supportedmarketplaces.html

 

するとレスポンスは下記のように取得されます。

{“data”:”999″}

※999はcategoryTreeId

 

取得したcategoryTreeIdを使用して、getCategoryTreeコールを使用します。

以下のキーに値をセットしてPOSTでリクエストします。

 

[token] = 取得したtoken

[categoryTreeId] = getDefaultCategoryTreeIdで取得したcategoryTreeId

 

するとレスポンスは下記のように取得されます。

※marketplace_id=eBay_USでコールした場合
指定したmarketplace_idのcategoryTreeNodeLevel=1のデータ(第一階層のカテゴリ)が
レスポンスされます。

 

{
"data": [
{
"categoryTreeNodeLevel": 1,
"categoryName": "Collectibles",
"categoryId": "1"
},
{
"categoryTreeNodeLevel": 1,
"categoryName": "Everything Else",
"categoryId": "99"
},
{
"categoryTreeNodeLevel": 1,
"categoryName": "Toys & Hobbies",
"categoryId": "220"
},
{
"categoryTreeNodeLevel": 1,
"categoryName": "Dolls & Bears",
"categoryId": "237"
},
{
"categoryTreeNodeLevel": 1,
"categoryName": "Stamps",
"categoryId": "260"
},
{
"categoryTreeNodeLevel": 1,
"categoryName": "Books",
"categoryId": "267"
},
{
"categoryTreeNodeLevel": 1,
"categoryName": "Jewelry & Watches",
"categoryId": "281"
},
{
・・・・・・
]
}
   

categoryTreeNodeLevel=2(第2階層)以降のカテゴリーを取得するには
getCategorySubtreeコールを使用します。

 

以下のキーに値をセットしてPOSTでリクエストします。

 

[token] = 取得したtoken
[categoryTreeId] = getDefaultCategoryTreeIdで取得したcategoryTreeId
[categoryId] = getCategoryTreeで取得したcategoryId

   

するとレスポンスは下記のように取得されます。

※marketplace_id=eBay_US、categoryId=1でコールした場合
指定したcategoryTreeNodeLevel=1のデータ(第一階層)の
categoryTreeNodeLevel=2のデータ(第二階層)がレスポンスされます。

 
{
"data": [
{
"categoryTreeNodeLevel": 2,
"categoryName": "Advertising",
"categoryId": "34"
},
{
"categoryTreeNodeLevel": 2,
"categoryName": "Comics",
"categoryId": "63"
},
{
"categoryTreeNodeLevel": 2,
"categoryName": "Sewing (1930-Now)",
"categoryId": "113"
},
{
"categoryTreeNodeLevel": 2,
"categoryName": "Paper",
"categoryId": "124"
},
{
"categoryTreeNodeLevel": 2,
"categoryName": "Disneyana",
"categoryId": "137"
},
{
"categoryTreeNodeLevel": 2,
"categoryName": "Science Fiction & Horror",
"categoryId": "152"
},
{
"categoryTreeNodeLevel": 2,
"categoryName": "Clocks",
"categoryId": "397"
},
{
"categoryTreeNodeLevel": 2,
"categoryName": "Science & Medicine (1930-Now)",
"categoryId": "412"
},
・・・・・・
]
}

 

以降の階層のデータを取得したい場合は、同様の手順でgetCategorySubtreeコールを使用します。

 

詳しくはAPI下記のAPI Referenceを確認してください。

https://developer.ebay.com/api-docs/commerce/taxonomy/resources/methods