@htdangkhoa/google-ads
Version:
Google Ads API client for Node.js
1,002 lines • 174 kB
JavaScript
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// versions:
// protoc-gen-ts_proto v1.181.2
// protoc v3.21.12
// source: google/ads/googleads/v21/resources/campaign.proto
/* eslint-disable */
import Long from "long";
import _m0 from "protobufjs/minimal.js";
import { Commission, FixedCpm, ManualCpa, ManualCpc, ManualCpm, ManualCpv, MaximizeConversions, MaximizeConversionValue, PercentCpc, TargetCpa, TargetCpm, TargetCpv, TargetImpressionShare, TargetRoas, TargetSpend, } from "../common/bidding.js";
import { CustomParameter } from "../common/custom_parameter.js";
import { FrequencyCapEntry } from "../common/frequency_cap.js";
import { RealTimeBiddingSetting } from "../common/real_time_bidding_setting.js";
import { TargetingSetting } from "../common/targeting_setting.js";
import { CampaignThirdPartyIntegrationPartners } from "../common/third_party_integration_partners.js";
import { adGroupTypeEnum_AdGroupTypeFromJSON, adGroupTypeEnum_AdGroupTypeToJSON, } from "../enums/ad_group_type.js";
import { adServingOptimizationStatusEnum_AdServingOptimizationStatusFromJSON, adServingOptimizationStatusEnum_AdServingOptimizationStatusToJSON, } from "../enums/ad_serving_optimization_status.js";
import { advertisingChannelSubTypeEnum_AdvertisingChannelSubTypeFromJSON, advertisingChannelSubTypeEnum_AdvertisingChannelSubTypeToJSON, } from "../enums/advertising_channel_sub_type.js";
import { advertisingChannelTypeEnum_AdvertisingChannelTypeFromJSON, advertisingChannelTypeEnum_AdvertisingChannelTypeToJSON, } from "../enums/advertising_channel_type.js";
import { appCampaignAppStoreEnum_AppCampaignAppStoreFromJSON, appCampaignAppStoreEnum_AppCampaignAppStoreToJSON, } from "../enums/app_campaign_app_store.js";
import { appCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalTypeFromJSON, appCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalTypeToJSON, } from "../enums/app_campaign_bidding_strategy_goal_type.js";
import { assetAutomationStatusEnum_AssetAutomationStatusFromJSON, assetAutomationStatusEnum_AssetAutomationStatusToJSON, } from "../enums/asset_automation_status.js";
import { assetAutomationTypeEnum_AssetAutomationTypeFromJSON, assetAutomationTypeEnum_AssetAutomationTypeToJSON, } from "../enums/asset_automation_type.js";
import { assetFieldTypeEnum_AssetFieldTypeFromJSON, assetFieldTypeEnum_AssetFieldTypeToJSON, } from "../enums/asset_field_type.js";
import { assetSetTypeEnum_AssetSetTypeFromJSON, assetSetTypeEnum_AssetSetTypeToJSON, } from "../enums/asset_set_type.js";
import { biddingStrategySystemStatusEnum_BiddingStrategySystemStatusFromJSON, biddingStrategySystemStatusEnum_BiddingStrategySystemStatusToJSON, } from "../enums/bidding_strategy_system_status.js";
import { biddingStrategyTypeEnum_BiddingStrategyTypeFromJSON, biddingStrategyTypeEnum_BiddingStrategyTypeToJSON, } from "../enums/bidding_strategy_type.js";
import { brandSafetySuitabilityEnum_BrandSafetySuitabilityFromJSON, brandSafetySuitabilityEnum_BrandSafetySuitabilityToJSON, } from "../enums/brand_safety_suitability.js";
import { campaignExperimentTypeEnum_CampaignExperimentTypeFromJSON, campaignExperimentTypeEnum_CampaignExperimentTypeToJSON, } from "../enums/campaign_experiment_type.js";
import { campaignKeywordMatchTypeEnum_CampaignKeywordMatchTypeFromJSON, campaignKeywordMatchTypeEnum_CampaignKeywordMatchTypeToJSON, } from "../enums/campaign_keyword_match_type.js";
import { campaignPrimaryStatusEnum_CampaignPrimaryStatusFromJSON, campaignPrimaryStatusEnum_CampaignPrimaryStatusToJSON, } from "../enums/campaign_primary_status.js";
import { campaignPrimaryStatusReasonEnum_CampaignPrimaryStatusReasonFromJSON, campaignPrimaryStatusReasonEnum_CampaignPrimaryStatusReasonToJSON, } from "../enums/campaign_primary_status_reason.js";
import { campaignServingStatusEnum_CampaignServingStatusFromJSON, campaignServingStatusEnum_CampaignServingStatusToJSON, } from "../enums/campaign_serving_status.js";
import { campaignStatusEnum_CampaignStatusFromJSON, campaignStatusEnum_CampaignStatusToJSON, } from "../enums/campaign_status.js";
import { euPoliticalAdvertisingStatusEnum_EuPoliticalAdvertisingStatusFromJSON, euPoliticalAdvertisingStatusEnum_EuPoliticalAdvertisingStatusToJSON, } from "../enums/eu_political_advertising_status.js";
import { listingTypeEnum_ListingTypeFromJSON, listingTypeEnum_ListingTypeToJSON, } from "../enums/listing_type.js";
import { locationSourceTypeEnum_LocationSourceTypeFromJSON, locationSourceTypeEnum_LocationSourceTypeToJSON, } from "../enums/location_source_type.js";
import { negativeGeoTargetTypeEnum_NegativeGeoTargetTypeFromJSON, negativeGeoTargetTypeEnum_NegativeGeoTargetTypeToJSON, } from "../enums/negative_geo_target_type.js";
import { nonSkippableMaxDurationEnum_NonSkippableMaxDurationFromJSON, nonSkippableMaxDurationEnum_NonSkippableMaxDurationToJSON, } from "../enums/non_skippable_max_duration.js";
import { nonSkippableMinDurationEnum_NonSkippableMinDurationFromJSON, nonSkippableMinDurationEnum_NonSkippableMinDurationToJSON, } from "../enums/non_skippable_min_duration.js";
import { optimizationGoalTypeEnum_OptimizationGoalTypeFromJSON, optimizationGoalTypeEnum_OptimizationGoalTypeToJSON, } from "../enums/optimization_goal_type.js";
import { paymentModeEnum_PaymentModeFromJSON, paymentModeEnum_PaymentModeToJSON, } from "../enums/payment_mode.js";
import { performanceMaxUpgradeStatusEnum_PerformanceMaxUpgradeStatusFromJSON, performanceMaxUpgradeStatusEnum_PerformanceMaxUpgradeStatusToJSON, } from "../enums/performance_max_upgrade_status.js";
import { positiveGeoTargetTypeEnum_PositiveGeoTargetTypeFromJSON, positiveGeoTargetTypeEnum_PositiveGeoTargetTypeToJSON, } from "../enums/positive_geo_target_type.js";
import { vanityPharmaDisplayUrlModeEnum_VanityPharmaDisplayUrlModeFromJSON, vanityPharmaDisplayUrlModeEnum_VanityPharmaDisplayUrlModeToJSON, } from "../enums/vanity_pharma_display_url_mode.js";
import { vanityPharmaTextEnum_VanityPharmaTextFromJSON, vanityPharmaTextEnum_VanityPharmaTextToJSON, } from "../enums/vanity_pharma_text.js";
import { videoAdFormatRestrictionEnum_VideoAdFormatRestrictionFromJSON, videoAdFormatRestrictionEnum_VideoAdFormatRestrictionToJSON, } from "../enums/video_ad_format_restriction.js";
import { videoAdSequenceInteractionTypeEnum_VideoAdSequenceInteractionTypeFromJSON, videoAdSequenceInteractionTypeEnum_VideoAdSequenceInteractionTypeToJSON, } from "../enums/video_ad_sequence_interaction_type.js";
import { videoAdSequenceMinimumDurationEnum_VideoAdSequenceMinimumDurationFromJSON, videoAdSequenceMinimumDurationEnum_VideoAdSequenceMinimumDurationToJSON, } from "../enums/video_ad_sequence_minimum_duration.js";
/**
* Enum describing whether AI Max must be enabled to serve and update
* text asset automation and brand list features newly bundled with AI Max.
*/
export var Campaign_AiMaxSetting_AiMaxBundlingRequired;
(function (Campaign_AiMaxSetting_AiMaxBundlingRequired) {
/** UNSPECIFIED - Not specified. */
Campaign_AiMaxSetting_AiMaxBundlingRequired[Campaign_AiMaxSetting_AiMaxBundlingRequired["UNSPECIFIED"] = 0] = "UNSPECIFIED";
/** UNKNOWN - Used for return value only. Represents value unknown in this version. */
Campaign_AiMaxSetting_AiMaxBundlingRequired[Campaign_AiMaxSetting_AiMaxBundlingRequired["UNKNOWN"] = 1] = "UNKNOWN";
/**
* NOT_REQUIRED - Search campaign is using text asset automation or brand
* list targeting, and AI Max is not required to be enabled to serve these
* features.
*/
Campaign_AiMaxSetting_AiMaxBundlingRequired[Campaign_AiMaxSetting_AiMaxBundlingRequired["NOT_REQUIRED"] = 2] = "NOT_REQUIRED";
/**
* REQUIRED - AI Max is required to be enabled for this search campaign to serve
* existing text asset automation and brand list targeting, or to add new
* text asset automation and brand list targeting settings.
*/
Campaign_AiMaxSetting_AiMaxBundlingRequired[Campaign_AiMaxSetting_AiMaxBundlingRequired["REQUIRED"] = 3] = "REQUIRED";
Campaign_AiMaxSetting_AiMaxBundlingRequired[Campaign_AiMaxSetting_AiMaxBundlingRequired["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(Campaign_AiMaxSetting_AiMaxBundlingRequired || (Campaign_AiMaxSetting_AiMaxBundlingRequired = {}));
export function campaign_AiMaxSetting_AiMaxBundlingRequiredFromJSON(object) {
switch (object) {
case 0:
case "UNSPECIFIED":
return Campaign_AiMaxSetting_AiMaxBundlingRequired.UNSPECIFIED;
case 1:
case "UNKNOWN":
return Campaign_AiMaxSetting_AiMaxBundlingRequired.UNKNOWN;
case 2:
case "NOT_REQUIRED":
return Campaign_AiMaxSetting_AiMaxBundlingRequired.NOT_REQUIRED;
case 3:
case "REQUIRED":
return Campaign_AiMaxSetting_AiMaxBundlingRequired.REQUIRED;
case -1:
case "UNRECOGNIZED":
default:
return Campaign_AiMaxSetting_AiMaxBundlingRequired.UNRECOGNIZED;
}
}
export function campaign_AiMaxSetting_AiMaxBundlingRequiredToJSON(object) {
switch (object) {
case Campaign_AiMaxSetting_AiMaxBundlingRequired.UNSPECIFIED:
return "UNSPECIFIED";
case Campaign_AiMaxSetting_AiMaxBundlingRequired.UNKNOWN:
return "UNKNOWN";
case Campaign_AiMaxSetting_AiMaxBundlingRequired.NOT_REQUIRED:
return "NOT_REQUIRED";
case Campaign_AiMaxSetting_AiMaxBundlingRequired.REQUIRED:
return "REQUIRED";
case Campaign_AiMaxSetting_AiMaxBundlingRequired.UNRECOGNIZED:
default:
return "UNRECOGNIZED";
}
}
function createBaseCampaign() {
return {
resource_name: "",
id: undefined,
name: undefined,
primary_status: 0,
primary_status_reasons: [],
status: 0,
serving_status: 0,
bidding_strategy_system_status: 0,
ad_serving_optimization_status: 0,
advertising_channel_type: 0,
advertising_channel_sub_type: 0,
tracking_url_template: undefined,
url_custom_parameters: [],
local_services_campaign_settings: undefined,
travel_campaign_settings: undefined,
demand_gen_campaign_settings: undefined,
video_campaign_settings: undefined,
pmax_campaign_settings: undefined,
real_time_bidding_setting: undefined,
network_settings: undefined,
hotel_setting: undefined,
dynamic_search_ads_setting: undefined,
shopping_setting: undefined,
targeting_setting: undefined,
audience_setting: undefined,
geo_target_type_setting: undefined,
local_campaign_setting: undefined,
app_campaign_setting: undefined,
labels: [],
experiment_type: 0,
base_campaign: undefined,
campaign_budget: undefined,
bidding_strategy_type: 0,
accessible_bidding_strategy: "",
start_date: undefined,
campaign_group: undefined,
end_date: undefined,
final_url_suffix: undefined,
frequency_caps: [],
video_brand_safety_suitability: 0,
vanity_pharma: undefined,
selective_optimization: undefined,
optimization_goal_setting: undefined,
tracking_setting: undefined,
payment_mode: 0,
optimization_score: undefined,
excluded_parent_asset_field_types: [],
excluded_parent_asset_set_types: [],
url_expansion_opt_out: undefined,
performance_max_upgrade: undefined,
hotel_property_asset_set: undefined,
listing_type: undefined,
asset_automation_settings: [],
keyword_match_type: 0,
brand_guidelines_enabled: undefined,
brand_guidelines: undefined,
third_party_integration_partners: undefined,
ai_max_setting: undefined,
contains_eu_political_advertising: 0,
bidding_strategy: undefined,
commission: undefined,
manual_cpa: undefined,
manual_cpc: undefined,
manual_cpm: undefined,
manual_cpv: undefined,
maximize_conversions: undefined,
maximize_conversion_value: undefined,
target_cpa: undefined,
target_impression_share: undefined,
target_roas: undefined,
target_spend: undefined,
percent_cpc: undefined,
target_cpm: undefined,
fixed_cpm: undefined,
target_cpv: undefined,
};
}
export const Campaign = {
encode(message, writer = _m0.Writer.create()) {
if (message.resource_name !== undefined && message.resource_name !== "") {
writer.uint32(10).string(message.resource_name);
}
if (message.id !== undefined) {
writer.uint32(472).int64(message.id);
}
if (message.name !== undefined) {
writer.uint32(466).string(message.name);
}
if (message.primary_status !== undefined && message.primary_status !== 0) {
writer.uint32(648).int32(message.primary_status);
}
if (message.primary_status_reasons !== undefined && message.primary_status_reasons.length !== 0) {
writer.uint32(658).fork();
for (const v of message.primary_status_reasons) {
writer.int32(v);
}
writer.ldelim();
}
if (message.status !== undefined && message.status !== 0) {
writer.uint32(40).int32(message.status);
}
if (message.serving_status !== undefined && message.serving_status !== 0) {
writer.uint32(168).int32(message.serving_status);
}
if (message.bidding_strategy_system_status !== undefined && message.bidding_strategy_system_status !== 0) {
writer.uint32(624).int32(message.bidding_strategy_system_status);
}
if (message.ad_serving_optimization_status !== undefined && message.ad_serving_optimization_status !== 0) {
writer.uint32(64).int32(message.ad_serving_optimization_status);
}
if (message.advertising_channel_type !== undefined && message.advertising_channel_type !== 0) {
writer.uint32(72).int32(message.advertising_channel_type);
}
if (message.advertising_channel_sub_type !== undefined && message.advertising_channel_sub_type !== 0) {
writer.uint32(80).int32(message.advertising_channel_sub_type);
}
if (message.tracking_url_template !== undefined) {
writer.uint32(482).string(message.tracking_url_template);
}
if (message.url_custom_parameters !== undefined && message.url_custom_parameters.length !== 0) {
for (const v of message.url_custom_parameters) {
CustomParameter.encode(v, writer.uint32(98).fork()).ldelim();
}
}
if (message.local_services_campaign_settings !== undefined) {
Campaign_LocalServicesCampaignSettings.encode(message.local_services_campaign_settings, writer.uint32(602).fork())
.ldelim();
}
if (message.travel_campaign_settings !== undefined) {
Campaign_TravelCampaignSettings.encode(message.travel_campaign_settings, writer.uint32(682).fork()).ldelim();
}
if (message.demand_gen_campaign_settings !== undefined) {
Campaign_DemandGenCampaignSettings.encode(message.demand_gen_campaign_settings, writer.uint32(730).fork())
.ldelim();
}
if (message.video_campaign_settings !== undefined) {
Campaign_VideoCampaignSettings.encode(message.video_campaign_settings, writer.uint32(754).fork()).ldelim();
}
if (message.pmax_campaign_settings !== undefined) {
Campaign_PmaxCampaignSettings.encode(message.pmax_campaign_settings, writer.uint32(778).fork()).ldelim();
}
if (message.real_time_bidding_setting !== undefined) {
RealTimeBiddingSetting.encode(message.real_time_bidding_setting, writer.uint32(314).fork()).ldelim();
}
if (message.network_settings !== undefined) {
Campaign_NetworkSettings.encode(message.network_settings, writer.uint32(114).fork()).ldelim();
}
if (message.hotel_setting !== undefined) {
Campaign_HotelSettingInfo.encode(message.hotel_setting, writer.uint32(258).fork()).ldelim();
}
if (message.dynamic_search_ads_setting !== undefined) {
Campaign_DynamicSearchAdsSetting.encode(message.dynamic_search_ads_setting, writer.uint32(266).fork()).ldelim();
}
if (message.shopping_setting !== undefined) {
Campaign_ShoppingSetting.encode(message.shopping_setting, writer.uint32(290).fork()).ldelim();
}
if (message.targeting_setting !== undefined) {
TargetingSetting.encode(message.targeting_setting, writer.uint32(346).fork()).ldelim();
}
if (message.audience_setting !== undefined) {
Campaign_AudienceSetting.encode(message.audience_setting, writer.uint32(586).fork()).ldelim();
}
if (message.geo_target_type_setting !== undefined) {
Campaign_GeoTargetTypeSetting.encode(message.geo_target_type_setting, writer.uint32(378).fork()).ldelim();
}
if (message.local_campaign_setting !== undefined) {
Campaign_LocalCampaignSetting.encode(message.local_campaign_setting, writer.uint32(402).fork()).ldelim();
}
if (message.app_campaign_setting !== undefined) {
Campaign_AppCampaignSetting.encode(message.app_campaign_setting, writer.uint32(410).fork()).ldelim();
}
if (message.labels !== undefined && message.labels.length !== 0) {
for (const v of message.labels) {
writer.uint32(490).string(v);
}
}
if (message.experiment_type !== undefined && message.experiment_type !== 0) {
writer.uint32(136).int32(message.experiment_type);
}
if (message.base_campaign !== undefined) {
writer.uint32(450).string(message.base_campaign);
}
if (message.campaign_budget !== undefined) {
writer.uint32(498).string(message.campaign_budget);
}
if (message.bidding_strategy_type !== undefined && message.bidding_strategy_type !== 0) {
writer.uint32(176).int32(message.bidding_strategy_type);
}
if (message.accessible_bidding_strategy !== undefined && message.accessible_bidding_strategy !== "") {
writer.uint32(570).string(message.accessible_bidding_strategy);
}
if (message.start_date !== undefined) {
writer.uint32(506).string(message.start_date);
}
if (message.campaign_group !== undefined) {
writer.uint32(610).string(message.campaign_group);
}
if (message.end_date !== undefined) {
writer.uint32(514).string(message.end_date);
}
if (message.final_url_suffix !== undefined) {
writer.uint32(522).string(message.final_url_suffix);
}
if (message.frequency_caps !== undefined && message.frequency_caps.length !== 0) {
for (const v of message.frequency_caps) {
FrequencyCapEntry.encode(v, writer.uint32(322).fork()).ldelim();
}
}
if (message.video_brand_safety_suitability !== undefined && message.video_brand_safety_suitability !== 0) {
writer.uint32(336).int32(message.video_brand_safety_suitability);
}
if (message.vanity_pharma !== undefined) {
Campaign_VanityPharma.encode(message.vanity_pharma, writer.uint32(354).fork()).ldelim();
}
if (message.selective_optimization !== undefined) {
Campaign_SelectiveOptimization.encode(message.selective_optimization, writer.uint32(362).fork()).ldelim();
}
if (message.optimization_goal_setting !== undefined) {
Campaign_OptimizationGoalSetting.encode(message.optimization_goal_setting, writer.uint32(434).fork()).ldelim();
}
if (message.tracking_setting !== undefined) {
Campaign_TrackingSetting.encode(message.tracking_setting, writer.uint32(370).fork()).ldelim();
}
if (message.payment_mode !== undefined && message.payment_mode !== 0) {
writer.uint32(416).int32(message.payment_mode);
}
if (message.optimization_score !== undefined) {
writer.uint32(529).double(message.optimization_score);
}
if (message.excluded_parent_asset_field_types !== undefined && message.excluded_parent_asset_field_types.length !== 0) {
writer.uint32(554).fork();
for (const v of message.excluded_parent_asset_field_types) {
writer.int32(v);
}
writer.ldelim();
}
if (message.excluded_parent_asset_set_types !== undefined && message.excluded_parent_asset_set_types.length !== 0) {
writer.uint32(642).fork();
for (const v of message.excluded_parent_asset_set_types) {
writer.int32(v);
}
writer.ldelim();
}
if (message.url_expansion_opt_out !== undefined) {
writer.uint32(576).bool(message.url_expansion_opt_out);
}
if (message.performance_max_upgrade !== undefined) {
Campaign_PerformanceMaxUpgrade.encode(message.performance_max_upgrade, writer.uint32(618).fork()).ldelim();
}
if (message.hotel_property_asset_set !== undefined) {
writer.uint32(666).string(message.hotel_property_asset_set);
}
if (message.listing_type !== undefined) {
writer.uint32(688).int32(message.listing_type);
}
if (message.asset_automation_settings !== undefined && message.asset_automation_settings.length !== 0) {
for (const v of message.asset_automation_settings) {
Campaign_AssetAutomationSetting.encode(v, writer.uint32(706).fork()).ldelim();
}
}
if (message.keyword_match_type !== undefined && message.keyword_match_type !== 0) {
writer.uint32(720).int32(message.keyword_match_type);
}
if (message.brand_guidelines_enabled !== undefined) {
writer.uint32(768).bool(message.brand_guidelines_enabled);
}
if (message.brand_guidelines !== undefined) {
Campaign_BrandGuidelines.encode(message.brand_guidelines, writer.uint32(786).fork()).ldelim();
}
if (message.third_party_integration_partners !== undefined) {
CampaignThirdPartyIntegrationPartners.encode(message.third_party_integration_partners, writer.uint32(802).fork())
.ldelim();
}
if (message.ai_max_setting !== undefined) {
Campaign_AiMaxSetting.encode(message.ai_max_setting, writer.uint32(810).fork()).ldelim();
}
if (message.contains_eu_political_advertising !== undefined && message.contains_eu_political_advertising !== 0) {
writer.uint32(816).int32(message.contains_eu_political_advertising);
}
if (message.bidding_strategy !== undefined) {
writer.uint32(538).string(message.bidding_strategy);
}
if (message.commission !== undefined) {
Commission.encode(message.commission, writer.uint32(394).fork()).ldelim();
}
if (message.manual_cpa !== undefined) {
ManualCpa.encode(message.manual_cpa, writer.uint32(594).fork()).ldelim();
}
if (message.manual_cpc !== undefined) {
ManualCpc.encode(message.manual_cpc, writer.uint32(194).fork()).ldelim();
}
if (message.manual_cpm !== undefined) {
ManualCpm.encode(message.manual_cpm, writer.uint32(202).fork()).ldelim();
}
if (message.manual_cpv !== undefined) {
ManualCpv.encode(message.manual_cpv, writer.uint32(298).fork()).ldelim();
}
if (message.maximize_conversions !== undefined) {
MaximizeConversions.encode(message.maximize_conversions, writer.uint32(242).fork()).ldelim();
}
if (message.maximize_conversion_value !== undefined) {
MaximizeConversionValue.encode(message.maximize_conversion_value, writer.uint32(250).fork()).ldelim();
}
if (message.target_cpa !== undefined) {
TargetCpa.encode(message.target_cpa, writer.uint32(210).fork()).ldelim();
}
if (message.target_impression_share !== undefined) {
TargetImpressionShare.encode(message.target_impression_share, writer.uint32(386).fork()).ldelim();
}
if (message.target_roas !== undefined) {
TargetRoas.encode(message.target_roas, writer.uint32(234).fork()).ldelim();
}
if (message.target_spend !== undefined) {
TargetSpend.encode(message.target_spend, writer.uint32(218).fork()).ldelim();
}
if (message.percent_cpc !== undefined) {
PercentCpc.encode(message.percent_cpc, writer.uint32(274).fork()).ldelim();
}
if (message.target_cpm !== undefined) {
TargetCpm.encode(message.target_cpm, writer.uint32(330).fork()).ldelim();
}
if (message.fixed_cpm !== undefined) {
FixedCpm.encode(message.fixed_cpm, writer.uint32(738).fork()).ldelim();
}
if (message.target_cpv !== undefined) {
TargetCpv.encode(message.target_cpv, writer.uint32(746).fork()).ldelim();
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseCampaign();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
if (tag !== 10) {
break;
}
message.resource_name = reader.string();
continue;
case 59:
if (tag !== 472) {
break;
}
message.id = longToString(reader.int64());
continue;
case 58:
if (tag !== 466) {
break;
}
message.name = reader.string();
continue;
case 81:
if (tag !== 648) {
break;
}
message.primary_status = reader.int32();
continue;
case 82:
if (tag === 656) {
message.primary_status_reasons.push(reader.int32());
continue;
}
if (tag === 658) {
const end2 = reader.uint32() + reader.pos;
while (reader.pos < end2) {
message.primary_status_reasons.push(reader.int32());
}
continue;
}
break;
case 5:
if (tag !== 40) {
break;
}
message.status = reader.int32();
continue;
case 21:
if (tag !== 168) {
break;
}
message.serving_status = reader.int32();
continue;
case 78:
if (tag !== 624) {
break;
}
message.bidding_strategy_system_status = reader.int32();
continue;
case 8:
if (tag !== 64) {
break;
}
message.ad_serving_optimization_status = reader.int32();
continue;
case 9:
if (tag !== 72) {
break;
}
message.advertising_channel_type = reader.int32();
continue;
case 10:
if (tag !== 80) {
break;
}
message.advertising_channel_sub_type = reader.int32();
continue;
case 60:
if (tag !== 482) {
break;
}
message.tracking_url_template = reader.string();
continue;
case 12:
if (tag !== 98) {
break;
}
message.url_custom_parameters.push(CustomParameter.decode(reader, reader.uint32()));
continue;
case 75:
if (tag !== 602) {
break;
}
message.local_services_campaign_settings = Campaign_LocalServicesCampaignSettings.decode(reader, reader.uint32());
continue;
case 85:
if (tag !== 682) {
break;
}
message.travel_campaign_settings = Campaign_TravelCampaignSettings.decode(reader, reader.uint32());
continue;
case 91:
if (tag !== 730) {
break;
}
message.demand_gen_campaign_settings = Campaign_DemandGenCampaignSettings.decode(reader, reader.uint32());
continue;
case 94:
if (tag !== 754) {
break;
}
message.video_campaign_settings = Campaign_VideoCampaignSettings.decode(reader, reader.uint32());
continue;
case 97:
if (tag !== 778) {
break;
}
message.pmax_campaign_settings = Campaign_PmaxCampaignSettings.decode(reader, reader.uint32());
continue;
case 39:
if (tag !== 314) {
break;
}
message.real_time_bidding_setting = RealTimeBiddingSetting.decode(reader, reader.uint32());
continue;
case 14:
if (tag !== 114) {
break;
}
message.network_settings = Campaign_NetworkSettings.decode(reader, reader.uint32());
continue;
case 32:
if (tag !== 258) {
break;
}
message.hotel_setting = Campaign_HotelSettingInfo.decode(reader, reader.uint32());
continue;
case 33:
if (tag !== 266) {
break;
}
message.dynamic_search_ads_setting = Campaign_DynamicSearchAdsSetting.decode(reader, reader.uint32());
continue;
case 36:
if (tag !== 290) {
break;
}
message.shopping_setting = Campaign_ShoppingSetting.decode(reader, reader.uint32());
continue;
case 43:
if (tag !== 346) {
break;
}
message.targeting_setting = TargetingSetting.decode(reader, reader.uint32());
continue;
case 73:
if (tag !== 586) {
break;
}
message.audience_setting = Campaign_AudienceSetting.decode(reader, reader.uint32());
continue;
case 47:
if (tag !== 378) {
break;
}
message.geo_target_type_setting = Campaign_GeoTargetTypeSetting.decode(reader, reader.uint32());
continue;
case 50:
if (tag !== 402) {
break;
}
message.local_campaign_setting = Campaign_LocalCampaignSetting.decode(reader, reader.uint32());
continue;
case 51:
if (tag !== 410) {
break;
}
message.app_campaign_setting = Campaign_AppCampaignSetting.decode(reader, reader.uint32());
continue;
case 61:
if (tag !== 490) {
break;
}
message.labels.push(reader.string());
continue;
case 17:
if (tag !== 136) {
break;
}
message.experiment_type = reader.int32();
continue;
case 56:
if (tag !== 450) {
break;
}
message.base_campaign = reader.string();
continue;
case 62:
if (tag !== 498) {
break;
}
message.campaign_budget = reader.string();
continue;
case 22:
if (tag !== 176) {
break;
}
message.bidding_strategy_type = reader.int32();
continue;
case 71:
if (tag !== 570) {
break;
}
message.accessible_bidding_strategy = reader.string();
continue;
case 63:
if (tag !== 506) {
break;
}
message.start_date = reader.string();
continue;
case 76:
if (tag !== 610) {
break;
}
message.campaign_group = reader.string();
continue;
case 64:
if (tag !== 514) {
break;
}
message.end_date = reader.string();
continue;
case 65:
if (tag !== 522) {
break;
}
message.final_url_suffix = reader.string();
continue;
case 40:
if (tag !== 322) {
break;
}
message.frequency_caps.push(FrequencyCapEntry.decode(reader, reader.uint32()));
continue;
case 42:
if (tag !== 336) {
break;
}
message.video_brand_safety_suitability = reader.int32();
continue;
case 44:
if (tag !== 354) {
break;
}
message.vanity_pharma = Campaign_VanityPharma.decode(reader, reader.uint32());
continue;
case 45:
if (tag !== 362) {
break;
}
message.selective_optimization = Campaign_SelectiveOptimization.decode(reader, reader.uint32());
continue;
case 54:
if (tag !== 434) {
break;
}
message.optimization_goal_setting = Campaign_OptimizationGoalSetting.decode(reader, reader.uint32());
continue;
case 46:
if (tag !== 370) {
break;
}
message.tracking_setting = Campaign_TrackingSetting.decode(reader, reader.uint32());
continue;
case 52:
if (tag !== 416) {
break;
}
message.payment_mode = reader.int32();
continue;
case 66:
if (tag !== 529) {
break;
}
message.optimization_score = reader.double();
continue;
case 69:
if (tag === 552) {
message.excluded_parent_asset_field_types.push(reader.int32());
continue;
}
if (tag === 554) {
const end2 = reader.uint32() + reader.pos;
while (reader.pos < end2) {
message.excluded_parent_asset_field_types.push(reader.int32());
}
continue;
}
break;
case 80:
if (tag === 640) {
message.excluded_parent_asset_set_types.push(reader.int32());
continue;
}
if (tag === 642) {
const end2 = reader.uint32() + reader.pos;
while (reader.pos < end2) {
message.excluded_parent_asset_set_types.push(reader.int32());
}
continue;
}
break;
case 72:
if (tag !== 576) {
break;
}
message.url_expansion_opt_out = reader.bool();
continue;
case 77:
if (tag !== 618) {
break;
}
message.performance_max_upgrade = Campaign_PerformanceMaxUpgrade.decode(reader, reader.uint32());
continue;
case 83:
if (tag !== 666) {
break;
}
message.hotel_property_asset_set = reader.string();
continue;
case 86:
if (tag !== 688) {
break;
}
message.listing_type = reader.int32();
continue;
case 88:
if (tag !== 706) {
break;
}
message.asset_automation_settings.push(Campaign_AssetAutomationSetting.decode(reader, reader.uint32()));
continue;
case 90:
if (tag !== 720) {
break;
}
message.keyword_match_type = reader.int32();
continue;
case 96:
if (tag !== 768) {
break;
}
message.brand_guidelines_enabled = reader.bool();
continue;
case 98:
if (tag !== 786) {
break;
}
message.brand_guidelines = Campaign_BrandGuidelines.decode(reader, reader.uint32());
continue;
case 100:
if (tag !== 802) {
break;
}
message.third_party_integration_partners = CampaignThirdPartyIntegrationPartners.decode(reader, reader.uint32());
continue;
case 101:
if (tag !== 810) {
break;
}
message.ai_max_setting = Campaign_AiMaxSetting.decode(reader, reader.uint32());
continue;
case 102:
if (tag !== 816) {
break;
}
message.contains_eu_political_advertising = reader.int32();
continue;
case 67:
if (tag !== 538) {
break;
}
message.bidding_strategy = reader.string();
continue;
case 49:
if (tag !== 394) {
break;
}
message.commission = Commission.decode(reader, reader.uint32());
continue;
case 74:
if (tag !== 594) {
break;
}
message.manual_cpa = ManualCpa.decode(reader, reader.uint32());
continue;
case 24:
if (tag !== 194) {
break;
}
message.manual_cpc = ManualCpc.decode(reader, reader.uint32());
continue;
case 25:
if (tag !== 202) {
break;
}
message.manual_cpm = ManualCpm.decode(reader, reader.uint32());
continue;
case 37:
if (tag !== 298) {
break;
}
message.manual_cpv = ManualCpv.decode(reader, reader.uint32());
continue;
case 30:
if (tag !== 242) {
break;
}
message.maximize_conversions = MaximizeConversions.decode(reader, reader.uint32());
continue;
case 31:
if (tag !== 250) {
break;
}
message.maximize_conversion_value = MaximizeConversionValue.decode(reader, reader.uint32());
continue;
case 26:
if (tag !== 210) {
break;
}
message.target_cpa = TargetCpa.decode(reader, reader.uint32());
continue;
case 48:
if (tag !== 386) {
break;
}
message.target_impression_share = TargetImpressionShare.decode(reader, reader.uint32());
continue;
case 29:
if (tag !== 234) {
break;
}
message.target_roas = TargetRoas.decode(reader, reader.uint32());
continue;
case 27:
if (tag !== 218) {
break;
}
message.target_spend = TargetSpend.decode(reader, reader.uint32());
continue;
case 34:
if (tag !== 274) {
break;
}
message.percent_cpc = PercentCpc.decode(reader, reader.uint32());
continue;
case 41:
if (tag !== 330) {
break;
}
message.target_cpm = TargetCpm.decode(reader, reader.uint32());
continue;
case 92:
if (tag !== 738) {
break;
}
message.fixed_cpm = FixedCpm.decode(reader, reader.uint32());
continue;
case 93:
if (tag !== 746) {
break;
}
message.target_cpv = TargetCpv.decode(reader, reader.uint32());
continue;
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skipType(tag & 7);
}
return message;
},
fromJSON(object) {
return {
resource_name: isSet(object.resource_name) ? globalThis.String(object.resource_name) : "",
id: isSet(object.id) ? globalThis.String(object.id) : undefined,
name: isSet(object.name) ? globalThis.String(object.name) : undefined,
primary_status: isSet(object.primary_status)
? campaignPrimaryStatusEnum_CampaignPrimaryStatusFromJSON(object.primary_status)
: 0,
primary_status_reasons: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.primary_status_reasons)
? object.primary_status_reasons.map((e) => campaignPrimaryStatusReasonEnum_CampaignPrimaryStatusReasonFromJSON(e))
: [],
status: isSet(object.status) ? campaignStatusEnum_CampaignStatusFromJSON(object.status) : 0,
serving_status: isSet(object.serving_status)
? campaignServingStatusEnum_CampaignServingStatusFromJSON(object.serving_status)
: 0,
bidding_strategy_system_status: isSet(object.bidding_strategy_system_status)
? biddingStrategySystemStatusEnum_BiddingStrategySystemStatusFromJSON(object.bidding_strategy_system_status)
: 0,
ad_serving_optimization_status: isSet(object.ad_serving_optimization_status)
? adServingOptimizationStatusEnum_AdServingOptimizationStatusFromJSON(object.ad_serving_optimization_status)
: 0,
advertising_channel_type: isSet(object.advertising_channel_type)
? advertisingChannelTypeEnum_AdvertisingChannelTypeFromJSON(object.advertising_channel_type)
: 0,
advertising_channel_sub_type: isSet(object.advertising_channel_sub_type)
? advertisingChannelSubTypeEnum_AdvertisingChannelSubTypeFromJSON(object.advertising_channel_sub_type)
: 0,
tracking_url_template: isSet(object.tracking_url_template)
? globalThis.String(object.tracking_url_template)
: undefined,
url_custom_parameters: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.url_custom_parameters)
? object.url_custom_parameters.map((e) => CustomParameter.fromJSON(e))
: [],
local_services_campaign_settings: isSet(object.local_services_campaign_settings)
? Campaign_LocalServicesCampaignSettings.fromJSON(object.local_services_campaign_settings)
: undefined,
travel_campaign_settings: isSet(object.travel_campaign_settings)
? Campaign_TravelCampaignSettings.fromJSON(object.travel_campaign_settings)
: undefined,
demand_gen_campaign_settings: isSet(object.demand_gen_campaign_settings)
? Campaign_DemandGenCampaignSettings.fromJSON(object.demand_gen_campaign_settings)
: undefined,
video_campaign_settings: isSet(object.video_campaign_settings)
? Campaign_VideoCampaignSettings.fromJSON(object.video_campaign_settings)
: undefined,
pmax_campaign_settings: isSet(object.pmax_campaign_settings)
? Campaign_PmaxCampaignSettings.fromJSON(object.pmax_campaign_settings)
: undefined,
real_time_bidding_setting: isSet(object.real_time_bidding_setting)
? RealTimeBiddingSetting.fromJSON(object.real_time_bidding_setting)
: undefined,
network_settings: isSet(object.network_settings)
? Campaign_NetworkSettings.fromJSON(object.network_settings)
: undefined,
hotel_setting: isSet(object.hotel_setting) ? Campaign_HotelSettingInfo.fromJSON(object.hotel_setting) : undefined,
dynamic_search_ads_setting: isSet(object.dynamic_search_ads_setting)
? Campaign_DynamicSearchAdsSetting.fromJSON(object.dynamic_search_ads_setting)
: undefined,
shopping_setting: isSet(object.shopping_setting)
? Campaign_ShoppingSetting.fromJSON(object.shopping_setting)
: undefined,
targeting_setting: isSet(object.targeting_setting)
? TargetingSetting.fromJSON(object.targeting_setting)
: undefined,
audience_setting: isSet(object.audience_setting)
? Campaign_AudienceSetting.fromJSON(object.audience_setting)
: undefined,
geo_target_type_setting: isSet(object.geo_target_type_setting)
? Campaign_GeoTargetTypeSetting.fromJSON(object.geo_target_type_setting)
: undefined,
local_campaign_setting: isSet(object.local_campaign_setting)
? Campaign_LocalCampaignSetting.fromJSON(object.local_campaign_setting)
: undefined,
app_campaign_setting: isSet(object.app_campaign_setting)
? Campaign_AppCampaignSetting.fromJSON(object.app_campaign_setting)
: undefined,
labels: globalThis.Array.isArray(object === null || object === void 0 ? void 0 : object.labels)
? object.labels.map((e) => globalThis.String(e