Skip to main content


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.


Resource URI


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

URI parameters

This method has no URI parameters.

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

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.

Occurrence: Conditional


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.

Occurrence: Conditional


A field that defines the match type for the negative keyword.

Note: Broad matching of negative keywords is not currently supported.
Valid Values:


Occurrence: Required


The negative keyword text.

Occurrence: Required


HTTP response headers

See HTTP response headers for details.

LocationThe location response header contains the URI of the newly created negative keyword. The URI includes the newly created negativeKeywordId, which you can use to reference the negative keyword.

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.

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.
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.
36210API_MARKETINGREQUESTNo ad group found for ad group id {ad_group_id}.
36219API_MARKETINGREQUESTThe ad group with ad group id {ad_group_id} has been archived.
36323API_MARKETINGREQUEST'negativeKeywordText' {negativeKeywordText} and 'negativeKeywordMatchType' {negativeKeywordMatchType} already exists for this Campaign.
36330API_MARKETINGREQUESTThe provided negative keyword match type is not supported. Valid values are: {negativeKeywordMatchTypeValues}.
36331API_MARKETINGREQUEST'negativeKeywordText' {negativeKeywordText} and 'negativeKeywordMatchType' {negativeKeywordMatchType} already exists for this Ad Group.
36332API_MARKETINGREQUEST'negativeKeywordText' {negativeKeywordText} cannot be more than {maxNegativeKeywordTextLength} characters.
36333API_MARKETINGREQUEST'negativeKeywordText' cannot be null or empty
36334API_MARKETINGREQUEST'negativeKeywordText' contains invalid characters {invalidCharacters}
36335API_MARKETINGREQUESTYou have exceeded the maximum number of negative keyword for an ad group. Only {maxSupportedNegativeKeywordNumber} Ids are supported per ad group.
36336API_MARKETINGREQUEST'negativeKeywordText' {negativeKeywordText} cannot have total number of words more than {maxWordsInNegativeKeyword} words.
36345API_MARKETINGREQUEST'campaignId' and 'adGroupId' are required.
36346API_MARKETINGREQUESTYou have exceeded the maximum number of negative keyword for a campaign. Only {maxSupportedNegativeKeywordNumberCampaign} Ids are supported per campaign.


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: Create a Negative Keyword

This example creates a negative keyword for a Promoted Listings priority strategy ad campaign.


The inputs for this sample are the campaignId, adGroupId, negativeKeywordText, and negativeKeywordMatchType, all passed in the request body.



A successful call returns the HTTP status code 201 Created. In addition, the response includes a location response header that contains the URI for the newly-created negative keyword.

This method has no response payload.