eBay Trading APIVersion 1077

GetCategorySpecifics

Use this call to retrieve the most popular Item Specifics that sellers can use when they list items in certain categories.

Usage Details

Item Specifics are name-value pairs that describe typical aspects of items in a particular category. They enable sellers to classify items by presenting descriptive details in a structured way. For example, in a jewelry category, you might describe a locket using "Gemstone=Amber" (where "Gemstone" is the name and "Amber" is the value), but in a Washers & Dryers category, you might use "Type=Top-Loading" instead.

GetCategorySpecifics returns the most popular custom Item Specific names and values for each category you request. (eBay determines the popularity based on several factors, such as the number of recent listings and/or recently sold listings in the same category that have used the same name or value.)

Check GetCategoryFeatures.ItemSpecificsEnabled to determine which categories support listing with custom Item Specifics.

Item Specifics Recommendations in eBay Listings

When you are listing an item, eBay recommends that you consider using popular names and values in your Item Specifics, because standard terms can help buyers (and comparison shopping tools) understand the details of your item more easily.

The names and values returned in GetCategorySpecifics are more likely to be indexed for title and description searches in the future. If you don't see a name or value that applies to your item, you can add your own custom names and values in your listing request. (If that name or value becomes popular, it may be recommended in these results over time.)

Note that GetCategorySpecifics may return recommendations for categories that don't currently support custom Item Specifics in listing requests. Therefore, check GetCategoryFeatures.ItemSpecificsEnabled to determine which categories support listing with custom Item Specifics.

Note that if ConditionID is supported for a category (per GetCategoryFeatures), recommendations related to the Condition item specifics are suppressed with request version 661 and higher in the sandbox and with request version 667 and higher in production.

Downloading Recommendations for All Categories at Once

In the Trading API, this call enables you to retrieve recommendations for a limited number of categories at a time (see details in the table below). If you need data for more categories, download the data by making multiple calls to GetCategorySpecifics.

For applications that support a very wide variety of categories, it may be more practical to use the downloadFile call in the File Transfer API to download a single GetCategorySpecifics response that contains custom Item Specific recommendations for all categories on a given site. The GetCategorySpecifics response is returned as a .zip file attachment. It uses the Recommendations node.

Here's a typical way to use this approach:

  1. In the Trading API, call GetCategorySpecifics for a particular site (e.g., site ID 0) and set CategorySpecificsFileInfo to true.
    The response includes FileReferenceID and TaskReferenceID. These IDs identify a particular file that contains recommendations for the specified site.
  2. Pass these two IDs as input to the downloadFile call in the File Transfer API.
    downloadFile returns a standard "Success" response, plus a .zip file.
  3. Extract the GetCategorySpecifics response from the .zip file.
    The XML file contains all available recommendations for all categories on the site.
  4. Once every day or two, call GetCategorySpecifics again to see if the FileReferenceID and TaskReferenceID have changed. If they have changed, use the new IDs to download the latest version of the file.

The downloadable GetCategorySpecifics response file is updated every few days. When this occurs, eBay generates new file reference and task reference IDs for the new file. A different file (with different IDs) is associated with each eBay site.

Note: You don't need to learn about (or use) Large Merchant Services or the Bulk Data Exchange API in order to use the downloadFile call in the File Transfer API.

If you call GetCategoryFeatures, you may detect that custom Item Specifics have been newly enabled in certain categories since you last downloaded recommendations. In this case, if the file IDs returned by GetCategorySpecifics haven't changed, you can call GetCategorySpecifics directly to retrieve any new recommendations for those specific categories.

Each time you call GetCategorySpecifics, store the response data locally and use that data to fill in recommendations for a listing. Periodically (once a day or weekly, depending on your use case), check to see if the data has changed.

The downloadFile call in the File Transfer API supports both SOAP and XML requests and responses. However, the GetCategorySpecifics response in the .zip file is formatted as an XML-style response (without the SOAP envelope). If your application requires the response in a a SOAP envelope, you can insert it like this (the inserted portion is in bold):

<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soapenv:Body>
    <GetCategorySpecificsResponse xmlns="urn:ebay:apis:eBLBaseComponents">
      <Timestamp>2009-04-01T08:57:56.832Z</Timestamp>
      <Ack>Success</Ack>
      <Version>611</Version>
      <Build>e611_core_Bundled_8249970_R1</Build>
      <!-- ... etc. ... -->
    </GetCategorySpecificsResponse>
  </soapenv:Body>
</soapenv:Envelope>

Testing GetCategorySpecifics

You can test this call in the Sandbox. Use GetCategoryFeatures and GetCategories to find categories that have custom Item Specifics enabled. Use GetCategoryFeatures to determine which categories currently support custom Item Specifics. For the categories (or parent categories) that support custom Item Specifics, it returns ItemSpecificsEnabled as Enabled.

Pass several categories in the request, so that you can get multiple categories with recommendations in the response.

Related Information

See also the reference documentation for these calls:



Input

See also Samples.

The box below lists all fields that could be included in the call request. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

See also the Deprecated Objects link above. Fields presented in this color are deprecated, and fields presented in this color are (or soon will be) non-operational.

The XML prototype does not include requester credentials. This is a documentation limitation only (see Standard Requester Credentials for Making Calls).

<?xml version="1.0" encoding="utf-8"?>
<GetCategorySpecificsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <!-- Call-specific Input Fields -->
  <CategoryID> string </CategoryID>
  <!-- ... more CategoryID values allowed here ... -->
  <CategorySpecific> CategoryItemSpecificsType
    <CategoryID> string </CategoryID>
    <!-- ... more CategoryID values allowed here ... -->
    <ItemSpecifics> NameValueListArrayType
      <NameValueList> NameValueListType
        <Name> string </Name>
        <Value> string </Value>
        <!-- ... more Value values allowed here ... -->
      </NameValueList>
      <!-- ... more NameValueList nodes allowed here ... -->
    </ItemSpecifics>
  </CategorySpecific>
  <!-- ... more CategorySpecific nodes allowed here ... -->
  <CategorySpecificsFileInfo> boolean </CategorySpecificsFileInfo>
  <ExcludeRelationships> boolean </ExcludeRelationships>
  <IncludeConfidence> boolean </IncludeConfidence>
  <LastUpdateTime> dateTime </LastUpdateTime>
  <MaxNames> int </MaxNames>
  <MaxValuesPerName> int </MaxValuesPerName>
  <Name> string </Name>
  <!-- Standard Input Fields -->
  <ErrorLanguage> string </ErrorLanguage>
  <MessageID> string </MessageID>
  <Version> string </Version>
  <WarningLevel> WarningLevelCodeType </WarningLevel>
</GetCategorySpecificsRequest>
Argument Type Occurrence Meaning
Call-specific Input Fields [Jump to standard fields]
CategoryID string Conditional,
repeatable: [0..100]
A unique identifer for an eBay leaf-level category. Recommended Item Specifics names and values will be retrieved for each eBay category that is specified. Up to 100 CategoryID values may be specified in one call.

A GetCategorySpecifics call request requires at least one of the following: a CategoryID value, a CategorySpecifics.CategoryID value, or the CategorySpecificsFileInfo field with its value set to true. CategoryID values and CategorySpecific.CategoryID values can both be used in the same request.

Keep in mind that a high number of specified categories can result in longer response times and larger result sets. If your call request happens to time out, you might want specify fewer categories. If any CategoryID values are specified more than once, only the first instance will be used.
CategorySpecific CategoryItemSpecificsType Conditional,
repeatable: [0..275]
This container can be used instead of, or in conjunction with CategoryID values specified at the call request root level. The CategorySpecific container can actually be more powerful since you can pass in multiple Category ID and Item Specifics name combinations, and if you specify CategoryID values at the root level, only one (Item Specifics) Name value can be used.

A GetCategorySpecifics call request requires at least one of the following: a CategoryID value, a CategorySpecifics.CategoryID value, or the CategorySpecificsFileInfo field with its value set to true. CategoryID values and CategorySpecific.CategoryID values can both be used in the same request.

Keep in mind that a high number of specified categories can result in longer response times and larger result sets. If your call request happens to time out, you might want specify fewer categories. If any CategorySpecifics.CategoryID values are specified more than once, only the first instance will be used.
CategorySpecific.CategoryID string Conditional,
repeatable: [0..100]
An eBay category ID is passed into this field to identify the eBay category for which the seller is providing Item Specific name-value(s) pairs. Multiple CategoryID fields can be passed in if the Item Specific name-value(s) pairs are applicable for multiple categories. However, more categories can result in longer call response times. If your request times out, specify fewer category IDs.

Note: The call request requires either one or more CategoryID values (at the root level), one or more CategorySpecific.CategoryID values, or the CategorySpecificsFileInfo boolean field. The CategorySpecificsFileInfo field is only used if the user plans to use the downloadFile call of the FileTransfer API to retrieve Item Specifics. CategoryID and CategorySpecific.CategoryID can both be used in the same call request.
Max length: 10.
CategorySpecific.ItemSpecifics NameValueListArrayType Conditional This container is used to input customized Item Specific name-value(s) pairs for a specific category to discover if eBay has better name or value recommendations for that Item Specific. The Item Specific name can be an arbitrary name that the user wants to check, or it could be a name that was returned in a prior GetCategorySpecifics response. At least one NameValueList container must be used if the CategorySpecific container is used.
CategorySpecific.ItemSpecifics
  .NameValueList
NameValueListType Conditional,
repeatable: [0..*]
For the AddItem family of calls: Contains the name and value(s) for an Item Specific. Only required when the ItemSpecifics container is specified.

For the AddFixedPriceItem family of calls: The same NameValueList schema is used for the ItemSpecifics node, the VariationSpecifics node, and the VariationSpecifcsSet node.

If the listing has varations, any name that you use in the VariationSpecifics and VariationSpecificsSet nodes can't be used in the ItemSpecifics node.
When you list with Item Variations:
  • Specify shared Item Specifics (e.g., Brand) in the ItemSpecifics node.
  • Specify up to five VariationSpecifics in each Variation node.
  • Specify all applicable names with all their supported values in the VariationSpecificSet node.
See the Variation sample in the AddFixedPriceItem call reference for examples.

For PlaceOffer: Required if the item being purchased includes Item Variations.

Note: As of August 30, 2018, eBay US sellers who ship to California are required to pass in a 'California Prop 65 Warning' item specific if the item in the listing contains one or more chemicals known to be harmful to human health. The warning can be customized by the seller, but should contain the following information:
  • The name of at least one listed chemical that prompted the warning
  • Text stating that the product 'can expose you to' the chemical(s) in the product
  • The URL for OEHHA's new Proposition 65 warnings website, which is www.P65Warnings.ca.gov
Unlike standard item specifics that allow a maximum of 65 characters in the Value field, the matching value for the 'California Prop 65 Warning' item specific allows up to 800 characters of text. When a seller passes in this item specific, eBay will automatically insert a warning symbol icon for the listing.
CategorySpecific.ItemSpecifics
  .NameValueList.Name
string Conditional Depending on the call and context, this value is either a name of an Item/Category/Variation Specific, or a Parts Compatibility name.

For the AddItem and AddFixedPriceItem families of calls: In the Item.ItemSpecifics context, this can be any name that the seller wants to use. However, to help buyers find items more easily, it is a good idea to try to use a recommended name when possible (see GetCategorySpecifics). You can't specify the same name twice within the same listing.

For the AddFixedPriceItem family of calls: In the VariationSpecifics context, this can be any name that the seller wants to use, unless the VariationsEnabled flag is false for the name in the GetCategorySpecifics response. For example, for some categories eBay may recommend that you only use "Brand" as a shared name at the Item level, not in variations.

For the AddFixedPriceItem family of calls: In the Compatibility.NameValueList context, this value is a motor vehicle aspect such as Year, Make, and Model. A Compatibility.NameValueList container is applicable for motor vehicle parts and accessories listings.

For GetCategorySpecifics: This is a recommended (popular) name to use for items in the specified category (e.g., "Brand" might be recommended, not "Manufacturer").

For PlaceOffer: Required if the item being purchased includes Item Variations.

Note: For mandatory and recommended item specifics that are returned in the GetCategorySpecifics call, the seller should pass in the name of these item specifics just as they are shown in the GetCategorySpecifics response. Similarly, for PBSE categories, the seller should pass in the name of instance aspects just as they are shown in the GetCategorySpecifics response. Instance aspects are additional details unique to a specific item or listing that a seller can include along with the product aspects that are already defined in the eBay Catalog product associated with the listing. Instance aspects common to many PBSE categories include 'Bundle Description' and 'Modification Description'. As of August 30, 2018, eBay US sellers who ship to California are required to pass in a 'California Prop 65 Warning' item specific if the item in the listing contains one or more chemicals known to be harmful to human health. This item specific is passed at the listing level for both single-variation and multiple-variation listings. The 'California Prop 65 Warning' is considered an instance specific because it will be retained on the listing even when the seller lists in a PBSE category. Note: If Brand and MPN (Manufacturer Part Number) are being used to identify product variations in a multiple-variation listing, the Brand must be specified at the item level (ItemSpecifics container) and the MPN for each product variation must be specified at the variation level (VariationSpecifics container). The Brand name must be the same for all variations within a single listing.
Max length: 65.
CategorySpecific.ItemSpecifics
  .NameValueList.Value
string Conditional,
repeatable: [0..*]
Depending on the call and context, this value is either the value of an Item/Category/Variation Specific, a Parts Compatibility value, or a product identifier.

For the AddItem family of calls: If you specify multiple values for Item Specifics, eBay only stores the first one, unless GetCategorySpecifics indicates that the corresponding name supports multiple values.

For the AddFixedPriceItem family of calls: If you specify multiple values for Item Specifics or Variation Specifics, eBay only stores the first one, unless GetCategorySpecifics indicates that the corresponding name supports multiple values.

In VariationSpecificSet, you typically specify multiple Value fields for each name. For example, if Name = Size, you would specify all size values that you wan to offer in the listing.

For the Compatibility.NameValueList context, this is the corresponding value of a motor vehicle aspect such as Year, Make, and Model. A Compatibility.NameValueList container is applicable for motor vehicle parts and accessories listings.

For GetCategorySpecifics: The most highly recommended values are returned first. For these calls, Value is only returned when recommended values are available.

For PlaceOffer: Required if the item being purchased includes Item Variations.


Note: The standard maximum length for the value of an item specific is 65, but the maximum allowed length increases for instance aspects such as 'Bundle Description' and 'Modification Description'. The maximum allowed length for these instance aspects are returned in the GetCategorySpecifics call. The maximum allowed length for the new 'California Prop 65 Warning' item specific is 800 characters. For more information about the 'California Prop 65 Warning' item specific, see the ItemSpecifics.NameValueList field description.
Max length: 65 (but longer for some instance aspects, including 800 for 'California Prop 65 Warning').
CategorySpecificsFileInfo boolean Conditional If this boolean field is included and set to true, the response includes a FileReferenceID and TaskReferenceID value. Use these identifiers as inputs to the downloadFile call in the eBay File Transfer API. That API lets you retrieve a single (bulk) GetCategorySpecifics response with all the Item Specifics recommendations available for the requested site ID. (The downloadFile call downloads a .zip file as an attachment.)

Either the CategorySpecificsFileInfo field or one or more CategoryID and/or CategorySpecific.CategoryID values are required in a GetCategorySpecifics call.

Note: You can use the File Transfer API without using or learning about the Bulk Data Exchange API or other Large Merchant Services APIs.

See downloadFile in the File Transfer API.

ExcludeRelationships boolean Optional If this boolean field is included and set to true, the Relationship container will not be returned for any Item Specifics name or value recommendations. Relationship recommendations tell you whether an Item Specific has a logical dependency another Item Specific.

For example, in a clothing category, Size Type could be recommended as a parent of Size, because Size=Small would mean something different to buyers depending on whether Size Type=Petite or Size Type=Plus.

In general, it is a good idea to retrieve and use relationship recommendations, as this data can help buyers find the items they want more easily.
Default: false.
IncludeConfidence boolean Optional If this boolean field is included and set to true, eBay's level of confidence in the popularity of each Item Specific name and value for the specified category is returned in the response. Some sellers may find this useful when choosing whether to use eBay's recommendation or their own Item Specifics names or values.

If this field is used, either one or more CategoryID values and/or one or more CategorySpecific.CategoryID values must be specified. If you try to use this field solely with the CategorySpecificsFileInfo field, the request fails and no TaskReferenceID or FileReferenceID values are returned.
Default: false.
LastUpdateTime dateTime Conditional This dateTime filter can be included and used if the user only wants to check for recently-added Item Specifics names and values for one or more categories. If this filter is used, the Item Specifics recommendation engine will only check for Item Specifics names and values that have been added/changed since the date that was passed in to this field. If this field is used, the call will not return any Item Specifics data; it will only return the Recommendations.Updated boolean field for each specified eBay category. A true value in this field will indicate that the recommended Item Specifics names/values for the eBay category have changed since the timestamp passed in the LastUpdateTime field, and a false value in this field will indicate that the recommended Item Specifics names/values for the eBay category have not changed since the timestamp passed in the LastUpdateTime field.

Typically, you will pass in the timestamp value that was returned the last time you refreshed the list of Item Specifics names and values for the same categories. If the Recommendations.Updated flag returns true for any eBay categories in the response, you will want to call GetCategorySpecifics again for those eBay categories to get the latest names and values. As downloading all the data may affect your application's performance, it may help to only download Item Specifics data for an eBay category if the data has changed since you last checked.
MaxNames int Optional This field can be used if you want to limit the number of Item Specifics names that are returned for each eBay category. If you only wanted to retrieve the three most popular Item Specifics names per category, you would include this field and set its value to 3.
Min: 1. Max: 25. Default: 25.
MaxValuesPerName int Optional This field can be used if you want to limit the number of Item Specifics values (for each Item Specifics name) that are returned for each eBay category. If you only wanted to retrieve the 10 most popular Item Specifics values per Item Specifics name per category, you would include this field and set its value to 10.
Min: 1. Max: 2147483647. Default: 25.
Name string Optional This field can be used if you already have an Item Specific name in mind, and you only want the recommended values for this Item Specifics name. If you specify multiple eBay categories in the request, the recommendation engine may find a matching Item Specifics name for some categories, but not for others. For eBay categories where the Item Specifics name is not found, recommended Item Specifics names and values will be returned. The Item Specifics name passed in this field is case-sensitive, and wildcards are not supported.
Max length: 30.
Standard Input Fields  
ErrorLanguage string Optional Use ErrorLanguage to return error strings for the call in a different language from the language commonly associated with the site that the requesting user is registered with. Specify the standard RFC 3066 language identification tag (e.g., en_US).

ID Country
en_AU Australia
de_AT Austria
nl_BE Belgium (Dutch)
fr_BE Belgium (French)
en_CA Canada
fr_CA Canada (French)
zh_CN China
fr_FR France
de_DE Germany
zh_HK Hong Kong
en_IN India
en_IE Ireland
it_IT Italy
nl_NL Netherlands
en_SG Singapore
es_ES Spain
de_CH Switzerland
en_GB United Kingdom
en_US United States

See Tags for the Identification of Languages.

MessageID string Optional Most Trading API calls support a MessageID element in the request and a CorrelationID element in the response. If you pass in a MessageID in a request, the same value will be returned in the CorrelationID field in the response. Pairing these values can help you track and confirm that a response is returned for every request and to match specific responses to specific requests. If you do not pass a MessageID value in the request, CorrelationID is not returned.

Note: GetCategories is designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, the MessageID and CorrelationID fields aren't applicable. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, MessageID and CorrelationID are applicable.
Version string Conditional The version number of the API code that you are programming against (e.g., 859). The version you specify for a call has these basic effects:
  • It indicates the version of the code lists and other data that eBay should use to process your request.
  • It indicates the schema version you are using.
You need to use a version that is greater than or equal to the lowest supported version.
For the SOAP API: If you are using the SOAP API, this field is required. Specify the version of the WSDL your application is using.

For the XML API: If you are using the XML API, this field has no effect. Instead, specify the version in the X-EBAY-API-COMPATIBILITY-LEVEL HTTP header. (If you specify Version in the body of an XML API request and it is different from the value in the HTTP header, eBay returns an informational warning that the value in the HTTP header was used instead.)

See:
    Routing the Request (Gateway URLs)
    eBay Schema Versioning Strategy
    Lowest Supported Version

WarningLevel WarningLevelCodeType Optional Controls whether or not to return warnings when the application passes unrecognized or deprecated elements in a request.

An unrecognized element is one that is not defined in any supported version of the schema. Schema element names are case-sensitive, so using WarningLevel can also help you remove any potential hidden bugs within your application due to incorrect case or spelling in field names before you put your application into the Production environment.

WarningLevel only validates elements; it doesn't validate XML attributes. It also doesn't control warnings related to user-entered strings or numbers, or warnings for logical errors.

We recommend that you only use this during development and debugging. Do not use this in requests performed in the Production environment.

Applicable values:

High
(in) The WarningLevel value is set to High if the user wishes to receive warnings when the application passes unrecognized or deprecated elements in an API call request. Setting the WarningLevel value to High is not recommended in a production environment. Instead, it should only be used during the development/debugging stage.
Low
(in) The WarningLevel value is set to Low if the user does not wish to receive warnings when the application passes unrecognized or deprecated elements in an API call request. This is the default value if WarningLevel is not specified in the call request.

See Warning Level.



Output

See also Samples.

The box below lists all fields that might be returned in the response. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

See also the Deprecated Objects link above. Fields presented in this color are deprecated, and fields presented in this color are not returned (or soon will not be returned) or are not operational (or soon will be non-operational).

<?xml version="1.0" encoding="utf-8"?>
<GetCategorySpecificsResponse xmlns="urn:ebay:apis:eBLBaseComponents">
  <!-- Call-specific Output Fields -->
  <FileReferenceID> string </FileReferenceID>
  <Recommendations> RecommendationsType
    <CategoryID> string </CategoryID>
    <NameRecommendation> NameRecommendationType
      <HelpText> string </HelpText>
      <HelpURL> anyURI </HelpURL>
      <Name> string </Name>
      <ValidationRules> RecommendationValidationRulesType
        <AspectUsage> AspectUsageCodeType </AspectUsage>
        <Confidence> int </Confidence>
        <MaxValueLength> int </MaxValueLength>
        <MaxValues> int </MaxValues>
        <MinValues> int </MinValues>
        <ProductRequired> ProductRequiredCodeType </ProductRequired>
        <Relationship> NameValueRelationshipType
          <ParentName> string </ParentName>
        </Relationship>
        <!-- ... more Relationship nodes allowed here ... -->
        <SelectionMode> SelectionModeCodeType </SelectionMode>
        <ValueFormat> ValueFormatCodeType </ValueFormat>
        <ValueType> ValueTypeCodeType </ValueType>
        <VariationPicture> VariationPictureRuleCodeType </VariationPicture>
        <VariationSpecifics> VariationSpecificsRuleCodeType </VariationSpecifics>
      </ValidationRules>
      <ValueRecommendation> ValueRecommendationType
        <ValidationRules> RecommendationValidationRulesType
          <Confidence> int </Confidence>
          <Relationship> NameValueRelationshipType
            <ParentName> string </ParentName>
            <ParentValue> string </ParentValue>
          </Relationship>
          <!-- ... more Relationship nodes allowed here ... -->
        </ValidationRules>
        <Value> string </Value>
      </ValueRecommendation>
      <!-- ... more ValueRecommendation nodes allowed here ... -->
    </NameRecommendation>
    <!-- ... more NameRecommendation nodes allowed here ... -->
    <Updated> boolean </Updated>
  </Recommendations>
  <!-- ... more Recommendations nodes allowed here ... -->
  <TaskReferenceID> string </TaskReferenceID>
  <!-- Standard Output Fields -->
  <Ack> AckCodeType </Ack>
  <Build> string </Build>
  <CorrelationID> string </CorrelationID>
  <Errors> ErrorType
    <ErrorClassification> ErrorClassificationCodeType </ErrorClassification>
    <ErrorCode> token </ErrorCode>
    <ErrorParameters ParamID="string"> ErrorParameterType
      <Value> string </Value>
    </ErrorParameters>
    <!-- ... more ErrorParameters nodes allowed here ... -->
    <LongMessage> string </LongMessage>
    <SeverityCode> SeverityCodeType </SeverityCode>
    <ShortMessage> string </ShortMessage>
  </Errors>
  <!-- ... more Errors nodes allowed here ... -->
  <HardExpirationWarning> string </HardExpirationWarning>
  <Timestamp> dateTime </Timestamp>
  <Version> string </Version>
</GetCategorySpecificsResponse>
Return Value Type Occurrence Meaning
Call-specific Output Fields [Jump to standard fields]
FileReferenceID string Conditionally A TaskReferenceID and a FileReferenceID value are returned if the CategorySpecificsFileInfo field is included in the call request and set to true. These values will be used as inputs in the downloadFile call of the File Transfer API. That API lets you retrieve a single (bulk) GetCategorySpecifics response with all the Item Specifics recommendations available for the requested site ID. (The downloadFile call downloads a .zip file as an attachment.)

See downloadFile in the File Transfer API.

Recommendations RecommendationsType Conditionally,
repeatable: [0..275]
This container provide details about recommended Item Specifics and Product Identifier types. Contains the most popular Item Specifics and supported/required Product Identifier types, if any, for a category specified in the request, or contains information about whether the recommendations have changed for that category since the LastUpdateTime you requested.

The most relevant Item Specifics are returned first. If a name has multiple values, the first value is more popular.

This node returns empty (or it's not returned) for a category if there is no applicable data (such as when you request a parent category, a category that has no popular Item Specifics yet, or a duplicate category that was already returned). If you pass in the CategoryID and Name fields together, but no matching values are found for the name, eBay returns the name with no values (even if the name is not recommended).

If GetCategoryFeatures indicates that custom Item Specifics are enabled for a leaf category, but GetCategorySpecifics doesn't return any recommendations for that category, the seller can still specify their own custom Item Specifics in that category.

Note: The ProductIdentifiers container is for future use, and is not currently returned in the GetCategorySpecifics call. Until the ProductIdentifiers container is wired on and returned, an alternative way to see if a Product Identifier type is required for a category is to identify the Product Identifier type through the Recommendations.NameRecommendation.Name field in the GetCategorySpecifics response, and then look at the corresponding Recommendations.NameRecommendation.ValidationRules.MinValues field. The GetCategoryFeatures call can also be used, and the seller will look for the values returned for that category under the EANEnabled, ISBNEnabled, UPCEnabled, and EANEnabled, ISBNEnabled, BrandMPNIdentifierEnabled fields that indicate the Product Identifier types that are supported/required for the category.
Recommendations.CategoryID string Conditionally The unique identifier of the leaf category for which the recommended Item Specifics and Product Identifier types apply to. This is always a category ID that you specified in the request.

This field is always returned with each Recommendations container.
Max length: 10.
Recommendations
  .NameRecommendation
NameRecommendationType Conditionally,
repeatable: [0..*]
This container consists of Item Specific name/value pairs that eBay recommends as popular within the specified category. If no recommended Item Specific name/value pairs are found for the category, this container will not be returned.
Recommendations
  .NameRecommendation.HelpText
string Conditionally Help-text defines the purpose of the tag. The help text will be shown only when it is available for the particular tag
Recommendations
  .NameRecommendation.HelpURL
anyURI Conditionally A page on the eBay Web site with context-specific help tips that provide useful information about this Item Specific or Product Identifier type. Only returned when an applicable page is available in the system.
Recommendations
  .NameRecommendation.Name
string Conditionally A recommended Item Specific name or Product Identifier type. This field is always returned when the NameRecommendation container is returned.
Recommendations
  .NameRecommendation
  .ValidationRules
RecommendationValidationRulesType Conditionally Constraints that eBay places on this Item Specific. Always returned when the NameRecommendation container is returned. As a general rule, AddItem and related calls will not be blocked if you don't use eBay's recommendations, except where specified in this documentation.
Recommendations
  .NameRecommendation
  .ValidationRules.AspectUsage
AspectUsageCodeType Conditionally The value returned in this field will indicate if the item specific value 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.

Note: Currently, the AspectUsage field will only be returned in the Sandbox environment, and only for category/brands that are a part of the Product-Based Shopping Experience mandate. See the Product aspects vs. item specifics page for more information about product aspects and instance aspects.
Default: Product.

Applicable values:

Instance
(out) This enumeration value indicates that the aspect in the corresponding NameRecommendation.Name field is an instance aspect, which is an aspect whose value will vary based on a particular instance of the product. When creating a listing, the seller should pass in the name-value pair for this aspect through the Item.ItemSpecifics.NameValueList container of an AddItem call.

Note: Currently, the AspectUsage field will only be returned in the Sandbox environment, and only for category/brands that are a part of the Product-Based Shopping Experience mandate. See the Product aspects vs. item specifics page for more information about product aspects and instance aspects.
Product
(out) This enumeration value indicates that the aspect in the corresponding NameRecommendation.Name field is a product aspect. Product aspects are defined through an eBay Catalog product, and sellers cannot change these product aspects unless they find that the particular product aspect is inaccurate or missing from the eBay Catalog product, in which case, they could use the Catalog API to make a request to eBay to revise an existing eBay Catalog product.

Note: Currently, the AspectUsage field will only be returned in the Sandbox environment, and only for category/brands that are a part of the Product-Based Shopping Experience mandate. See the Product aspects vs. item specifics page for more information about product aspects and instance aspects.

(Not all values in AspectUsageCodeType apply to this field.)

Code so that your app gracefully handles any future changes to this list.
Recommendations
  .NameRecommendation
  .ValidationRules.Confidence
int Conditionally Indicates eBay's confidence that this is the right name or value, given the data you specified your request. The confidence is based on historical items in the same category, with similar titles (if specified).

This field is only returned when IncludeConfidence is included in the request and set to true. This field is not returned when SelectionMode is set to Prefilled.
Min: 0. Max: 100.
Recommendations
  .NameRecommendation
  .ValidationRules
  .MaxValueLength
int Conditionally This integer value will state the maximum length of the aspect's value. The seller must make sure not to exceed this value when setting instance aspects on a listing.

Note: Currently, the MaxValueLength field will only be returned in the Sandbox environment, and only for category/brands that are a part of the Product-Based Shopping Experience mandate. See the Product aspects vs. item specifics page for more information about product aspects and instance aspects.
Default: 50.
Recommendations
  .NameRecommendation
  .ValidationRules.MaxValues
int Conditionally Maximum number of values that you can specify for this Item Specific in listing requests (like AddItem) in the specified category.

Most Item Specifics can only have one value. When this is greater than 1, your application can present the value recommendations (if any) as a multi-select list to the seller. (See SelectionMode to determine whether the seller needs to choose from eBay's recommendations or not.)
Default: 1.
Recommendations
  .NameRecommendation
  .ValidationRules.MinValues
int Conditionally Minimum number of values that you can specify for this Item Specific in listing requests. Not returned if zero (0).

If 1 or more, it means this Item Specfic is required in listing requests (in the specified category). (Your listing request will return errors if the Item Specific is not present.) If Relationship is also present, it means this Item Specific is required when you specify its parent value in listing requests.
Default: 0.
Recommendations
  .NameRecommendation
  .ValidationRules
  .ProductRequired
ProductRequiredCodeType Conditionally The enumeration value returned in this field will indicate whether or not the corresponding product brand requires that a seller associate an eBay Catalog product with listings in the category. To create a listing that is associated with an eBay Catalog product, the seller uses the ProductListingDetails container of the AddItem call. To find a matching product in the eBay catalog, the seller can use the new eBay Catalog API or FindProducts call of the eBay Shopping API.

This field is only returned for the 'Brand' NameRecommendation container, and is only returned if the particular eBay category is a Product-Based Shopping Experience enforced category. See this table for current eBay categories/brands that require listings to be associated with an eBay Catalog product.

Note: Through Phase 1 of the Product-Based Shopping Experience, scheduled to start being enforced in May 2018, this field will only be returned if Enabled for the product brand. However, with Phase 2 of the Product-Based Shopping Experience, scheduled to start being enforced in August 2018, entire leaf categories will start requiring association with eBay Catalog products, and sellers will want to use the GetCategoryFeatures call instead to see if the eBay category requires listings to be associated with eBay Catalog products. For more information about the Product-Based Shopping Experience, see the Product-Based Shopping Experience Playbook.

Applicable values:

CustomCode
(out) Reserved for internal or future use.
Disabled
(out) If this enumeration value is returned for a brand, the eBay seller is not required to use an eBay catalog product when creating or revising their listing in this category for this product brand. Although not required, the seller will still have an option to use an eBay catalog product if one exists for their product.

Note: Through 'Phase 1' of the Product-Based Shopping Experience requirement, scheduled to start being enforced in May 2018, the ProductRequired field will only be returned if Enabled for the product brand. However, with 'Phase 2' of the Product-Based Shopping Experience requirement, scheduled to start being enforced in August 2018, the ProductRequired field will get returned (whether it is Enabled or Disabled) for all product brands if the mandate applies to the eBay category. For more information about the Product-Based Shopping Experience requirement, see the Product-Based Shopping Experience Playbook.
Enabled
(out) If this enumeration value is returned, the eBay seller is required to use an eBay catalog product when creating or revising their listing in this category for this product brand. A listing can be associated with an eBay catalog product by using the Add/Revise listing calls of the Trading API, or with the Inventory API. For complete information on how to create or revise a listing using a eBay catalog product, see the Creating/Revising Listings with a Catalog Product section in the Product-Based Shopping Experience Playbook.

Code so that your app gracefully handles any future changes to this list.
Recommendations
  .NameRecommendation
  .ValidationRules.Relationship
NameValueRelationshipType Conditionally,
repeatable: [0..*]
Indicates the Item Specific's logical dependency on another Item Specific, if any.

For example, in a clothing category, Size Type could be recommended as a parent of Size, because Size=XL would mean something different to buyers when Size Type=Juniors or Size Type=Regular.

Or in the US (in the future), a list of cities can vary depending on the state, so State could be recommended as a parent of City.

Currently, categories only recommend a maximum of one parent for an Item Specific. For example, Size=XL could have a Size Type=Juniors parent in a Juniors clothing category. In the future, some categories may recommend multiple parents. For example, City=Mountain View could have parents like State=California, State=New York, and State=North Carolina.

If an Item Specific has value dependencies (i.e., if it has value recommendations that contain Relationship), then all of its value recommendations are returned (regardless of the number you specified in MaxValuesPerName).
Recommendations
  .NameRecommendation
  .ValidationRules.Relationship
  .ParentName
string Conditionally The name of another Item Specific that the current value depends on. For example, in a clothing category, "Size Type" could be recommended as a parent of Size.
Recommendations
  .NameRecommendation
  .ValidationRules.SelectionMode
SelectionModeCodeType Conditionally Controls whether you can specify your own name and value in listing requests, or if you need to use a name and/or value that eBay has defined.
Default: FreeText.

Applicable values:

FreeText
(out) Indicates the seller can create their own custom item specifics or they can use eBay recommended item specifics for the category when creating a listing with Add/Revise/Relist calls.
Prefilled
(out) Indicates eBay recommended and required item specifics will be pre-filled by eBay if a product ID is provided in the Add/Revise/Relist call.
SelectionOnly
(out) Indicates the seller must use eBay's recommended item specifics, and cannot use their own custom item specifics when creating a listing with Add/Revise/Relist calls.

(Not all values in SelectionModeCodeType apply to this field.)

Code so that your app gracefully handles any future changes to this list.
Recommendations
  .NameRecommendation
  .ValidationRules.ValueFormat
ValueFormatCodeType Conditionally The format of the data type (e.g., date format) that eBay expects the item specific's value to adhere to in listing requests. A data type identified by the ValueType field may have different representations, and ValueFormat specifies the precise format that is required.

Applicable values:

CustomCode
(out) Reserved for future or internal use.
FullDate
(out) This enumeration value indicates that a full date is used, including the month, day, and year in the following format: 'YYYYMMDD'
PartialDate
(out) This enumeration value indicates that a partial date is used, including the month and year in the following format: 'YYYYMM'
Year
(out) This enumeration value indicates that only the year is returned in the following format: 'YYYY'

Code so that your app gracefully handles any future changes to this list.
Recommendations
  .NameRecommendation
  .ValidationRules.ValueType
ValueTypeCodeType Conditionally The data type (e.g., date) that eBay expects the value to adhere to in listing requests. Only returned if the data type is not Text. In some cases, more details about the data type are returned in the ValueFormat field.

As buyers may search on the value you specify in AddItem, the ISBN, UPC, or EAN should match the value that was specified by the publisher or manufacturer.

Note: Starting with Version 945 and going forward, the Numeric enumeration value will be returned for whole integers (no decimal point), and the Decimal enumeration value will be returned for numbers with decimals. For the Version 943 WSDL and older, Decimal will continue being returned for all numeric values.
Default: Text.

Applicable values: See ValueType.
Code so that your app gracefully handles any future changes to this list.
Recommendations
  .NameRecommendation
  .ValidationRules
  .VariationPicture
VariationPictureRuleCodeType Conditionally Indicates whether the name (e.g., Color) can (or must) be used to classify the variation pictures.

Applicable values:

CustomCode
(out) Reserved for future use.
Disabled
(out) This value indicates that the corresponding Item Specific variation name may not be specified in the Variations.Pictures.VariationSpecificName field in an Add/Revise/Relist call.
Enabled
(out) This value indicates that the corresponding Item Specific variation name may be specified in the Variations.Pictures.VariationSpecificName field in an Add/Revise/Relist call.
Required
(out) This value indicates that the corresponding Item Specific variation name must be specified in the Variations.Pictures.VariationSpecificName field in an Add/Revise/Relist call.

Code so that your app gracefully handles any future changes to this list.
Recommendations
  .NameRecommendation
  .ValidationRules
  .VariationSpecifics
VariationSpecificsRuleCodeType Conditionally Indicates whether the recommended name/value pair can be used in an Item.Variations container in a fixed-price listing call. For example, a given category could disable a name like Brand in variation specifics (if Brand is only allowed in the item specifics at the Item level). The same category could enable a name like Size for variation specifics (in addition to recommending it for item specifics). If not returned, then the name/value can be used for both variation specifics and item specifics.

Applicable values:

CustomCode
(out) Reserved for future use.
Disabled
(out) The recommended name/values can't be used in Variation Specifics (but they can be used in Item Specifics). Typically, this occurs when the category doesn't support variations, or if the category requires the name to be the same for all variations in the listing.
Enabled
(out) The recommended name (and values, if any) can be used either in the Item Specifics or Variation Specifics context in listing calls. This is the default for variation-enabled categories.

Code so that your app gracefully handles any future changes to this list.
Recommendations
  .NameRecommendation
  .ValueRecommendation
ValueRecommendationType Conditionally,
repeatable: [0..*]
A recommended value (if any) for the Item Specific name. This field is not applicable to Product Identifier types. Only returned when a recommended value is available in the system.

See MaxValuesPerName.

Recommendations
  .NameRecommendation
  .ValueRecommendation
  .ValidationRules
RecommendationValidationRulesType Conditionally Constraints that eBay places on this Item Specific value.

Only returned when you configure your request to include relationships and/or confidence, and a recommended value is available. (Not returned when ExcludeRelationships is true and IncludeConfidence is false.)
Recommendations
  .NameRecommendation
  .ValueRecommendation
  .ValidationRules.Confidence
int Conditionally Indicates eBay's confidence that this is the right name or value, given the data you specified your request. The confidence is based on historical items in the same category, with similar titles (if specified).

This field is only returned when IncludeConfidence is included in the request and set to true. This field is not returned when SelectionMode is set to Prefilled.
Min: 0. Max: 100.
Recommendations
  .NameRecommendation
  .ValueRecommendation
  .ValidationRules.Relationship
NameValueRelationshipType Conditionally,
repeatable: [0..*]
Indicates the Item Specific's logical dependency on another Item Specific, if any.

For example, in a clothing category, Size Type could be recommended as a parent of Size, because Size=XL would mean something different to buyers when Size Type=Juniors or Size Type=Regular.

Or in the US (in the future), a list of cities can vary depending on the state, so State could be recommended as a parent of City.

Currently, categories only recommend a maximum of one parent for an Item Specific. For example, Size=XL could have a Size Type=Juniors parent in a Juniors clothing category. In the future, some categories may recommend multiple parents. For example, City=Mountain View could have parents like State=California, State=New York, and State=North Carolina.

If an Item Specific has value dependencies (i.e., if it has value recommendations that contain Relationship), then all of its value recommendations are returned (regardless of the number you specified in MaxValuesPerName).
Recommendations
  .NameRecommendation
  .ValueRecommendation
  .ValidationRules.Relationship
  .ParentName
string Conditionally The name of another Item Specific that the current value depends on. For example, in a clothing category, "Size Type" could be recommended as a parent of Size.
Recommendations
  .NameRecommendation
  .ValueRecommendation
  .ValidationRules.Relationship
  .ParentValue
string Conditionally The value of another Item Specific that the current value depends on. For example, in a clothing category, if "Size Type" is the ParentName, then "Petite" could be recommended as a parent value for Size = Medium.
Recommendations
  .NameRecommendation
  .ValueRecommendation.Value
string Conditionally A recommended value for the corresponding, recommended Item Specific. Only returned when a recommended value is available.
Recommendations.Updated boolean Conditionally If this field is returned as true, the recommended Item Specifics and/or Product Identifiers for this category have changed since the time you specified in the LastUpdateTime field. In this case, we suggest you retrieve the latest data for the category. If this field is returned as false, the recommended Item Specifics and/or Product Identifiers for this category have not changed since the time you specified.

This field is only returned when the LastUpdateTime field is passed in the request.
TaskReferenceID string Conditionally A TaskReferenceID and a FileReferenceID value are returned if the CategorySpecificsFileInfo field is included in the call request and set to true. These values will be used as inputs in the downloadFile call of the File Transfer API. That API lets you retrieve a single (bulk) GetCategorySpecifics response with all the Item Specifics recommendations available for the requested site ID. (The downloadFile call downloads a .zip file as an attachment.)

See downloadFile in the File Transfer API.

Standard Output Fields  
Ack AckCodeType Always A token representing the application-level acknowledgement code that indicates the response status (e.g., success). The AckCodeType list specifies the possible values for the Ack field.

Applicable values:

CustomCode
(out) Reserved for internal or future use.
Failure
(out) This value indicates that the call request processing failed.
Success
(out) This value indicates that the call request was processed successfully without any issues.
Warning
(out) This value indicates that the call request was successful, but processing was not without any issues. These issues can be checked in the Errors container, that will also be returned when one or more known issues occur with the call request.

(Not all values in AckCodeType apply to this field.)

Code so that your app gracefully handles any future changes to this list.
Build string Always This refers to the specific software build that eBay used when processing the request and generating the response. This includes the version number plus additional information. eBay Developer Support may request the build information when helping you resolve technical issues.
CorrelationID string Conditionally Most Trading API calls support a MessageID element in the request and a CorrelationID element in the response. If you pass in a MessageID in a request, the same value will be returned in the CorrelationID field in the response. Pairing these values can help you track and confirm that a response is returned for every request and to match specific responses to specific requests. If you do not pass a MessageID value in the request, CorrelationID is not returned.

Note: GetCategories is designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, the MessageID and CorrelationID fields aren't applicable. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, MessageID and CorrelationID are applicable.
Errors ErrorType Conditionally,
repeatable: [0..*]
A list of application-level errors (if any) that occurred when eBay processed the request.

See Error Handling.

Errors.ErrorClassification ErrorClassificationCodeType Conditionally API errors are divided between two classes: system errors and request errors.

Applicable values:

CustomCode
(out) Reserved for internal or future use.
RequestError
(out) An error has occurred either as a result of a problem in the sending application or because the application's end-user has attempted to submit invalid data (or missing data). In these cases, do not retry the request. The problem must be corrected before the request can be made again. If the problem is due to something in the application (such as a missing required field), the application must be changed. If the problem is a result of end-user data, the application must alert the end-user to the problem and provide the means for the end-user to correct the data. Once the problem in the application or data is resolved, resend the request to eBay with the corrected data.
SystemError
(out) Indicates that an error has occurred on the eBay system side, such as a database or server down. An application can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.

Code so that your app gracefully handles any future changes to this list.
Errors.ErrorCode token Conditionally A unique code that identifies the particular error condition that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms. See the "Errors by Number" document.
Errors.ErrorParameters ErrorParameterType Conditionally,
repeatable: [0..*]
This optional element carries a list of context-specific error variables that indicate details about the error condition. These are useful when multiple instances of ErrorType are returned.
Errors.ErrorParameters
  [ attribute ParamID ]
string Conditionally This optional element carries a list of context-specific error variables that indicate details about the error condition. These are useful when multiple instances of ErrorType are returned.
Errors.ErrorParameters.Value string Conditionally This is the value of the request parameter noted in the ParamID attribute. So, if the ParamID value was ItemID, the value in this field would be the actual value of that ItemID.
Errors.LongMessage string Conditionally A more detailed description of the condition that raised the error.
Errors.SeverityCode SeverityCodeType Conditionally Indicates whether the error is a severe error (causing the request to fail) or an informational error (a warning) that should be communicated to the user.

Applicable values:

CustomCode
(out) Reserved for internal or future use.
Error
(out) The request that triggered the error was not processed successfully. When a serious application-level error occurs, the error is returned instead of the business data.

If the source of the problem is within the application (such as a missing required element), change the application before you retry the request.
  • If the problem is due to end-user input data, please alert the end-user to the problem and provide the means for them to correct the data. Once the problem in the application or data is resolved, you can attempt to re-send the request to eBay.
  • If the source of the problem is on eBay's side, An application can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.


See the Compatible Application Check section of the eBay Features Guide for more information.
Warning
(out) The request was processed successfully, but something occurred that may affect your application or the user. For example, eBay may have changed a value the user sent in. In this case, eBay returns a normal, successful response and also returns the warning.

When a warning occurs, the error is returned in addition to the business data. In this case, you do not need to retry the request (as the original request was successful). However, depending on the cause or nature of the warning, you might need to contact either the end user or eBay to effect a long term solution to the problem to prevent it from reoccurring in the future.

Code so that your app gracefully handles any future changes to this list.
Errors.ShortMessage string Conditionally A brief description of the condition that raised the error.
HardExpirationWarning string Conditionally Expiration date of the user's authentication token. Only returned within the 7-day period prior to a token's expiration. To ensure that user authentication tokens are secure and to help avoid a user's token being compromised, tokens have a limited life span. A token is only valid for a period of time (set by eBay). After this amount of time has passed, the token expires and must be replaced with a new token.
Timestamp dateTime Always This value represents the date and time when eBay processed the request. The time zone of this value is GMT and the format is the ISO 8601 date and time format (YYYY-MM-DDTHH:MM:SS.SSSZ). See the Time Values section in the eBay Features Guide for information about this time format and converting to and from the GMT time zone.

Note: GetCategories and other Trading API calls are designed to retrieve very large sets of metadata that change once a day or less often. To improve performance, these calls return cached responses when you request all available data (with no filters). When this occurs, this time value reflects the time the cached response was created. Thus, this value is not necessarily when the request was processed. However, if you specify an input filter to reduce the amount of data returned, the calls retrieve the latest data (not cached). When this occurs, this time value does reflect when the request was processed.
Version string Always The version of the response payload schema. Indicates the version of the schema that eBay used to process the request. See the Standard Data for All Calls section in the eBay Features Guide for information on using the response version when troubleshooting CustomCode values that appear in the response.



Detail Controls


DetailLevel

This call does not support varying Detail Levels. You do not need to pass DetailLevel in the request.



Samples

New to making API calls? Please see Making a Call.

Note: Some item IDs, user IDs, or other data in these samples might no longer be active on eBay. If necessary, you can substitute current eBay data in your requests.

Available samples:

Sample: Basic Call

Retrieves recommended Item Specifics for a single category.

Description

This sample retrieves recommended Item Specifics for a category on the eBay US site. If recommendations are available for the category, each NameRecommendation node returns the recommended name, validation rules, and recommended values (if any). (Categories that support custom Item Specifics do not necessarily have recommendations. So, this call does not always return data.)

Input

The key input for this sample is CategorySpecific.CategoryID. For the recommendations to be useful in listing calls, the category ID must be a category that is flagged as ItemSpecificsEnabled according to GetCategoryFeatures. The request version (in the HTTP header) is 609 (not shown).

Please note that this sample was created based on a test category (Test Blenders), so this category does not return any recommendations in the Sandbox or in Production. A new sample will be created based on production data in a future release.

XML format.

<?xml version="1.0" encoding="utf-8"?>
<GetCategorySpecificsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <WarningLevel>High</WarningLevel>
  <CategorySpecific>
    <CategoryID>20668</CategoryID>
  </CategorySpecific>
  <RequesterCredentials>
    <eBayAuthToken>YOURTOKENHERE</eBayAuthToken>
  </RequesterCredentials>
</GetCategorySpecificsRequest>

Output

In the output, each NameRecommendation node returns the recommended names and validation rules for two Item Specifics (Color and Brand). One of the recommendations also returns two ValueRecommendation nodes with recommended values (KitchenAid and The Magic Bullet).

The validation rules indicate that the Item Specifics are optional in listing calls (MinValues is not returned), only one value is allowed per Item Specific (MaxValues is 1), and you can use one of the recommended values or specify a custom value (SelectionMode is FreeText).

If you try a category and you get no results, it could be because there are no recommendations in that category. Also make sure you are using request version 609 or higher, and make sure the category supports custom Item Specifics.

XML format.
<?xml version="1.0" encoding="utf-8"?>
<GetCategorySpecificsResponse xmlns="urn:ebay:apis:eBLBaseComponents">
  <Timestamp>2016-03-19T16:50:39.184Z</Timestamp>
  <Ack>Success</Ack>
  <Version>967</Version>
  <Build>e967_core_Bundled_8177180_R1</Build>
  <Recommendations>
    <CategoryID>20668</CategoryID>
    <NameRecommendation>
      <Name>Color</Name>
      <ValidationRules>
        <MaxValues>1</MaxValues>
        <SelectionMode>FreeText</SelectionMode>
      </ValidationRules>
    </NameRecommendation>
    <NameRecommendation>
      <Name>Brand</Name>
      <ValidationRules>
        <MaxValues>1</MaxValues>
        <SelectionMode>FreeText</SelectionMode>
      </ValidationRules>
      <ValueRecommendation>
        <Value>KitchenAid</Value>
      </ValueRecommendation>
      <ValueRecommendation>
        <Value>The Magic Bullet</Value>
      </ValueRecommendation>
    </NameRecommendation>
  </Recommendations>
</GetCategorySpecificsResponse>

Back to list of samples

Sample: Item Specifics for a Fashion Category that Supports Variations

Retrieves recommendations for the Women's Tops & Blouses category on the eBay US site.

Description

This sample retrieves recommended item specifics for the "Women's Clothing : Tops & Blouses" category on the eBay US site. This category supports multi-variation listings.

Input

The key input for this sample is CategorySpecific.CategoryID. We know which categories support variations by checking VariationsEnabled in GetCategoryFeatures.

XML format.

<?xml version="1.0" encoding="utf-8"?>
<GetCategorySpecificsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
  <CategorySpecific>
    <CategoryID>53159</CategoryID>
  </CategorySpecific>
  <RequesterCredentials>
    <eBayAuthToken>YOURTOKENHERE</eBayAuthToken>
  </RequesterCredentials>
</GetCategorySpecificsRequest>

Output

For this sample, we'll focus on the validation rules in the response.

The names Style, Size Type, Size (Women's), Brand, and Color have MinValues set to 1. This means these item specifics are required in listings. (Color will no longer be required in the near future.)

Style, Size Type, and Color have SelectionMode set to SelectionOnly. This means that if you use these item specifics, you need to choose one of the values that eBay has defined; you cannot specify other values.

Style, Brand, and Occasion have VariationSpecifics set to Disabled. This means you cannot use Style, Brand, or Occasion in variations (because they should be the same for all items in the listing). Therefore, you can only use Style, Brand, and Occasion in the listing's overall item specifics.

Women's sizes are typically grouped into size types, such as Petites or Plus. eBay reflects this kind of grouping as a parent/child relationship. So, Size (Women's) has ParentName set to Size Type, and different ParentValue choices (e.g., Petites vs. Plus) for different sizes. If all variations in a listing use the same Size Type but have different sizes, you can put Size Type (e.g., Petites) in the item specifics, and Size (Women's) in each variation within the listing.

Similarly, Shade has ParentName set to Color, and different ParentValue choices (e.g., Blues vs. Pinks) for different shades.

XML format.
<GetCategorySpecificsResponse xmlns="urn:ebay:apis:eBLBaseComponents">
   <Timestamp>2011-06-27T07:56:30.174Z</Timestamp>
   <Ack>Success</Ack>
   <Version>725</Version>
   <Build>E725_CORE_BUNDLED_13381130_R1</Build>
   <Recommendations>
      <CategoryID>53159</CategoryID>
      <NameRecommendation>
         <Name>Style</Name>
         <ValidationRules>
            <MinValues>1</MinValues>
            <MaxValues>1</MaxValues>
            <SelectionMode>SelectionOnly</SelectionMode>
            <VariationSpecifics>Disabled</VariationSpecifics>
         </ValidationRules>
         <ValueRecommendation>
            <Value>Blouse</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Button Down Shirt</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Halter</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Knit Top</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Polo Shirt</Value>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes here -->
      </NameRecommendation>
      <NameRecommendation>
         <Name>Sleeve Style</Name>
         <ValidationRules>
            <MaxValues>1</MaxValues>
            <SelectionMode>FreeText</SelectionMode>
         </ValidationRules>
         <ValueRecommendation>
            <Value>3/4 Sleeve</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Cap Sleeve</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Sleeveless</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Spaghetti Strap</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Strapless</Value>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes here -->
      </NameRecommendation>
      <NameRecommendation>
         <Name>Size Type</Name>
         <ValidationRules>
            <MinValues>1</MinValues>
            <MaxValues>1</MaxValues>
            <SelectionMode>SelectionOnly</SelectionMode>
         </ValidationRules>
         <ValueRecommendation>
            <Value>Regular</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Petites</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Plus</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Juniors</Value>
         </ValueRecommendation>
      </NameRecommendation>
      <NameRecommendation>
         <Name>Size (Women's)</Name>
         <ValidationRules>
            <MinValues>1</MinValues>
            <MaxValues>1</MaxValues>
            <SelectionMode>FreeText</SelectionMode>
            <Relationship>
               <ParentName>Size Type</ParentName>
            </Relationship>
         </ValidationRules>
         <ValueRecommendation>
            <Value>0</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>2</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>4</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>6</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>8</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>L</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>M</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>S</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Regular</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
          <!-- More ValueRecommentation nodes for Regular here -->
         <ValueRecommendation>
            <Value>PL</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Petites</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>PM</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Petites</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>PP</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Petites</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>PS</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Petites</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>PXL</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Petites</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>PXS</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Petites</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes for Petites here -->
         <ValueRecommendation>
            <Value>1X</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Plus</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>2X</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Plus</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>3X</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Plus</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>4X</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Plus</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>5X</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Plus</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes for Plus here -->
         <ValueRecommendation>
            <Value>L</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Juniors</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>M</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Juniors</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>S</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Juniors</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>XS</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Size Type</ParentName>
                  <ParentValue>Juniors</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes for Juniors here -->
         <HelpURL>http://pages.ebay.com/sell/sizechart.html</HelpURL>
      </NameRecommendation>
      <NameRecommendation>
         <Name>Brand</Name>
         <ValidationRules>
            <MinValues>1</MinValues>
            <MaxValues>1</MaxValues>
            <SelectionMode>FreeText</SelectionMode>
            <VariationSpecifics>Disabled</VariationSpecifics>
         </ValidationRules>
         <ValueRecommendation>
            <Value>"Handmade"</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>3.1 Phillip Lim</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>525 America</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>7 For All Mankind</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>A. Byer</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>A.N.A.</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>A/X, Armani Exchange</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>AB Studio</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>A.B.S. by Allen Schwartz</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>AGB</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>AG Adriano Goldschmied</Value>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes here -->
      </NameRecommendation>
      <NameRecommendation>
         <Name>Color</Name>
         <ValidationRules>
            <MinValues>1</MinValues>
            <MaxValues>1</MaxValues>
            <SelectionMode>SelectionOnly</SelectionMode>
         </ValidationRules>
         <ValueRecommendation>
            <Value>Beiges</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Blacks</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Blues</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Browns</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Grays</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Greens</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Ivories</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Metallics</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Multi-Color</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Oranges</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Pinks</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Purples</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Reds</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Whites</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Yellows</Value>
         </ValueRecommendation>
      </NameRecommendation>
      <NameRecommendation>
         <Name>Shade</Name>
         <ValidationRules>
            <MaxValues>1</MaxValues>
            <SelectionMode>FreeText</SelectionMode>
            <Relationship>
               <ParentName>Color</ParentName>
            </Relationship>
         </ValidationRules>
         <ValueRecommendation>
            <Value>Black</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blacks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Periwinkle</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blues</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Other Blue</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blues</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Medium Blue</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blues</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Dark Blue, Navy</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blues</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Bright Blue</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blues</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Light Blue</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blues</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Aqua</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Blues</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Dark Green</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Greens</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Olive Green</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Greens</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Medium Green</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Greens</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Bright Green</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Greens</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Light Green</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Greens</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Other Green</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Greens</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Bright Pink</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Pinks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Light Pink</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Pinks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Other Pink</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Pinks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Mauve</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Pinks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Medium Pink</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Pinks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Salmon</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Pinks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Dark Pink</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Pinks</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Medium Yellow</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Yellows</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Bright Yellow</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Yellows</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Light Yellow</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Yellows</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Dark Yellow</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Yellows</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Other Yellow</Value>
            <ValidationRules>
               <Relationship>
                  <ParentName>Color</ParentName>
                  <ParentValue>Yellows</ParentValue>
               </Relationship>
            </ValidationRules>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes here -->
      </NameRecommendation>
      <NameRecommendation>
         <Name>Material</Name>
         <ValidationRules>
            <MaxValues>1</MaxValues>
            <SelectionMode>FreeText</SelectionMode>
         </ValidationRules>
         <ValueRecommendation>
            <Value>Acetate</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Acrylic</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>100% Cashmere</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Cashmere Blends</Value>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes here -->
      </NameRecommendation>
      <NameRecommendation>
         <Name>Occasion</Name>
         <ValidationRules>
            <MaxValues>1</MaxValues>
            <SelectionMode>FreeText</SelectionMode>
            <VariationSpecifics>Disabled</VariationSpecifics>
         </ValidationRules>
         <ValueRecommendation>
            <Value>Career</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Casual</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Clubwear</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Evening, Occasion</Value>
         </ValueRecommendation>
      </NameRecommendation>
      <NameRecommendation>
         <Name>Pattern</Name>
         <ValidationRules>
            <MaxValues>1</MaxValues>
            <SelectionMode>FreeText</SelectionMode>
         </ValidationRules>
         <ValueRecommendation>
            <Value>Plaids & Checks</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Polka Dots</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Solids</Value>
         </ValueRecommendation>
         <ValueRecommendation>
            <Value>Stripes</Value>
         </ValueRecommendation>
         <!-- More ValueRecommentation nodes here -->
      </NameRecommendation>
   </Recommendations>
</GetCategorySpecificsResponse>

Back to list of samples



Change History

Change Date Description
989
2017-01-20
  • Recommendations.ProductIdentifiers (added): (for future use only) This new container shows the product identifier types (such as ISBN, UPC, etc.) that are supported/required for the eBay category. If the MinRequired value for a product identifier type is '1', that product identifier type must be used at listing time. Product identifiers will be passed in as name/value pairs in the ProductListingDetails container (or VariationProductListingDetails container for multiple-variation listings) in an AddItem/AddFixedPriceItem call.
945
2015-10-15
  • ValueTypeCodeType (modified): New Numeric enumeration value added. This new value will replace the Decimal enumeration value for whole integers (no decimal point) going forward from version 945. For the version 943 WSDL and older, the Decimal value will still be returned in for integers and numbers with decimals.
931
2015-07-10
  • NameValueList.Name (modified): The maximum length was increased to 65.
  • NameValueList.Value (modified): The maximum length was increased to 65.
841
2013-09-19
  • CategoryID, CategorySpecific.CategoryID (modified): GetCategorySpecifics enhanced to retrieve Item Specifics for any category, and not just leaf categories.
741
2011-09-28
  • CategoryID, IncludeConfidence, CategorySpecificsFileInfo (doc change): Clarified that IncludeConfidence requires CategoryID to also be specified. This means it typically cannot be used with CategorySpecificsFileInfo (when data for all categories is retrieved)
729
2011-07-06
  • ValueFormat (added): Provides details about the format of a value type, such as a date format.
  • ValueType (modified): Date added as a data type.
661
2010-03-17
  • NameRecommendation (modified): When GetCategoryFeatures shows ConditionEnabled=Enabled or Required for the listing's primary category, item condition is suppressed from custom Item Specifics recommendations with request version 661 and higher in the sandbox and with request version 667 and higher in production.
653
2010-01-20
  • CategoryID (modified): The first 100 categories in the request are processed. Additional categories are ignored. (Previously, 200-275 categories were processed.)
615
2008-04-29
  • VariationPictures, VariationSpecifics (added): VariationSpecifics indicates whether the recommendations can be used in variations. VariationPictures indicates whether a recommended name should be used to classify variation pictures.
611
2009-04-01
  • CategorySpecificsFileInfo, FileReferenceID, TaskReferenceID (added): New IDs can be used with the File Transfer API to download recommendations for all categories in a single call.
609
2009-03-18
  • CategoryItemSpecifics (deprecated): CategoryItemSpecifics is not returned with request version 609 and higher. Use Recommendations instead.
  • CategorySpecific, ExcludeRelationships, IncludeConfidence, Recommendations (added): Three new input nodes and fields. Recommendations is returned with request version 609 and higher.
523
2007-07-25
  • (added) New call.
1077
2018-08-31
  • NameRecommendation.Name (modified): New 'California Prop 65 Warning' instance aspect added to support a new California Proposition 65 Warning message that can be added to a listing. This new instance aspect is returned if the category supports the new 'California Prop 65 Warning' item specific. The maximum limit for the message is 800 characters, and this threshold value is returned in the corresponding ValidationRules.MaxValueLength field.
1057
2018-04-13
  • AspectUsageCodeType (added): New type used by the AspectUsage field that is returned to indicate if a category aspect is a product-level aspect, or if it is an aspect that is typically unique to a particular instance of a product in that category.
  • ValidationRules.AspectUsage (added): New field returned to indicate if the item specific value 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.
  • ValidationRules.MaxValueLength (added): New field that states the maximum length of the aspect's value. The seller must make sure not to exceed this value when setting instance aspects on a listing.
1047
2018-02-02
  • ProductRequiredCodeType (added): This enumerated type contains the values that indicate whether or not a product brand within an eBay category requires an eBay seller to create a listing using an eBay catalog product.
  • ValidationRules.ProductRequired (added): New field used to indicate if the corresponding product brand requires that an eBay seller create a listing using an eBay catalog product. This field is only returned for the 'Brand' NameRecommendation container, and is only returned if the particular eBay category is a Product-Based Commerce enforced category.
1039
2017-10-17
  • GetCategorySpecificsRequest.MaxNames (modified): The maximum returned Item Specifics threshold value has been increased to 25.