Skip to main content

POST/ad_campaign/{campaign_id}/bulk_delete_ads_by_inventory_reference

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.

Input

Resource URI

POST https://api.ebay.com/sell/marketing/v1/ad_campaign/{campaign_id}/bulk_delete_ads_by_inventory_reference

This method is supported in Sandbox environment. To access the endpoint, just replace the api.ebay.com root URI with api.sandbox.ebay.com

URI parameters

ParameterTypeDescription
campaign_idstringThis 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.

Occurrence: Required

HTTP request headers

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

The table below shows additional HTTP request headers that are either required, conditionally required, or strongly recommended for this method. Other standard HTTP request headers- opens rest request components page (not in this table) can also be used, but they are optional.

HeaderTypeDescription
Content-TypestringThis 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.

Occurrence: Required

OAuth scope

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

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

See OAuth access tokens for more information.

Request payload

Copy complete valid JSON to clipboard

Request fields

Input container/fieldTypeDescription
requestsarray of DeleteAdsByInventoryReferenceRequest

A list of inventory referenceID and inventory reference type pairs that specify the set of ads to remove in bulk.

Occurrence: Required

requests.inventoryReferenceIdstring

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.

Occurrence: Required

requests.inventoryReferenceTypeInventoryReferenceTypeEnum

This enumerated value indicates the type of item the inventoryReferenceId references.

The item can be either an INVENTORY_ITEM or an INVENTORY_ITEM_GROUP.

Occurrence: Required

Output

HTTP response headers

This call has no response headers.

Response payload

Response fields

Output container/fieldTypeDescription
responsesarray of DeleteAdsByInventoryReferenceResponse

An array of the ads that were deleted by the bulkDeleteAdsByInventoryReference request, including information associated with each individual delete request.

Occurrence: Always

responses.adIdsarray of string

The unique identifier of the ad that was deleted, or the ad that the seller attempted to delete.Note:Although the field name is plural and it is an array, only one ad ID will be returned here since there can be only one ad per listing.

Occurrence: Required

responses.errorsarray of ErrorDetailV3

The container for the errors associated with the request.

Occurrence: Conditional

responses.errors.categorystring

The category type for this error or warning. It takes an ErrorCategory object which can have one of three values:

  • Application: Indicates an exception or error occurred in the application code or at runtime. Examples include catching an exception in a service's business logic, system failures, or request errors from a dependency.
  • Business: Used when your service or a dependent service refused to continue processing on the resource because of a business rule violation such as "Seller does not ship item to Antarctica" or "Buyer ineligible to purchase an alcoholic item". Business errors are not syntactical input errors.
  • Request: Used when there is anything wrong with the request, such as authentication, syntactical errors, rate limiting or missing headers, bad HTTP header values, and so on.

Occurrence: Conditional

responses.errors.domainstring

Name of the domain containing the service or application.

Occurrence: Conditional

responses.errors.errorIdinteger

A positive integer that uniquely identifies the specific error condition that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms.

Occurrence: Conditional

responses.errors.inputRefIdsarray of string

Identifies specific request elements associated with the error, if any. inputRefId's response is format specific. For JSON, use JSONPath notation.

Occurrence: Conditional

responses.errors.longMessagestring

An expanded version of message that should be around 100-200 characters long, but is not required to be such.

Occurrence: Conditional

responses.errors.messagestring

An end user and app developer friendly device agnostic message. It explains what the error or warning is, and how to fix it (in a general sense). Its value is at most 50 characters long. If applicable, the value is localized in the end user's requested locale.

Occurrence: Conditional

responses.errors.outputRefIdsarray of string

Identifies specific response elements associated with the error, if any. Path format is the same as inputRefId.

Occurrence: Conditional

responses.errors.parametersarray of ErrorParameterV3

This optional complex field type contains a list of one or more context-specific ErrorParameter objects, with each item in the list entry being a parameter (or input field name) that caused an error condition. Each ErrorParameter object consists of two fields, a name and a value.

Occurrence: Conditional

responses.errors.parameters.namestring

Name of the entity that threw the error.

Occurrence: Conditional

responses.errors.parameters.valuestring

A description of the error.

Occurrence: Conditional

responses.errors.subdomainstring

Name of the domain's subsystem or subdivision. For example, checkout is a subdomain in the buying domain.

Occurrence: Conditional

responses.inventoryReferenceIdstring

The inventory reference ID is a seller-defined SKU value for a single-item listing, or a seller-defined identifier for an inventory item group. Both of these values are defined when using the Inventory API, and an inventory item group is used to create a multiple-variation listing.

Occurrence: Always

responses.inventoryReferenceTypeInventoryReferenceTypeEnum

The enumeration value returned here indicates if the ad was for a single-variation listing or a multiple-variation listing.

Occurrence: Always

responses.statusCodeinteger

An HTTP status code indicating if the corresponding ad was successfully deleted or not. 200 Successful should be returned for successfully deleted ads. Note:A status code is returned for each ad that the seller deletes, or attempts to delete.

Occurrence: Always

HTTP status codes

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

StatusMeaning
200Success
207Multi Status
400Bad Request
404Not Found
409Business error
500Internal Server Error

Error codes

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

CodeDomainCategoryMeaning
35001API_MARKETINGAPPLICATIONThere was a problem with an eBay internal system or process. Contact eBay Developer Technical Support for assistance.
35002API_MARKETINGAPPLICATIONInternal error. Please wait a few minutes and try the call again.
35007API_MARKETINGREQUESTThe 'bidPercentage' {bidPercentage} is not valid. The bid percentage should be a single precision value. Minimum value: {minBidPercent} , Maximum value:{maxBidPercent}.
35012API_MARKETINGREQUESTThe inventory reference ID {inventoryReferenceId} is not valid.
35018API_MARKETINGREQUESTThere are duplicate listing IDs or inventoryReference IDs in this request. You must remove the duplicate.
35033API_MARKETINGREQUESTAt least one request is required for bulk requests.
35035API_MARKETINGREQUESTThe campaign with campaign id {campaign_id} has ended.
35040API_MARKETINGREQUESTThe inventory reference type is not valid. Valid values are: {inventoryReferenceTypeValues}.
35045API_MARKETINGREQUESTNo campaign found for campaign id {campaign_id}.
35061API_MARKETINGBUSINESSThe campaign with 'campaign_id' {campaign_id} is being synced to match the specifications of the campaign. Please wait a few minutes and try the call again.
35063API_MARKETINGBUSINESSThe campaign with 'campaign_id' {campaign_id} is ending soon. No update operations are allowed on this campaign until it ends.
35064API_MARKETINGBUSINESSThis operation is only supported for key based campaigns.
35071API_MARKETINGBUSINESSYou have exceeded the maximum number of listing IDs or inventory reference IDs. Only {maxSupportedNumber} IDs are supported per call.
35072API_MARKETINGBUSINESSInventoryReferenceId {inventoryReferenceId} is not eligible for Promoted Listings because it is a variation and variations can only be promoted using the parent ID to which it belongs. Replace this ID with the InventoryReferenceId of the parent and set 'inventoryReferenceType' to 'INVENTORY_ITEM_GROUP'
35077API_MARKETINGBUSINESSTo use Promoted Listings, you need to improve your seller level to Top Rated or Above Standard and have enough recent sales activity.
35078API_MARKETINGBUSINESSTo gain access to Promoted Listings, you must be in good standing with recent sales activity.
35089API_MARKETINGBUSINESSWe are currently testing a premium ads product with a small invite-only group. We will share more information when we are ready to expand.
36101API_MARKETINGREQUESTThis functionality is not supported for the CPC funding model.

Warnings

This call has no warnings.

Samples

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

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

Sample 1: Delete Ads in Bulk by Inventory References

This sample deletes two ads from the specified campaign using a list of seller inventory reference IDs.

Input

The inputs for this sample are a list of seller inventoryReferenceId and inventoryReferenceType pairs that you want to delete. Specify the campaign using the campaign_Id URI parameter.

POSThttps://api.ebay.com/sell/marketing/v1/ad_campaign/1********4/bulk_delete_ads_by_inventory_reference

Output

The output is an array of statusCode, inventoryReferenceType, and ads.adId fields.

Got thoughts? Click the feedback button – your insights help us improve!