Disclaimer Record - Bulk
Defines a disclaimer that can be downloaded and uploaded in a bulk file.
You can associate a disclaimer with a campaign in the account. Use the Campaign Disclaimer records to manage disclaimer associations.
You can download all Disclaimer Ad Extension records in the account by including the DownloadEntity value of DisclaimerAdExtensions 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 Disclaimer to the account's shared library.
Type,Status,Id,Parent Id,Campaign,Client Id,Modified Time,Start Date,End Date,Ad Schedule,Use Searcher Time Zone,Disclaimer Layout,Name,Popup Text,Title,Final Url,Mobile Final Url
Format Version,,,,,,,,,,,6.0,,,,,,
Disclaimer Ad Extension,Active,-18,0,,,ClientIdGoesHere,,,12/31/2020,English,,(Monday[09:00-21:00]),FALSE,Amenities,ValueOne;ValueTwo;ValueThree,https://www.contoso.com/one; https://www.contoso.com/two; https://www.contoso.com/three,https://mobile.contoso.com/one; https://mobile.contoso.com/two; https://mobile.contoso.com/three
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 BulkDisclaimerAdExtension 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 BulkDisclaimerAdExtension
var bulkDisclaimerAdExtension = new BulkDisclaimerAdExtension
{
// 'Parent Id' column header in the Bulk file
AccountId = 0,
// 'Client Id' column header in the Bulk file
ClientId = "ClientIdGoesHere",
// Map properties in the Bulk file to the
// DisclaimerAdExtension object of the Campaign Management service.
DisclaimerAdExtension = new DisclaimerAdExtension
{
// 'DisclaimerLayout' column header in the Bulk file
DisclaimerLayout = "additionalLine",
// 'Id' column header in the Bulk file
Id = disclaimerAdExtensionIdKey,
// 'Final Url' column header in the Bulk file
FinalUrls = new[] {
// Each Url is delimited by a semicolon (;) in the Bulk file
"https://www.contoso.com/one",
"https://www.contoso.com/two",
"https://www.contoso.com/three"
},
// 'Mobile Final Url' column header in the Bulk file
FinalMobileUrls = new[] {
// Each Url is delimited by a semicolon (;) in the Bulk file
"https://mobile.contoso.com/one",
"https://mobile.contoso.com/two",
"https://mobile.contoso.com/three"
},
// 'Name' column header in the Bulk file
Name = "DisclaimerName",
// 'PopupText' column header in the Bulk file
PopupText = "DisclaimerPopupText",
// 'Title' column header in the Bulk file
Title = "Disclaimer info",
// 'Tracking Template' column header in the Bulk file
TrackingUrlTemplate = null,
// 'Custom Parameter' column header in the Bulk file
UrlCustomParameters = new CustomParameters
{
// Each custom parameter is delimited by a semicolon (;) in the Bulk file
Parameters = new[] {
new CustomParameter(){
Key = "promoCode",
Value = "PROMO1"
},
new CustomParameter(){
Key = "season",
Value = "summer"
},
}
},
// 'Ad Schedule' column header in the Bulk file
Scheduling = new Schedule
{
// Each day and time range is delimited by a semicolon (;) in the Bulk file
DayTimeRanges = new[]
{
// Within each day and time range the format is Day[StartHour:StartMinue-EndHour:EndMinute].
new DayTime
{
Day = Day.Monday,
StartHour = 9,
StartMinute = Minute.Zero,
EndHour = 21,
EndMinute = Minute.Zero,
},
},
// 'End Date' column header in the Bulk file
EndDate = new Microsoft.BingAds.V13.CampaignManagement.Date
{
Month = 12,
Day = 31,
Year = DateTime.UtcNow.Year + 1
},
// 'Start Date' column header in the Bulk file
StartDate = null,
// 'Use Searcher Time Zone' column header in the Bulk file
UseSearcherTimeZone = false,
},
// 'Status' column header in the Bulk file
Status = AdExtensionStatus.Active,
},
};
uploadEntities.Add(bulkDisclaimerAdExtension);
var entityUploadParameters = new EntityUploadParameters
{
Entities = uploadEntities,
ResponseMode = ResponseMode.ErrorsAndResults,
ResultFileDirectory = FileDirectory,
ResultFileName = DownloadFileName,
OverwriteResultFile = true,
};
var uploadResultEntities = (await BulkServiceManager.UploadEntitiesAsync(entityUploadParameters)).ToList();
For a Disclaimer record, the following attribute fields are available in the Bulk File Schema.
- Ad Schedule
- Client Id
- Disclaimer Layout
- Editorial Location
- Editorial Reason Code
- Editorial Status
- Editorial Term
- End Date
- Final Url
- Id
- Mobile Final Url
- Modified Time
- Name
- Parent Id
- Popup Text
- Publisher Countries
- Start Date
- Status
- Title
- Use Searcher Time Zone
- Version
Ad Schedule
The list of day and time ranges that you want the record to be displayed with your ads. Each day and time range includes the scheduled day of week, start/end hour, and start/end minute. Each day and time range is enclosed by left and right parentheses, and separated from other day and time ranges with a semicolon (;) delimiter. Within each day and time range the format is Day[StartHour:StartMinue-EndHour:EndMinute].
The possible values of StartHour range from 00 to 23, where 00 is equivalent to 12:00AM and 12 is 12:00PM.
The possible values of EndHour range from 00 to 24, where 00 is equivalent to 12:00AM and 12 is 12:00PM.
The possible values of StartMinute and EndMinute range from 00 to 60.
The following example demonstrates day and time ranges during weekdays from 9:00AM through 9:00PM: (Monday[09:00-21:00]);(Tuesday[09:00-21:00]);(Wednesday[09:00-21:00]);(Thursday[09:00-21:00]);(Friday[09:00-21:00])
Add: Optional. If you do not set this field, the record will be eligible for scheduling anytime during the calendar start and end dates.
Update: Optional. The individual day and time ranges cannot be updated. You can effectively update the day and time ranges by sending a new set that should replace the prior set. The Ad Schedule, End Date, Start Date, and Use Searcher Time Zone fields depend on each other and are updated together. If you leave all of these fields empty during update, then none of them are updated. If you include values for any of these fields, then the prior values for all of these fields are removed or replaced. To remove all prior schedule settings, set each of these fields to delete_value.
Delete: Read-only
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: Optional
Delete: Read-only
Disclaimer Layout
The layout of the disclaimer. Can either be additionalLine or popup.
Editorial Location
The component or property of the record that failed editorial review.
Add: Read-only
Update: Read-only
Delete: Read-only
Editorial Reason Code
A code that identifies the reason for the failure. For a list of possible reason codes, see Editorial Reason Codes.
Add: Read-only
Update: Read-only
Delete: Read-only
Editorial Status
The editorial status of the record.
Possible values are described in the table below.
Add: Read-only
Update: Read-only
Delete: Read-only
Editorial Term
The term that failed editorial review.
This field will not be set if a combination of terms caused the failure or if the failure was based on a policy violation.
Add: Read-only
Update: Read-only
Delete: Read-only
End Date
The record scheduled end date string formatted as MM/DD/YYYY.
The end date is inclusive. For example, if you set this field to 12/31/2020, the records will stop being shown at 11:59 PM on 12/31/2020.
Add: Optional. If you do not specify an end date, the record will continue to be delivered unless you pause the associated campaigns, ad groups, or ads.
Update: Optional. The end date can be shortened or extended, as long as the start date is either null or occurs before the new end date. If you set this field to the delete_value string, then you are effectively removing the end date. The Ad Schedule, End Date, Start Date, and Use Searcher Time Zone fields depend on each other and are updated together. If you leave all of these fields empty during update, then none of them are updated. If you include values for any of these fields, then the prior values for all of these fields are removed or replaced. To remove all prior schedule settings, set each of these fields to delete_value.
Delete: Read-only
Final Url
The landing page URL.
The following validation rules apply to Final URLs and Final Mobile URLs.
- The length of the URL is limited to 2,048 characters. The HTTP or HTTPS protocol string does count towards the 2,048 character limit.
- You may specify up to 10 list items for both Final Url and Mobile Final Url; however, only the first item in each list is used for delivery. The service allows up to 10 list items for potential forward compatibility.
- Each URL is delimited by a semicolon and space ("; ").
- Usage of '{' and '}' is only allowed to delineate tags, for example {lpurl}.
- Final URLs must each be a well-formed URL starting with either http:// or https://.
- If you specify Mobile Final Url, you must also specify Final Url.
Add: Required
Update: Optional. If no value is set for the update, this setting is not changed.
Delete: Read-only
Id
The system-generated identifier of the record.
Add: Optional. You must either leave this field empty, or specify a negative identifier. A negative identifier set for the record can then be referenced in the Id field of dependent record types such as and Campaign Disclaimer. This is recommended if you are adding new record and new dependent records in the same Bulk file. For more information, see Bulk File Schema Reference Keys.
Update: Read-only and Required
Delete: Read-only and Required
Mobile Final Url
The landing page URL for mobile devices.
The following validation rules apply to Final URLs and Final Mobile URLs.
- The length of the URL is limited to 2,048 characters. The HTTP or HTTPS protocol string does count towards the 2,048 character limit.
- You may specify up to 10 list items for both Final Url and Mobile Final Url; however, only the first item in each list is used for delivery. The service allows up to 10 list items for potential forward compatibility.
- Each URL is delimited by a semicolon and space ("; ").
- Usage of '{' and '}' is only allowed to delineate tags, for example {lpurl}.
- Final URLs must each be a well-formed URL starting with either http:// or https://.
- If you specify Mobile Final Url, you must also specify Final Url.
Add: Optional
Update: Optional. If no value is set for the update, this setting is not changed. If you set this field to the delete_value string, the prior setting is removed.
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: Read-only
Delete: Read-only
Name
The name of the disclaimer. This is only used for reporting to help identify the record.
Max. length: 35 characters.
Parent Id
The system-generated identifier of the account that contains the record.
This bulk field maps to the Id field of the Account record.
Add: Read-only
Update: Read-only
Delete: Read-only
Popup Text
Required text if the disclaimer is in popup layout.
Max. length: 500 characters.
Publisher Countries
The list of publisher countries or regions whose editorial guidelines do not allow the specified term.
In a bulk file, the list of publisher countries or regions are delimited with a semicolon (;).
Add: Read-only
Update: Read-only
Delete: Read-only
Start Date
The record scheduled start date string formatted as MM/DD/YYYY.
The start date is inclusive. For example, if you set StartDate to 5/5/2020, the records will start being shown at 12:00 AM on 5/5/2020.
Add: Optional. If you do not specify a start date, the record is immediately eligible to be scheduled.
Update: Optional. The start date can be shortened or extended, as long as the end date is either null or occurs after the new start date. If you set this field to the delete_value string, then you are effectively removing the start date and the record is immediately eligible to be scheduled. The Ad Schedule, End Date, Start Date, and Use Searcher Time Zone fields depend on each other and are updated together. If you leave all of these fields empty during update, then none of them are updated. If you include values for any of these fields, then the prior values for all of these fields are removed or replaced. To remove all prior schedule settings, set each of these fields to delete_value.
Delete: Read-only
Status
The status of the record.
Possible values are Active or Deleted.
Add: Optional. The default value is Active.
Update: Optional. If no value is set for the update, this setting is not changed.
Delete: Required. The Status must be set to Deleted.
Title
The title of the popup in popup layout.
Max. length: 75 characters.
Use Searcher Time Zone
Determines whether to use the account time zone or the time zone of the search user where the ads could be delivered.
Set this property to TRUE if you want the records to be shown in the search user's time zone, and otherwise set it to FALSE.
Add: Optional. If you do not specify this field or leave it empty, the default value of FALSE will be set and the account time zone will be used.
Update: Optional. If you set this field to the delete_value string, then you are effectively resetting to the default value of FALSE. The Ad Schedule, End Date, Start Date, and Use Searcher Time Zone fields depend on each other and are updated together. If you leave all of these fields empty during update, then none of them are updated. If you include values for any of these fields, then the prior values for all of these fields are removed or replaced. To remove all prior schedule settings, set each of these fields to delete_value.
Delete: Read-only
Version
The number of times the contents of the record has been updated. The version is set to 1 when you add the record and is incremented each time it's revised.
Add: Read-only
Update: Read-only
Delete: Read-only