{"note":"OpenAPI conversion -- returning structured metadata","name":"ebay-com-sell-marketing","description":"Marketing API","version":"v1.23.0","base_url":"https://api.ebay.com/sell/marketing/v1","endpoints":80,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Marketing API\n@base https://api.ebay.com/sell/marketing/v1\n@version v1.23.0\n@auth OAuth2\n@endpoints 80\n@hint download_for_search\n@toc ad_campaign(45), bulk_create_negative_keyword(1), bulk_update_negative_keyword(1), negative_keyword(4), ad_report(1), ad_report_metadata(2), ad_report_task(4), item_price_markdown(4), item_promotion(4), promotion(4), promotion_report(1), promotion_summary_report(1), email_campaign(8)\n\n@group ad_campaign\n@endpoint POST /ad_campaign/{campaign_id}/bulk_create_ads_by_inventory_reference\n@desc This method adds multiple listings that are managed with the Inventory API to an existing Promoted Listings campaign.For general strategy campaigns using the Cost Per Sale (CPS) model, bulk ads may be directly created for the listing.For each listing specified in the request, this method:Creates an ad for the listing. Sets the bid percentage (also known as the ad rate) for the ads created. Associates the ads created with the specified campaign.To create ads for a listing, specify their inventoryReferenceId and inventoryReferenceType, plus the bidPercentage for the ad in the payload of the request. Specify the campaign to which you want to associate the ads using the campaign_id path parameter.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.Use createCampaign to create a new campaign and use getCampaigns to get a list of existing campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which to associated the ads being created. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adGroupId: str, bidPercentage: str, inventoryReferenceId: str, inventoryReferenceType: str}] # A list of inventory reference ID and inventory reference type pairs, and the bid percentage, which the call uses to create ads in bulk.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_create_ads_by_listing_id\n@desc This method adds multiple listings to an existing Promoted Listings campaign using listingId values generated by the Trading API or Inventory API, or using values generated by an ad group ID.For general strategy campaigns using the Cost Per Sale (CPS) funding model, bulk ads may be directly created for the listing.For each listing ID specified in the request, this method:  Creates an ad for the listing. Sets the bid percentage (also known as the ad rate) for the ad. Associates the ad with the specified campaign.To create an ad for a listing, specify its listingId, plus the bidPercentage for the ad in the payload of the request. Specify the campaign to associate the ads with using the campaign_id path parameter. Listing IDs are generated by eBay when a seller creates listings with the Trading API.You can specify a maximum of 500 listings per call and each campaign can have ads for a maximum of 50,000 items. Be aware when using this call that each variation in a multiple-variation listing creates an individual ad.For manual targeting priority strategy campaigns using the Cost Per Click (CPC) funding model, an ad group must be created first. If no ad group has been created for the campaign, ads cannot be created.Note: Ad groups are not required when adding listings to a smart targeting campaign.For the ad group specified in the request, this method associates the ad with the specified ad group.To create an ad for an ad group, specify the name of the ad group plus the defaultBid for the ad in the payload of the request. Specify the campaign to associate the ads with using the campaign_id path parameter. Ad groups are generated using the createAdGroup  method. You can specify one or more ad groups per campaign.Use createCampaign to create a new campaign and use getCampaigns to get a list of existing campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which to associated the ads being created. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adGroupId: str, bidPercentage: str, listingId: str}] # An array of listing IDs and their associated bid percentages, which the request uses to create ads in bulk. This request accepts both listing IDs, as generated by the Inventory API, and an item IDs, as used in the eBay Traditional API set (e.g., the Trading and Finding APIs).  Maximum:  500 IDs per call}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_delete_ads_by_inventory_reference\n@desc This method works with listings created with the Inventory API.The method deletes a set of ads, as specified by a list of inventory reference IDs, from the specified campaign. Inventory reference IDs are seller-defined IDs that are used with the Inventory API.Pass the campaign_id as a path parameter and populate the payload with a list of inventoryReferenceId and inventoryReferenceType pairs that you want to delete.Get the campaign IDs for a seller by calling getCampaigns and call getAds to get a list of the seller's inventory reference IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which to delete a set of ads. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{inventoryReferenceId: str, inventoryReferenceType: str}] # A list of inventory referenceID and inventory reference type pairs that specify the set of ads to remove in bulk.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_delete_ads_by_listing_id\n@desc This method works with listing IDs created with either the Trading API or the Inventory API.The method deletes a set of ads, as specified by a list of listingID values from a Promoted Listings campaign. A listing ID value is generated by eBay when a seller creates a listing with either the Trading API and Inventory API.Pass the campaign_id as a path parameter and populate the payload with the set of listing IDs that you want to delete.Get the campaign IDs for a seller by calling getCampaigns and call getAds to get a list of the seller's inventory reference IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.When using the CPC funding model, use the bulkUpdateAdsStatusByListingId method to change the status of ads to ARCHIVED.\n@required {campaign_id: str # This path parameter specifies the eBay-assigned identifier of the ad campaign for which to delete a set of ads. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{listingId: str}] # An array of the listing IDs that identify the ads to remove.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_update_ads_bid_by_inventory_reference\n@desc This method works with listings created with either the Trading API or the Inventory API.  The method updates the bidPercentage values for a set of ads associated with the specified campaign.  Specify the campaign_id as a path parameter and supply a set of listing IDs with their associated updated bidPercentage values in the request body. An eBay listing ID is generated when a listing is created with the Trading API.  Get the campaign IDs for a seller by calling getCampaigns and call getAds to get a list of the seller's inventory reference IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which to update the bid percentage for a set of ads. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adGroupId: str, bidPercentage: str, inventoryReferenceId: str, inventoryReferenceType: str}] # A list of inventory reference ID and inventory reference type pairs, and the bid percentage, which the call uses to create ads in bulk.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_update_ads_bid_by_listing_id\n@desc This method works with listings created with either the Trading API or the Inventory API.  The method updates the bidPercentage values for a set of ads associated with the specified campaign.  Specify the campaign_id as a path parameter and supply a set of listing IDs with their associated updated bidPercentage values in the request body. An eBay listing ID is generated when a listing is created with the Trading API.  Get the campaign IDs for a seller by calling getCampaigns and call getAds to get a list of the seller's inventory reference IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which to update the bid percentage for a set of ads. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adGroupId: str, bidPercentage: str, listingId: str}] # An array of listing IDs and their associated bid percentages, which the request uses to create ads in bulk. This request accepts both listing IDs, as generated by the Inventory API, and an item IDs, as used in the eBay Traditional API set (e.g., the Trading and Finding APIs).  Maximum:  500 IDs per call}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_update_ads_status\n@desc Note: This method is only available for select partners who have been approved for the priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method works with listings created with either the Trading API or the Inventory API.This method updates the status of ads in bulk.Specify the campaign_id you want to update as a URI parameter, and configure the adGroupStatus in the request payload.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ad statuses being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adId: str, adStatus: str}] # An array of listing IDs and bid percentages.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_update_ads_status_by_listing_id\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method works with listings created with either the Trading API or the Inventory API.The method updates the status of ads in bulk, based on listing ID values.Specify the campaign_id as a path parameter and supply a set of listing IDs with their updated adStatus values in the request body. An eBay listing ID is generated when a listing is created with the Trading API.Get the campaign IDs for a seller by calling getCampaigns and call getAds to retrieve a list of seller inventory reference IDs.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ads being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adGroupId: str, adStatus: str, listingId: str}] # An array of listing IDs and bid percentages.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/{campaign_id}/ad\n@desc This method retrieves Promoted Listings ads that are associated with listings created with either the Trading API or the Inventory API. The method retrieves ads related to the specified campaign. Specify the Promoted Listings campaign to target with the campaign_id path parameter.  Because of the large number of possible results, you can use query parameters to paginate the result set by specifying a limit, which dictates how many ads to return on each page of the response. You can also specify how many ads to skip in the result set before returning the first result using the offset path parameter.  Call getCampaigns to retrieve the current campaign IDs for the seller.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ads being retrieved. Use the getCampaigns method to retrieve campaign IDs.}\n@optional {ad_group_ids: str # A comma-separated list of ad group IDs. The results will be filtered to only include active ads for these ad groups.Use the getAdGroups method to retrieve the ad group ID for the ad group.Note: This field only applies to the Cost Per Click (CPC) funding model; it does not apply to the Cost Per Sale (CPS) funding model., ad_status: str # A comma-separated list of ad statuses. The results will be filtered to only include the given statuses of the ad. If none are provided, all ads are returned.See AdStatusEnum for supported values., limit: str # Specifies the maximum number of ads to return on a page in the paginated response.Default: 10 Maximum: 500, listing_ids: str # A comma-separated list of listing IDs. Note: The response includes only active ads. The results do not include listing IDs that are excluded by other conditions., offset: str # 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}\n@returns(200) {ads: [map], href: str, limit: int(int32), next: str, offset: int(int32), prev: str, total: int(int32)} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/ad\n@desc This method adds a listing to an existing Promoted Listings campaign using a listingId value generated by the Trading API or Inventory API, or using a value generated by an ad group ID. For general strategy campaigns using the Cost Per Sale (CPS) funding model, an ad may be directly created for the listing.For the listing ID specified in the request, this method:  Creates an ad for the listing. Sets the bid percentage (also known as the ad rate) for the ad. Associates the ad with the specified campaign.  To create an ad for a listing, specify its listingId, plus the bidPercentage for the ad in the payload of the request. Specify the campaign to associate the ad with using the campaign_id path parameter. Listing IDs are generated by eBay when a seller creates listings with the Trading API.For manual targeting priority strategy campaigns using the Cost Per Click (CPC) funding model, an ad group must be created first. If no ad group has been created for the campaign, ads cannot be created.Note: Ad groups are not required when adding listings to a smart targeting campaign.For the ad group specified in the request, this method associates the ad with the specified ad group.To create an ad for an ad group, specify the name of the ad group in the payload of the request. Specify the campaign to associate the ads with using the campaign_id path parameter. Ad groups are generated using the createAdGroup method. You can specify one or more ad groups per campaign.Use createCampaign to create a new campaign and use getCampaigns to get a list of existing campaigns.This call has no response payload. If the ad is successfully created, a 201 Created HTTP status code and the getAd URI of the ad are returned in the location header.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which to associate the newly created ad. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {adGroupId: str # A unique eBay-assigned identifier for an ad group in a campaign that uses the Cost Per Click (CPC) funding model.Use the getAdGroups method to retrieve the ad group IDs for a seller.Note: This field is required for manual targeting campaigns using the Cost Per Click (CPC) funding model., bidPercentage: str # The user-defined bid percentage (also known as the ad rate) sets the level that eBay increases the visibility in search results for the associated listing. The higher the bidPercentage value, the more eBay promotes the listing.Required if the campaign's funding model is Cost Per Sale (CPS).  The value specified here is also used to calculate the Promoted Listings fee. This percentage value is multiplied by the final sales price to determine the fee. The Promoted Listings fee is determined at the time the transaction completes and the seller is assessed the fee only when an item sells through a Promoted Listings ad campaign. The bidPercentage is a single precision value that is guided by the following rules: These values are valid:&nbsp;&nbsp;&nbsp;4.1,&nbsp;&nbsp;&nbsp;5.0, &nbsp;&nbsp;&nbsp;5.5, ...  These values are not valid: &nbsp;&nbsp;&nbsp;0.01, &nbsp;&nbsp;&nbsp;10.75, &nbsp;&nbsp;&nbsp;99.99, &nbsp;&nbsp;&nbsp;and so on.If a bid percentage is not provided for an ad, eBay uses the default bid percentage of the associated campaign.Note: This field has a minimum value of 2.0 and a maximum value of 100.0., listingId: str # A unique identifier of an eBay listing.}\n@returns(201) Created\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/create_ads_by_inventory_reference\n@desc This method adds a listing that is managed with the Inventory API to an existing Promoted Listings campaign.For general strategy campaigns using the Cost Per Sale (CPS) funding model, an ad may be directly created for the listing.For each listing specified in the request, this method:Creates an ad for the listing. Sets the bid percentage (also known as the ad rate) for the ads created. Associates the created ad with the specified campaign.To create an ad for a listing, specify its inventoryReferenceId and inventoryReferenceType, plus the bidPercentage for the ad in the payload of the request. Specify the campaign to associate the ad with using the campaign_id path parameter.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.Use createCampaign to create a new campaign and use getCampaigns to get a list of existing campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which to associate the newly created ads. Use the getCampaigns method to retrieve campaign IDs, Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {adGroupId: str # Note: This field is not currently in use. Ad groups are only applicable to priority strategy ad campaigns that use the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information., bidPercentage: str # The user-defined bid percentage (also known as the ad rate) sets the level that eBay increases the visibility in search results for the associated listing. The higher the bidPercentage value, the more eBay promotes the listing.Required if the campaign's funding model is Cost Per Sale (CPS).The value specified here is also used to calculate the Promoted Listings fee. This percentage value is multiplied by the final sales price to determine the fee.The Promoted Listings fee is determined at the time the transaction completes and the seller is assessed the fee only when an item sells through a Promoted Listings ad campaign.The bidPercentage is a single precision value that is guided by the following rules: These values are valid:&nbsp;&nbsp;&nbsp;4.1, &nbsp;&nbsp;&nbsp;5.0,&nbsp;&nbsp;&nbsp;5.5, ...  These values are not valid: &nbsp;&nbsp;&nbsp;0.01, &nbsp;&nbsp;&nbsp;10.75, &nbsp;&nbsp;&nbsp;99.99, &nbsp;&nbsp;&nbsp;and so on.If a bid percentage is not provided for an ad, eBay uses the default bid percentage of the associated campaign.Note: This field has a minimum value of 2.0 and a maximum value of 100.0., inventoryReferenceId: str # The unique identifier of a single-item listing or a multi-variation listing.To create an ad for a single-item listing, set the inventoryReferenceType value to INVENTORY_ITEM and specify an item ID or a SKU (if the SKU is defined in the listing).To create an ad for a multi-variation listing, set the inventoryReferenceType value to INVENTORY_ITEM_GROUP and specify the item ID for the multi-variation listing or the inventoryitemGroupKey value as defined in the Inventory API., inventoryReferenceType: str # This enumerated value indicates the type of item the inventoryReferenceId references.The item can be either an INVENTORY_ITEM or an INVENTORY_ITEM_GROUP. For implementation help, refer to eBay API documentation}\n@returns(201) {ads: [map]} # Created\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server Error}\n\n@endpoint GET /ad_campaign/{campaign_id}/ad/{ad_id}\n@desc This method retrieves the specified ad from the specified campaign.  In the request, supply the campaign_id and ad_id as path parameters. Call getCampaigns to retrieve a list of the seller's current campaign IDs and call getAds to retrieve their current ad IDs.\n@required {ad_id: str # This path parameter specifies the unique identifier of the ad being retrieved. Use the getAds method to retrieve ad IDs., campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ad being retrieved. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(200) {adGroupId: str, adId: str, adStatus: str, alerts: [map], bidPercentage: str, inventoryReferenceId: str, inventoryReferenceType: str, listingId: str} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server Error}\n\n@endpoint DELETE /ad_campaign/{campaign_id}/ad/{ad_id}\n@desc This method removes the specified ad from the specified campaign.Pass the ID of the ad to delete with the ID of the campaign associated with the ad as path parameters to the call.Call getCampaigns to get the current list of the seller's campaign IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.When using the CPC funding model, use the bulkUpdateAdsStatusByListingId method to change the status of ads to ARCHIVED.\n@required {ad_id: str # This path parameter specifies the unique identifier of the ad being deleted. Use the getAds method to retrieve ad IDs., campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ad being deleted. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/delete_ads_by_inventory_reference\n@desc This method works with listings that are managed with the Inventory API.  The method deletes ads using a list of seller-defined inventory reference IDs, used with the Inventory API, that are associated with the specified campaign ID. Specify the campaign ID (as a path parameter) and a list of inventoryReferenceId and inventoryReferenceType pairs to be deleted.  Call getCampaigns to get a list of the seller's current campaign IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.When using the CPC funding model, use the bulkUpdateAdsStatusByInventoryReference method to change the status of ads to ARCHIVED.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ads being deleted. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {inventoryReferenceId: str # The unique identifier of a single-item listing or a multi-variation listing.To create an ad for a single-item listing, set the inventoryReferenceType value to INVENTORY_ITEM and specify an item ID or a SKU (if the SKU is defined in the listing).To create an ad for a multi-variation listing, set the inventoryReferenceType value to INVENTORY_ITEM_GROUP and specify the item ID for the multi-variation listing or the inventoryitemGroupKey value as defined in the Inventory API., inventoryReferenceType: str # This enumerated value indicates the type of item the inventoryReferenceId references.The item can be either an INVENTORY_ITEM or an INVENTORY_ITEM_GROUP. For implementation help, refer to eBay API documentation}\n@returns(200) {adIds: [str]} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint GET /ad_campaign/{campaign_id}/get_ads_by_inventory_reference\n@desc This method retrieves Promoted Listings ads associated with listings that are managed with the Inventory API from the specified campaign.Supply the campaign_id as a path parameter and use query parameters to specify the inventory_reference_id and inventory_reference_type pairs.In the Inventory API, an inventory reference ID is either a seller-defined SKU value or an inventoryItemGroupKey (a seller-defined ID for an inventory item group, which is an entity that's used in the Inventory API to create a multiple-variation listing). To indicate a listing managed by the Inventory API, you must always specify both an inventory_reference_id and the associated inventory_reference_type.Call getCampaigns to retrieve all of the seller's the current campaign IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ads being retrieved. Use the getCampaigns method to retrieve campaign IDs., inventory_reference_id: str # This query parameter specifies the unique identifier of a single-item listing or a multi-variation listing.To retrieve an ad for a single-item listing, set the inventoryReferenceType value to INVENTORY_ITEM and specify an item ID or a SKU (if the SKU is defined in the listing).To retrieve an ad for a multi-variation listing, set the inventoryReferenceType value to INVENTORY_ITEM_GROUP and specify the item ID for the multi-variation listing or the inventoryitemGroupKey value as defined in the Inventory API., inventory_reference_type: str # This query parameter specifies the type of the item the inventory_reference_id references.See InventoryReferenceType for supported values.}\n@returns(200) {ads: [map]} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/ad/{ad_id}/update_bid\n@desc This method updates the bid percentage (also known as the \"ad rate\") for the specified ad in the specified campaign. In the request, supply the campaign_id and ad_id as path parameters, and supply the new bidPercentage value in the payload of the call.  Call getCampaigns to retrieve a seller's current campaign IDs and call getAds to get their ad IDs.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@required {ad_id: str # This path parameter specifies the unique identifier of the ad for which the bid percentage is being updated. Use the getAds method to retrieve ad IDs., campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ad being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {bidPercentage: str # The updated bid percentage value for the specified ad in the specified campaign. The bid percentage (also known as the ad rate) is a user-defined value which sets the level that eBay increases the visibility in search results for the associated listing. The higher the bidPercentage value, the more eBay promotes the listing.  The value specified here is also used to calculate the Promoted Listings fee. This percentage value is multiplied by the final sales price to determine the fee. The Promoted Listings fee is determined at the time the transaction completes and the seller is assessed the fee only when an item sells through a Promoted Listings ad campaign. The bidPercentage is a single precision value that is guided by the following rules: These values are valid:&nbsp;&nbsp;&nbsp;4.1, &nbsp;&nbsp;&nbsp;5.0, &nbsp;&nbsp;&nbsp;5.5, ...  These values are not valid: &nbsp;&nbsp;&nbsp;0.01, &nbsp;&nbsp;&nbsp;10.75, &nbsp;&nbsp;&nbsp;99.99, &nbsp;&nbsp;&nbsp;and so on.Note: This field has a minimum value of 2.0 and a maximum value of 100.0.}\n@returns(204) No content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/{campaign_id}/ad_group\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method retrieves ad groups for the specified campaigns.Each campaign can only have one ad group.In the request, supply the campaign_ids as path parameters.Call getCampaigns to retrieve a list of the current campaign IDs for a seller.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ad groups being retrieved. Use the getCampaigns method to retrieve campaign IDs.}\n@optional {ad_group_status: str # A comma-separated list of ad group statuses. The results will be filtered to only include the given statuses of the ad group. See AdGroupStatusEnum for supported values., limit: str # The number of results, from the current result set, to be returned in a single page., offset: str # The number of results that will be skipped in the result set. This is used with the limit field to control the pagination of the output.For example, if the offset is set to 0 and the limit is set to 10, the method will retrieve items 1 through 10 from the list of items returned. If the offset is set to 10 and the limit is set to 10, the method will retrieve items 11 through 20 from the list of items returned.Default: 0}\n@returns(200) {adGroups: [map], href: str, limit: int(int32), next: str, offset: int(int32), prev: str, total: int(int32)} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/ad_group\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method adds an ad group to an existing priority strategy campaign that uses manual targeting.To create an ad group for a campaign, specify the defaultBid for the ad group in the payload of the request. Then specify the campaign to which the ad group should be associated using the campaign_id path parameter.Each campaign can have one or more associated ad groups.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign to associate with the ad group being created. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {defaultBid: map{currency: str, value: str} # A complex type that describes the value of a monetary amount as represented by a global currency., name: str # The seller-defined name of the ad group.}\n@returns(201) Created\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/{campaign_id}/ad_group/{ad_group_id}\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method retrieves the details of a specified ad group, such as the ad group’s default bid and status.In the request, specify the campaign_id and ad_group_id as path parameters.Call getCampaigns to retrieve a list of the current campaign IDs for a seller and call getAdGroups for the ad group ID of the ad group you wish to retrieve.\n@required {ad_group_id: str # This path parameter specifies the unique identifier of the ad group being retrieved. Use the getAdGroups method to retrieve ad group IDs., campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the ad group being retrieved. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(200) {adGroupId: str, adGroupStatus: str, defaultBid: map{currency: str, value: str}, name: str} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint PUT /ad_campaign/{campaign_id}/ad_group/{ad_group_id}\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method updates the ad group associated with a campaign.With this method, you can modify the default bid for the ad group, change the state of the ad group, or change the name of the ad group. Pass the ad_group_id you want to update as a URI parameter, and configure the adGroupStatus and defaultBid in the request payload.Call getAdGroup to retrieve the current default bid and status of the ad group that you would like to update.\n@required {ad_group_id: str # This path parameter specifies the unique identifier of the ad group that is being updated. Use the getAdGroups method to retrieve ad group IDs., campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which the ad group is being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {adGroupStatus: str # An enumeration value representing the current status of the ad group.If the status of the ad is currently ACTIVE, you can change status to PAUSED or ARCHIVED. If ad group is currently in PAUSED status, you can change the status back to ACTIVE. Ads that are currently in ARCHIVED status cannot be made ACTIVE again.Valid Values:ACTIVEPAUSEDARCHIVED For implementation help, refer to eBay API documentation, defaultBid: map{currency: str, value: str} # A complex type that describes the value of a monetary amount as represented by a global currency., name: str # The updated name for the specified ad group.}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/ad_group/{ad_group_id}/suggest_bids\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method allows sellers to retrieve the suggested bids for input keywords and match type.\n@required {ad_group_id: str # This path parameter specifies the unique identifier of the ad group containing the keywords for which the bid suggestions will be provided. Use the getAdGroups method to retrieve ad group IDs., campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the keywords for which bid suggestions will be provided. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {keywords: [map{keywordText: str, matchType: str}] # An array of keywords for which bids will be required. Maximum number of keywords: 500}\n@returns(200) {suggestedBids: [map]} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/ad_group/{ad_group_id}/suggest_keywords\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method allows sellers to retrieve a list of keyword ideas to be targeted for Promoted Listings campaigns.\n@required {ad_group_id: str # This path parameter specifies the unique identifier of the ad group for which the keyword suggestions will be provided. Use the getAdGroups method to retrieve ad group IDs., campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which keyword suggestions will be provided. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {additionalInfo: [str] # A field used to indicate whether additional information and insight data shall be provided for suggested keywords.Use this array to retrieve keyword insights, including active seller count and search volume.Valid Value: KEYWORD_INSIGHTS, exclusions: [str] # A field used to indicate that the keywords already selected by sellers for the specified listing IDs should be filtered out of the response, and only new and unique keyword recommendations shall be returned.Valid Value: ADOPTED_KEYWORDS, listingIds: [str] # A set of comma-separated listing IDs for the specific listings you wish to retrieve suggested keywords. Maximum number of listings requested: 300, matchType: str # A field that defines the match type for the keyword.Valid Values:BROADEXACTPHRASE For implementation help, refer to eBay API documentation}\n@returns(200) {suggestedKeywords: [map]} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/clone\n@desc This method clones (makes a copy of) the specified campaign's campaign criterion. The campaign criterion is a container for the fields that define the criteria for a rule-based campaign.To clone a campaign, supply the campaign_id as a path parameter in your call. There is no request payload.  The ID of the newly-cloned campaign is returned in the Location response header.Call getCampaigns to retrieve a seller's current campaign IDs.  Requirement: In order to clone a campaign, the campaignStatus must be ENDED and the campaign must define a set of selection rules (it must be a rules-based campaign).Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign being cloned. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {campaignName: str # A seller-defined name for the newly-cloned campaign. This value must be unique for the seller.You can use any alphanumeric characters in the name, except the less than () characters.Max length: 80 characters, endDate: str # The date and time the campaign ends, in UTC format (yyyy-MM-ddThh:mm:ssZ). If this field is omitted, the campaign will have no defined end date, and will not end until the seller makes a decision to end the campaign with an endCampaign call, or if they update the campaign at a later time with an end date., fundingStrategy: map{adRateStrategy: str, biddingStrategy: str, bidPercentage: str, bidPreferences: [map], dynamicAdRatePreferences: [map], fundingModel: str} # This type defines how the Promoted Listings fee is calculated for a Promoted Listings ad campaign., startDate: str # The date and time the cloned campaign starts, in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller.  On the date specified, the service derives the keywords for each listing in the campaign, creates an ad for each listing, and associates each new ad with the campaign. The campaign starts after this process is completed. The amount of time it takes the service to start the campaign depends on the number of listings in the campaign. Call getCampaign to check the status of the campaign.}\n@returns(201) Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign\n@desc This method retrieves the details for all of the seller's defined campaigns. Request parameters can be used to retrieve a specific campaign, such as the campaign's name, the start and end date, the channel, the status, and the funding model (i.e., Cost Per Sale (CPS) or Cost Per Click (CPC)). You can filter the result set by a campaign name, end date range, start date range, campaign channel, or campaign status. You can also paginate the records returned from the result set using the limit query parameter, and control which records to return using the  offset parameter.\n@optional {campaign_name: str # This query parameter specifies the name of the campaign being retrieved. The results are filtered to include only the campaign by the specified name. Use the getCampaigns method to retrieve a list of a seller's campaign names.Note: The results might be null if other filters exclude the campaign with this name. Maximum:  1 campaign name, campaign_status: str # This query parameter specifies the status of the campaign(s) being retrieved.Note: The results might not include all the campaigns with this status if other filters exclude them.Valid values: See CampaignStatusEnum Maximum:  1 status, campaign_targeting_types: str # This query parameter specifies the targeting type of the campaign(s) to be retrieved.The results will be filtered to only include campaigns with the specified targeting type. If not specified, all campaigns matching other filter parameters will be returned. The results might not include these campaigns if other search conditions exclude them.Valid values: See CampaignTargetingTypeEnum, channels: str # This query parameter specifies the channel for the campaign(s) being retrieved.The results will be filtered to only include campaigns with the specified channel. If not specified, all campaigns matching other filter parameters will be returned. The results might not include these campaigns if other search conditions exclude them.Valid Values: See ChannelEnum, end_date_range: str # This query parameter specifies the range of a campaign's end date. The results are filtered to include only campaigns with an end date that is within specified range. Valid format (UTC):  yyyy-MM-ddThh:mm:ssZ..yyyy-MM-ddThh:mm:ssZ   (campaign ends within this range)yyyy-MM-ddThh:mm:ssZ.. (campaign ends on or after this date)..yyyy-MM-ddThh:mm:ssZ  (campaign ends on or before this date)2016-09-08T00:00.00.000Z..2016-09-09T00:00:00Z (campaign ends on September 08, 2016)Note:The results might not include all the campaigns ending on this date if other filters exclude them., funding_strategy: str # This query parameter specifies the funding strategy for the campaign(s) being retrieved.The results will be filtered to only include campaigns with the specified funding model. If not specified, all campaigns matching the other filter parameters will be returned. The results might not include these campaigns if other search conditions exclude them.Valid Values: See FundingModelEnum, limit: str # This query parameter specifies the maximum number of campaigns to return on a page in the paginated response.  Default: 10Maximum:  500, offset: str # This query parameter specifies the number of campaigns to skip in the result set before returning the first report 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, start_date_range: str # This query parameter specifies the range of a campaign's start date in which to filter the results. The results are filtered to include only campaigns with a start date that is equal to this date or is within specified range.Valid format (UTC):  yyyy-MM-ddThh:mm:ssZ..yyyy-MM-ddThh:mm:ssZ (starts within this range)yyyy-MM-ddThh:mm:ssZ (campaign starts on or after this date)..yyyy-MM-ddThh:mm:ssZ (campaign starts on or before this date)2016-09-08T00:00.00.000Z..2016-09-09T00:00:00Z (campaign starts on September 08, 2016)Note: The results might not include all the campaigns with this start date if other filters exclude them.}\n@returns(200) {campaigns: [map], href: str, limit: int(int32), next: str, offset: int(int32), prev: str, total: int(int32)} # Success\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign\n@desc This method can be used to create a Promoted Listings general, priority, or offsite campaign.A Promoted Listings campaign is the structure in which you place the ads or ad group for the listings you wish to promote.Note: Campaigns can only contain ads for a maximum of 50,000 items.General strategy campaigns utilize a Cost Per Sale (CPS) funding model. Sellers can set the ad rate and bidding strategies that are right for their business through the adRateStrategy, biddingStrategy, bidPercentage fields. For more information on general strategy campaigns, see Promoted Listings general strategy campaign flow.Priority strategy campaigns utilize a Cost per Click (CPC) funding model. Sellers can create a daily budget through the budget container and choose what channel that their ads appear on. In addition, priority strategy campaigns give sellers the ability to create ad groups and specify keywords to ensure their ads reach their intended audience. For more information on priority strategy campaigns, see Promoted listings priority strategy campaign flow.Promoted Offsite campaigns give sellers the ability to create their own advertising campaign and promote their eBay listing in leading external search channels. For more information on Promoted Offsite campaigns, see Promoted Offsite.Note: Sellers can use the getAdvertisingEligibility method of the Account API v1 to determine their eligibility status for eBay advertising programs.To create a basic campaign, supply: The user-defined campaign name The start date (and optionally the end date) of the campaign The eBay marketplace on which the campaign is hosted Details on the campaign funding modelFor details on creating Promoted Listings campaigns and how to select the items to be included in your campaigns, see Promoted Listings campaign creation.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {budget: map{daily: map} # A container for the details of a Promoted Listings campaign that uses the Cost Per Click (CPC) funding model., campaignCriterion: map{autoSelectFutureInventory: bool, criterionType: str, selectionRules: [map]} # This type defines the fields for specifying the criterion (selection rule) settings of an ad campaign. If you populate the campaignCriterion object in your createCampaign request, ads for the campaign are created by rule for the listings that meet the criteria you specify, and these ads are associated with the newly created campaign., campaignName: str # A seller-defined name for the campaign. This value must be unique for the seller. You can use any alphanumeric characters in the name, except the less than () characters.Max length: 80 characters, campaignTargetingType: str # The targeting type of the campaign. This value indicates whether the campaign is a manual targeting or smart targeting campaign.If not value is specified, this field will default to MANUAL.Note: This feature is only supported for on-site campaigns that use the Cost Per Click (CPC) funding model.Valid Values:MANUALSMARTThis field is required and must be set to SMART for a Smart Targeting campaign. For implementation help, refer to eBay API documentation, channels: [str] # The channel for the campaign. This value indicates whether the advertising campaign is an Onsite or Offsite.If no value is entered, this field will default to ON_SITE. Multiple channels are not supported. Note: Channels is only applicable for campaigns that use the Cost Per Click (CPC) funding model.Valid Values:ON_SITEOFF_SITEThis field is required and must be set to OFF_SITE for a Promoted Offsite campaign., endDate: str # The date and time the campaign ends, in UTC format (yyyy-MM-ddThh:mm:ssZ). If this field is omitted, the campaign will have no defined end date, and will not end until the seller makes a decision to end the campaign with an endCampaign call, or if they update the campaign at a later time with an end date., fundingStrategy: map{adRateStrategy: str, biddingStrategy: str, bidPercentage: str, bidPreferences: [map], dynamicAdRatePreferences: [map], fundingModel: str} # This type defines how the Promoted Listings fee is calculated for a Promoted Listings ad campaign., marketplaceId: str # The ID of the eBay marketplace where the campaign is hosted. See the MarketplaceIdEnum type to get the appropriate enumeration value for the listing marketplace. For implementation help, refer to eBay API documentation, startDate: str # The date and time the campaign starts, in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller.  On the date specified, the service derives the keywords for each listing in the campaign, creates an ad for each listing, and associates each new ad with the campaign. The campaign starts after this process is completed. The amount of time it takes the service to start the campaign depends on the number of listings in the campaign. Call getCampaign to check the status of the campaign.}\n@returns(201) Created\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/{campaign_id}\n@desc This method retrieves the details of a single campaign, as specified with the campaign_id query parameter.  This method returns all the details of a campaign (including the campaign's the selection rules), except the for the listing IDs or inventory reference IDs included in the campaign. These IDs are returned by getAds.  Call getCampaigns to retrieve a list of the seller's campaign IDs.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign being retrieved. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(200) {alerts: [map], budget: map{daily: map{amount: map{currency: str, value: str}, budgetStatus: str}}, campaignCriterion: map{autoSelectFutureInventory: bool, criterionType: str, selectionRules: [map]}, campaignId: str, campaignName: str, campaignStatus: str, campaignTargetingType: str, channels: [str], endDate: str, fundingStrategy: map{adRateStrategy: str, biddingStrategy: str, bidPercentage: str, bidPreferences: [map], dynamicAdRatePreferences: [map], fundingModel: str}, marketplaceId: str, startDate: str} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server error}\n\n@endpoint DELETE /ad_campaign/{campaign_id}\n@desc This method deletes the campaign specified by the campaign_id query parameter.Note:  You can only delete campaigns that have ended.Call getCampaigns to retrieve the campaign_id and the campaign status (RUNNING, PAUSED, ENDED, and so on) for all the seller's campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign being deleted. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/end\n@desc This method ends an active (RUNNING) or paused campaign. Specify the campaign you want to end by supplying its campaign ID in a query parameter.  Call getCampaigns to retrieve the campaign_id and the campaign status (RUNNING, PAUSED, ENDED, and so on) for all the seller's campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the RUNNING or PAUSED ad campaign that is being ended. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/find_campaign_by_ad_reference\n@desc This method retrieves the campaigns containing the listing that is specified using either a listing ID, or an inventory reference ID and inventory reference type pair. The request accepts either a listing_id, or an inventory_reference_id and inventory_reference_type pair, as used in the Inventory API.eBay listing IDs are generated by either the Trading API or the Inventory API when you create a listing.An inventory reference ID can be either a seller-defined SKU or inventoryItemGroupKey, as specified in the Inventory API.Note: This method only applies to the Cost Per Sale (CPS) funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@optional {inventory_reference_id: str # This query parameter specifies the unique identifier of a single-item listing or a multi-variation listing associated with the campaign being retrieved.To retrieve an campaign for a single-item listing, set the inventoryReferenceType value to INVENTORY_ITEM and specify an item ID or a SKU (if the SKU is defined in the listing).To retrieve an campaign for a multi-variation listing, set the inventoryReferenceType value to INVENTORY_ITEM_GROUP and specify the item ID for the multi-variation listing or the inventoryitemGroupKey value as defined in the Inventory API.Note: You must always pass in both inventory_reference_id and inventory_reference_type., inventory_reference_type: str # This query parameter specifies the type of the seller's inventory reference ID, which is a listing or group of items.See InventoryReferenceTypeEnum for supported values.Note: You must always pass in both inventory_reference_id and inventory_reference_type., listing_id: str # This query parameter specifies the unique identifier of the eBay listing associated with the ad being used to retrieve the campaign.eBay listing IDs are generated by either the Trading API or the Inventory API when you create a listing.}\n@returns(200) {campaigns: [map]} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/get_campaign_by_name\n@desc This method retrieves the details of a single campaign, as specified with the campaign_name query parameter. Note that the campaign name you specify must be an exact, case-sensitive match of the name of the campaign you want to retrieve.Call getCampaigns to retrieve a list of the seller's campaign names.\n@required {campaign_name: str # This query parameter specifies name of the campaign being retrieved. Use the getCampaigns method to retrieve a list of a seller's campaign names.}\n@returns(200) {alerts: [map], budget: map{daily: map{amount: map{currency: str, value: str}, budgetStatus: str}}, campaignCriterion: map{autoSelectFutureInventory: bool, criterionType: str, selectionRules: [map]}, campaignId: str, campaignName: str, campaignStatus: str, campaignTargetingType: str, channels: [str], endDate: str, fundingStrategy: map{adRateStrategy: str, biddingStrategy: str, bidPercentage: str, bidPreferences: [map], dynamicAdRatePreferences: [map], fundingModel: str}, marketplaceId: str, startDate: str} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/pause\n@desc This method pauses an active (RUNNING) campaign.  You can restart the campaign by calling resumeCampaign, as long as the campaign's end date is in the future.Note:The listings associated with a paused campaign cannot be added into another campaign.Call getCampaigns to retrieve the campaign_id and the campaign status (RUNNING, PAUSED, ENDED, and so on) for all the seller's campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the RUNNING ad campaign being paused. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/resume\n@desc This method resumes a paused campaign, as long as its end date is in the future. Supply the campaign_id for the campaign you want to restart as a query parameter in the request.  Call getCampaigns to retrieve the campaign_id and the campaign status (RUNNING, PAUSED, ENDED, and so on) for all the seller's campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the paused ad campaign that is being resumed. Use the getCampaigns method to retrieve campaign IDs.}\n@returns(204) No content\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server Error}\n\n@endpoint GET /ad_campaign/suggest_budget\n@desc Note: This method is only supported for Promoted Offsite campaigns. Sellers can use the getAdvertisingEligibility method of the Account API v1 to determine if they are eligible for offsite campaigns.This method allows sellers to retrieve the suggested budget for an offsite campaign.\n@required {X-EBAY-C-MARKETPLACE-ID: str # This header identifies the seller's eBay marketplace.Note: If a marketplace ID value is not provided, the default value of EBAY_US is used.See MarketplaceIdEnum for supported values.}\n@returns(200) {suggestedBudget: [map]} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/{campaign_id}/suggest_items\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method allows sellers to obtain ideas for listings, which can be targeted for Promoted Listings campaigns.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which suggestions are being provided. Use the getCampaigns method to retrieve campaign IDs.}\n@optional {category_ids: str # Specifies the category ID that is used to limit the results. This refers to an exact leaf category (the lowest level in that category and has no children). This field can have one category ID, or a comma-separated list of IDs. To return all category IDs, set to null.Use the getCategorySuggestions method to retrieve category IDs.Maximum:  10, limit: str # Specifies the maximum number of campaigns to return on a page in the paginated response. If no value is specified, the default value is used. Default: 10 Minimum:  1Maximum:  1000, offset: str # Specifies the number of campaigns to skip in the result set before returning the first report 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}\n@returns(200) {href: str, limit: int(int32), next: str, offset: int(int32), prev: str, suggestedItems: [map], total: int(int32)} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/suggest_max_cpc\n@desc Note: This method is only supported for smart targeting priority strategy campaigns. Sellers can use the getAdvertisingEligibility method of the Account API v1 to determine if they are eligible for a priority strategy campaign.This method allows sellers to retrieve the suggested maximum cost-per-click value for a smart targeting campaign. This value is required when creating a smart targeting campaign and indicates the maximum amount for which the eBay suggested bid can be adjusted.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {listingIds: [str] # A comma delimited array of listing Ids the seller plans to associate with the smart targeting campaign for which the maxCpc will be suggested., marketplaceId: str # The unique identifier of the marketplace where the listings are hosted. See MarketplaceIdEnum for supported values. For implementation help, refer to eBay API documentation}\n@returns(200) {amount: map{currency: str, value: str}, marketplaceId: str} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/update_ad_rate_strategy\n@desc This method updates the ad rate strategy for an existing rules-based general strategy ad campaign that uses the Cost Per Sale (CPS) funding model.Specify the campaign_id as a path parameter. You can retrieve the campaign IDs for a seller by calling the getCampaigns method.Note: This method only applies to the CPS funding model; it does not apply to the Cost Per Click (CPC) funding model. See Funding Models in the Promoted Listings Playbook for more information.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which the ad rate strategy is being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {adRateStrategy: str # This field is used to change the current ad rate strategy for a Cost Per Sale (CPS) campaign. It is not needed if the ad rate strategy is not being changed for the campaign.Note: This field is not applicable for offsite campaigns. For implementation help, refer to eBay API documentation, bidPercentage: str # The user-defined bid percentage (also known as the ad rate) sets the level that eBay increases the visibility in search results for the associated listing. The higher the bidPercentage value, the more eBay promotes the listing.  The value specified here is also used to calculate the Promoted Listings fee. This percentage value is multiplied by the final sales price to determine the fee. The Promoted Listings fee is determined at the time the transaction completes and the seller is assessed the fee only when an item sells through a Promoted Listings ad campaign. The bidPercentage is a single precision value that is guided by the following rules: These values are valid:&nbsp;&nbsp;&nbsp;4.1, &nbsp;&nbsp;&nbsp;5.0, &nbsp;&nbsp;&nbsp;5.5, ...  These values are not valid: &nbsp;&nbsp;&nbsp;0.01, &nbsp;&nbsp;&nbsp;10.75, &nbsp;&nbsp;&nbsp;99.99, &nbsp;&nbsp;&nbsp;and so on.This is the default bid percentage for the campaigns using the Cost Per Sale (CPS) funding model, and this value will be overridden by any ads in the campaign that have their own set bid percentages.If a bid percentage is not provided for an ad, eBay uses the default bid percentage of the associated campaign.Note: This field has a minimum value of 2.0 and a maximum value of 100.0., dynamicAdRatePreferences: [map{adRateAdjustmentPercent: str, adRateCapPercent: str}] # A field that indicates whether a single, user-defined bid percentage (also known as the ad rate) should be used, or whether eBay should automatically adjust listings to maintain the daily suggested bid percentage.Note: Dynamic adjustment is only applicable when the adRateStrategy is set to DYNAMIC.Default: FIXED}\n@returns(204) No content\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/update_bidding_strategy\n@desc This method allows sellers to change the bidding strategy for a specified Cost Per Click (CPC) campaign that uses manual targeting. Available bidding strategies are:FIXEDWhen using a fixed bidding strategy, sellers manually assign and adjust keyword bids for the CPC campaign.DYNAMICWhen using a dynamic bidding strategy, eBay will manage a campaign's keyword bids and automatically update them daily to the suggested bid.Note: For a CPC campaign using dynamic bidding, sellers can continue to manually add keywords for the campaign, but they are no longer able to manually adjust their associated bid values. In order to manually adjust bid values, sellers must use the FIXED bidding strategy.In addition, this method allows sellers to modify the maxCPC value of a smart targeting campaign.Note: This method only applies to the Cost Per Click (CPC) funding model; it does not apply to the Cost Per Sale (CPS) funding model. Refer to Funding Models in the Promoted Listings Playbook for more information.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which the keyword bidding strategy is being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {biddingStrategy: str # The new bidding strategy for the specified Cost Per Click (CPC) campaign. For implementation help, refer to eBay API documentation, bidPreferences: [map{maxCpc: map}] # This container indicates the bidding preferences of the campaign, such as the maximum CPC amount.Note: This container is only applicable for smart targeting campaigns.This container is required if the user wants to create a Smart Targeting campaign.}\n@returns(204) No content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/update_campaign_budget\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method updates the daily budget for a priority strategy campaign that uses the Cost Per Click (CPC) funding model.A click occurs when an eBay user finds and clicks on the seller’s listing (within the search results) after using a keyword that the seller has created for the campaign. For each ad in an ad group in the campaign, each click triggers a cost, which gets subtracted from the campaign’s daily budget. If the cost of the clicks exceeds the daily budget, the Promoted Listings campaign will be paused until the next day.Specify the campaign_id as a path parameter. You can retrieve the campaign IDs for a seller by calling the getCampaigns method.Note: The daily budget for a campaign can only be updated 15 times per day. If this limit is exceeded, an error will occur and you will be blocked from updating the  budget until the next day.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which the budget is being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {daily: map{amount: map} # A container for the budget details of a Promoted Listings campaign that uses the Cost Per Click (CPC) funding model.Note: This container will only be returned for campaigns using the CPC funding model; it does not apply to the Cost Per Sale (CPS) funding model.}\n@returns(200) Success\n@returns(204) No content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/update_campaign_identification\n@desc This method can be used to change the name of a campaign, as well as modify the start or end dates. Specify the campaign_id you want to update as a URI parameter, and configure the campaignName and startDate in the request payload.  If you want to change only the end date of the campaign, specify the current campaign name, set endDate as desired, and set startDate to the actual start date of the campaign. This applies if the campaign status is RUNNING or PAUSED. You can retrieve the startDate using the getCampaign method. Note that if you do not set a new end date in this call, any current endDate value will be set to null. To preserve the currently-set end date, you must specify the value again in your request.  Call getCampaigns to retrieve a seller's campaign details, including the campaign ID, campaign name, and the start and end dates of the campaign.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign being updated. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {campaignName: str # The new seller-defined name for the campaign. This value must be unique for the seller. If you don't want to change the name of the campaign, specify the current campaign name in this field.You can use any alphanumeric characters in the name, except the less than () characters.Max length: 80 characters., endDate: str # The date and time the campaign ends, in UTC format (yyyy-MM-ddThh:mm:ssZ). If this field is omitted, the campaign will have no defined end date, and will not end until the seller makes a decision to end the campaign with an endCampaign call, or if they update the campaign at a later time with an end date.If you want to change only the end date of the campaign, you must specify the current campaign name, set the endDate as desired, and set the startDate to the actual start date of the campaign. This applies if the campaign status is RUNNING or PAUSED. You can retrieve the startDate using the getCampaign method. Note that if you do not set a new end date in this call, any current endDate value will be set to null. To preserve the currently-set end date, you must specify the value again in your request., startDate: str # The new start date for the campaign, in UTC format (yyyy-MM-ddThh:mm:ssZ).If the campaign status is RUNNING or PAUSED, the startDate must be specified and must be the actual start date of the campaign, even if you are only changing the endDate. You can retrieve the campaign's startDate using the getCampaign method.On the date specified, the service derives the keywords for each listing in the campaign, creates an ad for each listing, and associates each new ad with the campaign. The campaign starts after this process is completed. The amount of time it takes the service to start the campaign depends on the number of listings in the campaign.  Call getCampaigns to retrieve the campaign_id and the campaign status (RUNNING, PAUSED, ENDED, and so on) for all the seller's campaigns.}\n@returns(204) No content\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_create_keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method adds keywords, in bulk, to an existing priority strategy ad group in a campaign that uses manual targeting.This method also sets the CPC rate for each keyword, depending on the selected bidding strategy, as follows:FIXED: If the seller provides a keyword bid, that bid value will be used.If no bid is provided, the adgroup's default bid value will be used.DYNAMIC: The eBay suggested bid will be used.If the seller passes in a value, a warning will be returned.In the request, supply the campaign_id as a path parameter.Call the getCampaigns method to retrieve a list of current campaign IDs for a specified seller.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which a set of keywords is being created. Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adGroupId: str, bid: map, keywordText: str, matchType: str}] # This array is used to pass in multiple keywords for one or more ad groups that belong to a campaign that uses the Cost Per Click (CPC) funding model. Up to {max value} keywords can be created with one call.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /ad_campaign/{campaign_id}/bulk_update_keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method updates the bids and statuses of keywords, in bulk, for an existing priority strategy campaign.In the request, supply the campaign_id as a path parameter.Call the getCampaigns method to retrieve a list of current campaign IDs for a specified seller.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which a set of keywords is being updated.  Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{bid: map, keywordId: str, keywordStatus: str}] # Use this array to update the bid values and/or statuses of one or more existing keywords.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/{campaign_id}/keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method can be used to retrieve all of the keywords for ad groups in priority strategy campaigns that use the Cost Per Click (CPC) funding model.In the request, specify the campaign_id as a path parameter. If one or more ad_group_ids are passed in the request body, the keywords for those ad groups will be returned. If ad_group_ids are not passed in the response body, the call will return all the keywords in the campaign.Call the getCampaigns method to retrieve a list of current campaign IDs for a seller.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the keyword(s) being retrieved.  Use the getCampaigns method to retrieve campaign IDs.}\n@optional {ad_group_ids: str # A comma-separated list of ad group IDs. This query parameter is used if the seller wants to retrieve keywords from one or more specific ad groups. If this query parameter is not used, all keywords that are part of the CPC campaign are returned.Use the getAdGroups  method to retrieve the ad group IDs for a seller., keyword_status: str # A comma-separated list of keyword statuses. The results will be filtered to only include the given statuses of the keyword. If none are provided, all keywords are returned.See KeywordStatusEnum for supported values., limit: str # Specifies the maximum number of results to return on a page in the paginated response.  Default: 10 Maximum:  500, offset: str # Specifies the number of results to skip in the result set before returning the first report 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}\n@returns(200) {href: str, keywords: [map], limit: int(int32), next: str, offset: int(int32), prev: str, total: int(int32)} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /ad_campaign/{campaign_id}/keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method creates keywords using a specified campaign ID for an existing priority strategy campaign that uses manual targeting.In the request, supply the campaign_id as a path parameter.Call the suggestKeywords method to retrieve a list of keyword ideas to be targeted for priority strategy campaigns, and call the getCampaigns method to retrieve a list of current campaign IDs for a seller.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign for which a keyword is being created.  Use the getCampaigns method to retrieve campaign IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {adGroupId: str # This adGroupId is created when an ad group is first created and associated with a campaign. This is the ad group that the corresponding keyword will be added to. This ad group must be a part of the campaign that is specified in the call URI. Use the getAdGroups method to retrieve the ad group IDs for a seller, and getKeywords to retrieve the keyword IDs for a seller's keywords., bid: map{currency: str, value: str} # A complex type that describes the value of a monetary amount as represented by a global currency., keywordText: str # The text of the keyword. Keywords are not case sensitive and compound words can be used without additional encoding (for example, tennis ball).Maximum number of characters: 100Maximum number of words: 10, matchType: str # A field that defines the match type for the keyword.Valid Values:BROADEXACTPHRASE For implementation help, refer to eBay API documentation}\n@returns(201) Created\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_campaign/{campaign_id}/keyword/{keyword_id}\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method retrieves details on a specific keyword from an ad group within a priority strategy campaign that uses the Cost Per Click (CPC) funding model.In the request, specify the campaign_id and keyword_id as path parameters.Call the getCampaigns method to retrieve a list of current campaign IDs for a seller and call the getKeywords method to retrieve their keyword IDs.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the keyword being retrieved.  Use the getCampaigns method to retrieve campaign IDs., keyword_id: str # This path parameter specifies the unique identifier of the keyword being retrieved. Use the getKeywords method to retrieve keyword IDs.}\n@returns(200) {adGroupId: str, bid: map{currency: str, value: str}, keywordId: str, keywordStatus: str, keywordText: str, matchType: str} # Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint PUT /ad_campaign/{campaign_id}/keyword/{keyword_id}\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method updates keywords using a campaign ID and keyword ID for an existing priority strategy campaign.In the request, specify the campaign_id and keyword_id as path parameters.Call the getCampaigns method to retrieve a list of current campaign IDs for a seller and call the getKeywords method to retrieve their keyword IDs.\n@required {campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the keyword being updated.  Use the getCampaigns method to retrieve campaign IDs., keyword_id: str # This path parameter specifies the unique identifier of the keyword being updated. Use the getKeywords method to retrieve keyword IDs., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {bid: map{currency: str, value: str} # A complex type that describes the value of a monetary amount as represented by a global currency., keywordStatus: str # Include this field if you wish to change the status of the keyword. The status value specified here must be different than the keyword's current status. To confirm the current status of a keyword, you can use the getKeyword method.If the status of the ad is currently ACTIVE, you can change status to PAUSED or ARCHIVED. If ad group is currently in PAUSED status, you can change the status back to ACTIVE. Ads that are currently in ARCHIVED status cannot be made ACTIVE again. For implementation help, refer to eBay API documentation}\n@returns(200) {errors: [map], keywordId: str, statusCode: int(int32), warnings: [map]} # Success\n@returns(204) No content\n@errors {400: Bad Request, 404: Not Found, 409: Business error, 500: Internal Server error}\n\n@endgroup\n\n@group bulk_create_negative_keyword\n@endpoint POST /bulk_create_negative_keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method adds negative keywords, in bulk, to an existing ad group in a priority strategy campaign that uses manual targeting.Specify the campaignId and adGroupId in the request body, along with the negativeKeywordText and negativeKeywordMatchType.Call the getCampaigns method to retrieve a list of current campaign IDs for a specified seller.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{adGroupId: str, campaignId: str, negativeKeywordMatchType: str, negativeKeywordText: str}] # This array is used to pass in multiple negative keywords for one or more ad groups that belong to a campaign that uses the Cost Per Click (CPC) funding model.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 403: Forbidden, 409: Business error, 500: Internal Server error}\n\n@endgroup\n\n@group bulk_update_negative_keyword\n@endpoint POST /bulk_update_negative_keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method updates the statuses of existing negative keywords, in bulk.Specify the negativeKeywordId and negativeKeywordStatus in the request body.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {requests: [map{negativeKeywordId: str, negativeKeywordStatus: str}] # An array to update the statuses of one or more existing negative keywords.}\n@returns(200) {responses: [map]} # Success\n@returns(207) Multi Status\n@errors {400: Bad Request, 403: Forbidden, 409: Conflict, 500: Internal Server error}\n\n@endgroup\n\n@group negative_keyword\n@endpoint GET /negative_keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method can be used to retrieve all of the negative keywords for ad groups in priority strategy campaigns that use the Cost Per Click (CPC) funding model.The results can be filtered using the campaign_ids, ad_group_ids, and negative_keyword_status query parameters.Call the getCampaigns method to retrieve a list of current campaign IDs for a seller.\n@optional {ad_group_ids: str # A comma-separated list of ad group IDs.This query parameter is used if the seller wants to retrieve the negative keywords from one or more specific ad groups. The results might not include these ad group IDs if other search conditions exclude them.Use the getAdGroups method to retrieve the ad group IDs for a seller.Required if the search results must be filtered to include negative keywords created at the ad group level., campaign_ids: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the negative keywords being retrieved.This query parameter is used if the seller wants to retrieve the negative keywords from a specific campaign. The results might not include these campaign IDs if other search conditions exclude them.Note: Currently, only one campaign ID value is supported for each request. Use the getCampaigns method to retrieve campaign IDs., limit: str # The number of results, from the current result set, to be returned in a single page., negative_keyword_status: str # A comma-separated list of negative keyword statuses.This query parameter is used if the seller wants to filter the search results based on one or more negative keyword statuses. See NegativeKeywordStatusEnum for supported values., offset: str # The number of results that will be skipped in the result set. This is used with the limit field to control the pagination of the output.For example, if the offset is set to 0 and the limit is set to 10, the method will retrieve items 1 through 10 from the list of items returned. If the offset is set to 10 and the limit is set to 10, the method will retrieve items 11 through 20 from the list of items returned.}\n@returns(200) {href: str, limit: int(int32), negativeKeywords: [map], next: str, offset: int(int32), prev: str, total: int(int32)} # Success\n@errors {400: Bad Request, 403: Forbidden, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint POST /negative_keyword\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method adds a negative keyword to an existing ad group in a priority strategy campaign that uses manual targeting.Specify the campaignId and adGroupId in the request body, along with the negativeKeywordText and negativeKeywordMatchType.Call the getCampaigns method to retrieve a list of current campaign IDs for a specified seller.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {adGroupId: str # This adGroupId is created when an ad group is first created and associated with a campaign. This is the ad group to which the corresponding negative keyword will be added.Use the  getAdGroups method to retrieve the ad group IDs for a seller.Required if the negative keyword is being created at the ad group level., campaignId: str # This path parameter specifies the unique eBay-assigned identifier of the ad campaign associated with the set of negative keywords being created.  Use the getCampaigns method to retrieve campaign IDs.Required if the negative keyword is being created at the ad group level., negativeKeywordMatchType: str # A field that defines the match type for the negative keyword.Note: Broad matching of negative keywords is not currently supported.Valid Values:EXACTPHRASE For implementation help, refer to eBay API documentation, negativeKeywordText: str # The negative keyword text.}\n@returns(201) Created\n@errors {400: Bad Request, 403: Forbidden, 409: Business error, 500: Internal Server error}\n\n@endpoint GET /negative_keyword/{negative_keyword_id}\n@desc Note: This method is only available for select partners who have been approved for the priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method retrieves details on a specific negative keyword.In the request, specify the negative_keyword_id as a path parameter.\n@required {negative_keyword_id: str # This path parameter specifies the unique identifier for the negative keyword being retrieved.Use the  getNegativeKeywords method to retrieve negative keyword IDs.}\n@returns(200) {adGroupId: str, campaignId: str, negativeKeywordId: str, negativeKeywordMatchType: str, negativeKeywordStatus: str, negativeKeywordText: str} # Success\n@errors {400: Bad Request, 403: Forbidden, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endpoint PUT /negative_keyword/{negative_keyword_id}\n@desc Note: This method is only available for select partners who have been approved for the eBay priority strategy program. For information about how to request access to this program, refer to  Priority Strategy Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for priority strategy, use the getAdvertisingEligibility method in Account API.This method updates the status of an existing negative keyword.Specify the negative_keyword_id as a path parameter, and specify the negativeKeywordStatus in the request body.\n@required {negative_keyword_id: str # The unique identifier for the negative keyword.This value is returned in the Location response header from the createNegativeKeyword method., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {negativeKeywordStatus: str # A field that defines the status of the negative keyword. For implementation help, refer to eBay API documentation}\n@returns(204) Success\n@errors {400: Bad Request, 403: Forbidden, 404: Not Found, 409: Conflict, 500: Internal Server error}\n\n@endgroup\n\n@group ad_report\n@endpoint GET /ad_report/{report_id}\n@desc This call downloads the report as specified by the report_id path parameter.  Call createReportTask to schedule and generate a Promoted Listings report. All date values are returned in UTC format (yyyy-MM-ddThh:mm:ss.sssZ).Note: The reporting of some data related to sales and ad-fees may require a 72-hour (maximum) adjustment period which is often referred to as the Reconciliation Period. Such adjustment periods should, on average, be minimal. However, at any given time, the payments tab may be used to view those amounts that have actually been charged.Important! \">Important!For ad_report and ad_report_task methods, the API call limit is subject to a per user quota. These API calls can only be executed a maximum of 200 times per hour for each seller/user. If the number of calls per hour exceeds this limit, any new calls will be blocked for the next hour.\n@required {report_id: str # This path parameter specifies the unique ID of the Promoted Listings report being retrieved.Use the getReportTasks method to retrieve report IDs.}\n@returns(200) Success\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server error}\n\n@endgroup\n\n@group ad_report_metadata\n@endpoint GET /ad_report_metadata\n@desc This call retrieves information that details the fields used in each of the Promoted Listings reports. Use the returned information to configure the different types of Promoted Listings reports. You can retrieve metadata for all report types,funding models and channels, or you can filter based on funding model and/or channel.Note: The reporting of some data related to sales and ad-fees may require a 72-hour (maximum) adjustment period which is often referred to as the Reconciliation Period. Such adjustment periods should, on average, be minimal. However, at any given time, the payments tab may be used to view those amounts that have actually been charged.\n@optional {funding_model: str # This query parameter is used only if the user wants to see report metadata for a specific funding model. Refer to the FundingModelEnum type for supported values., channel: str # This query parameter is used only if the user wants to see COST_PER_CLICK report metadata for a specific channel. Refer to the ChannelEnum type for supported values.Note: The channel parameter is only applicable for COST_PER_CLICK funding model.}\n@returns(200) {reportMetadata: [map]} # Success\n@errors {400: Bad Request, 500: Internal Server error}\n\n@endpoint GET /ad_report_metadata/{report_type}\n@desc This call retrieves metadata that details the fields used by a specific Promoted Listings report type. Use the report_type path parameter to indicate metadata to retrieve.This method does not use a request payload.Note: The reporting of some data related to sales and ad-fees may require a 72-hour (maximum) adjustment period which is often referred to as the Reconciliation Period. Such adjustment periods should, on average, be minimal. However, at any given time, the payments tab may be used to view those amounts that have actually been charged.\n@required {report_type: str # This path parameter specifies the name of the report type whose metadata you want to retrieve.For details about available report types and their descriptions, refer to the ReportTypeEnum.}\n@optional {funding_model: str # The funding model used in the report. The funding model must be compatible with the report type specified in the path parameter. Refer to the FundingModelEnum type for supported values., channel: str # The channel used in the report. The channel must be compatible with the report type specified in the path parameter. Refer to the ChannelEnum type for supported values. Note: The channel parameter is only applicable for COST_PER_CLICK funding model.}\n@returns(200) {dimensionMetadata: [map], maxNumberOfDimensionsToRequest: int(int32), maxNumberOfMetricsToRequest: int(int32), channel: str, metricMetadata: [map], reportType: str} # Success\n@errors {400: Bad Request, 403: Forbidden, 404: Not Found, 500: Internal Server error}\n\n@endgroup\n\n@group ad_report_task\n@endpoint GET /ad_report_task\n@desc This method returns information on all the existing report tasks related to a seller. Use the report_task_statuses query parameter to control which reports to return. You can paginate the result set by specifying a limit, which dictates how many report tasks to return on each page of the response. Use the offset parameter to specify how many reports to skip in the result set before returning the first result.Important! \">Important!For ad_report and ad_report_task methods, the API call limit is subject to a per user quota. These API calls can only be executed a maximum of 200 times per hour for each seller/user. If the number of calls per hour exceeds this limit, any new calls will be blocked for the next hour.\n@optional {limit: str # Specifies the maximum number of report tasks to return on a page in the paginated response.Default: 10Maximum: 500, offset: str # Specifies the number of report tasks to skip in the result set before returning the first report in the paginated response.  Combine offset with the limit query parameter to control the reports returned in the response. For example, if you supply an offset of 0 and a limit of 10, the response contains the first 10 reports from the complete list of report tasks retrieved by the call. If offset is 10 and limit is 10, the first page of the response contains reports 11-20 from the complete result set. Default: 0, report_task_statuses: str # This query parameter filters the returned report tasks by their status. Supply a comma-separated list of the report statuses you want returned. The results are filtered to include only the report statuses you specify.Note: The results might not include some report tasks if other search conditions exclude them.See TaskStatusEnum for supported values.}\n@returns(200) {href: str, limit: int(int32), next: str, offset: int(int32), prev: str, total: int(int32), reportTasks: [map]} # Success\n@errors {400: Bad Request, 500: Internal Server error}\n\n@endpoint POST /ad_report_task\n@desc This method creates a report task, which generates a Promoted Listings report based on the values specified in the call.The report is generated based on the criteria you specify, including the report type, the report's dimensions and metrics, the report's start and end dates, the listings to include in the report, and more. Metrics are the quantitative measurements in the report while dimensions specify the attributes of the data included in the reports.When creating a report task, you can specify the items you want included in the report. The items you specify, using either listingId or inventoryReference values, must be in a Promoted Listings campaign for them to be included in the report.For details on the required and optional fields for each report type, see Promoted Listings reporting.This call returns the URL to the report task in the Location response header, and the URL includes the report-task ID.Reports often take time to generate and it's common for this call to return an HTTP status of 202, which indicates the report is being generated. Call getReportTasks (or getReportTask with the report-task ID) to determine the status of a Promoted Listings report. When a report is complete, eBay sets its status to SUCCESS and you can download it using the URL returned in the reportHref field of the getReportTask call. Report files are tab-separated value gzip files with a file extension of .tsv.gz.Note: The reporting of some data related to sales and ad-fees may require a 72-hour (maximum) adjustment period which is often referred to as the Reconciliation Period. Such adjustment periods should, on average, be minimal. However, at any given time, the payments tab may be used to view those amounts that have actually been charged.Note: This call fails if you don't submit all the required fields for the specified report type. Fields not supported by the specified report type are ignored. Call getReportMetadata to retrieve a list of the fields you need to configure for each Promoted Listings report type.Important! \">Important!For ad_report and ad_report_task methods, the API call limit is subject to a per user quota. These API calls can only be executed a maximum of 200 times per hour for each seller/user. If the number of calls per hour exceeds this limit, any new calls will be blocked for the next hour.Important! \">Important! The data threshold for a single report is currently 1 million records; if this threshold is exceeded, the report will fail.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {additionalRecords: [str] # A list of additional records that shall be included in the report, such as non-performing data.Note: Additional records are only applicable to Promoted Listings priority strategy campaigns that use the Cost Per Click (CPC) funding model.Valid Value: NON_PERFORMING_DATA, campaignIds: [str] # A list of campaign IDs to be included in the report task. Use the getCampaigns method to retrieve a list of the current campaign IDs for a seller.For general campaign strategy sellers, this field is required if the reportType is set to CAMPAIGN_PERFORMANCE_REPORT or CAMPAIGN_PERFORMANCE_SUMMARY_REPORT.For priority strategy campaign sellers, leave this request field blank to retrieve the details for all campaigns associated with your account, or specify the campaign IDs for which you would like to retrieve the campaign-specific details.Note: There is a maximum data limit that cannot be exceeded when generating reports. If this threshold is exceeded, the report will fail. Refer to Promoted Listings reporting in the Selling Integration Guide for details.Maximum: 1,000 IDs, channels: [str] # The channel for the advertising campaign that will be included in the report task. This value indicates whether the data included in the report task is for an Onsite or Offsite advertising campaign.If no value is entered, this field will default to ON_SITE. Multiple channels are not supported.Note: Channels are only applicable for campaigns that use the Cost Per Click (CPC) funding model.Valid Values: ON_SITEOFF_SITEThis field is required and must be set to OFF_SITE if the report is for a Offsite Ads campaign., dateFrom: str # The date defining the start of the timespan covered by the report.Format the timestamp as an ISO 8601 string, which is based on the 24-hour Coordinated Universal Time (UTC) clock with local offset.Note: The date specified cannot be a future date.Format: [YYYY]-[MM]-[DD]T[hh]:[mm]:[ss].[sss]ZExample: 2021-03-15T13:00:00-07:00, dateTo: str # The date defining the end of the timespan covered by the report.As with the dateFrom field, format the timestamp as an ISO 8601 string.Note: The date specified cannot be a future date. Additionally, the time specified must be a later time than that specified in the dateFrom field.Format: [YYYY]-[MM]-[DD]T[hh]:[mm]:[ss].[sss]ZExample: 2021-03-17T13:00:00-07:00, dimensions: [map{annotationKeys: [str], dimensionKey: str}] # The list of the dimensions applied to the report.  A dimension is an attribute to which the report data applies. For example, if you set dimensionKey to campaign_id in a Campaign Performance Report, the data will apply to the entire ad campaign. For information on the dimensions and how to specify them, see Promoted Listings reporting., fundingModels: [str] # The funding model for the campaign that shall be included in the report.Note: The default funding model for Promoted Listings reports is COST_PER_SALE.Note: Multiple value support for the fundingModels array has been deprecated. See API&nbsp;Deprecation&nbsp;Status for information.Valid Values:COST_PER_SALECOST_PER_CLICKRequired if the campaign funding model is Cost Per Click (CPC)., inventoryReferences: [map{inventoryReferenceId: str, inventoryReferenceType: str}] # You can use this field to supply an array of items to include in the report if you manage your inventory with the Inventory API.  This field is mutually exclusive with the listingIds field; if you populate this field, do not populate the listingIds field.  An inventory reference identifies an item in your inventory using a pair of values, where the inventoryReferenceId can be either a seller-defined SKU value or an inventoryItemGroupKey, where an inventoryItemGroupKey is seller-defined ID for an inventory item group (a multiple-variation listing). Couple the inventoryReferenceId with an inventoryReferenceType identifier to fully identify an item in your inventory.  Maximum:  500 items Required if  you do not supply an array of listingId values or if you set reportType to INVENTORY_PERFORMANCE_REPORT., listingIds: [str] # Use this field to supply an array of eBay listing IDs you want to include in the report.Important: This field is mutually exclusive with the inventoryReferences field; if you populate this field, do not populate the inventoryReferences field.For general campaign strategy sellers, this field is required if you do not supply an array of inventoryReferences values or if you set the reportType to LISTING_PERFORMANCE_REPORT.For priority strategy campaign sellers, leave this field blank to retrieve the details for all listings associated with the specified campaign IDs (or all campaigns associated with your account, if no campaign IDs are specified), or specify the listing IDs for which you would like to retrieve the listing-specific details.Note: There is a maximum data limit that cannot be exceeded when generating reports. If this threshold is exceeded, the report will fail. Refer to Promoted Listings reporting in the Selling Integration Guide for details.Maximum: 500 listings, marketplaceId: str # The unique identifier for the eBay marketplace on which the report is based. For implementation help, refer to eBay API documentation, metricKeys: [str] # The list of metrics to be included in the report.  Metrics are the quantitative measurements compiled into the report and the data returned is based on the specified dimension of the report. For example, if the dimension is campaign, the metrics for number of sales would be the number of sales in the campaign. However, if the dimension is listing, the number of sales represents the number of items sold in that listing.  For information on metric keys and how to set them, see Promoted Listings reporting.Minimum:  1, reportFormat: str # The file format of the report. Currently, the only supported format is TSV_GZIP, which is a gzip file with tab separated values. For implementation help, refer to eBay API documentation, reportType: str # The type of report to be generated, such as ACCOUNT_PERFORMANCE_REPORT or CAMPAIGN_PERFORMANCE_REPORT.Note: INVENTORY_PERFORMANCE_REPORT is not currently available; availability date is pending.Maximum: 1 For implementation help, refer to eBay API documentation}\n@returns(202) Accepted\n@errors {400: Bad Request, 403: Forbidden, 409: Conflict, 500: Internal Server error}\n\n@endpoint GET /ad_report_task/{report_task_id}\n@desc This call returns the details of a specific Promoted Listings report task, as specified by the report_task_id path parameter. The report task includes the report criteria (such as the report dimensions, metrics, and included listing) and the report-generation rules (such as starting and ending dates for the specified report task).  Report-task IDs are generated by eBay when you call createReportTask. Get a complete list of a seller's report-task IDs by calling getReportTasks.Important! \">Important!For ad_report and ad_report_task methods, the API call limit is subject to a per user quota. These API calls can only be executed a maximum of 200 times per hour for each seller/user. If the number of calls per hour exceeds this limit, any new calls will be blocked for the next hour.\n@required {report_task_id: str # This path parameter specifies the unique identifier of the report task being retrieved. Use the getReportTasks method to retrieve report task Ids.}\n@returns(200) {campaignIds: [str], channels: [str], dateFrom: str, dateTo: str, dimensions: [map], fundingModels: [str], inventoryReferences: [map], listingIds: [str], marketplaceId: str, metricKeys: [str], reportExpirationDate: str, reportFormat: str, reportHref: str, reportId: str, reportName: str, reportTaskCompletionDate: str, reportTaskCreationDate: str, reportTaskExpectedCompletionDate: str, reportTaskId: str, reportTaskStatus: str, reportTaskStatusMessage: str, reportType: str} # Success\n@errors {400: Bad Request, 404: Not found, 500: Internal Server error}\n\n@endpoint DELETE /ad_report_task/{report_task_id}\n@desc This call deletes the report task specified by the report_task_id path parameter. This method also deletes any reports generated by the report task.  Report task IDs are generated by eBay when you call createReportTask. Get a complete list of a seller's report-task IDs by calling getReportTasks.Important! \">Important!For ad_report and ad_report_task methods, the API call limit is subject to a per user quota. These API calls can only be executed a maximum of 200 times per hour for each seller/user. If the number of calls per hour exceeds this limit, any new calls will be blocked for the next hour.\n@required {report_task_id: str # This path parameter specifies the unique identifier of the report task being deleted. Use the getReportTasks method to retrieve report task Ids.}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not found, 409: Conflict, 500: Internal Server error}\n\n@endgroup\n\n@group item_price_markdown\n@endpoint POST /item_price_markdown\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method creates an item price markdown discount (know simply as a \"markdown discount\") where a discount amount is applied directly to the items included in the discount. Discounts can be specified as either a monetary amount or a percentage off the standard sales price. eBay highlights discounted items by placing teasers for the items throughout the online sales flows.  Unlike an item discount, a markdown discount does not require the buyer meet a \"threshold\" before the offer takes effect. With markdown discounts, all the buyer needs to do is purchase the item to receive the discount benefit.  Important: There are some restrictions for which listings are available for price markdown discounts. For details, see Discounts Manager requirements and restrictions. In addition, we recommend you list items at competitive prices before including them in your markdown discounts. For an extensive list of pricing recommendations, see the Growth tab in Seller Hub. There are two ways to enable items for markdown discounts: Key-based discounts select items using either the listing IDs or inventory reference IDs of the items you want to discount. Note that if you use inventory reference IDs, you must specify both the inventoryReferenceId and the associated inventoryReferenceType of the item(s) you want to include.  Rule-based discounts select items using a list of eBay category IDs or seller Store category IDs. Rules can further constrain items being discounted by minimum and maximum prices, brands, and item conditions.  New discounts must be created in either a DRAFT or a SCHEDULED state. Use the DRAFT state when you are initially creating a discount and you want to be sure it's correctly configured before scheduling it to run. When you create a discount, the promotionId is returned in the Location response header. Use this ID to reference the discount in subsequent requests (such as to schedule a discount that's in a DRAFT state).  Tip: Refer to Discounts Manager in the Selling Integration Guide for details and examples showing how to create and manage seller discounts.  Markdown discounts are available on all eBay marketplaces. For more information, see Discounts Manager requirements and restrictions.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {applyFreeShipping: bool # If set to true, free shipping is applied to the first shipping service specified for the item. The first domestic shipping option is set to \"free shipping,\" regardless if the shipping optionType for that service is set to FLAT_RATE, CALCULATED, or NOT_SPECIFIED (freight). This flag essentially adds free shipping as a part of the discount. Default: false, autoSelectFutureInventory: bool # If set to true, eBay will automatically add inventory items to the markdown discount if they meet the selectedInventoryDiscounts criteria specified for the markdown discount.  Default: false, blockPriceIncreaseInItemRevision: bool # If set to true, price increases (including removing the free shipping flag) are blocked and an error message is returned if a seller attempts to adjust the price of an item that's partaking in this markdown discount. If set to false, an item is dropped from the markdown discount if the seller adjusts the price.  Default: false, description: str # This field is required if you are configuring an MARKDOWN_SALE discount. This is the seller-defined \"tag line\" for the offer, such as \"Save on designer shoes.\" A tag line appears under the \"offer-type text\" that is generated for the discount. The text is displayed on the offer tile that is shown on the seller's All Offers page and on the event page for the discount.  Note: Offer-type text is a teaser that's presented throughout the buyer's journey through the sales flow and is generated by eBay. This text is not editable by the seller&mdash;it's derived from the settings in the discountRules and discountSpecification fields&mdash;and can be, for example, \"20% off\".  Maximum length: 50, endDate: str # The date and time the discount ends, in UTC format (yyyy-MM-ddThh:mm:ssZ). The value supplied for endDate must be at least 24 hours after the value supplied for the startDate of the markdown discount.For display purposes, convert this time into the local time of the seller.  Max value:14 days for the AT, CH, DE, ES, FR, IE, IT, and UK, marketplaces.  45 days for all other marketplaces., marketplaceId: str # The eBay marketplace ID of the site where the markdown discount is hosted. Markdown discounts are supported on all eBay marketplaces. For implementation help, refer to eBay API documentation, name: str # The seller-defined name or 'title' of the discount that the seller can use to identify a discount. This label is not displayed in end-user flows.  Maximum length: 90, priority: str # This field is ignored in markdown discounts. For implementation help, refer to eBay API documentation, promotionImageUrl: str # Required for CODED_COUPON, MARKDOWN_SALE, and ORDER_DISCOUNT discounts, populate this field with a URL that points to an image to be used with the discount. This image is displayed on the seller's All Offers page. The URL must point to either JPEG or PNG image and it must be a minimum of 500x500 pixels in dimension and cannot exceed 12Mb in size., promotionStatus: str # The current status of the discount. When creating a new discount, you must set this value to either DRAFT or SCHEDULED.  Note that you must set this value to SCHEDULED when you update a RUNNING discount. For implementation help, refer to eBay API documentation, selectedInventoryDiscounts: [map{discountBenefit: map, discountId: str, inventoryCriterion: map, ruleOrder: int(int32)}] # A list that defines the sets of selected items for the markdown discount., startDate: str # The date and time the discount starts in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller.}\n@returns(201) Created\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint GET /item_price_markdown/{promotion_id}\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method returns the complete details of the item price markdown discounnt that's indicated by the promotion_id path parameter. Call getPromotions to retrieve the IDs of a seller's discounts.\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the discount you want to retrieve plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discoun is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US}\n@returns(200) {applyFreeShipping: bool, autoSelectFutureInventory: bool, blockPriceIncreaseInItemRevision: bool, description: str, endDate: str, marketplaceId: str, name: str, priority: str, promotionImageUrl: str, promotionStatus: str, selectedInventoryDiscounts: [map], startDate: str} # Success\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endpoint PUT /item_price_markdown/{promotion_id}\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method updates the specified item price markdown discount with the new configuration that you supply in the payload of the request. Specify the discount you want to update using the promotion_id path parameter. Call getPromotions to retrieve the IDs of a seller's discounts.When updating a discount, supply all the fields that you used to configure the original discount (and not just the fields you are updating). eBay replaces the specified discount with the values you supply in the update request and if you don't pass a field that currently has a value, the update request fails.  The parameters you are allowed to update with this request depend on the status of the discount you're updating:  DRAFT or SCHEDULED discounts: You can update any of the parameters in these discounts that have not yet started to run, including the discountRules. RUNNING discounts: You can change the endDate and the item's inventory but you cannot change the discount or the start date. ENDED discounts: Nothing can be changed.\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the discount you want to update plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discount is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US, Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {applyFreeShipping: bool # If set to true, free shipping is applied to the first shipping service specified for the item. The first domestic shipping option is set to \"free shipping,\" regardless if the shipping optionType for that service is set to FLAT_RATE, CALCULATED, or NOT_SPECIFIED (freight). This flag essentially adds free shipping as a part of the discount. Default: false, autoSelectFutureInventory: bool # If set to true, eBay will automatically add inventory items to the markdown discount if they meet the selectedInventoryDiscounts criteria specified for the markdown discount.  Default: false, blockPriceIncreaseInItemRevision: bool # If set to true, price increases (including removing the free shipping flag) are blocked and an error message is returned if a seller attempts to adjust the price of an item that's partaking in this markdown discount. If set to false, an item is dropped from the markdown discount if the seller adjusts the price.  Default: false, description: str # This field is required if you are configuring an MARKDOWN_SALE discount. This is the seller-defined \"tag line\" for the offer, such as \"Save on designer shoes.\" A tag line appears under the \"offer-type text\" that is generated for the discount. The text is displayed on the offer tile that is shown on the seller's All Offers page and on the event page for the discount.  Note: Offer-type text is a teaser that's presented throughout the buyer's journey through the sales flow and is generated by eBay. This text is not editable by the seller&mdash;it's derived from the settings in the discountRules and discountSpecification fields&mdash;and can be, for example, \"20% off\".  Maximum length: 50, endDate: str # The date and time the discount ends, in UTC format (yyyy-MM-ddThh:mm:ssZ). The value supplied for endDate must be at least 24 hours after the value supplied for the startDate of the markdown discount.For display purposes, convert this time into the local time of the seller.  Max value:14 days for the AT, CH, DE, ES, FR, IE, IT, and UK, marketplaces.  45 days for all other marketplaces., marketplaceId: str # The eBay marketplace ID of the site where the markdown discount is hosted. Markdown discounts are supported on all eBay marketplaces. For implementation help, refer to eBay API documentation, name: str # The seller-defined name or 'title' of the discount that the seller can use to identify a discount. This label is not displayed in end-user flows.  Maximum length: 90, priority: str # This field is ignored in markdown discounts. For implementation help, refer to eBay API documentation, promotionImageUrl: str # Required for CODED_COUPON, MARKDOWN_SALE, and ORDER_DISCOUNT discounts, populate this field with a URL that points to an image to be used with the discount. This image is displayed on the seller's All Offers page. The URL must point to either JPEG or PNG image and it must be a minimum of 500x500 pixels in dimension and cannot exceed 12Mb in size., promotionStatus: str # The current status of the discount. When creating a new discount, you must set this value to either DRAFT or SCHEDULED.  Note that you must set this value to SCHEDULED when you update a RUNNING discount. For implementation help, refer to eBay API documentation, selectedInventoryDiscounts: [map{discountBenefit: map, discountId: str, inventoryCriterion: map, ruleOrder: int(int32)}] # A list that defines the sets of selected items for the markdown discount., startDate: str # The date and time the discount starts in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller.}\n@returns(200) Success\n@returns(204) Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint DELETE /item_price_markdown/{promotion_id}\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method deletes the item price markdown discount specified by the promotion_id path parameter. Call getPromotions to retrieve the IDs of a seller's discounts.  You can delete any discount with the exception of those that are currently active (RUNNING). To end a running discount, call updateItemPriceMarkdownPromotion and adjust the endDate field as appropriate.\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the discount you want to delete plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discount is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endgroup\n\n@group item_promotion\n@endpoint POST /item_promotion\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method creates an item discount, where the buyer receives a discount when they meet the specific buying criteria. Known here as \"threshold discounts\", these discounts trigger when a threshold is met.  eBay highlights discounted items by placing teasers for the discounted items throughout the online buyer flows.  Discounts are specified as either a monetary amount or a percentage off the standard sales price of a listing, letting you offer deals such as \"Buy 1 Get 1\" and \"Buy $50, get 20% off\". Volume pricing discounts increase the value of the discount as the buyer increases the quantity they purchase. Coded Coupons provide unique codes that a buyer can use during checkout to receive a discount. The seller can specify the number of times a buyer can use the coupon and the maximum amount across all purchases that can be discounted using the coupon. The coupon code can also be made public (appearing on the seller's Offer page, search pages, the item listing, and the checkout page) or private (only on the seller's Offer page, but the seller can include the code in email and social media). Note: Coded Coupons are currently available in the US, UK, DE, FR, IT, ES, and AU marketplaces.There are two ways to add items to a threshold discount:  Key-based discounts select items using either the listing IDs or inventory reference IDs of the items you want to discount. Note that if you use inventory reference IDs, you must specify both the inventoryReferenceId and the associated inventoryReferenceType of the item(s) you want to be discounted. Rule-based discounts select items using a list of eBay category IDs or seller Store category IDs. Rules can further constrain the items being discounted by minimum and maximum prices, brands, and item conditions.  You must create a new discount in either a DRAFT or SCHEDULED state. Use the DRAFT state when you are initially creating a discount and you want to be sure it's correctly configured before scheduling it to run. When you create a discount, the promotion ID is returned in the Location response header. Use this ID to reference the discount in subsequent requests.  Tip: Refer to the Selling Integration Guide for details and examples showing how to create and manage threshold discounts using the Discounts Manager.  For information on the eBay marketplaces that support item discounts, see Discounts Manager requirements and restrictions.\n@required {Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {applyDiscountToSingleItemOnly: bool # This flag is relevant in only when promotionType is set to VOLUME_DISCOUNT. For details on volume pricing discounts, see Configuring volume pricing discounts.  If set to true, the discount is applied only when the buyer purchases multiple quantities of a single item that is being discounted. Otherwise, the discount applies to multiple quantities of any the items being discounted. Different variations of a multi-variation item are considered to be the same item. Note that this flag is not relevant if the inventoryCriterion container identifies a single listing ID for the discount., budget: map{currency: str, value: str} # A complex type that describes the value of a monetary amount as represented by a global currency., couponConfiguration: map{couponCode: str, couponType: str, maxCouponRedemptionPerUser: int(int32)} # This container defines a coded coupon discount. It is required if the discount type is CODED_COUPON., description: str # This is the seller-defined \"tag line\" for the offer, such as \"Save on designer shoes.\"  The tag line appears under the \"offer-type text\" that is generated for the discount and is displayed on the offer tile that's shown on the seller's All Offers page, and on the event page for the discount.  Note: Offer-type text is a teaser that's presented throughout the buyer's journey through the sales flow and is generated by eBay. The offer-type text is not editable by the seller&mdash;it's derived from the settings in the discountRules and discountSpecification fields&mdash;and can be, for example, \"Extra 20% off when you buy 3+\".  Maximum length: 50 Required if you are configuring CODED_COUPON, ORDER_DISCOUNT, or MARKDOWN_SALE discounts (and not valid for VOLUME_DISCOUNT discounts)., discountRules: [map{discountBenefit: map, discountSpecification: map, maxDiscountAmount: map, ruleOrder: int(int32)}] # This container defines a discount using the following two required fields: discountBenefit &ndash; Defines a discount as either a monetary amount or a percentage that is subtracted from the sales price of an item, a set of items, or an order.  discountSpecification &ndash; Defines a set of rules that determine when the discount is applied. Note: For volume pricing, you must specify at least two and not more than four discountBenefit/discountSpecification pairs. In addition, you must define each set of rules with a ruleOrder value that corresponds with the order of volume discounts you present.  Tip: Refer to Specifying item discounts for information and examples on how to combine discountBenefit and discountSpecification to create different types of discounts., endDate: str # The date and time the discount ends in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller., inventoryCriterion: map{inventoryCriterionType: str, inventoryItems: [map], listingIds: [str], ruleCriteria: map} # This type defines either the selections rules or the list of listing IDs for the discount. The \"listing IDs\" are are either the seller's item IDs or the eBay listing IDs., marketplaceId: str # The eBay marketplace ID of the site where the threshold discount is hosted. Threshold discounts are currently supported on a limited number of eBay marketplaces.  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 For implementation help, refer to eBay API documentation, name: str # The seller-defined name or \"title\" of the discount that the seller can use to identify a discounts. This label is not displayed in end-user flows.  Maximum length: 90, priority: str # Applicable for only ORDER_DISCOUNT discounts, this field indicates the precedence of the discounts, which is used to determine the position of a discount on the seller's All Offers page. If an item is associated with multiple discounts, the discount with the higher priority takes precedence. For implementation help, refer to eBay API documentation, promotionImageUrl: str # Required for CODED_COUPON, MARKDOWN_SALE, and ORDER_DISCOUNT discounts, and not valid for VOLUME_DISCOUNT discounts.  Populate this field with a URL that points to an image to be used with the discount. This image is displayed on the seller's All Offers page. The URL must point to either JPEG or PNG image and it must be a minimum of 500x500 pixels in dimension and cannot exceed 12Mb in size., promotionStatus: str # The current status of the discount. When creating a new discount, this value must be set to either DRAFT or SCHEDULED.  Note that you must set this value to SCHEDULED when you update a RUNNING discount. For implementation help, refer to eBay API documentation, promotionType: str # Use this field to specify the type of the discount you are creating. The supported types are: CODED_COUPON &ndash; A coupon code discount set with createItemPromotion. MARKDOWN_SALE &ndash; A markdown discount set with createItemPriceMarkdownPromotion. ORDER_DISCOUNT &ndash; A threshold discount set with createItemPromotion. VOLUME_DISCOUNT &ndash; A volume pricing discount set with createItemPromotion. See the Discounts Manager documentation for details. Required if  you are creating a volume pricing discount (VOLUME_DISCOUNT). For implementation help, refer to eBay API documentation, startDate: str # The date and time the discount starts in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller.}\n@returns(201) {warnings: [map]} # Created\n@errors {400: Bad Request, 409: Business Error, 500: Internal Server Error}\n\n@endpoint GET /item_promotion/{promotion_id}\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method returns the complete details of the threshold discount specified by the promotion_id path parameter. Call getPromotions to retrieve the IDs of a seller's discounts.\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the discount you want to retrieve plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discount is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US}\n@returns(200) {applyDiscountToSingleItemOnly: bool, budget: map{currency: str, value: str}, couponConfiguration: map{couponCode: str, couponType: str, maxCouponRedemptionPerUser: int(int32)}, description: str, discountRules: [map], endDate: str, inventoryCriterion: map{inventoryCriterionType: str, inventoryItems: [map], listingIds: [str], ruleCriteria: map{excludeInventoryItems: [map], excludeListingIds: [str], markupInventoryItems: [map], markupListingIds: [str], selectionRules: [map]}}, marketplaceId: str, name: str, priority: str, promotionId: str, promotionImageUrl: str, promotionStatus: str, promotionType: str, startDate: str} # Success\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endpoint PUT /item_promotion/{promotion_id}\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method updates the specified threshold discount with the new configuration that you supply in the request. Indicate the discount you want to update using the promotion_id path parameter.  Call getPromotions to retrieve the IDs of a seller's discounts.  When updating a discount, supply all the fields that you used to configure the original discount (and not just the fields you are updating). eBay replaces the specified discount with the values you supply in the update request and if you don't pass a field that currently has a value, the update request will fail.  The parameters you are allowed to update with this request depend on the status of the discount you're updating:  DRAFT or SCHEDULED discounts: You can update any of the parameters in these discounts that have not yet started to run, including the discountRules. RUNNING or PAUSED discounts: You can change the endDate and the item's inventory but you cannot change the discount or the start date. ENDED discounts: Nothing can be changed. Tip: When updating a RUNNING or PAUSED discount, set the status field to SCHEDULED for the update request. When the discount is updated, the previous status (either RUNNING or PAUSED) is retained.\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the discount you want to update plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discouint is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US, Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {applyDiscountToSingleItemOnly: bool # This flag is relevant in only when promotionType is set to VOLUME_DISCOUNT. For details on volume pricing discounts, see Configuring volume pricing discounts.  If set to true, the discount is applied only when the buyer purchases multiple quantities of a single item that is being discounted. Otherwise, the discount applies to multiple quantities of any the items being discounted. Different variations of a multi-variation item are considered to be the same item. Note that this flag is not relevant if the inventoryCriterion container identifies a single listing ID for the discount., budget: map{currency: str, value: str} # A complex type that describes the value of a monetary amount as represented by a global currency., couponConfiguration: map{couponCode: str, couponType: str, maxCouponRedemptionPerUser: int(int32)} # This container defines a coded coupon discount. It is required if the discount type is CODED_COUPON., description: str # This is the seller-defined \"tag line\" for the offer, such as \"Save on designer shoes.\"  The tag line appears under the \"offer-type text\" that is generated for the discount and is displayed on the offer tile that's shown on the seller's All Offers page, and on the event page for the discount.  Note: Offer-type text is a teaser that's presented throughout the buyer's journey through the sales flow and is generated by eBay. The offer-type text is not editable by the seller&mdash;it's derived from the settings in the discountRules and discountSpecification fields&mdash;and can be, for example, \"Extra 20% off when you buy 3+\".  Maximum length: 50 Required if you are configuring CODED_COUPON, ORDER_DISCOUNT, or MARKDOWN_SALE discounts (and not valid for VOLUME_DISCOUNT discounts)., discountRules: [map{discountBenefit: map, discountSpecification: map, maxDiscountAmount: map, ruleOrder: int(int32)}] # This container defines a discount using the following two required fields: discountBenefit &ndash; Defines a discount as either a monetary amount or a percentage that is subtracted from the sales price of an item, a set of items, or an order.  discountSpecification &ndash; Defines a set of rules that determine when the discount is applied. Note: For volume pricing, you must specify at least two and not more than four discountBenefit/discountSpecification pairs. In addition, you must define each set of rules with a ruleOrder value that corresponds with the order of volume discounts you present.  Tip: Refer to Specifying item discounts for information and examples on how to combine discountBenefit and discountSpecification to create different types of discounts., endDate: str # The date and time the discount ends in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller., inventoryCriterion: map{inventoryCriterionType: str, inventoryItems: [map], listingIds: [str], ruleCriteria: map} # This type defines either the selections rules or the list of listing IDs for the discount. The \"listing IDs\" are are either the seller's item IDs or the eBay listing IDs., marketplaceId: str # The eBay marketplace ID of the site where the threshold discount is hosted. Threshold discounts are currently supported on a limited number of eBay marketplaces.  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 For implementation help, refer to eBay API documentation, name: str # The seller-defined name or \"title\" of the discount that the seller can use to identify a discounts. This label is not displayed in end-user flows.  Maximum length: 90, priority: str # Applicable for only ORDER_DISCOUNT discounts, this field indicates the precedence of the discounts, which is used to determine the position of a discount on the seller's All Offers page. If an item is associated with multiple discounts, the discount with the higher priority takes precedence. For implementation help, refer to eBay API documentation, promotionImageUrl: str # Required for CODED_COUPON, MARKDOWN_SALE, and ORDER_DISCOUNT discounts, and not valid for VOLUME_DISCOUNT discounts.  Populate this field with a URL that points to an image to be used with the discount. This image is displayed on the seller's All Offers page. The URL must point to either JPEG or PNG image and it must be a minimum of 500x500 pixels in dimension and cannot exceed 12Mb in size., promotionStatus: str # The current status of the discount. When creating a new discount, this value must be set to either DRAFT or SCHEDULED.  Note that you must set this value to SCHEDULED when you update a RUNNING discount. For implementation help, refer to eBay API documentation, promotionType: str # Use this field to specify the type of the discount you are creating. The supported types are: CODED_COUPON &ndash; A coupon code discount set with createItemPromotion. MARKDOWN_SALE &ndash; A markdown discount set with createItemPriceMarkdownPromotion. ORDER_DISCOUNT &ndash; A threshold discount set with createItemPromotion. VOLUME_DISCOUNT &ndash; A volume pricing discount set with createItemPromotion. See the Discounts Manager documentation for details. Required if  you are creating a volume pricing discount (VOLUME_DISCOUNT). For implementation help, refer to eBay API documentation, startDate: str # The date and time the discount starts in UTC format (yyyy-MM-ddThh:mm:ssZ). For display purposes, convert this time into the local time of the seller.}\n@returns(200) {warnings: [map]} # Success\n@returns(204) Success\n@errors {400: Bad Request, 404: Not Found, 409: Conflict, 500: Internal Server Error}\n\n@endpoint DELETE /item_promotion/{promotion_id}\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method deletes the threshold discount specified by the promotion_id path parameter. Call getPromotions to retrieve the IDs of a seller's discounts.  You can delete any discount with the exception of those that are currently active (RUNNING). To end a running threshold discount, call updateItemPromotion and adjust the endDate field as appropriate.\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the discount you want to delete plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discount is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endgroup\n\n@group promotion\n@endpoint GET /promotion/{promotion_id}/get_listing_set\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method returns the set of listings associated with the promotion_id specified in the path parameter. Call getPromotions to retrieve the IDs of a seller's discounts.  The listing details are returned in a paginated set and you can control and results returned using the following query parameters: limit, offset, q, sort, and status.  Maximum associated listings returned: 200  Default number of listings returned: 200\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the discount associated with the listing set plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discount is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US}\n@optional {limit: str # Specifies the maximum number of discounts returned on a page from the result set. Default: 200Maximum: 200, offset: str # Specifies the number of discounts to skip in the result set before returning the first discount 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, q: str # Reserved for future use., sort: str # Specifies the order in which to sort the associated listings in the response. If you precede the supplied value with a dash, the response is sorted in reverse order.  Example: &nbsp;&nbsp;&nbsp;sort=PRICE - Sorts the associated listings by their current price in ascending order &nbsp;&nbsp;&nbsp;sort=-TITLE - Sorts the associated listings by their title in descending alphabetical order (Z-Az-a)  Valid values:AVAILABLE PRICE TITLE For implementation help, refer to eBay API documentation at https://developer.ebay.com/api-docs/sell/marketing/types/csb:SortField, status: str # This query parameter applies only to markdown discounts. It filters the response based on the indicated status of the discount.Note: Currently, the only supported value for this parameter is MARKED_DOWN, which indicates active markdown discounts. For implementation help, refer to eBay API documentation at https://developer.ebay.com/api-docs/sell/marketing/types/sme:ItemMarkdownStatusEnum}\n@returns(200) {href: str, limit: int(int32), listings: [map], next: str, offset: int(int32), prev: str, total: int(int32), warnings: [map]} # Success\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endpoint GET /promotion\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method returns a list of a seller's undeleted discounts. The call returns up to 200 currently-available discounts on the specified marketplace. While the response body does not include the discount's discountRules or inventoryCriterion containers, it does include the promotionHref (which you can use to retrieve the complete details of the discount).  Use query parameters to sort and filter the results by the number of discounts to return, the discount state or type, and the eBay marketplace. You can also supply keywords to limit the response to the discounts that contain that keywords in the title of the discount. Maximum returned: 200\n@required {marketplace_id: str # This parameter specifies eBay marketplace ID of the site where the discount is hosted.See MarketplaceIdEnum for supported Marketplace ID values.}\n@optional {limit: str # Specifies the maximum number of discounts returned on a page from the result set.  Default: 200 Maximum: 200, offset: str # Specifies the number of discounts to skip in the result set before returning the first discount 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, promotion_status: str # This parameter specifies the discount state by which you want to filter the results. The response contains only those discounts that match the state you specify. See PromotionStatusEnum for supported values.Maximum number of input values: 1, promotion_type: str # This parameter specifies the campaign discounts type by which you want to filter the results.See PromotionTypeEnum for supported values., q: str # A string consisting of one or more keywords. eBay filters the response by returning only the discounts that contain the supplied keywords in the 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 discounts with both \"iPhone\" and \"iPad\" in the title., sort: str # Specifies the order for how to sort the response. If you precede the supplied value with a dash, the response is sorted in reverse order.  Example: &nbsp;&nbsp;&nbsp;sort=END_DATE &nbsp; Sorts the discounts in the response by their end dates in ascending order &nbsp;&nbsp;&nbsp;sort=-PROMOTION_NAME &nbsp; Sorts the discounts by their name in descending alphabetical order (Z-Az-a)  Valid values:START_DATE END_DATE PROMOTION_NAME For implementation help, refer to eBay API documentation at https://developer.ebay.com/api-docs/sell/marketing/types/csb:SortField}\n@returns(200) {href: str, limit: int(int32), next: str, offset: int(int32), prev: str, promotions: [map], total: int(int32)} # Success\n@errors {400: Bad Request, 500: Internal Server Error}\n\n@endpoint POST /promotion/{promotion_id}/pause\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method pauses a currently-active (RUNNING) threshold discount and changes the state of the discount from RUNNING to PAUSED. Pausing a discount makes the discount temporarily unavailable to buyers and any currently-incomplete transactions will not receive the offer until the discount is resumed. Also, discount teasers are not displayed when a discount is paused.  Pass the ID of the discount you want to pause using the promotion_id path parameter. Call getPromotions to retrieve the IDs of the seller's discounts. Note: You can only pause threshold discounts (you cannot pause markdown discounts).\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the active discount being paused plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discount is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US}\n@returns(204) Success\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endpoint POST /promotion/{promotion_id}/resume\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method restarts a threshold discount that was previously paused and changes the state of the discount from PAUSED to RUNNING. Only discounts that have been previously paused can be resumed. Resuming a discount reinstates the teasers and any transactions that were in motion before the discount was paused will again be eligible for the discount.  Pass the ID of the discount you want to resume using the promotion_id path parameter. Call getPromotions to retrieve the IDs of the seller's discounts.\n@required {promotion_id: str # This path parameter takes a concatenation of the ID of the paused discount being resumed with the listing set plus the marketplace ID on which the discount is hosted. Concatenate the two values by separating them with an \"at sign\" (@). The ID of the discount (promotionId) is a unique eBay-assigned value that's generated when the discount is created. The Marketplace ID is the ENUM value of eBay marketplace where the discount is hosted. Use the getPromotions method to retrieve promotion Ids. See MarketplaceIdEnum for supported Marketplace ID values.Example: 1********5@EBAY_US}\n@returns(204) Success\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endgroup\n\n@group promotion_report\n@endpoint GET /promotion_report\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method generates a report that lists the seller's running, paused, and ended discounts for the specified eBay marketplace. The result set can be filtered by the discount status and the number of results to return. You can also supply keywords to limit the report to discounts 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.\n@required {marketplace_id: str # This parameter specifies the eBay marketplace ID of the site for which you want the discounts report.See MarketplaceIdEnum for supported Marketplace ID values.}\n@optional {limit: str # Specifies the maximum number of discounts returned on a page from the result set.  Default: 200 Maximum: 200, offset: str # Specifies the number of discounts to skip in the result set before returning the first discount 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, promotion_status: str # This parameter specifies the discount state by which you want to filter the results. See PromotionStatusEnum for supported values.Maximum number of input values: 1, promotion_type: str # This parameter specifies the campaign discount type by which you want to filter the results.See PromotionTypeEnum for supported values., q: str # A string consisting of one or more keywords. eBay filters the response by returning only the discounts that contain the supplied keywords in the discount 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 discounts with both \"iPhone\" and \"iPad\" in the title.}\n@returns(200) {href: str, limit: int(int32), next: str, offset: int(int32), prev: str, promotionReports: [map], total: int(int32)} # Success\n@errors {400: Bad Request, 500: Internal Server Error}\n\n@endgroup\n\n@group promotion_summary_report\n@endpoint GET /promotion_summary_report\n@desc Note: As of July 8th 2024, promotions are now being referred to as discounts on Seller Hub and eBay help pages. Sell Marketing API documentation has been updated to reflect this product name change, but note that no API interface changes have been made.This method generates a report that summarizes the seller's discounts for the specified eBay marketplace. The report returns information on RUNNING, PAUSED, and ENDED discounts (deleted reports are not returned) and summarizes the seller's campaign performance for all discounts on a given site.  For information about summary reports, see Reading the item discount Summary report.\n@required {marketplace_id: str # This parameter specifies the eBay marketplace ID of the site for which you want a discount summary report.See MarketplaceIdEnum for supported Marketplace ID values.}\n@returns(200) {baseSale: map{currency: str, value: str}, lastUpdated: str, percentageSalesLift: str, promotionSale: map{currency: str, value: str}, totalSale: map{currency: str, value: str}} # Success\n@errors {400: Bad Request, 404: Not Found, 500: Internal Server Error}\n\n@endgroup\n\n@group email_campaign\n@endpoint GET /email_campaign\n@desc This method retrieves a list of email campaigns from a seller's eBay store.Users can filter the results by email campaign type, email campaign status, and marketplace ID using the q query parameter.\n@optional {limit: str # The maximum number of email campaigns returned in a page.Min value: 1Max value: 200, offset: str # The number of results to skip in a pagination query. This value cannot be less than zero.Default value: 0, q: str # This field contains filter criteria for the results returned. Filter by email campaign type, email campaign status, and marketplace ID.For example, setting q=campaignType:WELCOME,ITEM_SHOWCASE will return only Welcome and Item Showcase email campaigns.Note: At least one campaignType value must be set through the q query parameter. If no other filters are set, all email campaigns for the specified campaign type(s) will be returned in the results set., sort: str # The criteria for sorting email campaign results. See ItemSortEnum for sorting options and their enum values.Default: NEWLY_LISTED}\n@returns(200) {campaigns: [map], href: str, limit: int(int32), next: str, offset: int(int32), prev: str, total: int(int32)} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint POST /email_campaign\n@desc This method creates a new email campaign. An eBay store owner can create six different types of email campaigns: Welcome, New products & collections, Coupon, Sale event + markdown, Order discount, and Volume pricing.A successful createEmailCampaign request returns the emailCampaignId assigned to the new email campaign.The fields emailCampaignType, audienceCodes, itemSelectMode, subject, and personalizedMessage are required for all email campaign types. Specific email campaign types have required values for additional fields. For more information on the email campaign types, see the Store Email Campaigns section of the Selling Integration Guide.\n@required {X-EBAY-C-MARKETPLACE-ID: str # The eBay marketplace that the email campaign interfaces with.eBay marketplaces correspond to geographical regions or large submarkets of regions. For example, EBAY-US corresponds to the United States market.See MarketplaceIdEnum for supported values., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {audienceCodes: [str] # An array of audience codes for the audiences of the email campaign. At least one audience code is required. There is no upper limit to the number of audience codes.To retrieve seller audiences, call getAudiences. Use the code values in the response to populate audienceCodes., categoryId: str # The unique identifier of either an eBay category or a store category.This field is used if a seller wants to apply an email campaign to a specific eBay category or store category. The categoryType determines whether the categoryId value is an eBay category or store category.Use the Taxonomy API to retrieve eBay categories. To retrieve seller store categories, use the getStore call. Use the categoryId value of the desired category from the results as the value in the request.itemSelectMode must be set to AUTO in order to use a category ID., categoryType: str # This field must be set when applying an email campaign to a specific eBay category or store category. The enumeration value used indicates which type of category the categoryId belongs to. For implementation help, refer to eBay API documentation, emailCampaignType: str # The email campaign type of the email campaign being created. There are six email campaigns that a user can create:WELCOME - an email sent automatically to new subscribers.ITEM_SHOWCASE - an email featuring new products & collections that the seller wants to highlight.COUPON - an email containing a coupon code and up to 4 items that this coupon can be applied to.ORDER_DISCOUNT - an email containing an order discount and up to 10 items that this discount can be applied to.SALE_EVENT - an email about a sale event and up to 10 items that the sale can be applied to.VOLUME_PRICING - an email containing up to 10 items that are eligible for volume pricing.Note: emailCampaignType cannot be updated once the email campaign is created. For implementation help, refer to eBay API documentation, itemIds: [str] # An array of unique identifiers for the listings displayed in an email campaign. Used if the seller wishes to select the eBay listings in the email campaign rather than have eBay automatically select them. Call getSellerList to retrieve all seller listings. Each Item result contains an ItemID value. Use this value in itemIds to feature that listing.The maximum number of itemIds for the COUPON campaign type is 4, and for every other campaign type is 10itemSelectMode must be set to MANUAL in order to use this field., itemSelectMode: str # Determines whether listings featured in an email campaign are selected by the seller or by eBay.If itemSelectMode is set to AUTO, eBay automatically choses listings based on values set for sort, categoryType, categoryId, and priceRange.If itemSelectMode is set to MANUAL, listings are set by the seller by populating the itemIds array.Note: itemSelectMode is always set to AUTO for WELCOME email campaigns. For implementation help, refer to eBay API documentation, personalizedMessage: str # The body of the email campaign. Accepts HTML and CSS.Max length: 1000, priceRange: map{currency: str, gte: num, lte: num} # The price range., promotionId: str # The unique identifier of the discount used for an email campaign if the emailCampaignType is set to COUPON, SALE_EVENT, or ORDER_DISCOUNT. promotionSelectModeEnum must set to MANUAL if a discount is selected.Call getPromotions to retrieve a list of the seller's discounts. Use the promotionId from an individual PromotionDetail in the result to populate the request., promotionSelectModeEnum: str # The selection mode for the discount used if the emailCampaignType is set to COUPON, SALE_EVENT, or ORDER_DISCOUNT.If promotionSelectModeEnum is set to AUTO, eBay will choose the discount to include in the email campaign. If set to MANUAL, the seller must specify the discount in the promotionId field. For implementation help, refer to eBay API documentation, scheduleDate: str # The date and time that the email campaign newsletter will be sent, given in UTC format. Example: 2023-05-20T03:13:35ZThis field should be used if the seller wishes to send the email campaign on a future date. If no scheduleDate is set, the email campaign will send once it is created or updated., sort: str # The sort rule is used to display the listings featured in the email campaign.Sort rules are only used if itemSelectMode is set to AUTO. If itemSelectMode is MANUAL, listings are displayed in the order in which they are listed in the itemIds array. The following sort rules are available:ENDING_FIRST displays listings by ending date, from soonest to latest.LOWEST_PRICED displays listings by price, from lowest to highest.HIGHEST_PRICED displays listings by price, from highest to lowest.NEWLY_LISTED displays listings by date listed, with the newest first.The default sort rule is NEWLY_LISTED. For implementation help, refer to eBay API documentation, subject: str # The subject line of the email campaign.Max length: 70}\n@returns(200) {emailCampaignId: str, emailCampaignStatus: str} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint GET /email_campaign/{email_campaign_id}\n@desc This method returns the details of a single email campaign specified by the email_campaign_id path parameter.Call getEmailCampaigns to retrieve a list of all email campaigns from a seller's eBay store.\n@required {email_campaign_id: str # This path parameter specifies the unique eBay-assigned identifier of the email campaign being retrieved.Use the getEmailCampaigns method to retrieve a list of email campaign IDs for a seller.}\n@returns(200) {audiences: [map], categoryId: str, categoryType: str, creationDate: str, emailCampaignId: str, emailCampaignStatus: str, emailCampaignType: str, itemIds: [str], itemSelectMode: str, marketplaceId: str, modificationDate: str, personalizedMessage: str, priceRange: map{currency: str, gte: num, lte: num}, promotionId: str, promotionSelectMode: str, scheduleDate: str, scheduleDateType: str, sentDate: str, sort: str, subject: str} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint PUT /email_campaign/{email_campaign_id}\n@desc This method lets users update an existing email campaign. Pass the emailCampaignId in the request URL and specify the changes to field values in the request payload.Note: You can only update the custom fields of an email campaign. Fixed values, such as the emailCampaignType, cannot be changed. For full specifications of fixed values for each email campaign type, see the createEmailCampaign method documentation.\n@required {email_campaign_id: str # This path parameter specifies the unique eBay assigned identifier for the email campaign being updated.Use the getEmailCampaigns method to retrieve a list of email campaign IDs for a seller., Content-Type: str # This header indicates the format of the request body provided by the client. Its value should be set to application/json.  For more information, refer to HTTP request headers.}\n@optional {audienceCodes: [str] # An array of audience codes for the audiences of the email campaign. At least one audience code is required. There is no limit to the number of audience codes that may be entered.Example:  if the current email campaign contains \"audienceCodes\": \"code1\", \"code2\" and the user wishes to add an audience code code3, set the audienceCodes value to \"audienceCodes\": \"code1\", \"code2\", \"code3\".To retrieve seller audiences, call getAudiences. Use the code values in the response to populate audienceCodes., categoryId: str # The unique identifier of either an eBay category or a store category.This field is used if a seller wants to apply an email campaign to a specific eBay category or store category. The categoryType determines whether the categoryId value is an eBay category or store category.Use the Taxonomy API to retrieve eBay categories. To retrieve seller store categories, use the getStore call. Use the categoryId value of the desired category from the results as the value in the request.itemSelectMode must be set to AUTO in order to use a category ID., categoryType: str # This field must be set when applying an email campaign to a specific eBay category or store category. The enumeration value used indicates which type of category the categoryId belongs to. For implementation help, refer to eBay API documentation, itemIds: [str] # An array of unique identifiers for the listings displayed in an email campaign. Used if the seller wishes to select the eBay listings in the email campaign rather than have eBay automatically select them.Call getSellerList to retrieve all seller listings. Each Item result contains an ItemID value. Use this value in itemIds to feature that listing.The maximum number of itemIds for the COUPON campaign type is 4, and for every other campaign type is 10.itemSelectMode must be set to MANUAL in order to use this field., itemSelectMode: str # Determines whether listings featured in an email campaign are selected by the seller or by eBay.If itemSelectMode is set to AUTO, eBay automatically choses listings based on values set for sort, categoryType, categoryId, and priceRange.If itemSelectMode is set to MANUAL, listings are set by the seller by populating the itemIds array.Note: itemSelectMode is always set to AUTO for WELCOME email campaigns. For implementation help, refer to eBay API documentation, personalizedMessage: str # The body of the email campaign. Accepts HTML and CSS. The maximum length is 1000 characters, priceRange: map{currency: str, gte: num, lte: num} # The price range., promotionId: str # The ID of the discount used for an email campaign if the emailCampaignType is set to COUPON, SALE_EVENT, or ORDER_DISCOUNT, and promotionSelectModeEnum is set to MANUAL.To find a discount, call getPromotions to retrieve a list of the seller's discounts. Use the promotionId from an individual PromotionDetail result for the request., promotionSelectModeEnum: str # The selection mode for the discount used. If set to AUTO, eBay will choose the discount to include in the email campaign. If set to MANUAL, the seller must specify the discount in the promotionId field.This field is required if the emailCampaignType is set to COUPON, SALE_EVENT, or ORDER_DISCOUNT. For implementation help, refer to eBay API documentation, scheduleDate: str # The date and time that the email campaign newsletter will be sent, given in UTC format. Example: 2023-05-20T03:13:35ZThis field should be used if the seller wishes to send the email campaign on a future date. If no scheduleDate is set, the email campaign will send once it is created or updated., sort: str # The sort rule is used to display the listings featured in the email campaign.Sort rules are only used if itemSelectMode is set to AUTO. If itemSelectMode is MANUAL, listings are displayed in the order in which they are listed in the itemIds array.The following sort rules are available:ENDING_FIRST displays listings by ending date, from soonest to latest.LOWEST_PRICED displays listings by price, from lowest to highest.HIGHEST_PRICED displays listings by price, from highest to lowest.NEWLY_LISTED displays listings by date listed, with the newest first.The default sort rule is NEWLY_LISTED. For implementation help, refer to eBay API documentation, subject: str # The email campaign subject. The maximum length is 70 characters.}\n@returns(200) {emailCampaignId: str, emailCampaignStatus: str} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint DELETE /email_campaign/{email_campaign_id}\n@desc This method deletes the email campaign specified by the email_campaign_id path parameter.Call getEmailCampaigns to retrieve all of the seller's email campaigns. Use the email_campaign_id of the desired email campaign in the response as the path parameter for this request.\n@required {email_campaign_id: str # This path parameter specifies the unique eBay-assigned identifier for the email campaign being deleted. You can retrieve the email campaign IDs for a specified seller using the getEmailCampaigns method.}\n@returns(200) {emailCampaignId: str} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint GET /email_campaign/audience\n@desc This method retrieves all available email newsletter audiences for the email campaign type specified by the emailCampaignType path parameter.Use the optional limit and offset path parameters to paginate the results and to control which records are returned, respectively.\n@required {emailCampaignType: str # The email campaign type to search against.See CampaignTypeEnum for the full list of available email campaign types and associated enum values.}\n@optional {limit: str # The maximum number of audience groups returned per page in the results set.Min value: 1Max value: 200Default value: 100, offset: str # The number of results to skip in a pagination query. This value cannot be less than 0.Default value: 0}\n@returns(200) {audiences: [map], href: str, limit: int(int32), next: str, offset: int(int32), prev: str, total: int(int32)} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint GET /email_campaign/{email_campaign_id}/email_preview\n@desc This method returns a preview of the email sent by the email campaign indicated by the email_campaign_id path parameter.Call getEmailCampaigns to obtain a list of email campaigns. Use the emailCampaignId value of the desired email campaign as the email_campaign_id path parameter value.If this call is executed successfully, the response returns a content field that contains the raw HTML code of the email campaign that can then be rendered anywhere.Note: The eBay listings in the email are sorted according to the email campaign sort criteria. The individual listings can change over time, as well.The result of the email preview call can be treated as a snapshot of the email campaign taken at the date and time of the renderDate value found in the results of the call.\n@required {email_campaign_id: str # This path parameter specifies the unique eBay assigned identifier for the email campaign associated with the preview being retrieved.Use the getEmailCampaigns method to retrieve a list of email campaign IDs for a seller.}\n@returns(200) {content: str, renderDate: str} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endpoint GET /email_campaign/report\n@desc This method returns the seller's email campaign performance report for a time period specified by the startDate and endDate path parameters. The maximum date range for a report retrieved by this method is one year. Note: The startDate and endDate must be given in UTC format, as shown in the following example: sell/marketing/v1/email_campaign/report?startDate=2022-11-01T19:09:02.768Z&endDate=2022-12-28T19:09:02.768ZThe email report returns a list of metrics, such as the number of times an email report has been opened and resulted in clicks.\n@required {endDate: str # The end date for the report, given in UTC format. The maximum date range for a report retrieved by this method is one year., startDate: str # The start date for the report, given in UTC format. The maximum date range for a report retrieved by this method is one year.}\n@returns(200) {clickCount: int(int32), openCount: int(int32), totalSales: map{currency: str, value: str}} # OK\n@errors {400: Bad Request, 409: Conflict, 500: Internal Server Error}\n\n@endgroup\n\n@end\n"}