Skip to main content


This method replaces the name and the start and end dates of a campaign.

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 and set startDate to the current date (you cannot use a start date that is in the past), and set the endDate as desired. 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.


Resource URI (production)


URI parameters

campaign_idstringA unique eBay-assigned ID for an ad campaign that's generated when a campaign is created. Get a seller's campaign IDs by calling getCampaigns.

Occurrence: Required

HTTP request headers

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

In addition, this method requires you to include the Content-Type header and its value should be set to "application/json". See HTTP request headers- opens rest request components page for details.

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):

See OAuth access tokens for more information.

Request payload

Copy complete valid JSON to clipboard

Request fields

Input container/fieldTypeDescription

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 (<) or greater than (>) characters.

Max length: 80 characters.

Occurrence: Required


The new date and time the campaign ends, in UTC format (yyyy-MM-ddThh:mm:ssZ). If this field is blank (code>null), it indicates a campaign that has no end date. For display purposes, convert this time into the local time of the seller.

Occurrence: Optional


The new start date for the campaign, in UTC format (yyyy-MM-ddThh:mm:ssZ).

If the campaign is currently RUNNING or PAUSED, enter the current date in this field because you cannot submit past or future date for these campaigns.

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.

Occurrence: Required


HTTP response headers

This call has no response headers.

Response payload

This call has no payload.

Response fields

This call has no field definitions.

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.

204No content
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.

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.
35019API_MARKETINGREQUESTCampaign name is required for this call.
35020API_MARKETINGREQUESTThe campaign name cannot be more than {maxCampaignNameLength} characters.
35021API_MARKETINGREQUESTA campaign with the name of {campaignName} already exists. Please provide a different name.
35023API_MARKETINGREQUESTThe request contains invalid characters. {notAllowedCharacters} are not allowed.
35024API_MARKETINGREQUESTThe campaign start date {startDate} cannot be after the end date {endDate}.
35025API_MARKETINGREQUESTA campaign start date is required.
35026API_MARKETINGREQUESTA campaign start or end date {date} cannot be in the past.
35035API_MARKETINGREQUESTThe campaign with 'campaign_id' {campaign_id} has ended.
35045API_MARKETINGREQUESTNo campaign found for 'campaign_id' {campaign_id}.
35055API_MARKETINGBUSINESSThe start date cannot be modified for an active campaign.
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.
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.


This call has no warnings.


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: Updates the Name and End/Start Dates of a Campaign

This sample replaces the campaign name and its start and end dates. All these input fields are required even if the value of the field is not being changed.


The call payload contains the campaignName, startDate and endDate fields.



A successful call returns the HTTP status code 204 No content. This method has no response payload.