eBay Commerce Taxonomy API

This page was created using a beta release of RepreZen API Docs for Confluence from the OpenAPI 3.0 document for eBay's Commerce Taxonomy API as published here.


eBay Commerce Taxonomy API

Version: v1_beta.4.0   •   License: eBay API License Agreement   •   Contact: eBay Inc,


eBay Commerce Taxonomy API

Use the Taxonomy API to discover the most appropriate eBay categories under which sellers can offer inventory items for sale, and the most likely categories under which buyers can browse or search for items to purchase. In addition, the Taxonomy API provides information about the required and recommended category aspects to include in listings, and also has two operations to retrieve parts compatibility information.

Operations

Get a Default Category Tree ID

A given eBay marketplace might use multiple category trees, but one of those trees is considered to be the default for that marketplace. This call retrieves a reference to the default category tree associated with the specified eBay marketplace ID. The response includes only the tree's unique identifier and version, which you can use to retrieve more details about the tree, its structure, and its individual category nodes.

Get a Category Tree

This call retrieves the complete category tree that is identified by the category_tree_id parameter. The value of category_tree_id was returned by the getDefaultCategoryTreeId call in the categoryTreeId field. The response contains details of all nodes of the specified eBay category tree, as well as the eBay marketplaces that use this category tree. Note: This call can return a very large payload, so you are strongly advised to submit the request with the following HTTP header:   Accept-Encoding: application/gzip With this header (in addition to the required headers described under HTTP Request Headers), the call returns the response with gzip compression.

Get a Category Subtree

This call retrieves the details of all nodes of the category tree hierarchy (the subtree) below a specified category of a category tree. You identify the tree using the category_tree_id parameter, which was returned by the getDefaultCategoryTreeId call in the categoryTreeId field. Note: This call can return a very large payload, so you are strongly advised to submit the request with the following HTTP header:   Accept-Encoding: application/gzip With this header (in addition to the required headers described under HTTP Request Headers), the call returns the response with gzip compression.

Get Suggested Categories

This call returns an array of category tree leaf nodes in the specified category tree that are considered by eBay to most closely correspond to the query string q. Returned with each suggested node is a localized name for that category (based on the Accept-Language header specified for the call), and details about each of the category's ancestor nodes, extending from its immediate parent up to the root of the category tree. Note: This call can return a large payload, so you are advised to submit the request with the following HTTP header:   Accept-Encoding: application/gzip With this header (in addition to the required headers described under HTTP Request Headers), the call returns the response with gzip compression. You identify the tree using the category_tree_id parameter, which was returned by the getDefaultCategoryTreeId call in the categoryTreeId field. Important: This call is not supported in the Sandbox environment. It will return a response payload in which the categoryName fields contain random or boilerplate text regardless of the query submitted.

This call returns a list of aspects that are appropriate or necessary for accurately describing items in the specified leaf category. Each aspect identifies an item attribute (for example, color) for which the seller will be required or encouraged to provide a value (or variation values) when offering an item in that category on eBay. For each aspect, getItemAspectsForCategory provides complete metadata, including: The aspect's data type, format, and entry mode Whether the aspect is required in listings Whether the aspect can be used for item variations Whether the aspect accepts multiple values for an item Allowed values for the aspect Use this information to construct an interface through which sellers can enter or select the appropriate values for their items or item variations. Once you collect those values, include them as product aspects when creating inventory items using the Inventory API.

Get Compatibility Properties

This call retrieves the compatible vehicle aspects that are used to define a motor vehicle that is compatible with a motor vehicle part or accessory. The values that are retrieved here might include motor vehicle aspects such as 'Make', 'Model', 'Year', 'Engine', and 'Trim', and each of these aspects are localized for the eBay marketplace. The category_tree_id value is passed in as a path parameter, and this value identifies the eBay category tree. The category_id value is passed in as a query parameter, as this parameter is also required. The specified category must be a category that supports parts compatibility. At this time, this operation only supports parts and accessories listings for cars, trucks, and motorcycles (not boats, power sports, or any other vehicle types). Only the following eBay marketplaces support parts compatibility: eBay US (Motors and non-Motors categories) eBay Canada (Motors and non-Motors categories) eBay UK eBay Germany eBay Australia eBay France eBay Italy eBay Spain

Get Compatibility Property Values

This call retrieves applicable compatible vehicle property values based on the specified eBay marketplace, specified eBay category, and filters used in the request. Compatible vehicle properties are returned in the compatibilityProperties.name field of a getCompatibilityProperties response. One compatible vehicle property applicable to the specified eBay marketplace and eBay category is specified through the required compatibility_property filter. Then, the user has the option of further restricting the compatible vehicle property values that are returned in the response by specifying one or more compatible vehicle property name/value pairs through the filter query parameter. See the documentation in URI parameters section for more information on using the compatibility_property and filter query parameters together to customize the data that is retrieved.

Models

AncestorReference

Field Name

Required

Type

Description

categoryId

false

string

The unique identifier of the eBay ancestor category. Note: The root node of a full default category tree includes the categoryId field, but its value should not be relied upon. It provides no useful information for application development.

categoryName

false

string

The name of the ancestor category identified by categoryId.

categorySubtreeNodeHref

false

string

The href portion of the getCategorySubtree call that retrieves the subtree below the ancestor category node.

categoryTreeNodeLevel

false

integer

The absolute level of the ancestor category node in the hierarchy of its category tree. Note: The root node of any full category tree is always at level 0.

Aspect

Field Name

Required

Type

Description

aspectConstraint

false

object

This type contains information about the formatting, occurrence, and support of an aspect.

aspectValues

false

object[]

Contains a list of valid values for this aspect (for example: Red, Green, and Blue), along with any constraints on those values.

localizedAspectName

false

string

The localized name of this aspect (for example: Colour on the eBay UK site). Note: This name is always localized for the specified marketplace.

AspectConstraint

Field Name

Required

Type

Description

aspectApplicableTo

false

string[]

This value indicate if the aspect identified by the aspects.localizedAspectName field is a product aspect (relevant to catalog products in the category) or an item/instance aspect, which is an aspect whose value will vary based on a particular instance of the product.

aspectDataType

false

string

The data type of this aspect. For implementation help, refer to <a href='https://developer.ebay.com/devzone/rest/api-ref/taxonomy/types/AspectDataTypeEnum.html'>eBay API documentation</a>

aspectEnabledForVariations

false

boolean

A value of true indicates that this aspect can be used to help identify item variations.

aspectFormat

false

string

Returned only if the value of aspectDataType identifies a data type that requires specific formatting. Currently, this field provides formatting hints as follows: DATE: YYYY, YYYYMM, YYYYMMDD NUMBER: int32, double

aspectMaxLength

false

integer

The maximum length of the item/instance aspect's value. The seller must make sure not to exceed this length when specifying the instance aspect's value for a product. This field is only returned for instance aspects.

aspectMode

false

string

The manner in which values of this aspect must be specified by the seller (as free text or by selecting from available options). For implementation help, refer to <a href='https://developer.ebay.com/devzone/rest/api-ref/taxonomy/types/AspectModeEnum.html'>eBay API documentation</a>

aspectRequired

false

boolean

A value of true indicates that this aspect is required when offering items in the specified category.

aspectUsage

false

string

The enumeration value returned in this field will indicate if the corresponding aspect is recommended or optional. Note: This field is always returned, even for hard-mandated/required aspects (where aspectRequired: true). The value returned for required aspects will be RECOMMENDED, but they are actually required and a seller will be blocked from listing or revising an item without these aspects. For implementation help, refer to <a href='https://developer.ebay.com/devzone/rest/api-ref/taxonomy/types/AspectUsageEnum.html'>eBay API documentation</a>

itemToAspectCardinality

false

string

Indicates whether this aspect can accept single or multiple values for items in the specified category. For implementation help, refer to <a href='https://developer.ebay.com/devzone/rest/api-ref/taxonomy/types/ItemToAspectCardinalityEnum.html'>eBay API documentation</a>

AspectMetadata

Field Name

Required

Type

Description

aspects

false

object[]

A list of item aspects (for example, color) that are appropriate or necessary for accurately describing items in a particular leaf category. Each category has a different set of aspects and different requirements for aspect values. Sellers are required or encouraged to provide one or more acceptable values for each aspect when offering an item in that category on eBay.

AspectValue

Field Name

Required

Type

Description

localizedValue

false

string

The localized value of this aspect. Note: This value is always localized for the specified marketplace.

valueConstraints

false

object[]

Not returned if the value of the localizedValue field can always be selected for this aspect of the specified category. Contains a list of the dependencies that identify when the value of the localizedValue field is available for the current aspect. Each dependency specifies the values of another aspect of the same category (a control aspect), for which the current value of the current aspect can also be selected by the seller. Example: A shirt is available in three sizes and three colors, but only the Small and Medium sizes come in Green. Thus for the Color aspect, the value Green is constrained by its dependency on Size (the control aspect). Only when the Size aspect value is Small or Medium, can the Color aspect value of Green be selected by the seller.

BaseCategoryTree

Field Name

Required

Type

Description

categoryTreeId

false

string

The unique identifier of the eBay category tree for the specified marketplace.

categoryTreeVersion

false

string

The version of the category tree identified by categoryTreeId. It's a good idea to cache this value for comparison so you can determine if this category tree has been modified in subsequent calls.

Category

Field Name

Required

Type

Description

categoryId

false

string

The unique identifier of the eBay category within its category tree. Note: The root node of a full default category tree includes the categoryId field, but its value should not be relied upon. It provides no useful information for application development.

categoryName

false

string

The name of the category identified by categoryId.

CategorySubtree

Field Name

Required

Type

Description

categorySubtreeNode

false

object

This type contains information about all nodes of a category tree or subtree hierarchy, including and below the specified Category, down to the leaf nodes. It is a recursive structure.

categoryTreeId

false

string

The unique identifier of the eBay category tree to which this subtree belongs.

categoryTreeVersion

false

string

The version of the category tree identified by categoryTreeId. It's a good idea to cache this value for comparison so you can determine if this category tree has been modified in subsequent calls.

CategorySuggestion

Field Name

Required

Type

Description

category

false

object

This type contains information about a particular eBay category.

categoryTreeNodeAncestors

false

object[]

An ordered list of category references that describes the location of the suggested category in the specified category tree. The list identifies the category's ancestry as a sequence of parent nodes, from the current node's immediate parent to the root node of the category tree. Note: The root node of a full default category tree includes categoryId and categoryName fields, but their values should not be relied upon. They provide no useful information for application development.

categoryTreeNodeLevel

false

integer

The absolute level of the category tree node in the hierarchy of its category tree. Note: The root node of any full category tree is always at level 0.

relevancy

false

string

This field is reserved for internal or future use.

CategorySuggestionResponse

Field Name

Required

Type

Description

categorySuggestions

false

object[]

Contains details about one or more suggested categories that correspond to the provided keywords. The array of suggested categories is sorted in order of eBay's confidence of the relevance of each category (the first category is the most relevant). Important: This call is not supported in the Sandbox environment. It will return a response payload in which the categoryName fields contain random or boilerplate text regardless of the query submitted.

categoryTreeId

false

string

The unique identifier of the eBay category tree from which suggestions are returned.

categoryTreeVersion

false

string

The version of the category tree identified by categoryTreeId. It's a good idea to cache this value for comparison so you can determine if this category tree has been modified in subsequent calls.

CategoryTree

Field Name

Required

Type

Description

applicableMarketplaceIds

false

string[]

A list of one or more identifiers of the eBay marketplaces that use this category tree.

categoryTreeId

false

string

The unique identifier of this eBay category tree.

categoryTreeVersion

false

string

The version of this category tree. It's a good idea to cache this value for comparison so you can determine if this category tree has been modified in subsequent calls.

rootCategoryNode

false

object

This type contains information about all nodes of a category tree or subtree hierarchy, including and below the specified Category, down to the leaf nodes. It is a recursive structure.

CategoryTreeNode

Field Name

Required

Type

Description

category

false

object

This type contains information about a particular eBay category.

categoryTreeNodeLevel

false

integer

The absolute level of the current category tree node in the hierarchy of its category tree. Note: The root node of any full category tree is always at level 0.

childCategoryTreeNodes

false

object[]

An array of one or more category tree nodes that are the immediate children of the current category tree node, as well as their children, recursively down to the leaf nodes. Returned only if the the current category tree node is not a leaf node (the value of leafCategoryTreeNode is false).

leafCategoryTreeNode

false

boolean

A value of true indicates that the current category tree node is a leaf node (it has no child nodes). A value of false indicates that the current node has one or more child nodes, which are identified by the childCategoryTreeNodes array. Returned only if the value of this field is true.

parentCategoryTreeNodeHref

false

string

The href portion of the getCategorySubtree call that retrieves the subtree below the parent of this category tree node. Not returned if the current category tree node is the root node of its tree.

CompatibilityProperty

Field Name

Required

Type

Description

name

false

string

This is the actual name of the compatible vehicle property as it is known on the specified eBay marketplace and in the eBay category. This is the string value that should be used in the compatibility_property and filter query parameters of a getCompatibilityPropertyValues request URI. Typical vehicle properties are 'Make', 'Model', 'Year', 'Engine', and 'Trim', but will vary based on the eBay marketplace and the eBay category.

localizedName

false

string

This is the localized name of the compatible vehicle property. The language that is used will depend on the user making the call, or based on the language specified if the Content-Language HTTP header is used. In some instances, the string value in this field may be the same as the string in the corresponding name field.

CompatibilityPropertyValue

Field Name

Required

Type

Description

value

false

string

Each value field shows one applicable compatible vehicle property value. The values that are returned will depend on the specified eBay marketplace, specified eBay category, and filters in the request.

Error

Field Name

Required

Type

Description

category

false

string

Identifies the type of erro.

domain

false

string

Name for the primary system where the error occurred. This is relevant for application errors.

errorId

false

integer

A unique number to identify the error.

inputRefIds

false

string[]

An array of request elements most closely associated to the error.

longMessage

false

string

A more detailed explanation of the error.

message

false

string

Information on how to correct the problem, in the end user's terms and language where applicable.

outputRefIds

false

string[]

An array of request elements most closely associated to the error.

parameters

false

object[]

An array of name/value pairs that describe details the error condition. These are useful when multiple errors are returned.

subdomain

false

string

Further helps indicate which subsystem the error is coming from. System subcategories include: Initialization, Serialization, Security, Monitoring, Rate Limiting, etc.

ErrorParameter

Field Name

Required

Type

Description

name

false

string

The object of the error.

value

false

string

The value of the object.

GetCompatibilityMetadataResponse

Field Name

Required

Type

Description

compatibilityProperties

false

object[]

This container consists of an array of all compatible vehicle properties applicable to the specified eBay marketplace and eBay category ID.

GetCompatibilityPropertyValuesResponse

Field Name

Required

Type

Description

compatibilityPropertyValues

false

object[]

This array contains all compatible vehicle property values that match the specified eBay marketplace, specified eBay category, and filters in the request. If the compatibility_property parameter value in the request is 'Trim', each value returned in each value field will be a different vehicle trim, applicable to any filters that are set in the filter query parameter of the request, and also based on the eBay marketplace and category specified in the call request.

ValueConstraint

Field Name

Required

Type

Description

applicableForLocalizedAspectName

false

string

The name of the control aspect on which the current aspect value depends.

applicableForLocalizedAspectValues

false

string[]

Contains a list of the values of the control aspect on which this aspect's value depends. When the control aspect has any of the specified values, the current value of the current aspect will also be available.