marketing APIv1.10.0

getPromotionReports

GET
/promotion_report
This method generates a report that lists the seller's running, paused, and ended promotions for the specified eBay marketplace. The result set can be filtered by the promotion status and the number of results to return. You can also supply keywords to limit the report to promotions that contain the specified keywords.

Specify the eBay marketplace for which you want the report run using the marketplace_id query parameter. Supply additional query parameters to control the report as needed.

Input

Resource URI (production)

GET https://api.ebay.com/sell/marketing/v1/promotion_report?

URI parameters

ParameterTypeDescription
qstringA string consisting of one or more keywords. eBay filters the response by returning only the promotions that contain the supplied keywords in the promotion title.

Example: "iPhone" or "Harry Potter."

Commas that separate keywords are ignored. For example, a keyword string of "iPhone, iPad" equals "iPhone iPad", and each results in a response that contains promotions with both "iPhone" and "iPad" in the title.

Occurrence: Optional

limitstringSpecifies the maximum number of promotions returned on a page from the result set.

Default: 200
Maximum: 200

Occurrence: Optional

offsetstringSpecifies the number of promotions to skip in the result set before returning the first promotion 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

Occurrence: Optional

marketplace_idstringThe eBay marketplace ID of the site for which you want the promotions report.

Valid values:

  • EBAY_AU = Australia
  • EBAY_DE = Germany
  • EBAY_ES = Spain
  • EBAY_FR = France
  • EBAY_GB = Great Britain
  • EBAY_IT = Italy
  • EBAY_US = United States

Occurrence: Required

promotion_statusstringLimits the results to the promotions that are in the state specified by this query parameter.

Valid values:
  • DRAFT
  • SCHEDULED
  • RUNNING
  • PAUSED
  • ENDED
Maximum number of values supported: 1

Occurrence: Optional

promotion_typestringFilters the returned promotions in the report based on their campaign promotion type. Specify one of the following values to indicate the promotion type you want returned in the report:
  • CODED_COUPON – A coupon code promotion set with createItemPromotion.
  • MARKDOWN_SALE – A markdown promotion set with createItemPriceMarkdownPromotion.
  • ORDER_DISCOUNT – A threshold promotion set with createItemPromotion.
  • VOLUME_DISCOUNT – A volume pricing promotion set with createItemPromotion.

Occurrence: Optional

HTTP request headers

All requests made to eBay REST operations require you to provide the Authorization HTTP header for authentication authorization.

OAuth scope

This request requires an access token created with the authorization code grant flow, using one or more scopes from the following list (please check your Application Keys page for a list of OAuth scopes available to your application):

https://api.ebay.com/oauth/api_scope/sell.marketing.readonly

https://api.ebay.com/oauth/api_scope/sell.marketing

See OAuth access tokens for more information.

Output

HTTP response headers

Output container/fieldTypeDescription
hrefstringThe URI of the current page of results from the result set.

Occurrence: Always

limitintegerThe 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.

Occurrence: Always

nextstringThe 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

Occurrence: Conditional

offsetintegerThe 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.

Occurrence: Always

prevstringThe 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

Occurrence: Conditional

promotionReportsarray of PromotionReportDetailA list of promotionReports contained in the paginated result set.

Occurrence: Always

promotionReports.averageItemDiscountAmountThe average item discount is the average discount that has been applied to each item in a promotion. This value is calculated as follows:

totalDiscount / itemsSoldQuantity = averageItemDiscount

Occurrence: Always

promotionReports.averageItemDiscount.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.averageItemDiscount.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

promotionReports.averageItemRevenueAmountThe average item revenue is the average revenue that has been received for each item in a promotion. This value is calculated as follows:

totalSales / itemsSoldQuantity = averageItemRevenue

Occurrence: Always

promotionReports.averageItemRevenue.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.averageItemRevenue.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

promotionReports.averageOrderDiscountAmountThe average order discount is the average discount that has been applied to each order in a promotion. This value is calculated as follows:

totalDiscount / numberOfOrdersSold = averageOrderDiscount

Occurrence: Always

promotionReports.averageOrderDiscount.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.averageOrderDiscount.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

promotionReports.averageOrderRevenueAmountThe average order revenue is the average revenue that has been received for each order in a promotion. This value is calculated as follows:

totalSales / numberOfOrdersSold = averageOrderRevenue

Occurrence: Always

promotionReports.averageOrderRevenue.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.averageOrderRevenue.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

promotionReports.averageOrderSizestringThe average order size is the average number of items that each order contained in a promotion. This value is calculated as follows:

itemsSoldQuantity / numberOfOrdersSold = averageOrderSize

Occurrence: Always

promotionReports.baseSaleAmountThis is the monetary amount of items purchased in a promotion where the threshold wasn't met, so the discount was not applied.

For example, suppose you're running a "Buy 1, get 1 at 50%" promotion on $5 socks. One buyer purchased only one pair of socks, so they pay the full price of $5. Here, your baseSale amount would be $5.

Occurrence: Always

promotionReports.baseSale.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.baseSale.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

promotionReports.itemsSoldQuantityintegerThis is the quantity of items purchased in a threshold promotion where the threshold has been met and the discount was applied.

For example, suppose you're running a "Buy 1, get 1 at 50%" promotion on $5 socks. One buyer purchases two pairs of socks, so they pay $7.50 for both pairs (rather than the full price of $10). Your number of items sold (itemsSoldQuantity) would be 2 and you number of orders sold (numberOfOrdersSold) would be 1.

Occurrence: Always

promotionReports.numberOfOrdersSoldintegerThis is the number of orders sold in a threshold promotion where the threshold has been met and the discount was applied.

For example, suppose you're running a "Buy 1, get 1 at 50%" promotion on $5 socks. One buyer purchases two pairs of socks, so they pay $7.50 for both pairs (rather than the full price of $10). Your numberOfOrdersSold would be 1 and your itemsSoldQuantity would be 2.

Occurrence: Always

promotionReports.percentageSalesLiftstringThe percentage sales lift is the total dollar amount gained due to promotions. This value is calculated as follows:

promotionSale / totalSale = percentageSalesLift

Occurrence: Conditional

promotionReports.promotionHrefstringThe URI of the promotion report.

Occurrence: Always

promotionReports.promotionIdstringA unique eBay-assigned ID for the promotion that's generated when the promotion is created.

Occurrence: Always

promotionReports.promotionReportIdstringThe unique eBay-assigned ID of the promotion report that is generated when the report is created.

Occurrence: Conditional

promotionReports.promotionSaleAmountThis is the monetary amount of the items sold in a threshold promotion where the threshold has been met and the discount was applied.

For example, suppose you're running a "Buy 1, get 1 at 50%" promotion on $5 socks. One buyer purchases two pairs of socks, so they pay $7.50 for both pairs (rather than the full price of $10). Your promotionSale amount would be $7.50.

Occurrence: Always

promotionReports.promotionSale.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.promotionSale.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

promotionReports.promotionTypePromotionTypeEnumIndicates the type of the promotion, either CODED_COUPON, MARKDOWN_SALE, ORDER_DISCOUNT, or VOLUME_DISCOUNT.

Occurrence: Always

promotionReports.totalDiscountAmountThis is the monetary discount amount applied to the sale of items in a threshold promotion where the threshold has been met and the discount was applied.

For example, suppose you're running a "Buy 1, get 1 at 50%" promotion on $5 socks. One buyer purchases two pairs of socks, so they pay $7.50 for both pairs (rather than the full price of $10). Your totalDiscount amount would be $2.50.

Occurrence: Always

promotionReports.totalDiscount.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.totalDiscount.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

promotionReports.totalSaleAmountThis is the total monetary sales amount of all items sold in a promotion.

For example, suppose you're running a "Buy 1, get 1 at 50%" promotion on $5 socks. You make one sale where the buyer purchases only one pair of socks and they pay the full price of $5 (baseSale). You make a second sale where the buyer purchases two pairs of socks and they pay $7.50, for both pairs (promotionSale). Your totalSale would be $12.50. This value is calculated as follows:

baseSale + promotionSale = totalSale

Occurrence: Always

promotionReports.totalSale.currencyCurrencyCodeEnumThe base currency applied to the value field to establish a monetary amount.

The currency is represented as a 3-letter ISO 4217 currency code. For example, the code for the Canadian Dollar is CAD.

Default: The default currency of the eBay marketplace that hosts the listing.

Occurrence: Conditional

promotionReports.totalSale.valuestringThe monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional

totalintegerThe total number of items retrieved in the result set.

If no items are found, this field is returned with a value of 0.

Occurrence: Always

HTTP status codes

This call can return one of the following HTTP status codes. For an overview of the status codes, see HTTP status codes in Using eBay RESTful APIs.

StatusMeaning
200Success
400Bad Request
500Internal Server Error

Error codes

For more on errors, plus the codes of other common errors, see Handling errors.

CodeDomainCategoryMeaning
38201API_MARKETINGAPPLICATIONInternal server error encountered. If this problem persists, contact the eBay Developers Program for support.
38204API_MARKETINGREQUESTThe seller is not eligible for promotions because they do not have an eBay Store or they have not accepted the terms and conditions for creating a promotion on this Marketplace, see the documentation for this call.
38211API_MARKETINGREQUESTThe offset value must be an integer value greater than or equal to zero.
38213API_MARKETINGREQUESTYou can query a limit of between 0 and 200 promotion records at a time. Update the request and resubmit the call.
38240API_MARKETINGREQUESTInvalid input for the 'promotionStatus' field. For help, see the documentation for this call.
345141API_MARKETINGREQUESTInvalid input for the 'promotionType' field. For help, see the documentation for this call.

Warnings

Samples

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

Note: Identifiers, such as order IDs or user IDs, and personal data in these samples might be anonymized or may no longer be active on eBay. If necessary, substitute current, relevant eBay data in your requests.

Sample 1: Generate Promotion Level Report

This sample returns a report on the performance of a seller's promotion for the specified marketplace.

Input

This sample contains marketplace_id (which is required) and the promotion_status fields. The report includes all ended promotions.
GET
https://api.ebay.com/sell/marketing/v1/promotion_report?marketplace_id=EBAY_US&promotion_status=ENDED

Output

The response body contains the fields of the report.