The call returns property values for the specified category and application property (e.g., Make or Model). The required input consists of the category ID of the compatibility-enabled category and the property of the application (i.e., assembly or vehicle) for the item or product you want to list. This call retrieves search values for a single property name only.
Compatibility search values can be used to:
When you list at item with parts compatibility, you specify the properties and corresponding values that describe the assembly (vehicle) with which your item is compatible. You may only use the compatibility search names and values supported by the primary category of your listing request.
The easiest way to list an item with parts compatibility is to list with an eBay catalog product that has compatibilities. Use compatibility search names and values to construct filters for the findProductsByCompatibility call in the Product API to find products with specific compatibilities.
| Note: Parts Compatibility is supported in limited Parts & Accessories categories for the eBay US Motors (site ID 100) and eBay Germany (site ID 77) sites only. |
See Parts Compatibility for more information about the purpose of parts compatibility and how to use the API to include parts compatibility into your listings.
See also the reference documentation for these calls:
See also the reference documentation for this call (in the Product API Call Reference):
| Output Samples Change History User Notes |
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 Samples.
<?xml version="1.0" encoding="utf-8"?>
<getCompatibilitySearchValuesRequest xmlns="http://www.ebay.com/marketplace/marketplacecatalog/v1/services">
<!-- Standard Input Fields -->
<categoryId> string </categoryId>
<listFormatOnly> boolean </listFormatOnly>
<propertyFilter> PropertyValue
<propertyName> string </propertyName>
<value> Value
<number> NumericValue
<unitOfMeasurement> token </unitOfMeasurement>
<value> string </value>
</number>
<text> StringValue
<value> string </value>
</text>
<URL> URIValue
<value> anyURI </value>
</URL>
</value>
<!-- ... more value nodes here ... -->
</propertyFilter>
<!-- ... more propertyFilter nodes here ... -->
<sortOrder> SortOrder
<order> OrderType </order>
<propertyName> string </propertyName>
</sortOrder>
<!-- ... more sortOrder nodes here ... -->
<!-- Call-specific Input Fields -->
<propertyName> string </propertyName>
</getCompatibilitySearchValuesRequest>
| Argument | Type | Occurrence | Meaning |
|---|
| Standard Input Fields [Jump to call-specific fields] |
| categoryId | string | Required |
Specifies the category from which you want to retrieve property values that can be used to search for products. If a specified category ID doesn't match an existing category for the site, eBay returns an invalid-category error message. To determine valid categories, use the Trading API GetCategories call. Max length: 10. |
| listFormatOnly | boolean | Optional |
Return properties for a given catalog enabled category. We will throw an error if the category is not catalog enabled. Default: false. |
| propertyFilter | PropertyValue | Optional,
repeatable: [0..*] |
Constrains the output of values for the given PropertyLiteral (or group of properties) as per given ConstrainingPropertyLiteral:ConstrainingValueLiteral pair (or pairs) according to the respective dependency graph. AND-logic will be applied within the constraint. |
| propertyFilter.propertyName | string | Optional | This is the canonical name of the property. Used to identify a property within a catalog that this category belongs to. |
| propertyFilter.value | Value | Optional,
repeatable: [0..*] |
A value for the property. |
| propertyFilter.value.number | NumericValue | Optional | For numeric value type. |
|
propertyFilter.value.number .unitOfMeasurement |
token | Optional |
Unit of measure for a numeric value.
|
|
propertyFilter.value.number .value |
string | Optional | A number value. |
| propertyFilter.value.text | StringValue | Optional | For string value type. |
|
propertyFilter.value.text .value |
string | Optional | A string value. |
| propertyFilter.value.URL | URIValue | Optional | For URL value type. |
| propertyFilter.value.URL.value | anyURI | Optional | As part of request, this will be the URL to download media file. As part of response, this will be the URL where the media file is stored on eBay. |
| sortOrder | SortOrder | Optional,
repeatable: [0..*] |
Sort order for property values in the result set. You can sort by any of the searchable properties, such as Year, Make, or Model. If no sort order is specified then values are sorted in ascending order. Sorting can be applied only when the response is in list format (i.e., treeFormat in the response is false). For sorting, characters are compared at each position (i.e., first character, second character, etc.). When values are sorted in ascending order, numbers (0-9) sort before uppercase letters (A-Z), which sort before lowercase letters (a-z). For example, 268 precedes 3, CTS comes before Camry, and 911 comes before A3. Descending order is the opposite of ascending, with lowercase letters (z-a) before uppercase letters (Z-A) and numbers last (9-0). |
| sortOrder.order | OrderType | Optional |
Order of the sort, either Ascending or Descending.
Applicable values: • Ascending (in) Sorts results in ascending (low to high) order. • Descending (in) Sorts results in descending (high to low) order. |
| sortOrder.propertyName | string | Optional | Output can be sorted by one or more (for bulk calls) property names. You can look up valid values using either the getProductSearchNames call or the getCompatibilitySearchNames call. |
| Call-specific Input Fields |
| propertyName | string | Required | This is the canonical name of the property. Used to identify a property within a catalog that this category belongs to. |
| Input Samples Change History User Notes |
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 Samples.
<?xml version="1.0" encoding="utf-8"?>
<getCompatibilitySearchValuesResponse xmlns="http://www.ebay.com/marketplace/marketplacecatalog/v1/services">
<!-- Standard Output Fields -->
<ack> AckValue </ack>
<errorMessage> ErrorMessage
<error> ErrorData
<category> ErrorCategory </category>
<domain> string </domain>
<errorId> long </errorId>
<exceptionId> token </exceptionId>
<message> string </message>
<parameter name="string"> ErrorParameter (string) </parameter>
<!-- ... more parameter nodes here ... -->
<severity> ErrorSeverity </severity>
<subdomain> string </subdomain>
</error>
<!-- ... more error nodes here ... -->
</errorMessage>
<timestamp> dateTime </timestamp>
<version> string </version>
<!-- Call-specific Output Fields -->
<metadataVersion> string </metadataVersion>
<propertyValues> PropertyValue
<propertyName> string </propertyName>
<value> Value
<number> NumericValue
<unitOfMeasurement> token </unitOfMeasurement>
<value> string </value>
</number>
<text> StringValue
<value> string </value>
</text>
<URL> URIValue
<value> anyURI </value>
</URL>
</value>
<!-- ... more value nodes here ... -->
</propertyValues>
<!-- ... more propertyValues nodes here ... -->
<propertyValuesTree> PropertyNameValue
<childPropertyNameValue> PropertyNameValue
<childPropertyNameValue> PropertyNameValue
<propertyName> string </propertyName>
<value> Value
<number> NumericValue
<unitOfMeasurement> token </unitOfMeasurement>
<value> string </value>
</number>
<text> StringValue
<value> string </value>
</text>
<URL> URIValue
<value> anyURI </value>
</URL>
</value>
</childPropertyNameValue>
<!-- ... more childPropertyNameValue nodes here ... -->
<propertyName> string </propertyName>
<value> Value
<number> NumericValue
<unitOfMeasurement> token </unitOfMeasurement>
<value> string </value>
</number>
<text> StringValue
<value> string </value>
</text>
<URL> URIValue
<value> anyURI </value>
</URL>
</value>
</childPropertyNameValue>
<!-- ... more childPropertyNameValue nodes here ... -->
<propertyName> string </propertyName>
<value> Value
<number> NumericValue
<unitOfMeasurement> token </unitOfMeasurement>
<value> string </value>
</number>
<text> StringValue
<value> string </value>
</text>
<URL> URIValue
<value> anyURI </value>
</URL>
</value>
</propertyValuesTree>
<treeFormat> boolean </treeFormat>
</getCompatibilitySearchValuesResponse>
| Return Value | Type | Occurrence | Meaning |
|---|
| Standard Output Fields [Jump to call-specific fields] |
| ack | AckValue | Always |
Indicates whether or not errors or warnings were generated during the processing of the request.
Applicable values: • Failure (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. • PartialFailure (out) The request that triggered the error was processed successfully but with some warnings. • Success (out) The request was processed successfully, but something occurred that may affect your application or the user. • Warning (out) The request that triggered the error was processed successfully but with some warnings. |
| errorMessage | ErrorMessage | Conditionally | Description of an error or warning that occurred when eBay processed the request. Not returned if the ack value is Success. |
| errorMessage.error | ErrorData | Conditionally,
repeatable: [0..*] |
Details about a single error. |
| errorMessage.error.category | ErrorCategory | Conditionally |
There are three categories of errors: request errors, application errors, and system errors.
Applicable values: • Application (out) An error occurred due to a problem with the request, with the most likely source being the application sending the request. For example, the request is missing a required data element or it contains an invalid field. The problem must be corrected before the request can be resent. Inspect the error message to find the cause of the problem. If the problem is due to an application error, modify the application and resend the request. If the error is due to invalid data, the source of the data must be corrected before you resend the resend request to eBay. • Request (out) An error occurred due to a problem with the request, with the most likely source being missing or invalid data in the request. The problem must be corrected before the request can be retried. Inspect the error message to find the cause of the problem. If the problem is a result of end-user data, alert the end-user to the problem and provide the means for them to correct the problem. Once the problem is resolved, resend the request to eBay. • System (out) Indicates that an error has occurred on the eBay system side. For example, a database or server could be down. Inspect the error message to find the cause of the problem. If the problem is on the eBay 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. |
| errorMessage.error.domain | string | Conditionally |
Name of the domain in which the error occurred.
|
| errorMessage.error.errorId | long | 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. |
| errorMessage.error.exceptionId | token | Conditionally | Unique identifier for an exception associated with an error. |
| errorMessage.error.message | string | Conditionally | A detailed description of the condition that caused in the error. |
| errorMessage.error.parameter | ErrorParameter (string) | Conditionally,
repeatable: [0..*] |
Various warning and error messages return one or more variables that contain contextual information about the error. This is often the field or value that triggered the error. |
| errorMessage.error.parameter [ attribute name ] |
string | Conditionally | The name of the input parameter returned with the error. Inspecting the parameter (or its input value) will often aid in understanding the cause of the error. Not all error messages contain this value. |
| errorMessage.error.severity | ErrorSeverity | Conditionally |
Indicates whether the reported problem is fatal (an error) or is less- severe (a warning). Review the error message details for information on the cause. If the request fails and the application is the source of the error (for example, a required element is missing), update the application before you retry the request. If the problem is due to incorrect user data, 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, re-send the request to eBay. If the source of the problem is on eBay's side, you can retry the request a reasonable number of times (eBay recommends you try the request twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, you can resend the request in its original form. If a warning occurs, warning information is returned in addition to the business data. Normally, you do not need to resend the request (as the original request was successful). However, depending on the cause of the warning, you might need to contact the end user, or eBay, to effect a long term solution to the problem. Applicable values: • Error (out) eBay encountered a fatal error during the processing of the request, causing the request to fail. When eBay encounters an error, it returns error data instead of the requested business data. Inspect the error details and resolve the problem before resubmitting the request. • Warning (out) The request was successfully processed, but eBay encountered a non-fatal error during the processing that could affect the data returned. For example, eBay might have changed the value of an input field. In this case, eBay returns a successful response, but it also returns a warning. For best results, requests should return without warnings. Inspect the warning details and resolve the problem before resubmitting the request. |
| errorMessage.error.subdomain | string | Conditionally |
Name of the subdomain in which the error occurred.
|
| timestamp | dateTime | Always | This value represents the date and time when eBay processed the request. This value is returned in GMT, the ISO 8601 date and time format (YYYY- MM- DDTHH:MM:SS.SSSZ). See the "dateTime" type for information about the time format, and for details on converting to and from the GMT time zone. |
| version | string | Always |
The release version that eBay used to process the request. Developer Technical Support may ask you for the version value if you work with them to troubleshoot issues. Note: The version in use is normally the latest release version, as specified in the release notes. Note that eBay releases the API to international sites about a week after the API version is released to the US site. |
| Call-specific Output Fields |
| metadataVersion | string | Conditionally | Version information reflects the last update of the values within the dependency graph. |
| propertyValues | PropertyValue | Conditionally,
repeatable: [0..*] |
This will be populated for the non-fitment enabled category |
| propertyValues.propertyName | string | Conditionally | This is the canonical name of the property. Used to identify a property within a catalog that this category belongs to. |
| propertyValues.value | Value | Conditionally,
repeatable: [0..*] |
A value for the property. |
| propertyValues.value.number | NumericValue | Conditionally | For numeric value type. |
|
propertyValues.value.number .unitOfMeasurement |
token | Conditionally |
Unit of measure for a numeric value.
|
|
propertyValues.value.number .value |
string | Conditionally | A number value. |
| propertyValues.value.text | StringValue | Conditionally | For string value type. |
|
propertyValues.value.text .value |
string | Conditionally | A string value. |
| propertyValues.value.URL | URIValue | Conditionally | For URL value type. |
| propertyValues.value.URL.value | anyURI | Conditionally | As part of request, this will be the URL to download media file. As part of response, this will be the URL where the media file is stored on eBay. |
| propertyValuesTree | PropertyNameValue | Conditionally | This will be populated for non-fitment enabled category |
|
propertyValuesTree .childPropertyNameValue |
PropertyNameValue | Conditionally,
repeatable: [0..*] |
Property name value pairs that are children to other properties. Only returned when the response is returned as a propertyValuesTree. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue |
PropertyNameValue | Conditionally,
repeatable: [0..*] |
Property name value pairs that are children to other properties. Only returned when the response is returned as a propertyValuesTree.
Recursion: No more than two levels of information will be returned. The deepest level does not include childPropertyNameValue. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue .propertyName |
string | Conditionally | This is the canonical name of the property. Used to identify a property within a catalog that this category belongs to. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value |
Value | Conditionally | A value for the property. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value .number |
NumericValue | Conditionally | For numeric value type. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value .number.unitOfMeasurement |
token | Conditionally |
Unit of measure for a numeric value.
|
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value .number.value |
string | Conditionally | A number value. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value .text |
StringValue | Conditionally | For string value type. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value .text.value |
string | Conditionally | A string value. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value .URL |
URIValue | Conditionally | For URL value type. |
|
propertyValuesTree .childPropertyNameValue .childPropertyNameValue.value .URL.value |
anyURI | Conditionally | As part of request, this will be the URL to download media file. As part of response, this will be the URL where the media file is stored on eBay. |
|
propertyValuesTree .childPropertyNameValue .propertyName |
string | Conditionally | This is the canonical name of the property. Used to identify a property within a catalog that this category belongs to. |
|
propertyValuesTree .childPropertyNameValue.value |
Value | Conditionally | A value for the property. |
|
propertyValuesTree .childPropertyNameValue.value .number |
NumericValue | Conditionally | For numeric value type. |
|
propertyValuesTree .childPropertyNameValue.value .number.unitOfMeasurement |
token | Conditionally |
Unit of measure for a numeric value.
|
|
propertyValuesTree .childPropertyNameValue.value .number.value |
string | Conditionally | A number value. |
|
propertyValuesTree .childPropertyNameValue.value .text |
StringValue | Conditionally | For string value type. |
|
propertyValuesTree .childPropertyNameValue.value .text.value |
string | Conditionally | A string value. |
|
propertyValuesTree .childPropertyNameValue.value .URL |
URIValue | Conditionally | For URL value type. |
|
propertyValuesTree .childPropertyNameValue.value .URL.value |
anyURI | Conditionally | As part of request, this will be the URL to download media file. As part of response, this will be the URL where the media file is stored on eBay. |
|
propertyValuesTree .propertyName |
string | Conditionally | This is the canonical name of the property. Used to identify a property within a catalog that this category belongs to. |
| propertyValuesTree.value | Value | Conditionally | A value for the property. |
|
propertyValuesTree.value .number |
NumericValue | Conditionally | For numeric value type. |
|
propertyValuesTree.value .number.unitOfMeasurement |
token | Conditionally |
Unit of measure for a numeric value.
|
|
propertyValuesTree.value .number.value |
string | Conditionally | A number value. |
| propertyValuesTree.value.text | StringValue | Conditionally | For string value type. |
|
propertyValuesTree.value.text .value |
string | Conditionally | A string value. |
| propertyValuesTree.value.URL | URIValue | Conditionally | For URL value type. |
|
propertyValuesTree.value.URL .value |
anyURI | Conditionally | As part of request, this will be the URL to download media file. As part of response, this will be the URL where the media file is stored on eBay. |
| treeFormat | boolean | Always |
Indicates whether the response is flat or in a hierarchical tree format. Default: false. |
| Input Output Change History User Notes |
New to making API calls? Please see Making an API 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.
Retrieves compatibility search values associated with a specified search name.
Description
To build a user interface that lets sellers choose the compatible vehicles to which their parts apply, retrieve compatible search values for a given search name. If the part applies to a specific make or model, you can use filters to restrict the output. For example, if the seller's part applies only to Hondas, use a filter to retrieve model information for Hondas only.
Input
Retrieve compatibility search values for vehicle model (propertyName set to Model) from the Other Parts category (categoryId set to 6763). Limit the results to models for Honda make vehicles only (propertyFilter.propertyName set to Make and propertyFilter.value.text.value set to Honda).
XML format (HTTP POST). Also available is the .txt version of this XML. <?xml version="1.0" encoding="UTF-8"?> <getCompatibilitySearchValuesRequest xmlns="http://www.ebay.com/marketplace/marketplacecatalog/v1/services"> <categoryId>6763</categoryId> <propertyFilter> <propertyName>Make</propertyName> <value> <text> <value>Honda</value> </text> </value> </propertyFilter> <propertyName>Model</propertyName> </getCompatibilitySearchValuesRequest>
Output
The response defaults to a tree format, in which each child property specifies a model name (e.g., (propertyValuesTree.childPropertyNameValue.value.text.value is Accord).
XML format. Also available is the .txt version of this XML. <getCompatibilitySearchValuesResponse xmlns="http://www.ebay.com/marketplace/marketplacecatalog/v1/services"> <ack>Success</ack> <version>1.2.0</version> <timestamp>2011-04-21T18:33:39.801Z</timestamp> <metadataVersion>10</metadataVersion> <propertyValuesTree> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Accord</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Civic del Sol</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>EV Plus</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>CRX</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Civic</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Prelude</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Wagovan</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Fit</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>S2000</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Passport</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>600</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Accord Crosstour</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Odyssey</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>CR-V</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Pilot</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Insight</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Element</value> </text> </value> </childPropertyNameValue> <childPropertyNameValue> <propertyName>Model</propertyName> <value> <text> <value>Ridgeline</value> </text> </value> </childPropertyNameValue> </propertyValuesTree> <treeFormat>true</treeFormat> </getCompatibilitySearchValuesResponse>
| Input Output Samples User Notes |
| Version | Description |
|---|---|
| 1.2.0 044/28/2010 |
|
| 1.1.0 03/03/2010 |
|
| Input Output Samples Change History User Notes |
© 2009–2011 eBay, Inc. All rights reserved. This documentation and the API may only be used in accordance with the eBay Developers Program and API License Agreement.