POST/ad_campaign/{campaign_id}/bulk_update_ads_bid_by_inventory_reference
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.Input
Resource URI
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
Parameter | Type | Description |
---|---|---|
campaign_id | string | 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. 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.
Header | Type | Description |
---|---|---|
Content-Type | string | 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. 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 clipboardRequest fields
Input container/field | Type | Description |
---|---|---|
requests | array of CreateAdsByInventoryReferenceRequest | A list of inventory reference ID and inventory reference type pairs, and the bid percentage, which the call uses to create ads in bulk. Occurrence: Required |
requests.adGroupId | string | 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. Occurrence: Optional |
requests.bidPercentage | string | 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.
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 . Occurrence: Conditional |
requests.inventoryReferenceId | string | The unique identifier of a single-item listing or a multi-variation listing. Occurrence: Required |
requests.inventoryReferenceType | InventoryReferenceTypeEnum | This enumerated value indicates the type of item the inventoryReferenceId references. Occurrence: Required |
Output
HTTP response headers
This call has no response headers.
Response payload
Response fields
Output container/field | Type | Description |
---|---|---|
responses | array of UpdateAdsByInventoryReferenceResponse | A list of inventory references that were processed from the request. Occurrence: Always |
responses.ads | array of AdReference | A list of ad IDs and links to retrieve them. Occurrence: Conditional |
responses.ads.adId | string | A unique eBay-assigned ID for an ad. This ID is generated when an ad is created. Occurrence: Always |
responses.ads.href | string | The getAd URI of an ad. You can use this URI to retrieve the ad. Occurrence: Always |
responses.errors | array of ErrorDetailV3 | A container for all of the errors associated with the specified inventory reference ID. Occurrence: Conditional |
responses.errors.category | string | The category type for this error or warning. It takes an ErrorCategory object which can have one of three values:
Occurrence: Conditional |
responses.errors.domain | string | Name of the domain containing the service or application. Occurrence: Conditional |
responses.errors.errorId | integer | 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.inputRefIds | array 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.longMessage | string | An expanded version of message that should be around 100-200 characters long, but is not required to be such. Occurrence: Conditional |
responses.errors.message | string | 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.outputRefIds | array of string | Identifies specific response elements associated with the error, if any. Path format is the same as Occurrence: Conditional |
responses.errors.parameters | array of ErrorParameterV3 | This optional complex field type contains a list of one or more context-specific Occurrence: Conditional |
responses.errors.parameters.name | string | Name of the entity that threw the error. Occurrence: Conditional |
responses.errors.parameters.value | string | A description of the error. Occurrence: Conditional |
responses.errors.subdomain | string | Name of the domain's subsystem or subdivision. For example, checkout is a subdomain in the buying domain. Occurrence: Conditional |
responses.inventoryReferenceId | string | The reference ID associated with the ad. The reference ID could be a SKU number or Inventory Item Group, depending on value of Occurrence: Conditional |
responses.inventoryReferenceType | InventoryReferenceTypeEnum | The inventory reference type associated with the ad. The inventory reference type could be a SKU number or Inventory Item Group. Occurrence: Conditional |
responses.statusCode | integer | An HTTP status code that indicates whether or not the CPS ad was successfully updated. 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.
Status | Meaning |
---|---|
200 | Success |
207 | Multi Status |
400 | Bad Request |
404 | Not Found |
409 | Business error |
500 | Internal Server Error |
Error codes
For more on errors, plus the codes of other common errors, see Handling errors.
Code | Domain | Category | Meaning |
---|---|---|---|
35001 | API_MARKETING | APPLICATION | There was a problem with an eBay internal system or process. Contact eBay Developer Technical Support for assistance. |
35002 | API_MARKETING | APPLICATION | Internal error. Please wait a few minutes and try the call again. |
35007 | API_MARKETING | REQUEST | The 'bidPercentage' {bidPercentage} is not valid. The bid percentage should be a single precision value. Minimum value: {minBidPercent} , Maximum value:{maxBidPercent}. |
35012 | API_MARKETING | REQUEST | The inventory reference ID {inventoryReferenceId} is not valid. |
35018 | API_MARKETING | REQUEST | There are duplicate listing IDs or inventoryReference IDs in this request. You must remove the duplicate. |
35033 | API_MARKETING | REQUEST | At least one request is required for bulk requests. |
35035 | API_MARKETING | REQUEST | The campaign with campaign id {campaign_id} has ended. |
35040 | API_MARKETING | REQUEST | The inventory reference type is not valid. Valid values are: {inventoryReferenceTypeValues}. |
35045 | API_MARKETING | REQUEST | No campaign found for campaign id {campaign_id}. |
35061 | API_MARKETING | BUSINESS | The 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. |
35063 | API_MARKETING | BUSINESS | The campaign with 'campaign_id' {campaign_id} is ending soon. No update operations are allowed on this campaign until it ends. |
35064 | API_MARKETING | BUSINESS | This operation is only supported for key based campaigns. |
35071 | API_MARKETING | BUSINESS | You have exceeded the maximum number of listing IDs or inventory reference IDs. Only {maxSupportedNumber} IDs are supported per call. |
35072 | API_MARKETING | BUSINESS | InventoryReferenceId {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' |
35077 | API_MARKETING | BUSINESS | To use Promoted Listings, you need to improve your seller level to Top Rated or Above Standard and have enough recent sales activity. |
35078 | API_MARKETING | BUSINESS | To gain access to Promoted Listings, you must be in good standing with recent sales activity. |
35089 | API_MARKETING | BUSINESS | We are currently testing a premium ads product with a small invite-only group. We will share more information when we are ready to expand. |
35113 | API_MARKETING | BUSINESS | This operation is not supported when selected adRateStratergy is DYNAMIC for the campaign. |
35113 | API_MARKETING | BUSINESS | This operation is not supported when selected adRateStratergy is DYNAMIC for the campaign. |
36101 | API_MARKETING | REQUEST | This 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: Update Bid in Bulk Using Inventory Reference
This sample updates the bid for two ads using the seller inventory reference IDs for the campaign 1********4.
Input
The inputs for this sample are a list of bidPercentage and inventoryReferenceId fields. Specify the campaign to update by passing the campaign_Id as a URI parameter.
POSThttps://api.ebay.com/sell/marketing/v1/ad_campaign/1********4/bulk_update_ads_bid_by_inventory_reference
Output
The output is an array of statusCode, inventoryReferenceType, inventoryReferenceId, ads.adId and ads.href fields.