Campaign Negative Keyword Record - Bulk

Defines a negative keyword assigned to a campaign that can be uploaded and downloaded in a bulk file.

In the bulk schema each of the negative keywords associated with a campaign are represented individually by their own row. For example if a campaign has two negative keywords, they are represented by two Campaign Negative Keyword records in the bulk file with Status set to Active.

Note

The Campaign Negative Keyword can be added and deleted, but cannot be updated.

You can download all Campaign Negative Keyword records in the account by including the DownloadEntity value of CampaignNegativeKeywords in the DownloadCampaignsByAccountIds or DownloadCampaignsByCampaignIds service request. Additionally the download request must include the EntityData scope. For more details about the Bulk service including best practices, see Bulk Download and Upload.

The following Bulk CSV example would add a new campaign negative keyword if a valid Parent Id value is provided.

Type,Status,Id,Parent Id,Campaign,Ad Group,Client Id,Modified Time,Keyword,Match Type,Name
Format Version,,,,,,,,,,6.0
Campaign Negative Keyword,Active,,-112,,,ClientIdGoesHere,,shoes,Exact,

If you are using the Bing Ads SDKs for .NET, Java, or Python, you can save time using the BulkServiceManager to upload and download the BulkCampaignNegativeKeyword object, instead of calling the service operations directly and writing custom code to parse each field in the bulk file.

var uploadEntities = new List<BulkEntity>();

// Map properties in the Bulk file to the BulkCampaignNegativeKeyword
var bulkCampaignNegativeKeyword = new BulkCampaignNegativeKeyword
{
    // 'Parent Id' column header in the Bulk file
    CampaignId = campaignIdKey,
    // 'Campaign' column header in the Bulk file
    CampaignName = null,
    // 'Client Id' column header in the Bulk file
    ClientId = "ClientIdGoesHere",

    // Map properties in the Bulk file to the 
    // NegativeKeyword object of the Campaign Management service.
    NegativeKeyword = new NegativeKeyword
    {
        // 'Id' column header in the Bulk file
        Id = null,
        // 'Match Type' column header in the Bulk file
        MatchType = MatchType.Exact,
        // 'Text' column header in the Bulk file
        Text = "shoes"
    },
                
    // 'Status' column header in the Bulk file
    Status = Status.Active
};

uploadEntities.Add(bulkCampaignNegativeKeyword);

var entityUploadParameters = new EntityUploadParameters
{
    Entities = uploadEntities,
    ResponseMode = ResponseMode.ErrorsAndResults,
    ResultFileDirectory = FileDirectory,
    ResultFileName = DownloadFileName,
    OverwriteResultFile = true,
};

var uploadResultEntities = (await BulkServiceManager.UploadEntitiesAsync(entityUploadParameters)).ToList();

For a Campaign Negative Keyword record, the following attribute fields are available in the Bulk File Schema.

Campaign

The name of the campaign that contains the negative keyword.

Add: Read-only and Required
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Read-only and Required

Note

For add and delete, you must specify either the Parent Id or Campaign field.

Client Id

Used to associate records in the bulk upload file with records in the results file. The value of this field is not used or stored by the server; it is simply copied from the uploaded record to the corresponding result record. It may be any valid string to up 100 in length.

Add: Optional
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Read-only

Id

The system-generated identifier of the negative keyword.

Add: Read-only
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Read-only and Required

Keyword

The negative keyword text.

The text can contain a maximum of 100 characters.

Add: Required
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Read-only

Match Type

The type of match to compare the negative keyword and the user's search term.

The supported match type values for a negative keyword are Phrase and Exact.

Add: Required
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Read-only

Modified Time

The date and time that the entity was last updated. The value is in Coordinated Universal Time (UTC).

Note

The date and time value reflects the date and time at the server, not the client. For information about the format of the date and time, see the dateTime entry in Primitive XML Data Types.

Add: Read-only
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Read-only

Parent Id

The system-generated identifier of the campaign that contains the negative keyword.

This bulk field maps to the Id field of the Campaign record.

Add: Read-only and Required. You must either specify an existing campaign identifier, or specify a negative identifier that is equal to the Id field of the parent Campaign record. This is recommended if you are adding new negative keywords to a new campaign in the same Bulk file. For more information, see Bulk File Schema Reference Keys.
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Read-only

Note

For add and delete, you must specify either the Parent Id or Campaign field.

Status

Represents the association status between the campaign and the negative keyword.

If the negative keyword is associated with the campaign, this field's value is Active.

Possible values are Active or Deleted.

Add: Optional. The default value is Active.
Update: Not applicable. A negative keyword can be added and deleted, but cannot be updated.
Delete: Required. The Status must be set to Deleted. To delete a specific negative keyword, you must upload the Status, Id, and Parent Id. To delete all negative keywords for the campaign, you only need to upload the Status and Parent Id in a single record. Then optionally you can add new negative keyword records to replace the deleted set.