swagger: '2.0' info: description: 'The Recommendation API returns information that sellers can use to optimize the configuration of their listings on eBay. Currently, the API contains a single method, findListingRecommendations. This method provides information that sellers can use to configure Promoted Listings ad campaigns to maximize the visibility of their items in the eBay marketplace.' version: 1.1.0 title: Recommendation API contact: name: 'eBay Inc,' license: name: eBay API License Agreement url: 'https://go.developer.ebay.com/api-license-agreement' host: api.ebay.com basePath: /sell/recommendation/v1 schemes: - https paths: /find: post: tags: - listing_recommendation description: 'The find method currently returns information for a single recommendation type (AD) which contains information that sellers can use to configure Promoted Listings ad campaigns. The response from this method includes an array of the seller''s listing IDs, where each element in the array contains recommendations related to the associated listing ID. For details on how to use this method, see Using the Recommendation API to help configure campaigns. The AD recommendation type The AD type contains two sets of information: The promoteWithAd indicator The promoteWithAd response field indicates whether or not eBay recommends you place the associated listing in a Promoted Listings ad campaign. The returned value is set to either RECOMMENDED or UNDETERMINED, where RECOMMENDED identifies the listings that will benefit the most from having them included in an ad campaign. The bid percentage Also known as the "ad rate," the bidPercentage field provides the current trending bid percentage of similarly promoted items in the marketplace. The ad rate is a user-specified value that indicates the level of promotion that eBay applies to the campaign across the marketplace. The value is also used to calculate the Promotion Listings fee, which is assessed to the seller if a Promoted Listings action results in the sale of an item. Configuring the request You can configure a request to review all of a seller''s currently active listings, or just a subset of them. All active listings – If you leave the request body empty, the request targets all the items currently listed by the seller. Here, the response is filtered to contain only the items where promoteWithAd equals RECOMMENDED. In this case, eBay recommends that all the returned listings should be included in a Promoted Listings ad campaign. Selected listing IDs – If you populate the request body with a set of listingIds, the response contains data for all the specified listing IDs. In this scenario, the response provides you with information on listings where the promoteWithAd can be either RECOMMENDED or UNDETERMINED. The paginated response Because the response can contain many listing IDs, the findListingRecommendations method paginates the response set. You can control size of the returned pages, as well as an offset that dictates where to start the pagination, using query parameters in the request.' operationId: findListingRecommendations produces: - application/json;charset=UTF-8 parameters: - name: filter in: query description: 'Provide a list of key-value pairs to specify the criteria you want to use to filter the response. In the list, separate each filter key from its associated value with a colon (":"). Currently, the only supported filter value is recommendationTypes and it supports only the ("AD") type. Follow the recommendationTypes specifier with the filter type(s) enclosed in curly braces ("{ }"), and separate multiple types with commas. Example: filter=recommendationTypes:{AD} Default: recommendationTypes:{AD}' required: false type: string - name: limit in: query description: 'Use this query parameter to set the maximum number of ads to return on a page from the paginated response. Default: 10 Maximum: 500' required: false type: integer - name: offset in: query description: 'Specifies the number of ads to skip in the result set before returning the first ad in the paginated response. Combine offset with the limit query parameter to control the items returned in the response. For example, if you supply an offset of 0 and a limit of 10, the first page of the response contains the first 10 items from the complete list of items retrieved by the call. If offset is 10 and limit is 20, the first page of the response contains items 11-30 from the complete result set. Default: 0' required: false type: integer - name: X-EBAY-C-MARKETPLACE-ID in: header description: Use this header to specify the eBay marketplace where you list the items for which you want to get recommendations. required: true type: string - in: body name: body required: false schema: $ref: '#/definitions/FindListingRecommendationRequest' responses: '200': description: Success schema: $ref: '#/definitions/PagedListingRecommendationCollection' '204': description: No Content '400': description: Bad Request x-response-codes: errors: '145101': domain: API_RECOMMENDATION category: REQUEST description: 'The marketplace value {marketplaceId} is not supported. The supported values are: {marketplaceIds}. ' '145102': domain: API_RECOMMENDATION category: REQUEST description: 'Invalid value {recommendationTypes} for recommendationTypes filter' '145103': domain: API_RECOMMENDATION category: REQUEST description: You must specify at least one listing ID. '145104': domain: API_RECOMMENDATION category: REQUEST description: The recommendationTypes filter accepts a single value only. '145105': domain: API_RECOMMENDATION category: REQUEST description: 'Invalid listing Ids {listingIds}.' '145106': domain: API_RECOMMENDATION category: REQUEST description: Listing ID limit exceeded. You can pass up to a maximum of 500 listing IDs per request. '500': description: Internal Server Error x-response-codes: errors: '145000': domain: API_RECOMMENDATION category: APPLICATION description: Internal error. Please wait a few minutes and try the call again security: - Authorization Code: - 'https://api.ebay.com/oauth/api_scope/sell.inventory' securityDefinitions: Authorization Code: description: The security definitions for this API. Please check individual operations for applicable scopes. type: oauth2 authorizationUrl: 'https://auth.ebay.com/oauth2/authorize' tokenUrl: 'https://api.ebay.com/identity/v1/oauth2/token' flow: accessCode scopes: 'https://api.ebay.com/oauth/api_scope/sell.inventory': View and manage your inventory and offers definitions: Ad: type: object properties: bidPercentages: type: array description: 'This field returns information that you can use to configure the bidPercentage field in a Promoted Listings campaign. Note: Currently, ITEM and TRENDING are the only supported bid percentage types. The ITEM suggested bid percentages are tailored to each of your items and are designed to help you stay competitive while finding an optimal balance between performance and cost. The recommendations are calculated based on a variety of factors that may include item attributes, seasonality, past performance, and current competition for each of your listings. The TRENDING suggested bid percentages are calculated by reviewing the category level average ad rates in the marketplace. Setting the bidPercentage of your ad campaign based on these rate recommendations will help the items in the campaign be competitive with other items in the marketplace by improving their chances of being displayed more often in the marketplace.' items: $ref: '#/definitions/BidPercentages' promoteWithAd: type: string description: 'An enum whose values describe whether or not eBay recommends you place the associated listing in a Promoted Listings ad campaign. IDs deemed RECOMMENDED by eBay are the listings with the highest potential of benefiting from being promoted. The recommendation calculation is based on marketplace trends, like buyer demand and the competition in the item’s category. Note: A promoteWithAd value cannot be calculated for listings that are part of Promoted Listings campaigns. Because of this, if you call findListingRecommendations with a specific set of listing IDs, the promoteWithAd field is not returned for any of the listings that are involved in a promotion. However, as long as they are eligible, the trending bidPercentage is returned for all specified listings, even if they are part of an ad campaign. For implementation help, refer to eBay API documentation' description: A complex type that contains recommendations and information on how to configure Promoted Listings ad campaigns. BidPercentages: type: object properties: basis: type: string description: 'The basis by which the ad rate is calculated. Valid Values: ITEM and TRENDING For implementation help, refer to eBay API documentation' value: type: string description: 'The bid percentage data is a single precision value, as calculated by the associated basis. In Promoted listings ad campaigns, the bid percentage (also known as the ad rate) is a user-defined value that sets the level that eBay raises the visibility of the listing in the marketplace. It is also the rate that is used to calculate the Promoted Listings fee. Minimum value: 1.0   Maximum value: 100.0' description: A complex type that returns data related to Promoted Listings bid percentages. FindListingRecommendationRequest: type: object properties: listingIds: type: array description: 'A comma-separated list of listing IDs for which you want Promoted Listings ad configuration information. Currently, this method accepts only listingId values from the Trading API. Max: 500 listing IDs' items: type: string description: An list of listing ID values for which you want Promoted Listings ad configuration information. ListingRecommendation: type: object properties: listingId: type: string description: An ID that identifies the active listing associated with the eBay recommendations. marketing: $ref: '#/definitions/MarketingRecommendation' description: A complex type that contains the ID of an actively listed item and a set of related listing recommendations. The recommendations contain information the seller can use to optimize their listing configurations. MarketingRecommendation: type: object properties: ad: $ref: '#/definitions/Ad' message: type: string description: A message that can conditionally accompany the listing information. description: 'A complex type that contains information about how a seller can improve their listing configurations. The AD object contains Promoted Listings recommendations and information, which the seller can use to improve buyer conversions. The response can also contain an optional message about the returned data.' PagedListingRecommendationCollection: type: object properties: href: type: string description: The URI of the current page of results from the result set. limit: type: integer description: The number of items returned on a single page from the result set. This value can be set in the request with the limit query parameter. listingRecommendations: type: array description: 'Returns a list of listingRecommendations, where each element in the list offers recommendations for the associated listingId. Which elements are returned depend on how you structure the request. For example, if you request recommendations for all of a sellers listings (by leaving the request payload empty), ad recommendations are returned only for those listings where promoteWithAd is set to RECOMMENDED.' items: $ref: '#/definitions/ListingRecommendation' next: type: string description: 'The URI for the following page of results. This value is returned only if there is an additional page of results to display from the result set. Max length: 2048' offset: type: integer description: 'The number of results skipped in the result set before listing the first returned result. This value can be set in the request with the offset query parameter. Note: The items in a paginated result set use a zero-based list where the first item in the list has an offset of 0.' prev: type: string description: 'The URI for the preceding page of results. This value is returned only if there is a previous page of results to display from the result set. Max length: 2048' total: type: integer description: 'The total number of items retrieved in the result set. If no items are found, this field is returned with a value of 0.' description: The high-level object used to return a set of Promoted Listings ad recommendations.