Skip to main content


Note: This method is only available for select partners who have been approved for the eBay Promoted Listings Advanced (PLA) program. For information about how to request access to this program, refer to Promoted Listings Advanced Access Requests in the Promoted Listings Playbook. To determine if a seller qualifies for PLA, 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.


Resource URI


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

URI parameters

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

Occurrence: Required

ad_group_idstringThis path parameter specifies the unique identifier of the ad group that is being updated.

Use the getAdGroups method to retrieve ad group 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.

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

See OAuth access tokens for more information.

Request payload

Copy complete valid JSON to clipboard

Request fields

Input container/fieldTypeDescription

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:


Occurrence: Optional


A bid amount that applies to all of the keywords in an ad group that do not have individual bids.

Occurrence: Optional


The base currency applied to the value field to establish a monetary amount.

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

Occurrence: Conditional


The monetary amount in the specified currency.

Required in the amount type.

Occurrence: Conditional


The updated name for the specified ad group.

Occurrence: Optional


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.
35035API_MARKETINGREQUESTThe campaign with campaign id {campaign_id} has ended.
35045API_MARKETINGREQUESTNo campaign found for campaign id {campaign_id}.
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.
35129API_MARKETINGBUSINESSThis method is not supported for campaigns with smart targeting type.
36201API_MARKETINGREQUESTAn ad group with name {name} already exists for this campaign.
36202API_MARKETINGREQUESTThe ad group name cannot be more than {maxAdGroupNameLength} characters.
36203API_MARKETINGREQUESTThe 'defaultBid' value {defaultBidValue} is not valid. The default bid value should be a double precision value.
36204API_MARKETINGREQUESTThe 'defaultBid' currency {defaultBidCurrency} is not valid or missing.
36205API_MARKETINGREQUESTThe 'defaultBid' value {defaultBidValue} is below floor value {bidFloorValue}.
36206API_MARKETINGREQUESTThe 'defaultBid' value {defaultBidValue} is above max value {bidMaxValue}.
36207API_MARKETINGREQUESTThe 'defaultBid' value {defaultBidValue} is more than daily budget.
36210API_MARKETINGREQUESTNo ad group found for ad group id {ad_group_id}.
36212API_MARKETINGREQUESTThe 'defaultBid' currency {defaultBidCurrency} should be the same as the daily budget.
36213API_MARKETINGBUSINESSThe campaign funding model should be CPC. Please check funding model for provided campaign id.
36216API_MARKETINGREQUESTThe 'defaultBid' value {defaultBidValue} is not valid or missing.
36217API_MARKETINGREQUESTThe Ad Group name contains invalid characters. {notAllowedCharacters} are not allowed.
36224API_MARKETINGREQUESTThe 'defaultBid' or 'adGroupStatus' or 'name' value is required for this call.
36225API_MARKETINGREQUEST'ad_group_statuses' value is invalid. It should be either ACTIVE, PAUSED or ARCHIVED.


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: Update an Ad Group

This example updates the details for an existing ad group.


The inputs for this sample are the campaign_id and the ad_group_id of the Promoted Listings Advanced (PLA) ad campaign and the ad group for which the details shall be updated, as well as the updated ad group details.



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