No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 

1090 líneas
45 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: google/ads/googleads/v0/resources/ad_group_criterion.proto
  3. package resources // import "google.golang.org/genproto/googleapis/ads/googleads/v0/resources"
  4. import proto "github.com/golang/protobuf/proto"
  5. import fmt "fmt"
  6. import math "math"
  7. import wrappers "github.com/golang/protobuf/ptypes/wrappers"
  8. import common "google.golang.org/genproto/googleapis/ads/googleads/v0/common"
  9. import enums "google.golang.org/genproto/googleapis/ads/googleads/v0/enums"
  10. // Reference imports to suppress errors if they are not otherwise used.
  11. var _ = proto.Marshal
  12. var _ = fmt.Errorf
  13. var _ = math.Inf
  14. // This is a compile-time assertion to ensure that this generated file
  15. // is compatible with the proto package it is being compiled against.
  16. // A compilation error at this line likely means your copy of the
  17. // proto package needs to be updated.
  18. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  19. // An ad group criterion.
  20. type AdGroupCriterion struct {
  21. // The resource name of the ad group criterion.
  22. // Ad group criterion resource names have the form:
  23. //
  24. // `customers/{customer_id}/adGroupCriteria/{ad_group_id}_{criterion_id}`
  25. ResourceName string `protobuf:"bytes,1,opt,name=resource_name,json=resourceName,proto3" json:"resource_name,omitempty"`
  26. // The ID of the criterion.
  27. //
  28. // This field is ignored for mutates.
  29. CriterionId *wrappers.Int64Value `protobuf:"bytes,26,opt,name=criterion_id,json=criterionId,proto3" json:"criterion_id,omitempty"`
  30. // The status of the criterion.
  31. Status enums.AdGroupCriterionStatusEnum_AdGroupCriterionStatus `protobuf:"varint,3,opt,name=status,proto3,enum=google.ads.googleads.v0.enums.AdGroupCriterionStatusEnum_AdGroupCriterionStatus" json:"status,omitempty"`
  32. // Information regarding the quality of the criterion.
  33. QualityInfo *AdGroupCriterion_QualityInfo `protobuf:"bytes,4,opt,name=quality_info,json=qualityInfo,proto3" json:"quality_info,omitempty"`
  34. // The ad group to which the criterion belongs.
  35. AdGroup *wrappers.StringValue `protobuf:"bytes,5,opt,name=ad_group,json=adGroup,proto3" json:"ad_group,omitempty"`
  36. // The type of the criterion.
  37. Type enums.CriterionTypeEnum_CriterionType `protobuf:"varint,25,opt,name=type,proto3,enum=google.ads.googleads.v0.enums.CriterionTypeEnum_CriterionType" json:"type,omitempty"`
  38. // Whether to target (`false`) or exclude (`true`) the criterion.
  39. //
  40. // This field is immutable. To switch a criterion from positive to negative,
  41. // remove then re-add it.
  42. Negative *wrappers.BoolValue `protobuf:"bytes,31,opt,name=negative,proto3" json:"negative,omitempty"`
  43. // The modifier for the bid when the criterion matches. The modifier must be
  44. // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers.
  45. BidModifier *wrappers.DoubleValue `protobuf:"bytes,44,opt,name=bid_modifier,json=bidModifier,proto3" json:"bid_modifier,omitempty"`
  46. // The CPC (cost-per-click) bid.
  47. CpcBidMicros *wrappers.Int64Value `protobuf:"bytes,16,opt,name=cpc_bid_micros,json=cpcBidMicros,proto3" json:"cpc_bid_micros,omitempty"`
  48. // The CPM (cost-per-thousand viewable impressions) bid.
  49. CpmBidMicros *wrappers.Int64Value `protobuf:"bytes,17,opt,name=cpm_bid_micros,json=cpmBidMicros,proto3" json:"cpm_bid_micros,omitempty"`
  50. // The CPV (cost-per-view) bid.
  51. CpvBidMicros *wrappers.Int64Value `protobuf:"bytes,24,opt,name=cpv_bid_micros,json=cpvBidMicros,proto3" json:"cpv_bid_micros,omitempty"`
  52. // The CPC bid amount, expressed as a fraction of the advertised price
  53. // for some good or service. The valid range for the fraction is [0,1) and the
  54. // value stored here is 1,000,000 * [fraction].
  55. PercentCpcBidMicros *wrappers.Int64Value `protobuf:"bytes,33,opt,name=percent_cpc_bid_micros,json=percentCpcBidMicros,proto3" json:"percent_cpc_bid_micros,omitempty"`
  56. // The effective CPC (cost-per-click) bid.
  57. EffectiveCpcBidMicros *wrappers.Int64Value `protobuf:"bytes,18,opt,name=effective_cpc_bid_micros,json=effectiveCpcBidMicros,proto3" json:"effective_cpc_bid_micros,omitempty"`
  58. // The effective CPM (cost-per-thousand viewable impressions) bid.
  59. EffectiveCpmBidMicros *wrappers.Int64Value `protobuf:"bytes,19,opt,name=effective_cpm_bid_micros,json=effectiveCpmBidMicros,proto3" json:"effective_cpm_bid_micros,omitempty"`
  60. // The effective CPV (cost-per-view) bid.
  61. EffectiveCpvBidMicros *wrappers.Int64Value `protobuf:"bytes,20,opt,name=effective_cpv_bid_micros,json=effectiveCpvBidMicros,proto3" json:"effective_cpv_bid_micros,omitempty"`
  62. // The effective Percent CPC bid amount.
  63. EffectivePercentCpcBidMicros *wrappers.Int64Value `protobuf:"bytes,34,opt,name=effective_percent_cpc_bid_micros,json=effectivePercentCpcBidMicros,proto3" json:"effective_percent_cpc_bid_micros,omitempty"`
  64. // Source of the effective CPC bid.
  65. EffectiveCpcBidSource enums.BiddingSourceEnum_BiddingSource `protobuf:"varint,21,opt,name=effective_cpc_bid_source,json=effectiveCpcBidSource,proto3,enum=google.ads.googleads.v0.enums.BiddingSourceEnum_BiddingSource" json:"effective_cpc_bid_source,omitempty"`
  66. // Source of the effective CPM bid.
  67. EffectiveCpmBidSource enums.BiddingSourceEnum_BiddingSource `protobuf:"varint,22,opt,name=effective_cpm_bid_source,json=effectiveCpmBidSource,proto3,enum=google.ads.googleads.v0.enums.BiddingSourceEnum_BiddingSource" json:"effective_cpm_bid_source,omitempty"`
  68. // Source of the effective CPV bid.
  69. EffectiveCpvBidSource enums.BiddingSourceEnum_BiddingSource `protobuf:"varint,23,opt,name=effective_cpv_bid_source,json=effectiveCpvBidSource,proto3,enum=google.ads.googleads.v0.enums.BiddingSourceEnum_BiddingSource" json:"effective_cpv_bid_source,omitempty"`
  70. // Source of the effective Percent CPC bid.
  71. EffectivePercentCpcBidSource enums.BiddingSourceEnum_BiddingSource `protobuf:"varint,35,opt,name=effective_percent_cpc_bid_source,json=effectivePercentCpcBidSource,proto3,enum=google.ads.googleads.v0.enums.BiddingSourceEnum_BiddingSource" json:"effective_percent_cpc_bid_source,omitempty"`
  72. // Estimates for criterion bids at various positions.
  73. PositionEstimates *AdGroupCriterion_PositionEstimates `protobuf:"bytes,10,opt,name=position_estimates,json=positionEstimates,proto3" json:"position_estimates,omitempty"`
  74. // The list of possible final URLs after all cross-domain redirects for the
  75. // ad.
  76. FinalUrls []*wrappers.StringValue `protobuf:"bytes,11,rep,name=final_urls,json=finalUrls,proto3" json:"final_urls,omitempty"`
  77. // The URL template for constructing a tracking URL.
  78. TrackingUrlTemplate *wrappers.StringValue `protobuf:"bytes,13,opt,name=tracking_url_template,json=trackingUrlTemplate,proto3" json:"tracking_url_template,omitempty"`
  79. // The list of mappings used to substitute custom parameter tags in a
  80. // `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
  81. UrlCustomParameters []*common.CustomParameter `protobuf:"bytes,14,rep,name=url_custom_parameters,json=urlCustomParameters,proto3" json:"url_custom_parameters,omitempty"`
  82. // The ad group criterion.
  83. //
  84. // Exactly one must be set.
  85. //
  86. // Types that are valid to be assigned to Criterion:
  87. // *AdGroupCriterion_Keyword
  88. // *AdGroupCriterion_Placement
  89. // *AdGroupCriterion_MobileAppCategory
  90. // *AdGroupCriterion_ListingGroup
  91. // *AdGroupCriterion_AgeRange
  92. // *AdGroupCriterion_Gender
  93. // *AdGroupCriterion_IncomeRange
  94. // *AdGroupCriterion_ParentalStatus
  95. // *AdGroupCriterion_UserList
  96. // *AdGroupCriterion_YoutubeVideo
  97. // *AdGroupCriterion_YoutubeChannel
  98. // *AdGroupCriterion_Topic
  99. // *AdGroupCriterion_UserInterest
  100. // *AdGroupCriterion_Webpage
  101. // *AdGroupCriterion_AppPaymentModel
  102. Criterion isAdGroupCriterion_Criterion `protobuf_oneof:"criterion"`
  103. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  104. XXX_unrecognized []byte `json:"-"`
  105. XXX_sizecache int32 `json:"-"`
  106. }
  107. func (m *AdGroupCriterion) Reset() { *m = AdGroupCriterion{} }
  108. func (m *AdGroupCriterion) String() string { return proto.CompactTextString(m) }
  109. func (*AdGroupCriterion) ProtoMessage() {}
  110. func (*AdGroupCriterion) Descriptor() ([]byte, []int) {
  111. return fileDescriptor_ad_group_criterion_c91904ece975ad88, []int{0}
  112. }
  113. func (m *AdGroupCriterion) XXX_Unmarshal(b []byte) error {
  114. return xxx_messageInfo_AdGroupCriterion.Unmarshal(m, b)
  115. }
  116. func (m *AdGroupCriterion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  117. return xxx_messageInfo_AdGroupCriterion.Marshal(b, m, deterministic)
  118. }
  119. func (dst *AdGroupCriterion) XXX_Merge(src proto.Message) {
  120. xxx_messageInfo_AdGroupCriterion.Merge(dst, src)
  121. }
  122. func (m *AdGroupCriterion) XXX_Size() int {
  123. return xxx_messageInfo_AdGroupCriterion.Size(m)
  124. }
  125. func (m *AdGroupCriterion) XXX_DiscardUnknown() {
  126. xxx_messageInfo_AdGroupCriterion.DiscardUnknown(m)
  127. }
  128. var xxx_messageInfo_AdGroupCriterion proto.InternalMessageInfo
  129. func (m *AdGroupCriterion) GetResourceName() string {
  130. if m != nil {
  131. return m.ResourceName
  132. }
  133. return ""
  134. }
  135. func (m *AdGroupCriterion) GetCriterionId() *wrappers.Int64Value {
  136. if m != nil {
  137. return m.CriterionId
  138. }
  139. return nil
  140. }
  141. func (m *AdGroupCriterion) GetStatus() enums.AdGroupCriterionStatusEnum_AdGroupCriterionStatus {
  142. if m != nil {
  143. return m.Status
  144. }
  145. return enums.AdGroupCriterionStatusEnum_UNSPECIFIED
  146. }
  147. func (m *AdGroupCriterion) GetQualityInfo() *AdGroupCriterion_QualityInfo {
  148. if m != nil {
  149. return m.QualityInfo
  150. }
  151. return nil
  152. }
  153. func (m *AdGroupCriterion) GetAdGroup() *wrappers.StringValue {
  154. if m != nil {
  155. return m.AdGroup
  156. }
  157. return nil
  158. }
  159. func (m *AdGroupCriterion) GetType() enums.CriterionTypeEnum_CriterionType {
  160. if m != nil {
  161. return m.Type
  162. }
  163. return enums.CriterionTypeEnum_UNSPECIFIED
  164. }
  165. func (m *AdGroupCriterion) GetNegative() *wrappers.BoolValue {
  166. if m != nil {
  167. return m.Negative
  168. }
  169. return nil
  170. }
  171. func (m *AdGroupCriterion) GetBidModifier() *wrappers.DoubleValue {
  172. if m != nil {
  173. return m.BidModifier
  174. }
  175. return nil
  176. }
  177. func (m *AdGroupCriterion) GetCpcBidMicros() *wrappers.Int64Value {
  178. if m != nil {
  179. return m.CpcBidMicros
  180. }
  181. return nil
  182. }
  183. func (m *AdGroupCriterion) GetCpmBidMicros() *wrappers.Int64Value {
  184. if m != nil {
  185. return m.CpmBidMicros
  186. }
  187. return nil
  188. }
  189. func (m *AdGroupCriterion) GetCpvBidMicros() *wrappers.Int64Value {
  190. if m != nil {
  191. return m.CpvBidMicros
  192. }
  193. return nil
  194. }
  195. func (m *AdGroupCriterion) GetPercentCpcBidMicros() *wrappers.Int64Value {
  196. if m != nil {
  197. return m.PercentCpcBidMicros
  198. }
  199. return nil
  200. }
  201. func (m *AdGroupCriterion) GetEffectiveCpcBidMicros() *wrappers.Int64Value {
  202. if m != nil {
  203. return m.EffectiveCpcBidMicros
  204. }
  205. return nil
  206. }
  207. func (m *AdGroupCriterion) GetEffectiveCpmBidMicros() *wrappers.Int64Value {
  208. if m != nil {
  209. return m.EffectiveCpmBidMicros
  210. }
  211. return nil
  212. }
  213. func (m *AdGroupCriterion) GetEffectiveCpvBidMicros() *wrappers.Int64Value {
  214. if m != nil {
  215. return m.EffectiveCpvBidMicros
  216. }
  217. return nil
  218. }
  219. func (m *AdGroupCriterion) GetEffectivePercentCpcBidMicros() *wrappers.Int64Value {
  220. if m != nil {
  221. return m.EffectivePercentCpcBidMicros
  222. }
  223. return nil
  224. }
  225. func (m *AdGroupCriterion) GetEffectiveCpcBidSource() enums.BiddingSourceEnum_BiddingSource {
  226. if m != nil {
  227. return m.EffectiveCpcBidSource
  228. }
  229. return enums.BiddingSourceEnum_UNSPECIFIED
  230. }
  231. func (m *AdGroupCriterion) GetEffectiveCpmBidSource() enums.BiddingSourceEnum_BiddingSource {
  232. if m != nil {
  233. return m.EffectiveCpmBidSource
  234. }
  235. return enums.BiddingSourceEnum_UNSPECIFIED
  236. }
  237. func (m *AdGroupCriterion) GetEffectiveCpvBidSource() enums.BiddingSourceEnum_BiddingSource {
  238. if m != nil {
  239. return m.EffectiveCpvBidSource
  240. }
  241. return enums.BiddingSourceEnum_UNSPECIFIED
  242. }
  243. func (m *AdGroupCriterion) GetEffectivePercentCpcBidSource() enums.BiddingSourceEnum_BiddingSource {
  244. if m != nil {
  245. return m.EffectivePercentCpcBidSource
  246. }
  247. return enums.BiddingSourceEnum_UNSPECIFIED
  248. }
  249. func (m *AdGroupCriterion) GetPositionEstimates() *AdGroupCriterion_PositionEstimates {
  250. if m != nil {
  251. return m.PositionEstimates
  252. }
  253. return nil
  254. }
  255. func (m *AdGroupCriterion) GetFinalUrls() []*wrappers.StringValue {
  256. if m != nil {
  257. return m.FinalUrls
  258. }
  259. return nil
  260. }
  261. func (m *AdGroupCriterion) GetTrackingUrlTemplate() *wrappers.StringValue {
  262. if m != nil {
  263. return m.TrackingUrlTemplate
  264. }
  265. return nil
  266. }
  267. func (m *AdGroupCriterion) GetUrlCustomParameters() []*common.CustomParameter {
  268. if m != nil {
  269. return m.UrlCustomParameters
  270. }
  271. return nil
  272. }
  273. type isAdGroupCriterion_Criterion interface {
  274. isAdGroupCriterion_Criterion()
  275. }
  276. type AdGroupCriterion_Keyword struct {
  277. Keyword *common.KeywordInfo `protobuf:"bytes,27,opt,name=keyword,proto3,oneof"`
  278. }
  279. type AdGroupCriterion_Placement struct {
  280. Placement *common.PlacementInfo `protobuf:"bytes,28,opt,name=placement,proto3,oneof"`
  281. }
  282. type AdGroupCriterion_MobileAppCategory struct {
  283. MobileAppCategory *common.MobileAppCategoryInfo `protobuf:"bytes,29,opt,name=mobile_app_category,json=mobileAppCategory,proto3,oneof"`
  284. }
  285. type AdGroupCriterion_ListingGroup struct {
  286. ListingGroup *common.ListingGroupInfo `protobuf:"bytes,32,opt,name=listing_group,json=listingGroup,proto3,oneof"`
  287. }
  288. type AdGroupCriterion_AgeRange struct {
  289. AgeRange *common.AgeRangeInfo `protobuf:"bytes,36,opt,name=age_range,json=ageRange,proto3,oneof"`
  290. }
  291. type AdGroupCriterion_Gender struct {
  292. Gender *common.GenderInfo `protobuf:"bytes,37,opt,name=gender,proto3,oneof"`
  293. }
  294. type AdGroupCriterion_IncomeRange struct {
  295. IncomeRange *common.IncomeRangeInfo `protobuf:"bytes,38,opt,name=income_range,json=incomeRange,proto3,oneof"`
  296. }
  297. type AdGroupCriterion_ParentalStatus struct {
  298. ParentalStatus *common.ParentalStatusInfo `protobuf:"bytes,39,opt,name=parental_status,json=parentalStatus,proto3,oneof"`
  299. }
  300. type AdGroupCriterion_UserList struct {
  301. UserList *common.UserListInfo `protobuf:"bytes,42,opt,name=user_list,json=userList,proto3,oneof"`
  302. }
  303. type AdGroupCriterion_YoutubeVideo struct {
  304. YoutubeVideo *common.YouTubeVideoInfo `protobuf:"bytes,40,opt,name=youtube_video,json=youtubeVideo,proto3,oneof"`
  305. }
  306. type AdGroupCriterion_YoutubeChannel struct {
  307. YoutubeChannel *common.YouTubeChannelInfo `protobuf:"bytes,41,opt,name=youtube_channel,json=youtubeChannel,proto3,oneof"`
  308. }
  309. type AdGroupCriterion_Topic struct {
  310. Topic *common.TopicInfo `protobuf:"bytes,43,opt,name=topic,proto3,oneof"`
  311. }
  312. type AdGroupCriterion_UserInterest struct {
  313. UserInterest *common.UserInterestInfo `protobuf:"bytes,45,opt,name=user_interest,json=userInterest,proto3,oneof"`
  314. }
  315. type AdGroupCriterion_Webpage struct {
  316. Webpage *common.WebpageInfo `protobuf:"bytes,46,opt,name=webpage,proto3,oneof"`
  317. }
  318. type AdGroupCriterion_AppPaymentModel struct {
  319. AppPaymentModel *common.AppPaymentModelInfo `protobuf:"bytes,47,opt,name=app_payment_model,json=appPaymentModel,proto3,oneof"`
  320. }
  321. func (*AdGroupCriterion_Keyword) isAdGroupCriterion_Criterion() {}
  322. func (*AdGroupCriterion_Placement) isAdGroupCriterion_Criterion() {}
  323. func (*AdGroupCriterion_MobileAppCategory) isAdGroupCriterion_Criterion() {}
  324. func (*AdGroupCriterion_ListingGroup) isAdGroupCriterion_Criterion() {}
  325. func (*AdGroupCriterion_AgeRange) isAdGroupCriterion_Criterion() {}
  326. func (*AdGroupCriterion_Gender) isAdGroupCriterion_Criterion() {}
  327. func (*AdGroupCriterion_IncomeRange) isAdGroupCriterion_Criterion() {}
  328. func (*AdGroupCriterion_ParentalStatus) isAdGroupCriterion_Criterion() {}
  329. func (*AdGroupCriterion_UserList) isAdGroupCriterion_Criterion() {}
  330. func (*AdGroupCriterion_YoutubeVideo) isAdGroupCriterion_Criterion() {}
  331. func (*AdGroupCriterion_YoutubeChannel) isAdGroupCriterion_Criterion() {}
  332. func (*AdGroupCriterion_Topic) isAdGroupCriterion_Criterion() {}
  333. func (*AdGroupCriterion_UserInterest) isAdGroupCriterion_Criterion() {}
  334. func (*AdGroupCriterion_Webpage) isAdGroupCriterion_Criterion() {}
  335. func (*AdGroupCriterion_AppPaymentModel) isAdGroupCriterion_Criterion() {}
  336. func (m *AdGroupCriterion) GetCriterion() isAdGroupCriterion_Criterion {
  337. if m != nil {
  338. return m.Criterion
  339. }
  340. return nil
  341. }
  342. func (m *AdGroupCriterion) GetKeyword() *common.KeywordInfo {
  343. if x, ok := m.GetCriterion().(*AdGroupCriterion_Keyword); ok {
  344. return x.Keyword
  345. }
  346. return nil
  347. }
  348. func (m *AdGroupCriterion) GetPlacement() *common.PlacementInfo {
  349. if x, ok := m.GetCriterion().(*AdGroupCriterion_Placement); ok {
  350. return x.Placement
  351. }
  352. return nil
  353. }
  354. func (m *AdGroupCriterion) GetMobileAppCategory() *common.MobileAppCategoryInfo {
  355. if x, ok := m.GetCriterion().(*AdGroupCriterion_MobileAppCategory); ok {
  356. return x.MobileAppCategory
  357. }
  358. return nil
  359. }
  360. func (m *AdGroupCriterion) GetListingGroup() *common.ListingGroupInfo {
  361. if x, ok := m.GetCriterion().(*AdGroupCriterion_ListingGroup); ok {
  362. return x.ListingGroup
  363. }
  364. return nil
  365. }
  366. func (m *AdGroupCriterion) GetAgeRange() *common.AgeRangeInfo {
  367. if x, ok := m.GetCriterion().(*AdGroupCriterion_AgeRange); ok {
  368. return x.AgeRange
  369. }
  370. return nil
  371. }
  372. func (m *AdGroupCriterion) GetGender() *common.GenderInfo {
  373. if x, ok := m.GetCriterion().(*AdGroupCriterion_Gender); ok {
  374. return x.Gender
  375. }
  376. return nil
  377. }
  378. func (m *AdGroupCriterion) GetIncomeRange() *common.IncomeRangeInfo {
  379. if x, ok := m.GetCriterion().(*AdGroupCriterion_IncomeRange); ok {
  380. return x.IncomeRange
  381. }
  382. return nil
  383. }
  384. func (m *AdGroupCriterion) GetParentalStatus() *common.ParentalStatusInfo {
  385. if x, ok := m.GetCriterion().(*AdGroupCriterion_ParentalStatus); ok {
  386. return x.ParentalStatus
  387. }
  388. return nil
  389. }
  390. func (m *AdGroupCriterion) GetUserList() *common.UserListInfo {
  391. if x, ok := m.GetCriterion().(*AdGroupCriterion_UserList); ok {
  392. return x.UserList
  393. }
  394. return nil
  395. }
  396. func (m *AdGroupCriterion) GetYoutubeVideo() *common.YouTubeVideoInfo {
  397. if x, ok := m.GetCriterion().(*AdGroupCriterion_YoutubeVideo); ok {
  398. return x.YoutubeVideo
  399. }
  400. return nil
  401. }
  402. func (m *AdGroupCriterion) GetYoutubeChannel() *common.YouTubeChannelInfo {
  403. if x, ok := m.GetCriterion().(*AdGroupCriterion_YoutubeChannel); ok {
  404. return x.YoutubeChannel
  405. }
  406. return nil
  407. }
  408. func (m *AdGroupCriterion) GetTopic() *common.TopicInfo {
  409. if x, ok := m.GetCriterion().(*AdGroupCriterion_Topic); ok {
  410. return x.Topic
  411. }
  412. return nil
  413. }
  414. func (m *AdGroupCriterion) GetUserInterest() *common.UserInterestInfo {
  415. if x, ok := m.GetCriterion().(*AdGroupCriterion_UserInterest); ok {
  416. return x.UserInterest
  417. }
  418. return nil
  419. }
  420. func (m *AdGroupCriterion) GetWebpage() *common.WebpageInfo {
  421. if x, ok := m.GetCriterion().(*AdGroupCriterion_Webpage); ok {
  422. return x.Webpage
  423. }
  424. return nil
  425. }
  426. func (m *AdGroupCriterion) GetAppPaymentModel() *common.AppPaymentModelInfo {
  427. if x, ok := m.GetCriterion().(*AdGroupCriterion_AppPaymentModel); ok {
  428. return x.AppPaymentModel
  429. }
  430. return nil
  431. }
  432. // XXX_OneofFuncs is for the internal use of the proto package.
  433. func (*AdGroupCriterion) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  434. return _AdGroupCriterion_OneofMarshaler, _AdGroupCriterion_OneofUnmarshaler, _AdGroupCriterion_OneofSizer, []interface{}{
  435. (*AdGroupCriterion_Keyword)(nil),
  436. (*AdGroupCriterion_Placement)(nil),
  437. (*AdGroupCriterion_MobileAppCategory)(nil),
  438. (*AdGroupCriterion_ListingGroup)(nil),
  439. (*AdGroupCriterion_AgeRange)(nil),
  440. (*AdGroupCriterion_Gender)(nil),
  441. (*AdGroupCriterion_IncomeRange)(nil),
  442. (*AdGroupCriterion_ParentalStatus)(nil),
  443. (*AdGroupCriterion_UserList)(nil),
  444. (*AdGroupCriterion_YoutubeVideo)(nil),
  445. (*AdGroupCriterion_YoutubeChannel)(nil),
  446. (*AdGroupCriterion_Topic)(nil),
  447. (*AdGroupCriterion_UserInterest)(nil),
  448. (*AdGroupCriterion_Webpage)(nil),
  449. (*AdGroupCriterion_AppPaymentModel)(nil),
  450. }
  451. }
  452. func _AdGroupCriterion_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  453. m := msg.(*AdGroupCriterion)
  454. // criterion
  455. switch x := m.Criterion.(type) {
  456. case *AdGroupCriterion_Keyword:
  457. b.EncodeVarint(27<<3 | proto.WireBytes)
  458. if err := b.EncodeMessage(x.Keyword); err != nil {
  459. return err
  460. }
  461. case *AdGroupCriterion_Placement:
  462. b.EncodeVarint(28<<3 | proto.WireBytes)
  463. if err := b.EncodeMessage(x.Placement); err != nil {
  464. return err
  465. }
  466. case *AdGroupCriterion_MobileAppCategory:
  467. b.EncodeVarint(29<<3 | proto.WireBytes)
  468. if err := b.EncodeMessage(x.MobileAppCategory); err != nil {
  469. return err
  470. }
  471. case *AdGroupCriterion_ListingGroup:
  472. b.EncodeVarint(32<<3 | proto.WireBytes)
  473. if err := b.EncodeMessage(x.ListingGroup); err != nil {
  474. return err
  475. }
  476. case *AdGroupCriterion_AgeRange:
  477. b.EncodeVarint(36<<3 | proto.WireBytes)
  478. if err := b.EncodeMessage(x.AgeRange); err != nil {
  479. return err
  480. }
  481. case *AdGroupCriterion_Gender:
  482. b.EncodeVarint(37<<3 | proto.WireBytes)
  483. if err := b.EncodeMessage(x.Gender); err != nil {
  484. return err
  485. }
  486. case *AdGroupCriterion_IncomeRange:
  487. b.EncodeVarint(38<<3 | proto.WireBytes)
  488. if err := b.EncodeMessage(x.IncomeRange); err != nil {
  489. return err
  490. }
  491. case *AdGroupCriterion_ParentalStatus:
  492. b.EncodeVarint(39<<3 | proto.WireBytes)
  493. if err := b.EncodeMessage(x.ParentalStatus); err != nil {
  494. return err
  495. }
  496. case *AdGroupCriterion_UserList:
  497. b.EncodeVarint(42<<3 | proto.WireBytes)
  498. if err := b.EncodeMessage(x.UserList); err != nil {
  499. return err
  500. }
  501. case *AdGroupCriterion_YoutubeVideo:
  502. b.EncodeVarint(40<<3 | proto.WireBytes)
  503. if err := b.EncodeMessage(x.YoutubeVideo); err != nil {
  504. return err
  505. }
  506. case *AdGroupCriterion_YoutubeChannel:
  507. b.EncodeVarint(41<<3 | proto.WireBytes)
  508. if err := b.EncodeMessage(x.YoutubeChannel); err != nil {
  509. return err
  510. }
  511. case *AdGroupCriterion_Topic:
  512. b.EncodeVarint(43<<3 | proto.WireBytes)
  513. if err := b.EncodeMessage(x.Topic); err != nil {
  514. return err
  515. }
  516. case *AdGroupCriterion_UserInterest:
  517. b.EncodeVarint(45<<3 | proto.WireBytes)
  518. if err := b.EncodeMessage(x.UserInterest); err != nil {
  519. return err
  520. }
  521. case *AdGroupCriterion_Webpage:
  522. b.EncodeVarint(46<<3 | proto.WireBytes)
  523. if err := b.EncodeMessage(x.Webpage); err != nil {
  524. return err
  525. }
  526. case *AdGroupCriterion_AppPaymentModel:
  527. b.EncodeVarint(47<<3 | proto.WireBytes)
  528. if err := b.EncodeMessage(x.AppPaymentModel); err != nil {
  529. return err
  530. }
  531. case nil:
  532. default:
  533. return fmt.Errorf("AdGroupCriterion.Criterion has unexpected type %T", x)
  534. }
  535. return nil
  536. }
  537. func _AdGroupCriterion_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  538. m := msg.(*AdGroupCriterion)
  539. switch tag {
  540. case 27: // criterion.keyword
  541. if wire != proto.WireBytes {
  542. return true, proto.ErrInternalBadWireType
  543. }
  544. msg := new(common.KeywordInfo)
  545. err := b.DecodeMessage(msg)
  546. m.Criterion = &AdGroupCriterion_Keyword{msg}
  547. return true, err
  548. case 28: // criterion.placement
  549. if wire != proto.WireBytes {
  550. return true, proto.ErrInternalBadWireType
  551. }
  552. msg := new(common.PlacementInfo)
  553. err := b.DecodeMessage(msg)
  554. m.Criterion = &AdGroupCriterion_Placement{msg}
  555. return true, err
  556. case 29: // criterion.mobile_app_category
  557. if wire != proto.WireBytes {
  558. return true, proto.ErrInternalBadWireType
  559. }
  560. msg := new(common.MobileAppCategoryInfo)
  561. err := b.DecodeMessage(msg)
  562. m.Criterion = &AdGroupCriterion_MobileAppCategory{msg}
  563. return true, err
  564. case 32: // criterion.listing_group
  565. if wire != proto.WireBytes {
  566. return true, proto.ErrInternalBadWireType
  567. }
  568. msg := new(common.ListingGroupInfo)
  569. err := b.DecodeMessage(msg)
  570. m.Criterion = &AdGroupCriterion_ListingGroup{msg}
  571. return true, err
  572. case 36: // criterion.age_range
  573. if wire != proto.WireBytes {
  574. return true, proto.ErrInternalBadWireType
  575. }
  576. msg := new(common.AgeRangeInfo)
  577. err := b.DecodeMessage(msg)
  578. m.Criterion = &AdGroupCriterion_AgeRange{msg}
  579. return true, err
  580. case 37: // criterion.gender
  581. if wire != proto.WireBytes {
  582. return true, proto.ErrInternalBadWireType
  583. }
  584. msg := new(common.GenderInfo)
  585. err := b.DecodeMessage(msg)
  586. m.Criterion = &AdGroupCriterion_Gender{msg}
  587. return true, err
  588. case 38: // criterion.income_range
  589. if wire != proto.WireBytes {
  590. return true, proto.ErrInternalBadWireType
  591. }
  592. msg := new(common.IncomeRangeInfo)
  593. err := b.DecodeMessage(msg)
  594. m.Criterion = &AdGroupCriterion_IncomeRange{msg}
  595. return true, err
  596. case 39: // criterion.parental_status
  597. if wire != proto.WireBytes {
  598. return true, proto.ErrInternalBadWireType
  599. }
  600. msg := new(common.ParentalStatusInfo)
  601. err := b.DecodeMessage(msg)
  602. m.Criterion = &AdGroupCriterion_ParentalStatus{msg}
  603. return true, err
  604. case 42: // criterion.user_list
  605. if wire != proto.WireBytes {
  606. return true, proto.ErrInternalBadWireType
  607. }
  608. msg := new(common.UserListInfo)
  609. err := b.DecodeMessage(msg)
  610. m.Criterion = &AdGroupCriterion_UserList{msg}
  611. return true, err
  612. case 40: // criterion.youtube_video
  613. if wire != proto.WireBytes {
  614. return true, proto.ErrInternalBadWireType
  615. }
  616. msg := new(common.YouTubeVideoInfo)
  617. err := b.DecodeMessage(msg)
  618. m.Criterion = &AdGroupCriterion_YoutubeVideo{msg}
  619. return true, err
  620. case 41: // criterion.youtube_channel
  621. if wire != proto.WireBytes {
  622. return true, proto.ErrInternalBadWireType
  623. }
  624. msg := new(common.YouTubeChannelInfo)
  625. err := b.DecodeMessage(msg)
  626. m.Criterion = &AdGroupCriterion_YoutubeChannel{msg}
  627. return true, err
  628. case 43: // criterion.topic
  629. if wire != proto.WireBytes {
  630. return true, proto.ErrInternalBadWireType
  631. }
  632. msg := new(common.TopicInfo)
  633. err := b.DecodeMessage(msg)
  634. m.Criterion = &AdGroupCriterion_Topic{msg}
  635. return true, err
  636. case 45: // criterion.user_interest
  637. if wire != proto.WireBytes {
  638. return true, proto.ErrInternalBadWireType
  639. }
  640. msg := new(common.UserInterestInfo)
  641. err := b.DecodeMessage(msg)
  642. m.Criterion = &AdGroupCriterion_UserInterest{msg}
  643. return true, err
  644. case 46: // criterion.webpage
  645. if wire != proto.WireBytes {
  646. return true, proto.ErrInternalBadWireType
  647. }
  648. msg := new(common.WebpageInfo)
  649. err := b.DecodeMessage(msg)
  650. m.Criterion = &AdGroupCriterion_Webpage{msg}
  651. return true, err
  652. case 47: // criterion.app_payment_model
  653. if wire != proto.WireBytes {
  654. return true, proto.ErrInternalBadWireType
  655. }
  656. msg := new(common.AppPaymentModelInfo)
  657. err := b.DecodeMessage(msg)
  658. m.Criterion = &AdGroupCriterion_AppPaymentModel{msg}
  659. return true, err
  660. default:
  661. return false, nil
  662. }
  663. }
  664. func _AdGroupCriterion_OneofSizer(msg proto.Message) (n int) {
  665. m := msg.(*AdGroupCriterion)
  666. // criterion
  667. switch x := m.Criterion.(type) {
  668. case *AdGroupCriterion_Keyword:
  669. s := proto.Size(x.Keyword)
  670. n += 2 // tag and wire
  671. n += proto.SizeVarint(uint64(s))
  672. n += s
  673. case *AdGroupCriterion_Placement:
  674. s := proto.Size(x.Placement)
  675. n += 2 // tag and wire
  676. n += proto.SizeVarint(uint64(s))
  677. n += s
  678. case *AdGroupCriterion_MobileAppCategory:
  679. s := proto.Size(x.MobileAppCategory)
  680. n += 2 // tag and wire
  681. n += proto.SizeVarint(uint64(s))
  682. n += s
  683. case *AdGroupCriterion_ListingGroup:
  684. s := proto.Size(x.ListingGroup)
  685. n += 2 // tag and wire
  686. n += proto.SizeVarint(uint64(s))
  687. n += s
  688. case *AdGroupCriterion_AgeRange:
  689. s := proto.Size(x.AgeRange)
  690. n += 2 // tag and wire
  691. n += proto.SizeVarint(uint64(s))
  692. n += s
  693. case *AdGroupCriterion_Gender:
  694. s := proto.Size(x.Gender)
  695. n += 2 // tag and wire
  696. n += proto.SizeVarint(uint64(s))
  697. n += s
  698. case *AdGroupCriterion_IncomeRange:
  699. s := proto.Size(x.IncomeRange)
  700. n += 2 // tag and wire
  701. n += proto.SizeVarint(uint64(s))
  702. n += s
  703. case *AdGroupCriterion_ParentalStatus:
  704. s := proto.Size(x.ParentalStatus)
  705. n += 2 // tag and wire
  706. n += proto.SizeVarint(uint64(s))
  707. n += s
  708. case *AdGroupCriterion_UserList:
  709. s := proto.Size(x.UserList)
  710. n += 2 // tag and wire
  711. n += proto.SizeVarint(uint64(s))
  712. n += s
  713. case *AdGroupCriterion_YoutubeVideo:
  714. s := proto.Size(x.YoutubeVideo)
  715. n += 2 // tag and wire
  716. n += proto.SizeVarint(uint64(s))
  717. n += s
  718. case *AdGroupCriterion_YoutubeChannel:
  719. s := proto.Size(x.YoutubeChannel)
  720. n += 2 // tag and wire
  721. n += proto.SizeVarint(uint64(s))
  722. n += s
  723. case *AdGroupCriterion_Topic:
  724. s := proto.Size(x.Topic)
  725. n += 2 // tag and wire
  726. n += proto.SizeVarint(uint64(s))
  727. n += s
  728. case *AdGroupCriterion_UserInterest:
  729. s := proto.Size(x.UserInterest)
  730. n += 2 // tag and wire
  731. n += proto.SizeVarint(uint64(s))
  732. n += s
  733. case *AdGroupCriterion_Webpage:
  734. s := proto.Size(x.Webpage)
  735. n += 2 // tag and wire
  736. n += proto.SizeVarint(uint64(s))
  737. n += s
  738. case *AdGroupCriterion_AppPaymentModel:
  739. s := proto.Size(x.AppPaymentModel)
  740. n += 2 // tag and wire
  741. n += proto.SizeVarint(uint64(s))
  742. n += s
  743. case nil:
  744. default:
  745. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  746. }
  747. return n
  748. }
  749. // A container for ad group criterion quality information.
  750. type AdGroupCriterion_QualityInfo struct {
  751. // The quality score.
  752. //
  753. // This field may not be populated if Google does not have enough
  754. // information to determine a value.
  755. QualityScore *wrappers.Int32Value `protobuf:"bytes,1,opt,name=quality_score,json=qualityScore,proto3" json:"quality_score,omitempty"`
  756. // The performance of the ad compared to other advertisers.
  757. CreativeQualityScore enums.QualityScoreBucketEnum_QualityScoreBucket `protobuf:"varint,2,opt,name=creative_quality_score,json=creativeQualityScore,proto3,enum=google.ads.googleads.v0.enums.QualityScoreBucketEnum_QualityScoreBucket" json:"creative_quality_score,omitempty"`
  758. // The quality score of the landing page.
  759. PostClickQualityScore enums.QualityScoreBucketEnum_QualityScoreBucket `protobuf:"varint,3,opt,name=post_click_quality_score,json=postClickQualityScore,proto3,enum=google.ads.googleads.v0.enums.QualityScoreBucketEnum_QualityScoreBucket" json:"post_click_quality_score,omitempty"`
  760. // The click-through rate compared to that of other advertisers.
  761. SearchPredictedCtr enums.QualityScoreBucketEnum_QualityScoreBucket `protobuf:"varint,4,opt,name=search_predicted_ctr,json=searchPredictedCtr,proto3,enum=google.ads.googleads.v0.enums.QualityScoreBucketEnum_QualityScoreBucket" json:"search_predicted_ctr,omitempty"`
  762. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  763. XXX_unrecognized []byte `json:"-"`
  764. XXX_sizecache int32 `json:"-"`
  765. }
  766. func (m *AdGroupCriterion_QualityInfo) Reset() { *m = AdGroupCriterion_QualityInfo{} }
  767. func (m *AdGroupCriterion_QualityInfo) String() string { return proto.CompactTextString(m) }
  768. func (*AdGroupCriterion_QualityInfo) ProtoMessage() {}
  769. func (*AdGroupCriterion_QualityInfo) Descriptor() ([]byte, []int) {
  770. return fileDescriptor_ad_group_criterion_c91904ece975ad88, []int{0, 0}
  771. }
  772. func (m *AdGroupCriterion_QualityInfo) XXX_Unmarshal(b []byte) error {
  773. return xxx_messageInfo_AdGroupCriterion_QualityInfo.Unmarshal(m, b)
  774. }
  775. func (m *AdGroupCriterion_QualityInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  776. return xxx_messageInfo_AdGroupCriterion_QualityInfo.Marshal(b, m, deterministic)
  777. }
  778. func (dst *AdGroupCriterion_QualityInfo) XXX_Merge(src proto.Message) {
  779. xxx_messageInfo_AdGroupCriterion_QualityInfo.Merge(dst, src)
  780. }
  781. func (m *AdGroupCriterion_QualityInfo) XXX_Size() int {
  782. return xxx_messageInfo_AdGroupCriterion_QualityInfo.Size(m)
  783. }
  784. func (m *AdGroupCriterion_QualityInfo) XXX_DiscardUnknown() {
  785. xxx_messageInfo_AdGroupCriterion_QualityInfo.DiscardUnknown(m)
  786. }
  787. var xxx_messageInfo_AdGroupCriterion_QualityInfo proto.InternalMessageInfo
  788. func (m *AdGroupCriterion_QualityInfo) GetQualityScore() *wrappers.Int32Value {
  789. if m != nil {
  790. return m.QualityScore
  791. }
  792. return nil
  793. }
  794. func (m *AdGroupCriterion_QualityInfo) GetCreativeQualityScore() enums.QualityScoreBucketEnum_QualityScoreBucket {
  795. if m != nil {
  796. return m.CreativeQualityScore
  797. }
  798. return enums.QualityScoreBucketEnum_UNSPECIFIED
  799. }
  800. func (m *AdGroupCriterion_QualityInfo) GetPostClickQualityScore() enums.QualityScoreBucketEnum_QualityScoreBucket {
  801. if m != nil {
  802. return m.PostClickQualityScore
  803. }
  804. return enums.QualityScoreBucketEnum_UNSPECIFIED
  805. }
  806. func (m *AdGroupCriterion_QualityInfo) GetSearchPredictedCtr() enums.QualityScoreBucketEnum_QualityScoreBucket {
  807. if m != nil {
  808. return m.SearchPredictedCtr
  809. }
  810. return enums.QualityScoreBucketEnum_UNSPECIFIED
  811. }
  812. // Estimates for criterion bids at various positions.
  813. type AdGroupCriterion_PositionEstimates struct {
  814. // The estimate of the CPC bid required for ad to be shown on first
  815. // page of search results.
  816. FirstPageCpcMicros *wrappers.Int64Value `protobuf:"bytes,1,opt,name=first_page_cpc_micros,json=firstPageCpcMicros,proto3" json:"first_page_cpc_micros,omitempty"`
  817. // The estimate of the CPC bid required for ad to be displayed in first
  818. // position, at the top of the first page of search results.
  819. FirstPositionCpcMicros *wrappers.Int64Value `protobuf:"bytes,2,opt,name=first_position_cpc_micros,json=firstPositionCpcMicros,proto3" json:"first_position_cpc_micros,omitempty"`
  820. // The estimate of the CPC bid required for ad to be displayed at the top
  821. // of the first page of search results.
  822. TopOfPageCpcMicros *wrappers.Int64Value `protobuf:"bytes,3,opt,name=top_of_page_cpc_micros,json=topOfPageCpcMicros,proto3" json:"top_of_page_cpc_micros,omitempty"`
  823. // Estimate of how many clicks per week you might get by changing your
  824. // keyword bid to the value in first_position_cpc_micros.
  825. EstimatedAddClicksAtFirstPositionCpc *wrappers.Int64Value `protobuf:"bytes,4,opt,name=estimated_add_clicks_at_first_position_cpc,json=estimatedAddClicksAtFirstPositionCpc,proto3" json:"estimated_add_clicks_at_first_position_cpc,omitempty"`
  826. // Estimate of how your cost per week might change when changing your
  827. // keyword bid to the value in first_position_cpc_micros.
  828. EstimatedAddCostAtFirstPositionCpc *wrappers.Int64Value `protobuf:"bytes,5,opt,name=estimated_add_cost_at_first_position_cpc,json=estimatedAddCostAtFirstPositionCpc,proto3" json:"estimated_add_cost_at_first_position_cpc,omitempty"`
  829. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  830. XXX_unrecognized []byte `json:"-"`
  831. XXX_sizecache int32 `json:"-"`
  832. }
  833. func (m *AdGroupCriterion_PositionEstimates) Reset() { *m = AdGroupCriterion_PositionEstimates{} }
  834. func (m *AdGroupCriterion_PositionEstimates) String() string { return proto.CompactTextString(m) }
  835. func (*AdGroupCriterion_PositionEstimates) ProtoMessage() {}
  836. func (*AdGroupCriterion_PositionEstimates) Descriptor() ([]byte, []int) {
  837. return fileDescriptor_ad_group_criterion_c91904ece975ad88, []int{0, 1}
  838. }
  839. func (m *AdGroupCriterion_PositionEstimates) XXX_Unmarshal(b []byte) error {
  840. return xxx_messageInfo_AdGroupCriterion_PositionEstimates.Unmarshal(m, b)
  841. }
  842. func (m *AdGroupCriterion_PositionEstimates) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  843. return xxx_messageInfo_AdGroupCriterion_PositionEstimates.Marshal(b, m, deterministic)
  844. }
  845. func (dst *AdGroupCriterion_PositionEstimates) XXX_Merge(src proto.Message) {
  846. xxx_messageInfo_AdGroupCriterion_PositionEstimates.Merge(dst, src)
  847. }
  848. func (m *AdGroupCriterion_PositionEstimates) XXX_Size() int {
  849. return xxx_messageInfo_AdGroupCriterion_PositionEstimates.Size(m)
  850. }
  851. func (m *AdGroupCriterion_PositionEstimates) XXX_DiscardUnknown() {
  852. xxx_messageInfo_AdGroupCriterion_PositionEstimates.DiscardUnknown(m)
  853. }
  854. var xxx_messageInfo_AdGroupCriterion_PositionEstimates proto.InternalMessageInfo
  855. func (m *AdGroupCriterion_PositionEstimates) GetFirstPageCpcMicros() *wrappers.Int64Value {
  856. if m != nil {
  857. return m.FirstPageCpcMicros
  858. }
  859. return nil
  860. }
  861. func (m *AdGroupCriterion_PositionEstimates) GetFirstPositionCpcMicros() *wrappers.Int64Value {
  862. if m != nil {
  863. return m.FirstPositionCpcMicros
  864. }
  865. return nil
  866. }
  867. func (m *AdGroupCriterion_PositionEstimates) GetTopOfPageCpcMicros() *wrappers.Int64Value {
  868. if m != nil {
  869. return m.TopOfPageCpcMicros
  870. }
  871. return nil
  872. }
  873. func (m *AdGroupCriterion_PositionEstimates) GetEstimatedAddClicksAtFirstPositionCpc() *wrappers.Int64Value {
  874. if m != nil {
  875. return m.EstimatedAddClicksAtFirstPositionCpc
  876. }
  877. return nil
  878. }
  879. func (m *AdGroupCriterion_PositionEstimates) GetEstimatedAddCostAtFirstPositionCpc() *wrappers.Int64Value {
  880. if m != nil {
  881. return m.EstimatedAddCostAtFirstPositionCpc
  882. }
  883. return nil
  884. }
  885. func init() {
  886. proto.RegisterType((*AdGroupCriterion)(nil), "google.ads.googleads.v0.resources.AdGroupCriterion")
  887. proto.RegisterType((*AdGroupCriterion_QualityInfo)(nil), "google.ads.googleads.v0.resources.AdGroupCriterion.QualityInfo")
  888. proto.RegisterType((*AdGroupCriterion_PositionEstimates)(nil), "google.ads.googleads.v0.resources.AdGroupCriterion.PositionEstimates")
  889. }
  890. func init() {
  891. proto.RegisterFile("google/ads/googleads/v0/resources/ad_group_criterion.proto", fileDescriptor_ad_group_criterion_c91904ece975ad88)
  892. }
  893. var fileDescriptor_ad_group_criterion_c91904ece975ad88 = []byte{
  894. // 1495 bytes of a gzipped FileDescriptorProto
  895. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x98, 0xcb, 0x73, 0xdc, 0x34,
  896. 0x1c, 0xc7, 0xd9, 0xa4, 0xaf, 0x28, 0x8f, 0x36, 0x4a, 0x13, 0xd4, 0xb4, 0x40, 0xd2, 0x07, 0xa4,
  897. 0x2f, 0x6f, 0x26, 0xa5, 0x85, 0xd9, 0x0e, 0x2d, 0x9b, 0xb4, 0xa4, 0xa1, 0xa4, 0xdd, 0x6e, 0xd2,
  898. 0x74, 0x60, 0xc2, 0x78, 0xb4, 0xb6, 0xd6, 0xd5, 0xc4, 0xb6, 0x54, 0x49, 0xde, 0xcc, 0x72, 0x60,
  899. 0x06, 0x0e, 0xfc, 0x21, 0x1c, 0xf9, 0x53, 0xb8, 0xf0, 0x7f, 0x70, 0xe4, 0xc0, 0x99, 0x91, 0x2c,
  900. 0x7b, 0x5f, 0xd9, 0x78, 0xcb, 0xe4, 0x66, 0xcb, 0xfa, 0x7e, 0x7e, 0x2f, 0x59, 0xfa, 0xd9, 0xa0,
  901. 0x12, 0x30, 0x16, 0x84, 0xa4, 0x8c, 0x7d, 0x59, 0x4e, 0x2f, 0xf5, 0x55, 0x6b, 0xb5, 0x2c, 0x88,
  902. 0x64, 0x89, 0xf0, 0x88, 0x2c, 0x63, 0xdf, 0x0d, 0x04, 0x4b, 0xb8, 0xeb, 0x09, 0xaa, 0x88, 0xa0,
  903. 0x2c, 0x76, 0xb8, 0x60, 0x8a, 0xc1, 0xe5, 0x54, 0xe0, 0x60, 0x5f, 0x3a, 0xb9, 0xd6, 0x69, 0xad,
  904. 0x3a, 0xb9, 0x76, 0xf1, 0xee, 0x30, 0xbc, 0xc7, 0xa2, 0x88, 0xc5, 0x65, 0x8b, 0xc4, 0x29, 0x71,
  905. 0xf1, 0x7e, 0xd1, 0xf4, 0x44, 0x2a, 0x16, 0xb9, 0x1c, 0x0b, 0x1c, 0x11, 0x45, 0x84, 0x95, 0x7d,
  906. 0x35, 0x4c, 0x46, 0xe2, 0x24, 0x3a, 0x2a, 0x00, 0x57, 0x2a, 0xac, 0x12, 0x69, 0xe5, 0x6b, 0xc7,
  907. 0xcb, 0x1b, 0xd4, 0xf7, 0x69, 0x1c, 0xb8, 0x69, 0x4c, 0xa3, 0x69, 0x3a, 0x96, 0x54, 0x9b, 0x67,
  908. 0x9a, 0x2f, 0x8f, 0xd7, 0xbc, 0x4b, 0x70, 0x48, 0x55, 0xdb, 0x95, 0x1e, 0x13, 0xc4, 0x6d, 0x24,
  909. 0xde, 0x01, 0x51, 0x56, 0xf9, 0xb1, 0x55, 0x9a, 0xbb, 0x46, 0xd2, 0x2c, 0x1f, 0x0a, 0xcc, 0x39,
  910. 0x11, 0x36, 0x82, 0xab, 0xff, 0x2c, 0x83, 0x0b, 0x55, 0x7f, 0x53, 0x07, 0xb9, 0x91, 0x59, 0x86,
  911. 0xd7, 0xc0, 0x74, 0x56, 0x08, 0x37, 0xc6, 0x11, 0x41, 0xa5, 0xa5, 0xd2, 0xca, 0x44, 0x7d, 0x2a,
  912. 0x1b, 0x7c, 0x81, 0x23, 0x02, 0x1f, 0x81, 0xa9, 0x8e, 0xaf, 0xd4, 0x47, 0x8b, 0x4b, 0xa5, 0x95,
  913. 0xc9, 0xb5, 0xcb, 0xb6, 0x9e, 0x4e, 0x66, 0xd0, 0xd9, 0x8a, 0xd5, 0x83, 0xcf, 0xf7, 0x70, 0x98,
  914. 0x90, 0xfa, 0x64, 0x2e, 0xd8, 0xf2, 0xe1, 0x5b, 0x70, 0x26, 0xcd, 0x25, 0x1a, 0x5f, 0x2a, 0xad,
  915. 0xcc, 0xac, 0xd5, 0x9c, 0x61, 0x8b, 0xc2, 0x04, 0xe9, 0xf4, 0x7b, 0xb9, 0x63, 0xc4, 0x4f, 0xe3,
  916. 0x24, 0x1a, 0xf2, 0xa8, 0x6e, 0xf9, 0xb0, 0x01, 0xa6, 0xb2, 0x0c, 0xd1, 0xb8, 0xc9, 0xd0, 0x29,
  917. 0xe3, 0xe9, 0x63, 0xa7, 0x70, 0x11, 0x0e, 0x80, 0x9d, 0x57, 0x29, 0x67, 0x2b, 0x6e, 0xb2, 0xfa,
  918. 0xe4, 0xbb, 0xce, 0x0d, 0xfc, 0x02, 0x9c, 0xcb, 0x16, 0x0b, 0x3a, 0x6d, 0xf8, 0x57, 0x06, 0x32,
  919. 0xb1, 0xa3, 0x04, 0x8d, 0x83, 0x34, 0x15, 0x67, 0x71, 0x8a, 0x86, 0x75, 0x70, 0x4a, 0x17, 0x1a,
  920. 0x5d, 0x32, 0x49, 0x78, 0x54, 0x90, 0x84, 0xdc, 0x93, 0xdd, 0x36, 0x27, 0x26, 0xf6, 0x9e, 0x91,
  921. 0xba, 0x61, 0xc1, 0x07, 0xe0, 0x5c, 0x4c, 0x02, 0xac, 0x68, 0x8b, 0xa0, 0x4f, 0x8c, 0x33, 0x8b,
  922. 0x03, 0xce, 0xac, 0x33, 0x16, 0xa6, 0xae, 0xe4, 0x73, 0xe1, 0x63, 0x30, 0xd5, 0xa0, 0xbe, 0x1b,
  923. 0x31, 0x9f, 0x36, 0x29, 0x11, 0xe8, 0xce, 0x90, 0x40, 0x9e, 0xb0, 0xa4, 0x11, 0x12, 0x5b, 0xd3,
  924. 0x06, 0xf5, 0xb7, 0xad, 0x00, 0x56, 0xc1, 0x8c, 0xc7, 0x3d, 0xd7, 0x40, 0xa8, 0x27, 0x98, 0x44,
  925. 0x17, 0x8a, 0x57, 0xc5, 0x94, 0xc7, 0xbd, 0x75, 0xea, 0x6f, 0x1b, 0x41, 0x8a, 0x88, 0xba, 0x11,
  926. 0xb3, 0x23, 0x21, 0xa2, 0x3e, 0x44, 0xab, 0x1b, 0x81, 0x46, 0x42, 0xb4, 0x3a, 0x88, 0x1a, 0x58,
  927. 0xe0, 0x44, 0x78, 0x24, 0x56, 0x6e, 0x5f, 0x40, 0xcb, 0xc5, 0xa8, 0x39, 0x2b, 0xdd, 0xe8, 0x8e,
  928. 0x6b, 0x17, 0x20, 0xd2, 0x6c, 0x12, 0x4f, 0x27, 0xba, 0x9f, 0x09, 0x8b, 0x99, 0xf3, 0xb9, 0xf8,
  929. 0x38, 0x6a, 0x4f, 0xde, 0xe6, 0xde, 0x8f, 0x1a, 0x0d, 0xa5, 0xf6, 0xa4, 0xf2, 0xe2, 0xfb, 0x51,
  930. 0xbb, 0x72, 0xea, 0x81, 0xa5, 0x0e, 0x75, 0x48, 0x76, 0xaf, 0x16, 0xd3, 0xaf, 0xe4, 0x90, 0xda,
  931. 0x11, 0x69, 0x3e, 0x3c, 0x2a, 0xcd, 0xe9, 0xeb, 0x8c, 0xe6, 0x47, 0x7a, 0xc5, 0xd6, 0xd3, 0x4d,
  932. 0x7b, 0xc7, 0x68, 0xcc, 0x2b, 0xd6, 0x33, 0x32, 0x50, 0x89, 0x74, 0xb8, 0xdf, 0x70, 0xd4, 0x6d,
  933. 0x78, 0xe1, 0xc4, 0x0d, 0x47, 0x43, 0x0d, 0xb7, 0xba, 0x0d, 0x7f, 0x78, 0xe2, 0x86, 0x5b, 0x1d,
  934. 0xc3, 0xbf, 0x95, 0x8e, 0x2b, 0xa8, 0xf5, 0xe0, 0xda, 0x89, 0x78, 0x30, 0xa4, 0xe6, 0xd6, 0x11,
  935. 0x05, 0x20, 0x67, 0x92, 0x2a, 0x7d, 0x10, 0x11, 0xa9, 0x68, 0x84, 0x15, 0x91, 0x08, 0x98, 0xa5,
  936. 0xf4, 0xf4, 0xff, 0xec, 0xf2, 0x35, 0x4b, 0x7b, 0x9a, 0xc1, 0xea, 0xb3, 0xbc, 0x7f, 0x08, 0x3e,
  937. 0x04, 0xa0, 0x49, 0x63, 0x1c, 0xba, 0x89, 0x08, 0x25, 0x9a, 0x5c, 0x1a, 0x2f, 0xdc, 0xf3, 0x27,
  938. 0xcc, 0xfc, 0xd7, 0x22, 0xd4, 0xfb, 0xcb, 0xbc, 0x12, 0xd8, 0x3b, 0xd0, 0xdd, 0x41, 0x22, 0x42,
  939. 0x57, 0x91, 0x88, 0x87, 0x58, 0x11, 0x34, 0x3d, 0xc2, 0xd9, 0x31, 0x97, 0x49, 0x5f, 0x8b, 0x70,
  940. 0xd7, 0x0a, 0xa1, 0x07, 0xe6, 0x35, 0xa8, 0xbf, 0xcf, 0x91, 0x68, 0xc6, 0x78, 0x56, 0x1e, 0x9a,
  941. 0x87, 0xb4, 0x41, 0x72, 0x36, 0x8c, 0xb0, 0x96, 0xe9, 0xea, 0x73, 0x89, 0x08, 0xfb, 0xc6, 0x24,
  942. 0xdc, 0x04, 0x67, 0x0f, 0x48, 0xfb, 0x90, 0x09, 0x1f, 0x5d, 0x36, 0x8e, 0xde, 0x2e, 0xc2, 0x3e,
  943. 0x4f, 0xa7, 0xeb, 0x33, 0xf2, 0xd9, 0x07, 0xf5, 0x4c, 0x0d, 0xb7, 0xc1, 0x04, 0x0f, 0xb1, 0x47,
  944. 0x22, 0x12, 0x2b, 0x74, 0xc5, 0xa0, 0xee, 0x16, 0xa1, 0x6a, 0x99, 0xc0, 0xc2, 0x3a, 0x04, 0x18,
  945. 0x80, 0xb9, 0x88, 0x35, 0x68, 0x48, 0x5c, 0xcc, 0xb9, 0xeb, 0x61, 0x45, 0x02, 0x26, 0xda, 0xe8,
  946. 0x23, 0x03, 0xbe, 0x5f, 0x04, 0xde, 0x36, 0xd2, 0x2a, 0xe7, 0x1b, 0x56, 0x68, 0x0d, 0xcc, 0x46,
  947. 0xfd, 0x0f, 0xe0, 0x1b, 0x30, 0x1d, 0x52, 0xa9, 0x74, 0xd9, 0xd2, 0xb3, 0x7e, 0xc9, 0x98, 0x58,
  948. 0x2d, 0x32, 0xf1, 0x5d, 0x2a, 0x32, 0xeb, 0xcc, 0xd2, 0xa7, 0xc2, 0xae, 0x31, 0xf8, 0x1c, 0x4c,
  949. 0xe0, 0x80, 0xb8, 0x02, 0xc7, 0x01, 0x41, 0xd7, 0x0d, 0xf4, 0x4e, 0x11, 0xb4, 0x1a, 0x90, 0xba,
  950. 0x9e, 0x6f, 0x81, 0xe7, 0xb0, 0xbd, 0x87, 0x4f, 0xc0, 0x99, 0x80, 0xc4, 0x3e, 0x11, 0xe8, 0x86,
  951. 0x21, 0xdd, 0x2a, 0x22, 0x6d, 0x9a, 0xd9, 0x96, 0x63, 0xb5, 0x70, 0x17, 0x4c, 0xd1, 0xd8, 0x63,
  952. 0x51, 0xe6, 0xd5, 0xa7, 0x86, 0x55, 0xb8, 0x90, 0xb6, 0x8c, 0xa6, 0xdb, 0xb1, 0x49, 0xda, 0x19,
  953. 0x82, 0x3f, 0x82, 0xf3, 0x1c, 0x0b, 0x12, 0x2b, 0x1c, 0xda, 0x5e, 0x1a, 0x7d, 0x66, 0xc0, 0x6b,
  954. 0x85, 0xf5, 0xb7, 0xb2, 0xb4, 0xbb, 0xb3, 0xec, 0x19, 0xde, 0x33, 0xaa, 0xf3, 0x98, 0x48, 0x22,
  955. 0x5c, 0x9d, 0x5c, 0x74, 0x6b, 0xb4, 0x3c, 0xbe, 0x96, 0x44, 0xe8, 0x02, 0x65, 0x79, 0x4c, 0xec,
  956. 0xbd, 0xae, 0x76, 0x9b, 0x25, 0x2a, 0x69, 0x10, 0xb7, 0x45, 0x7d, 0xc2, 0xd0, 0xca, 0x68, 0xd5,
  957. 0xfe, 0x9e, 0x25, 0xbb, 0x49, 0x83, 0xec, 0x69, 0x4d, 0x56, 0x6d, 0x0b, 0x32, 0x63, 0x3a, 0x09,
  958. 0x19, 0xd8, 0x7b, 0x8b, 0xe3, 0x98, 0x84, 0xe8, 0xe6, 0x68, 0x49, 0xb0, 0xe8, 0x8d, 0x54, 0x95,
  959. 0x25, 0xc1, 0xc2, 0xec, 0x28, 0xac, 0x82, 0xd3, 0x8a, 0x71, 0xea, 0xa1, 0xdb, 0x06, 0x7a, 0xb3,
  960. 0x08, 0xba, 0xab, 0x27, 0x5b, 0x56, 0xaa, 0xd4, 0xa1, 0x9b, 0x3c, 0xd2, 0x58, 0x11, 0x41, 0xa4,
  961. 0x42, 0x77, 0x47, 0x0b, 0x5d, 0xe7, 0x72, 0xcb, 0x6a, 0xb2, 0xd0, 0x93, 0xae, 0x31, 0xbd, 0x85,
  962. 0x1c, 0x92, 0x06, 0xc7, 0x01, 0x41, 0xce, 0x68, 0x5b, 0xc8, 0x9b, 0x74, 0x7a, 0xb6, 0x85, 0x58,
  963. 0x35, 0xc4, 0x60, 0x56, 0xbf, 0xec, 0x1c, 0xb7, 0xf5, 0x16, 0xa0, 0x9b, 0x56, 0x12, 0xa2, 0xb2,
  964. 0x41, 0xde, 0x2b, 0x7c, 0x73, 0x38, 0xaf, 0xa5, 0xba, 0x6d, 0x2d, 0xb3, 0xe8, 0xf3, 0xb8, 0x77,
  965. 0x78, 0xf1, 0xaf, 0x71, 0x30, 0xd9, 0xd5, 0xf1, 0xc3, 0xaf, 0xc1, 0x74, 0xcf, 0xa7, 0x96, 0xf9,
  966. 0x2e, 0x1a, 0xd2, 0xae, 0xdc, 0x5b, 0xb3, 0x7d, 0xa5, 0x55, 0xec, 0x68, 0x01, 0xfc, 0x19, 0x2c,
  967. 0x78, 0x82, 0x98, 0x6e, 0xdb, 0xed, 0x45, 0x8d, 0x99, 0x83, 0xf2, 0x59, 0xc1, 0x41, 0xf9, 0xaa,
  968. 0x0b, 0xb6, 0x6e, 0xbe, 0xf3, 0xcc, 0x69, 0x39, 0x38, 0x5c, 0xbf, 0x98, 0xd9, 0xe9, 0x7e, 0x06,
  969. 0x7f, 0x29, 0x01, 0xc4, 0x99, 0x54, 0xae, 0x17, 0x52, 0xef, 0xa0, 0xcf, 0x85, 0xf1, 0x13, 0x76,
  970. 0x61, 0x5e, 0x5b, 0xda, 0xd0, 0x86, 0x7a, 0x7c, 0xf8, 0x09, 0x5c, 0x94, 0x04, 0x0b, 0xef, 0xad,
  971. 0xcb, 0x05, 0xf1, 0xa9, 0xa7, 0x88, 0xef, 0x7a, 0x4a, 0x98, 0xcf, 0xb2, 0x93, 0x34, 0x0f, 0x53,
  972. 0x2b, 0xb5, 0xcc, 0xc8, 0x86, 0x12, 0x8b, 0xff, 0x8e, 0x83, 0xd9, 0x81, 0xd3, 0x1d, 0xbe, 0x00,
  973. 0xf3, 0x4d, 0x2a, 0xa4, 0x72, 0xf5, 0xc2, 0x32, 0x1d, 0x8c, 0x6d, 0x47, 0x4b, 0xc5, 0xed, 0x28,
  974. 0x34, 0xca, 0x1a, 0x0e, 0x74, 0x3b, 0x68, 0x9b, 0xd0, 0x3d, 0x70, 0xc9, 0xf2, 0xb2, 0xb6, 0xa4,
  975. 0x8b, 0x39, 0x56, 0xcc, 0x5c, 0x48, 0x99, 0x56, 0xdc, 0xe1, 0xbe, 0x04, 0x0b, 0x8a, 0x71, 0x97,
  976. 0x35, 0x07, 0x1c, 0x1d, 0x1f, 0xc1, 0x51, 0xc5, 0xf8, 0xcb, 0x66, 0xaf, 0xa3, 0x09, 0xb8, 0x95,
  977. 0x35, 0x4c, 0xbe, 0x8b, 0x7d, 0x3f, 0x5d, 0x16, 0xd2, 0xc5, 0xca, 0x1d, 0x0c, 0xc0, 0x7e, 0x37,
  978. 0x1f, 0x6b, 0xe4, 0x7a, 0x8e, 0xab, 0xfa, 0xbe, 0x29, 0xbd, 0xac, 0xaa, 0x6f, 0xfa, 0xa2, 0x81,
  979. 0xef, 0xc0, 0x4a, 0x9f, 0x59, 0xbd, 0x24, 0x8f, 0x36, 0x7a, 0xba, 0xd8, 0xe8, 0xd5, 0x1e, 0xa3,
  980. 0x4c, 0xaa, 0x41, 0x93, 0xeb, 0x93, 0x60, 0x22, 0xff, 0xf9, 0xb0, 0xfe, 0xeb, 0x18, 0xb8, 0xe1,
  981. 0xb1, 0xa8, 0xb8, 0x35, 0x5c, 0x9f, 0xef, 0xef, 0x0d, 0x6b, 0xda, 0x7e, 0xad, 0xf4, 0xc3, 0xb7,
  982. 0x56, 0x1b, 0xb0, 0x10, 0xc7, 0x81, 0xc3, 0x44, 0x50, 0x0e, 0x48, 0x6c, 0xbc, 0xcb, 0xfe, 0xd0,
  983. 0x70, 0x2a, 0x8f, 0xf9, 0x39, 0xf6, 0x30, 0xbf, 0xfa, 0x7d, 0x6c, 0x7c, 0xb3, 0x5a, 0xfd, 0x63,
  984. 0x6c, 0x79, 0x33, 0x45, 0x56, 0x7d, 0xe9, 0xa4, 0x97, 0xfa, 0x6a, 0x6f, 0xd5, 0xa9, 0x67, 0x33,
  985. 0xff, 0xcc, 0xe6, 0xec, 0x57, 0x7d, 0xb9, 0x9f, 0xcf, 0xd9, 0xdf, 0x5b, 0xdd, 0xcf, 0xe7, 0xfc,
  986. 0x3d, 0x76, 0x23, 0x7d, 0x50, 0xa9, 0x54, 0x7d, 0x59, 0xa9, 0xe4, 0xb3, 0x2a, 0x95, 0xbd, 0xd5,
  987. 0x4a, 0x25, 0x9f, 0xd7, 0x38, 0x63, 0x9c, 0xbd, 0xf7, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc2,
  988. 0xf3, 0x53, 0x54, 0xc8, 0x13, 0x00, 0x00,
  989. }