You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1135 lines
47 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: google/ads/googleads/v1/common/extensions.proto
  3. package common // import "google.golang.org/genproto/googleapis/ads/googleads/v1/common"
  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 enums "google.golang.org/genproto/googleapis/ads/googleads/v1/enums"
  9. import _ "google.golang.org/genproto/googleapis/api/annotations"
  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. // Represents an App extension.
  20. type AppFeedItem struct {
  21. // The visible text displayed when the link is rendered in an ad.
  22. // The length of this string should be between 1 and 25, inclusive.
  23. LinkText *wrappers.StringValue `protobuf:"bytes,1,opt,name=link_text,json=linkText,proto3" json:"link_text,omitempty"`
  24. // The store-specific ID for the target application.
  25. // This string must not be empty.
  26. AppId *wrappers.StringValue `protobuf:"bytes,2,opt,name=app_id,json=appId,proto3" json:"app_id,omitempty"`
  27. // The application store that the target application belongs to.
  28. AppStore enums.AppStoreEnum_AppStore `protobuf:"varint,3,opt,name=app_store,json=appStore,proto3,enum=google.ads.googleads.v1.enums.AppStoreEnum_AppStore" json:"app_store,omitempty"`
  29. // A list of possible final URLs after all cross domain redirects.
  30. FinalUrls []*wrappers.StringValue `protobuf:"bytes,4,rep,name=final_urls,json=finalUrls,proto3" json:"final_urls,omitempty"`
  31. // A list of possible final mobile URLs after all cross domain redirects.
  32. FinalMobileUrls []*wrappers.StringValue `protobuf:"bytes,5,rep,name=final_mobile_urls,json=finalMobileUrls,proto3" json:"final_mobile_urls,omitempty"`
  33. // URL template for constructing a tracking URL. Default value is "{lpurl}".
  34. TrackingUrlTemplate *wrappers.StringValue `protobuf:"bytes,6,opt,name=tracking_url_template,json=trackingUrlTemplate,proto3" json:"tracking_url_template,omitempty"`
  35. // A list of mappings to be used for substituting URL custom parameter tags in
  36. // the tracking_url_template, final_urls, and/or final_mobile_urls.
  37. UrlCustomParameters []*CustomParameter `protobuf:"bytes,7,rep,name=url_custom_parameters,json=urlCustomParameters,proto3" json:"url_custom_parameters,omitempty"`
  38. // URL template for appending params to landing page URLs served with parallel
  39. // tracking.
  40. FinalUrlSuffix *wrappers.StringValue `protobuf:"bytes,8,opt,name=final_url_suffix,json=finalUrlSuffix,proto3" json:"final_url_suffix,omitempty"`
  41. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  42. XXX_unrecognized []byte `json:"-"`
  43. XXX_sizecache int32 `json:"-"`
  44. }
  45. func (m *AppFeedItem) Reset() { *m = AppFeedItem{} }
  46. func (m *AppFeedItem) String() string { return proto.CompactTextString(m) }
  47. func (*AppFeedItem) ProtoMessage() {}
  48. func (*AppFeedItem) Descriptor() ([]byte, []int) {
  49. return fileDescriptor_extensions_d891c1e411eb40f7, []int{0}
  50. }
  51. func (m *AppFeedItem) XXX_Unmarshal(b []byte) error {
  52. return xxx_messageInfo_AppFeedItem.Unmarshal(m, b)
  53. }
  54. func (m *AppFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  55. return xxx_messageInfo_AppFeedItem.Marshal(b, m, deterministic)
  56. }
  57. func (dst *AppFeedItem) XXX_Merge(src proto.Message) {
  58. xxx_messageInfo_AppFeedItem.Merge(dst, src)
  59. }
  60. func (m *AppFeedItem) XXX_Size() int {
  61. return xxx_messageInfo_AppFeedItem.Size(m)
  62. }
  63. func (m *AppFeedItem) XXX_DiscardUnknown() {
  64. xxx_messageInfo_AppFeedItem.DiscardUnknown(m)
  65. }
  66. var xxx_messageInfo_AppFeedItem proto.InternalMessageInfo
  67. func (m *AppFeedItem) GetLinkText() *wrappers.StringValue {
  68. if m != nil {
  69. return m.LinkText
  70. }
  71. return nil
  72. }
  73. func (m *AppFeedItem) GetAppId() *wrappers.StringValue {
  74. if m != nil {
  75. return m.AppId
  76. }
  77. return nil
  78. }
  79. func (m *AppFeedItem) GetAppStore() enums.AppStoreEnum_AppStore {
  80. if m != nil {
  81. return m.AppStore
  82. }
  83. return enums.AppStoreEnum_UNSPECIFIED
  84. }
  85. func (m *AppFeedItem) GetFinalUrls() []*wrappers.StringValue {
  86. if m != nil {
  87. return m.FinalUrls
  88. }
  89. return nil
  90. }
  91. func (m *AppFeedItem) GetFinalMobileUrls() []*wrappers.StringValue {
  92. if m != nil {
  93. return m.FinalMobileUrls
  94. }
  95. return nil
  96. }
  97. func (m *AppFeedItem) GetTrackingUrlTemplate() *wrappers.StringValue {
  98. if m != nil {
  99. return m.TrackingUrlTemplate
  100. }
  101. return nil
  102. }
  103. func (m *AppFeedItem) GetUrlCustomParameters() []*CustomParameter {
  104. if m != nil {
  105. return m.UrlCustomParameters
  106. }
  107. return nil
  108. }
  109. func (m *AppFeedItem) GetFinalUrlSuffix() *wrappers.StringValue {
  110. if m != nil {
  111. return m.FinalUrlSuffix
  112. }
  113. return nil
  114. }
  115. // Represents a Call extension.
  116. type CallFeedItem struct {
  117. // The advertiser's phone number to append to the ad.
  118. // This string must not be empty.
  119. PhoneNumber *wrappers.StringValue `protobuf:"bytes,1,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
  120. // Uppercase two-letter country code of the advertiser's phone number.
  121. // This string must not be empty.
  122. CountryCode *wrappers.StringValue `protobuf:"bytes,2,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"`
  123. // Indicates whether call tracking is enabled. By default, call tracking is
  124. // not enabled.
  125. CallTrackingEnabled *wrappers.BoolValue `protobuf:"bytes,3,opt,name=call_tracking_enabled,json=callTrackingEnabled,proto3" json:"call_tracking_enabled,omitempty"`
  126. // The conversion action to attribute a call conversion to. If not set a
  127. // default conversion action is used. This field only has effect if
  128. // call_tracking_enabled is set to true. Otherwise this field is ignored.
  129. CallConversionAction *wrappers.StringValue `protobuf:"bytes,4,opt,name=call_conversion_action,json=callConversionAction,proto3" json:"call_conversion_action,omitempty"`
  130. // If true, disable call conversion tracking. call_conversion_action should
  131. // not be set if this is true. Optional.
  132. CallConversionTrackingDisabled *wrappers.BoolValue `protobuf:"bytes,5,opt,name=call_conversion_tracking_disabled,json=callConversionTrackingDisabled,proto3" json:"call_conversion_tracking_disabled,omitempty"`
  133. // Enum value that indicates whether this call extension uses its own call
  134. // conversion setting (or just have call conversion disabled), or following
  135. // the account level setting.
  136. CallConversionReportingState enums.CallConversionReportingStateEnum_CallConversionReportingState `protobuf:"varint,6,opt,name=call_conversion_reporting_state,json=callConversionReportingState,proto3,enum=google.ads.googleads.v1.enums.CallConversionReportingStateEnum_CallConversionReportingState" json:"call_conversion_reporting_state,omitempty"`
  137. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  138. XXX_unrecognized []byte `json:"-"`
  139. XXX_sizecache int32 `json:"-"`
  140. }
  141. func (m *CallFeedItem) Reset() { *m = CallFeedItem{} }
  142. func (m *CallFeedItem) String() string { return proto.CompactTextString(m) }
  143. func (*CallFeedItem) ProtoMessage() {}
  144. func (*CallFeedItem) Descriptor() ([]byte, []int) {
  145. return fileDescriptor_extensions_d891c1e411eb40f7, []int{1}
  146. }
  147. func (m *CallFeedItem) XXX_Unmarshal(b []byte) error {
  148. return xxx_messageInfo_CallFeedItem.Unmarshal(m, b)
  149. }
  150. func (m *CallFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  151. return xxx_messageInfo_CallFeedItem.Marshal(b, m, deterministic)
  152. }
  153. func (dst *CallFeedItem) XXX_Merge(src proto.Message) {
  154. xxx_messageInfo_CallFeedItem.Merge(dst, src)
  155. }
  156. func (m *CallFeedItem) XXX_Size() int {
  157. return xxx_messageInfo_CallFeedItem.Size(m)
  158. }
  159. func (m *CallFeedItem) XXX_DiscardUnknown() {
  160. xxx_messageInfo_CallFeedItem.DiscardUnknown(m)
  161. }
  162. var xxx_messageInfo_CallFeedItem proto.InternalMessageInfo
  163. func (m *CallFeedItem) GetPhoneNumber() *wrappers.StringValue {
  164. if m != nil {
  165. return m.PhoneNumber
  166. }
  167. return nil
  168. }
  169. func (m *CallFeedItem) GetCountryCode() *wrappers.StringValue {
  170. if m != nil {
  171. return m.CountryCode
  172. }
  173. return nil
  174. }
  175. func (m *CallFeedItem) GetCallTrackingEnabled() *wrappers.BoolValue {
  176. if m != nil {
  177. return m.CallTrackingEnabled
  178. }
  179. return nil
  180. }
  181. func (m *CallFeedItem) GetCallConversionAction() *wrappers.StringValue {
  182. if m != nil {
  183. return m.CallConversionAction
  184. }
  185. return nil
  186. }
  187. func (m *CallFeedItem) GetCallConversionTrackingDisabled() *wrappers.BoolValue {
  188. if m != nil {
  189. return m.CallConversionTrackingDisabled
  190. }
  191. return nil
  192. }
  193. func (m *CallFeedItem) GetCallConversionReportingState() enums.CallConversionReportingStateEnum_CallConversionReportingState {
  194. if m != nil {
  195. return m.CallConversionReportingState
  196. }
  197. return enums.CallConversionReportingStateEnum_UNSPECIFIED
  198. }
  199. // Represents a callout extension.
  200. type CalloutFeedItem struct {
  201. // The callout text.
  202. // The length of this string should be between 1 and 25, inclusive.
  203. CalloutText *wrappers.StringValue `protobuf:"bytes,1,opt,name=callout_text,json=calloutText,proto3" json:"callout_text,omitempty"`
  204. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  205. XXX_unrecognized []byte `json:"-"`
  206. XXX_sizecache int32 `json:"-"`
  207. }
  208. func (m *CalloutFeedItem) Reset() { *m = CalloutFeedItem{} }
  209. func (m *CalloutFeedItem) String() string { return proto.CompactTextString(m) }
  210. func (*CalloutFeedItem) ProtoMessage() {}
  211. func (*CalloutFeedItem) Descriptor() ([]byte, []int) {
  212. return fileDescriptor_extensions_d891c1e411eb40f7, []int{2}
  213. }
  214. func (m *CalloutFeedItem) XXX_Unmarshal(b []byte) error {
  215. return xxx_messageInfo_CalloutFeedItem.Unmarshal(m, b)
  216. }
  217. func (m *CalloutFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  218. return xxx_messageInfo_CalloutFeedItem.Marshal(b, m, deterministic)
  219. }
  220. func (dst *CalloutFeedItem) XXX_Merge(src proto.Message) {
  221. xxx_messageInfo_CalloutFeedItem.Merge(dst, src)
  222. }
  223. func (m *CalloutFeedItem) XXX_Size() int {
  224. return xxx_messageInfo_CalloutFeedItem.Size(m)
  225. }
  226. func (m *CalloutFeedItem) XXX_DiscardUnknown() {
  227. xxx_messageInfo_CalloutFeedItem.DiscardUnknown(m)
  228. }
  229. var xxx_messageInfo_CalloutFeedItem proto.InternalMessageInfo
  230. func (m *CalloutFeedItem) GetCalloutText() *wrappers.StringValue {
  231. if m != nil {
  232. return m.CalloutText
  233. }
  234. return nil
  235. }
  236. // An extension that users can click on to send a text message to the
  237. // advertiser.
  238. type TextMessageFeedItem struct {
  239. // The business name to prepend to the message text.
  240. // This field is required.
  241. BusinessName *wrappers.StringValue `protobuf:"bytes,1,opt,name=business_name,json=businessName,proto3" json:"business_name,omitempty"`
  242. // Uppercase two-letter country code of the advertiser's phone number.
  243. // This field is required.
  244. CountryCode *wrappers.StringValue `protobuf:"bytes,2,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"`
  245. // The advertiser's phone number the message will be sent to. Required.
  246. PhoneNumber *wrappers.StringValue `protobuf:"bytes,3,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
  247. // The text to show in the ad.
  248. // This field is required.
  249. Text *wrappers.StringValue `protobuf:"bytes,4,opt,name=text,proto3" json:"text,omitempty"`
  250. // The message text populated in the messaging app.
  251. ExtensionText *wrappers.StringValue `protobuf:"bytes,5,opt,name=extension_text,json=extensionText,proto3" json:"extension_text,omitempty"`
  252. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  253. XXX_unrecognized []byte `json:"-"`
  254. XXX_sizecache int32 `json:"-"`
  255. }
  256. func (m *TextMessageFeedItem) Reset() { *m = TextMessageFeedItem{} }
  257. func (m *TextMessageFeedItem) String() string { return proto.CompactTextString(m) }
  258. func (*TextMessageFeedItem) ProtoMessage() {}
  259. func (*TextMessageFeedItem) Descriptor() ([]byte, []int) {
  260. return fileDescriptor_extensions_d891c1e411eb40f7, []int{3}
  261. }
  262. func (m *TextMessageFeedItem) XXX_Unmarshal(b []byte) error {
  263. return xxx_messageInfo_TextMessageFeedItem.Unmarshal(m, b)
  264. }
  265. func (m *TextMessageFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  266. return xxx_messageInfo_TextMessageFeedItem.Marshal(b, m, deterministic)
  267. }
  268. func (dst *TextMessageFeedItem) XXX_Merge(src proto.Message) {
  269. xxx_messageInfo_TextMessageFeedItem.Merge(dst, src)
  270. }
  271. func (m *TextMessageFeedItem) XXX_Size() int {
  272. return xxx_messageInfo_TextMessageFeedItem.Size(m)
  273. }
  274. func (m *TextMessageFeedItem) XXX_DiscardUnknown() {
  275. xxx_messageInfo_TextMessageFeedItem.DiscardUnknown(m)
  276. }
  277. var xxx_messageInfo_TextMessageFeedItem proto.InternalMessageInfo
  278. func (m *TextMessageFeedItem) GetBusinessName() *wrappers.StringValue {
  279. if m != nil {
  280. return m.BusinessName
  281. }
  282. return nil
  283. }
  284. func (m *TextMessageFeedItem) GetCountryCode() *wrappers.StringValue {
  285. if m != nil {
  286. return m.CountryCode
  287. }
  288. return nil
  289. }
  290. func (m *TextMessageFeedItem) GetPhoneNumber() *wrappers.StringValue {
  291. if m != nil {
  292. return m.PhoneNumber
  293. }
  294. return nil
  295. }
  296. func (m *TextMessageFeedItem) GetText() *wrappers.StringValue {
  297. if m != nil {
  298. return m.Text
  299. }
  300. return nil
  301. }
  302. func (m *TextMessageFeedItem) GetExtensionText() *wrappers.StringValue {
  303. if m != nil {
  304. return m.ExtensionText
  305. }
  306. return nil
  307. }
  308. // Represents a Price extension.
  309. type PriceFeedItem struct {
  310. // Price extension type of this extension.
  311. Type enums.PriceExtensionTypeEnum_PriceExtensionType `protobuf:"varint,1,opt,name=type,proto3,enum=google.ads.googleads.v1.enums.PriceExtensionTypeEnum_PriceExtensionType" json:"type,omitempty"`
  312. // Price qualifier for all offers of this price extension.
  313. PriceQualifier enums.PriceExtensionPriceQualifierEnum_PriceExtensionPriceQualifier `protobuf:"varint,2,opt,name=price_qualifier,json=priceQualifier,proto3,enum=google.ads.googleads.v1.enums.PriceExtensionPriceQualifierEnum_PriceExtensionPriceQualifier" json:"price_qualifier,omitempty"`
  314. // Tracking URL template for all offers of this price extension.
  315. TrackingUrlTemplate *wrappers.StringValue `protobuf:"bytes,3,opt,name=tracking_url_template,json=trackingUrlTemplate,proto3" json:"tracking_url_template,omitempty"`
  316. // The code of the language used for this price extension.
  317. LanguageCode *wrappers.StringValue `protobuf:"bytes,4,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
  318. // The price offerings in this price extension.
  319. PriceOfferings []*PriceOffer `protobuf:"bytes,5,rep,name=price_offerings,json=priceOfferings,proto3" json:"price_offerings,omitempty"`
  320. // URL template for appending params to landing page URLs served with parallel
  321. // tracking.
  322. FinalUrlSuffix *wrappers.StringValue `protobuf:"bytes,6,opt,name=final_url_suffix,json=finalUrlSuffix,proto3" json:"final_url_suffix,omitempty"`
  323. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  324. XXX_unrecognized []byte `json:"-"`
  325. XXX_sizecache int32 `json:"-"`
  326. }
  327. func (m *PriceFeedItem) Reset() { *m = PriceFeedItem{} }
  328. func (m *PriceFeedItem) String() string { return proto.CompactTextString(m) }
  329. func (*PriceFeedItem) ProtoMessage() {}
  330. func (*PriceFeedItem) Descriptor() ([]byte, []int) {
  331. return fileDescriptor_extensions_d891c1e411eb40f7, []int{4}
  332. }
  333. func (m *PriceFeedItem) XXX_Unmarshal(b []byte) error {
  334. return xxx_messageInfo_PriceFeedItem.Unmarshal(m, b)
  335. }
  336. func (m *PriceFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  337. return xxx_messageInfo_PriceFeedItem.Marshal(b, m, deterministic)
  338. }
  339. func (dst *PriceFeedItem) XXX_Merge(src proto.Message) {
  340. xxx_messageInfo_PriceFeedItem.Merge(dst, src)
  341. }
  342. func (m *PriceFeedItem) XXX_Size() int {
  343. return xxx_messageInfo_PriceFeedItem.Size(m)
  344. }
  345. func (m *PriceFeedItem) XXX_DiscardUnknown() {
  346. xxx_messageInfo_PriceFeedItem.DiscardUnknown(m)
  347. }
  348. var xxx_messageInfo_PriceFeedItem proto.InternalMessageInfo
  349. func (m *PriceFeedItem) GetType() enums.PriceExtensionTypeEnum_PriceExtensionType {
  350. if m != nil {
  351. return m.Type
  352. }
  353. return enums.PriceExtensionTypeEnum_UNSPECIFIED
  354. }
  355. func (m *PriceFeedItem) GetPriceQualifier() enums.PriceExtensionPriceQualifierEnum_PriceExtensionPriceQualifier {
  356. if m != nil {
  357. return m.PriceQualifier
  358. }
  359. return enums.PriceExtensionPriceQualifierEnum_UNSPECIFIED
  360. }
  361. func (m *PriceFeedItem) GetTrackingUrlTemplate() *wrappers.StringValue {
  362. if m != nil {
  363. return m.TrackingUrlTemplate
  364. }
  365. return nil
  366. }
  367. func (m *PriceFeedItem) GetLanguageCode() *wrappers.StringValue {
  368. if m != nil {
  369. return m.LanguageCode
  370. }
  371. return nil
  372. }
  373. func (m *PriceFeedItem) GetPriceOfferings() []*PriceOffer {
  374. if m != nil {
  375. return m.PriceOfferings
  376. }
  377. return nil
  378. }
  379. func (m *PriceFeedItem) GetFinalUrlSuffix() *wrappers.StringValue {
  380. if m != nil {
  381. return m.FinalUrlSuffix
  382. }
  383. return nil
  384. }
  385. // Represents one price offer in a price extension.
  386. type PriceOffer struct {
  387. // Header text of this offer.
  388. Header *wrappers.StringValue `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
  389. // Description text of this offer.
  390. Description *wrappers.StringValue `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
  391. // Price value of this offer.
  392. Price *Money `protobuf:"bytes,3,opt,name=price,proto3" json:"price,omitempty"`
  393. // Price unit for this offer.
  394. Unit enums.PriceExtensionPriceUnitEnum_PriceExtensionPriceUnit `protobuf:"varint,4,opt,name=unit,proto3,enum=google.ads.googleads.v1.enums.PriceExtensionPriceUnitEnum_PriceExtensionPriceUnit" json:"unit,omitempty"`
  395. // A list of possible final URLs after all cross domain redirects.
  396. FinalUrls []*wrappers.StringValue `protobuf:"bytes,5,rep,name=final_urls,json=finalUrls,proto3" json:"final_urls,omitempty"`
  397. // A list of possible final mobile URLs after all cross domain redirects.
  398. FinalMobileUrls []*wrappers.StringValue `protobuf:"bytes,6,rep,name=final_mobile_urls,json=finalMobileUrls,proto3" json:"final_mobile_urls,omitempty"`
  399. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  400. XXX_unrecognized []byte `json:"-"`
  401. XXX_sizecache int32 `json:"-"`
  402. }
  403. func (m *PriceOffer) Reset() { *m = PriceOffer{} }
  404. func (m *PriceOffer) String() string { return proto.CompactTextString(m) }
  405. func (*PriceOffer) ProtoMessage() {}
  406. func (*PriceOffer) Descriptor() ([]byte, []int) {
  407. return fileDescriptor_extensions_d891c1e411eb40f7, []int{5}
  408. }
  409. func (m *PriceOffer) XXX_Unmarshal(b []byte) error {
  410. return xxx_messageInfo_PriceOffer.Unmarshal(m, b)
  411. }
  412. func (m *PriceOffer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  413. return xxx_messageInfo_PriceOffer.Marshal(b, m, deterministic)
  414. }
  415. func (dst *PriceOffer) XXX_Merge(src proto.Message) {
  416. xxx_messageInfo_PriceOffer.Merge(dst, src)
  417. }
  418. func (m *PriceOffer) XXX_Size() int {
  419. return xxx_messageInfo_PriceOffer.Size(m)
  420. }
  421. func (m *PriceOffer) XXX_DiscardUnknown() {
  422. xxx_messageInfo_PriceOffer.DiscardUnknown(m)
  423. }
  424. var xxx_messageInfo_PriceOffer proto.InternalMessageInfo
  425. func (m *PriceOffer) GetHeader() *wrappers.StringValue {
  426. if m != nil {
  427. return m.Header
  428. }
  429. return nil
  430. }
  431. func (m *PriceOffer) GetDescription() *wrappers.StringValue {
  432. if m != nil {
  433. return m.Description
  434. }
  435. return nil
  436. }
  437. func (m *PriceOffer) GetPrice() *Money {
  438. if m != nil {
  439. return m.Price
  440. }
  441. return nil
  442. }
  443. func (m *PriceOffer) GetUnit() enums.PriceExtensionPriceUnitEnum_PriceExtensionPriceUnit {
  444. if m != nil {
  445. return m.Unit
  446. }
  447. return enums.PriceExtensionPriceUnitEnum_UNSPECIFIED
  448. }
  449. func (m *PriceOffer) GetFinalUrls() []*wrappers.StringValue {
  450. if m != nil {
  451. return m.FinalUrls
  452. }
  453. return nil
  454. }
  455. func (m *PriceOffer) GetFinalMobileUrls() []*wrappers.StringValue {
  456. if m != nil {
  457. return m.FinalMobileUrls
  458. }
  459. return nil
  460. }
  461. // Represents a Promotion extension.
  462. type PromotionFeedItem struct {
  463. // A freeform description of what the promotion is targeting.
  464. // This field is required.
  465. PromotionTarget *wrappers.StringValue `protobuf:"bytes,1,opt,name=promotion_target,json=promotionTarget,proto3" json:"promotion_target,omitempty"`
  466. // Enum that modifies the qualification of the discount.
  467. DiscountModifier enums.PromotionExtensionDiscountModifierEnum_PromotionExtensionDiscountModifier `protobuf:"varint,2,opt,name=discount_modifier,json=discountModifier,proto3,enum=google.ads.googleads.v1.enums.PromotionExtensionDiscountModifierEnum_PromotionExtensionDiscountModifier" json:"discount_modifier,omitempty"`
  468. // Start date of when the promotion is eligible to be redeemed.
  469. // This field is currently mutate only.
  470. PromotionStartDate *wrappers.StringValue `protobuf:"bytes,7,opt,name=promotion_start_date,json=promotionStartDate,proto3" json:"promotion_start_date,omitempty"`
  471. // End date of when the promotion is eligible to be redeemed.
  472. // This field is currently mutate only.
  473. PromotionEndDate *wrappers.StringValue `protobuf:"bytes,8,opt,name=promotion_end_date,json=promotionEndDate,proto3" json:"promotion_end_date,omitempty"`
  474. // The occasion the promotion was intended for.
  475. // If an occasion is set, the redemption window will need to fall within
  476. // the date range associated with the occasion.
  477. Occasion enums.PromotionExtensionOccasionEnum_PromotionExtensionOccasion `protobuf:"varint,9,opt,name=occasion,proto3,enum=google.ads.googleads.v1.enums.PromotionExtensionOccasionEnum_PromotionExtensionOccasion" json:"occasion,omitempty"`
  478. // A list of possible final URLs after all cross domain redirects.
  479. // This field is required.
  480. FinalUrls []*wrappers.StringValue `protobuf:"bytes,10,rep,name=final_urls,json=finalUrls,proto3" json:"final_urls,omitempty"`
  481. // A list of possible final mobile URLs after all cross domain redirects.
  482. FinalMobileUrls []*wrappers.StringValue `protobuf:"bytes,11,rep,name=final_mobile_urls,json=finalMobileUrls,proto3" json:"final_mobile_urls,omitempty"`
  483. // URL template for constructing a tracking URL.
  484. TrackingUrlTemplate *wrappers.StringValue `protobuf:"bytes,12,opt,name=tracking_url_template,json=trackingUrlTemplate,proto3" json:"tracking_url_template,omitempty"`
  485. // A list of mappings to be used for substituting URL custom parameter tags in
  486. // the tracking_url_template, final_urls, and/or final_mobile_urls.
  487. UrlCustomParameters []*CustomParameter `protobuf:"bytes,13,rep,name=url_custom_parameters,json=urlCustomParameters,proto3" json:"url_custom_parameters,omitempty"`
  488. // URL template for appending params to landing page URLs served with parallel
  489. // tracking.
  490. FinalUrlSuffix *wrappers.StringValue `protobuf:"bytes,14,opt,name=final_url_suffix,json=finalUrlSuffix,proto3" json:"final_url_suffix,omitempty"`
  491. // The language of the promotion.
  492. // Represented as BCP 47 language tag.
  493. LanguageCode *wrappers.StringValue `protobuf:"bytes,15,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
  494. // Discount type, can be percentage off or amount off.
  495. //
  496. // Types that are valid to be assigned to DiscountType:
  497. // *PromotionFeedItem_PercentOff
  498. // *PromotionFeedItem_MoneyAmountOff
  499. DiscountType isPromotionFeedItem_DiscountType `protobuf_oneof:"discount_type"`
  500. // Promotion trigger. Can be by promotion code or promo by eligible order
  501. // amount.
  502. //
  503. // Types that are valid to be assigned to PromotionTrigger:
  504. // *PromotionFeedItem_PromotionCode
  505. // *PromotionFeedItem_OrdersOverAmount
  506. PromotionTrigger isPromotionFeedItem_PromotionTrigger `protobuf_oneof:"promotion_trigger"`
  507. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  508. XXX_unrecognized []byte `json:"-"`
  509. XXX_sizecache int32 `json:"-"`
  510. }
  511. func (m *PromotionFeedItem) Reset() { *m = PromotionFeedItem{} }
  512. func (m *PromotionFeedItem) String() string { return proto.CompactTextString(m) }
  513. func (*PromotionFeedItem) ProtoMessage() {}
  514. func (*PromotionFeedItem) Descriptor() ([]byte, []int) {
  515. return fileDescriptor_extensions_d891c1e411eb40f7, []int{6}
  516. }
  517. func (m *PromotionFeedItem) XXX_Unmarshal(b []byte) error {
  518. return xxx_messageInfo_PromotionFeedItem.Unmarshal(m, b)
  519. }
  520. func (m *PromotionFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  521. return xxx_messageInfo_PromotionFeedItem.Marshal(b, m, deterministic)
  522. }
  523. func (dst *PromotionFeedItem) XXX_Merge(src proto.Message) {
  524. xxx_messageInfo_PromotionFeedItem.Merge(dst, src)
  525. }
  526. func (m *PromotionFeedItem) XXX_Size() int {
  527. return xxx_messageInfo_PromotionFeedItem.Size(m)
  528. }
  529. func (m *PromotionFeedItem) XXX_DiscardUnknown() {
  530. xxx_messageInfo_PromotionFeedItem.DiscardUnknown(m)
  531. }
  532. var xxx_messageInfo_PromotionFeedItem proto.InternalMessageInfo
  533. func (m *PromotionFeedItem) GetPromotionTarget() *wrappers.StringValue {
  534. if m != nil {
  535. return m.PromotionTarget
  536. }
  537. return nil
  538. }
  539. func (m *PromotionFeedItem) GetDiscountModifier() enums.PromotionExtensionDiscountModifierEnum_PromotionExtensionDiscountModifier {
  540. if m != nil {
  541. return m.DiscountModifier
  542. }
  543. return enums.PromotionExtensionDiscountModifierEnum_UNSPECIFIED
  544. }
  545. func (m *PromotionFeedItem) GetPromotionStartDate() *wrappers.StringValue {
  546. if m != nil {
  547. return m.PromotionStartDate
  548. }
  549. return nil
  550. }
  551. func (m *PromotionFeedItem) GetPromotionEndDate() *wrappers.StringValue {
  552. if m != nil {
  553. return m.PromotionEndDate
  554. }
  555. return nil
  556. }
  557. func (m *PromotionFeedItem) GetOccasion() enums.PromotionExtensionOccasionEnum_PromotionExtensionOccasion {
  558. if m != nil {
  559. return m.Occasion
  560. }
  561. return enums.PromotionExtensionOccasionEnum_UNSPECIFIED
  562. }
  563. func (m *PromotionFeedItem) GetFinalUrls() []*wrappers.StringValue {
  564. if m != nil {
  565. return m.FinalUrls
  566. }
  567. return nil
  568. }
  569. func (m *PromotionFeedItem) GetFinalMobileUrls() []*wrappers.StringValue {
  570. if m != nil {
  571. return m.FinalMobileUrls
  572. }
  573. return nil
  574. }
  575. func (m *PromotionFeedItem) GetTrackingUrlTemplate() *wrappers.StringValue {
  576. if m != nil {
  577. return m.TrackingUrlTemplate
  578. }
  579. return nil
  580. }
  581. func (m *PromotionFeedItem) GetUrlCustomParameters() []*CustomParameter {
  582. if m != nil {
  583. return m.UrlCustomParameters
  584. }
  585. return nil
  586. }
  587. func (m *PromotionFeedItem) GetFinalUrlSuffix() *wrappers.StringValue {
  588. if m != nil {
  589. return m.FinalUrlSuffix
  590. }
  591. return nil
  592. }
  593. func (m *PromotionFeedItem) GetLanguageCode() *wrappers.StringValue {
  594. if m != nil {
  595. return m.LanguageCode
  596. }
  597. return nil
  598. }
  599. type isPromotionFeedItem_DiscountType interface {
  600. isPromotionFeedItem_DiscountType()
  601. }
  602. type PromotionFeedItem_PercentOff struct {
  603. PercentOff *wrappers.Int64Value `protobuf:"bytes,3,opt,name=percent_off,json=percentOff,proto3,oneof"`
  604. }
  605. type PromotionFeedItem_MoneyAmountOff struct {
  606. MoneyAmountOff *Money `protobuf:"bytes,4,opt,name=money_amount_off,json=moneyAmountOff,proto3,oneof"`
  607. }
  608. func (*PromotionFeedItem_PercentOff) isPromotionFeedItem_DiscountType() {}
  609. func (*PromotionFeedItem_MoneyAmountOff) isPromotionFeedItem_DiscountType() {}
  610. func (m *PromotionFeedItem) GetDiscountType() isPromotionFeedItem_DiscountType {
  611. if m != nil {
  612. return m.DiscountType
  613. }
  614. return nil
  615. }
  616. func (m *PromotionFeedItem) GetPercentOff() *wrappers.Int64Value {
  617. if x, ok := m.GetDiscountType().(*PromotionFeedItem_PercentOff); ok {
  618. return x.PercentOff
  619. }
  620. return nil
  621. }
  622. func (m *PromotionFeedItem) GetMoneyAmountOff() *Money {
  623. if x, ok := m.GetDiscountType().(*PromotionFeedItem_MoneyAmountOff); ok {
  624. return x.MoneyAmountOff
  625. }
  626. return nil
  627. }
  628. type isPromotionFeedItem_PromotionTrigger interface {
  629. isPromotionFeedItem_PromotionTrigger()
  630. }
  631. type PromotionFeedItem_PromotionCode struct {
  632. PromotionCode *wrappers.StringValue `protobuf:"bytes,5,opt,name=promotion_code,json=promotionCode,proto3,oneof"`
  633. }
  634. type PromotionFeedItem_OrdersOverAmount struct {
  635. OrdersOverAmount *Money `protobuf:"bytes,6,opt,name=orders_over_amount,json=ordersOverAmount,proto3,oneof"`
  636. }
  637. func (*PromotionFeedItem_PromotionCode) isPromotionFeedItem_PromotionTrigger() {}
  638. func (*PromotionFeedItem_OrdersOverAmount) isPromotionFeedItem_PromotionTrigger() {}
  639. func (m *PromotionFeedItem) GetPromotionTrigger() isPromotionFeedItem_PromotionTrigger {
  640. if m != nil {
  641. return m.PromotionTrigger
  642. }
  643. return nil
  644. }
  645. func (m *PromotionFeedItem) GetPromotionCode() *wrappers.StringValue {
  646. if x, ok := m.GetPromotionTrigger().(*PromotionFeedItem_PromotionCode); ok {
  647. return x.PromotionCode
  648. }
  649. return nil
  650. }
  651. func (m *PromotionFeedItem) GetOrdersOverAmount() *Money {
  652. if x, ok := m.GetPromotionTrigger().(*PromotionFeedItem_OrdersOverAmount); ok {
  653. return x.OrdersOverAmount
  654. }
  655. return nil
  656. }
  657. // XXX_OneofFuncs is for the internal use of the proto package.
  658. func (*PromotionFeedItem) 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{}) {
  659. return _PromotionFeedItem_OneofMarshaler, _PromotionFeedItem_OneofUnmarshaler, _PromotionFeedItem_OneofSizer, []interface{}{
  660. (*PromotionFeedItem_PercentOff)(nil),
  661. (*PromotionFeedItem_MoneyAmountOff)(nil),
  662. (*PromotionFeedItem_PromotionCode)(nil),
  663. (*PromotionFeedItem_OrdersOverAmount)(nil),
  664. }
  665. }
  666. func _PromotionFeedItem_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  667. m := msg.(*PromotionFeedItem)
  668. // discount_type
  669. switch x := m.DiscountType.(type) {
  670. case *PromotionFeedItem_PercentOff:
  671. b.EncodeVarint(3<<3 | proto.WireBytes)
  672. if err := b.EncodeMessage(x.PercentOff); err != nil {
  673. return err
  674. }
  675. case *PromotionFeedItem_MoneyAmountOff:
  676. b.EncodeVarint(4<<3 | proto.WireBytes)
  677. if err := b.EncodeMessage(x.MoneyAmountOff); err != nil {
  678. return err
  679. }
  680. case nil:
  681. default:
  682. return fmt.Errorf("PromotionFeedItem.DiscountType has unexpected type %T", x)
  683. }
  684. // promotion_trigger
  685. switch x := m.PromotionTrigger.(type) {
  686. case *PromotionFeedItem_PromotionCode:
  687. b.EncodeVarint(5<<3 | proto.WireBytes)
  688. if err := b.EncodeMessage(x.PromotionCode); err != nil {
  689. return err
  690. }
  691. case *PromotionFeedItem_OrdersOverAmount:
  692. b.EncodeVarint(6<<3 | proto.WireBytes)
  693. if err := b.EncodeMessage(x.OrdersOverAmount); err != nil {
  694. return err
  695. }
  696. case nil:
  697. default:
  698. return fmt.Errorf("PromotionFeedItem.PromotionTrigger has unexpected type %T", x)
  699. }
  700. return nil
  701. }
  702. func _PromotionFeedItem_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  703. m := msg.(*PromotionFeedItem)
  704. switch tag {
  705. case 3: // discount_type.percent_off
  706. if wire != proto.WireBytes {
  707. return true, proto.ErrInternalBadWireType
  708. }
  709. msg := new(wrappers.Int64Value)
  710. err := b.DecodeMessage(msg)
  711. m.DiscountType = &PromotionFeedItem_PercentOff{msg}
  712. return true, err
  713. case 4: // discount_type.money_amount_off
  714. if wire != proto.WireBytes {
  715. return true, proto.ErrInternalBadWireType
  716. }
  717. msg := new(Money)
  718. err := b.DecodeMessage(msg)
  719. m.DiscountType = &PromotionFeedItem_MoneyAmountOff{msg}
  720. return true, err
  721. case 5: // promotion_trigger.promotion_code
  722. if wire != proto.WireBytes {
  723. return true, proto.ErrInternalBadWireType
  724. }
  725. msg := new(wrappers.StringValue)
  726. err := b.DecodeMessage(msg)
  727. m.PromotionTrigger = &PromotionFeedItem_PromotionCode{msg}
  728. return true, err
  729. case 6: // promotion_trigger.orders_over_amount
  730. if wire != proto.WireBytes {
  731. return true, proto.ErrInternalBadWireType
  732. }
  733. msg := new(Money)
  734. err := b.DecodeMessage(msg)
  735. m.PromotionTrigger = &PromotionFeedItem_OrdersOverAmount{msg}
  736. return true, err
  737. default:
  738. return false, nil
  739. }
  740. }
  741. func _PromotionFeedItem_OneofSizer(msg proto.Message) (n int) {
  742. m := msg.(*PromotionFeedItem)
  743. // discount_type
  744. switch x := m.DiscountType.(type) {
  745. case *PromotionFeedItem_PercentOff:
  746. s := proto.Size(x.PercentOff)
  747. n += 1 // tag and wire
  748. n += proto.SizeVarint(uint64(s))
  749. n += s
  750. case *PromotionFeedItem_MoneyAmountOff:
  751. s := proto.Size(x.MoneyAmountOff)
  752. n += 1 // tag and wire
  753. n += proto.SizeVarint(uint64(s))
  754. n += s
  755. case nil:
  756. default:
  757. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  758. }
  759. // promotion_trigger
  760. switch x := m.PromotionTrigger.(type) {
  761. case *PromotionFeedItem_PromotionCode:
  762. s := proto.Size(x.PromotionCode)
  763. n += 1 // tag and wire
  764. n += proto.SizeVarint(uint64(s))
  765. n += s
  766. case *PromotionFeedItem_OrdersOverAmount:
  767. s := proto.Size(x.OrdersOverAmount)
  768. n += 1 // tag and wire
  769. n += proto.SizeVarint(uint64(s))
  770. n += s
  771. case nil:
  772. default:
  773. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  774. }
  775. return n
  776. }
  777. // Represents a structured snippet extension.
  778. type StructuredSnippetFeedItem struct {
  779. // The header of the snippet.
  780. // This string must not be empty.
  781. Header *wrappers.StringValue `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
  782. // The values in the snippet.
  783. // The maximum size of this collection is 10.
  784. Values []*wrappers.StringValue `protobuf:"bytes,2,rep,name=values,proto3" json:"values,omitempty"`
  785. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  786. XXX_unrecognized []byte `json:"-"`
  787. XXX_sizecache int32 `json:"-"`
  788. }
  789. func (m *StructuredSnippetFeedItem) Reset() { *m = StructuredSnippetFeedItem{} }
  790. func (m *StructuredSnippetFeedItem) String() string { return proto.CompactTextString(m) }
  791. func (*StructuredSnippetFeedItem) ProtoMessage() {}
  792. func (*StructuredSnippetFeedItem) Descriptor() ([]byte, []int) {
  793. return fileDescriptor_extensions_d891c1e411eb40f7, []int{7}
  794. }
  795. func (m *StructuredSnippetFeedItem) XXX_Unmarshal(b []byte) error {
  796. return xxx_messageInfo_StructuredSnippetFeedItem.Unmarshal(m, b)
  797. }
  798. func (m *StructuredSnippetFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  799. return xxx_messageInfo_StructuredSnippetFeedItem.Marshal(b, m, deterministic)
  800. }
  801. func (dst *StructuredSnippetFeedItem) XXX_Merge(src proto.Message) {
  802. xxx_messageInfo_StructuredSnippetFeedItem.Merge(dst, src)
  803. }
  804. func (m *StructuredSnippetFeedItem) XXX_Size() int {
  805. return xxx_messageInfo_StructuredSnippetFeedItem.Size(m)
  806. }
  807. func (m *StructuredSnippetFeedItem) XXX_DiscardUnknown() {
  808. xxx_messageInfo_StructuredSnippetFeedItem.DiscardUnknown(m)
  809. }
  810. var xxx_messageInfo_StructuredSnippetFeedItem proto.InternalMessageInfo
  811. func (m *StructuredSnippetFeedItem) GetHeader() *wrappers.StringValue {
  812. if m != nil {
  813. return m.Header
  814. }
  815. return nil
  816. }
  817. func (m *StructuredSnippetFeedItem) GetValues() []*wrappers.StringValue {
  818. if m != nil {
  819. return m.Values
  820. }
  821. return nil
  822. }
  823. // Represents a sitelink extension.
  824. type SitelinkFeedItem struct {
  825. // URL display text for the sitelink.
  826. // The length of this string should be between 1 and 25, inclusive.
  827. LinkText *wrappers.StringValue `protobuf:"bytes,1,opt,name=link_text,json=linkText,proto3" json:"link_text,omitempty"`
  828. // First line of the description for the sitelink.
  829. // If this value is set, line2 must also be set.
  830. // The length of this string should be between 0 and 35, inclusive.
  831. Line1 *wrappers.StringValue `protobuf:"bytes,2,opt,name=line1,proto3" json:"line1,omitempty"`
  832. // Second line of the description for the sitelink.
  833. // If this value is set, line1 must also be set.
  834. // The length of this string should be between 0 and 35, inclusive.
  835. Line2 *wrappers.StringValue `protobuf:"bytes,3,opt,name=line2,proto3" json:"line2,omitempty"`
  836. // A list of possible final URLs after all cross domain redirects.
  837. FinalUrls []*wrappers.StringValue `protobuf:"bytes,4,rep,name=final_urls,json=finalUrls,proto3" json:"final_urls,omitempty"`
  838. // A list of possible final mobile URLs after all cross domain redirects.
  839. FinalMobileUrls []*wrappers.StringValue `protobuf:"bytes,5,rep,name=final_mobile_urls,json=finalMobileUrls,proto3" json:"final_mobile_urls,omitempty"`
  840. // URL template for constructing a tracking URL.
  841. TrackingUrlTemplate *wrappers.StringValue `protobuf:"bytes,6,opt,name=tracking_url_template,json=trackingUrlTemplate,proto3" json:"tracking_url_template,omitempty"`
  842. // A list of mappings to be used for substituting URL custom parameter tags in
  843. // the tracking_url_template, final_urls, and/or final_mobile_urls.
  844. UrlCustomParameters []*CustomParameter `protobuf:"bytes,7,rep,name=url_custom_parameters,json=urlCustomParameters,proto3" json:"url_custom_parameters,omitempty"`
  845. // Final URL suffix to be appended to landing page URLs served with
  846. // parallel tracking.
  847. FinalUrlSuffix *wrappers.StringValue `protobuf:"bytes,8,opt,name=final_url_suffix,json=finalUrlSuffix,proto3" json:"final_url_suffix,omitempty"`
  848. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  849. XXX_unrecognized []byte `json:"-"`
  850. XXX_sizecache int32 `json:"-"`
  851. }
  852. func (m *SitelinkFeedItem) Reset() { *m = SitelinkFeedItem{} }
  853. func (m *SitelinkFeedItem) String() string { return proto.CompactTextString(m) }
  854. func (*SitelinkFeedItem) ProtoMessage() {}
  855. func (*SitelinkFeedItem) Descriptor() ([]byte, []int) {
  856. return fileDescriptor_extensions_d891c1e411eb40f7, []int{8}
  857. }
  858. func (m *SitelinkFeedItem) XXX_Unmarshal(b []byte) error {
  859. return xxx_messageInfo_SitelinkFeedItem.Unmarshal(m, b)
  860. }
  861. func (m *SitelinkFeedItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  862. return xxx_messageInfo_SitelinkFeedItem.Marshal(b, m, deterministic)
  863. }
  864. func (dst *SitelinkFeedItem) XXX_Merge(src proto.Message) {
  865. xxx_messageInfo_SitelinkFeedItem.Merge(dst, src)
  866. }
  867. func (m *SitelinkFeedItem) XXX_Size() int {
  868. return xxx_messageInfo_SitelinkFeedItem.Size(m)
  869. }
  870. func (m *SitelinkFeedItem) XXX_DiscardUnknown() {
  871. xxx_messageInfo_SitelinkFeedItem.DiscardUnknown(m)
  872. }
  873. var xxx_messageInfo_SitelinkFeedItem proto.InternalMessageInfo
  874. func (m *SitelinkFeedItem) GetLinkText() *wrappers.StringValue {
  875. if m != nil {
  876. return m.LinkText
  877. }
  878. return nil
  879. }
  880. func (m *SitelinkFeedItem) GetLine1() *wrappers.StringValue {
  881. if m != nil {
  882. return m.Line1
  883. }
  884. return nil
  885. }
  886. func (m *SitelinkFeedItem) GetLine2() *wrappers.StringValue {
  887. if m != nil {
  888. return m.Line2
  889. }
  890. return nil
  891. }
  892. func (m *SitelinkFeedItem) GetFinalUrls() []*wrappers.StringValue {
  893. if m != nil {
  894. return m.FinalUrls
  895. }
  896. return nil
  897. }
  898. func (m *SitelinkFeedItem) GetFinalMobileUrls() []*wrappers.StringValue {
  899. if m != nil {
  900. return m.FinalMobileUrls
  901. }
  902. return nil
  903. }
  904. func (m *SitelinkFeedItem) GetTrackingUrlTemplate() *wrappers.StringValue {
  905. if m != nil {
  906. return m.TrackingUrlTemplate
  907. }
  908. return nil
  909. }
  910. func (m *SitelinkFeedItem) GetUrlCustomParameters() []*CustomParameter {
  911. if m != nil {
  912. return m.UrlCustomParameters
  913. }
  914. return nil
  915. }
  916. func (m *SitelinkFeedItem) GetFinalUrlSuffix() *wrappers.StringValue {
  917. if m != nil {
  918. return m.FinalUrlSuffix
  919. }
  920. return nil
  921. }
  922. func init() {
  923. proto.RegisterType((*AppFeedItem)(nil), "google.ads.googleads.v1.common.AppFeedItem")
  924. proto.RegisterType((*CallFeedItem)(nil), "google.ads.googleads.v1.common.CallFeedItem")
  925. proto.RegisterType((*CalloutFeedItem)(nil), "google.ads.googleads.v1.common.CalloutFeedItem")
  926. proto.RegisterType((*TextMessageFeedItem)(nil), "google.ads.googleads.v1.common.TextMessageFeedItem")
  927. proto.RegisterType((*PriceFeedItem)(nil), "google.ads.googleads.v1.common.PriceFeedItem")
  928. proto.RegisterType((*PriceOffer)(nil), "google.ads.googleads.v1.common.PriceOffer")
  929. proto.RegisterType((*PromotionFeedItem)(nil), "google.ads.googleads.v1.common.PromotionFeedItem")
  930. proto.RegisterType((*StructuredSnippetFeedItem)(nil), "google.ads.googleads.v1.common.StructuredSnippetFeedItem")
  931. proto.RegisterType((*SitelinkFeedItem)(nil), "google.ads.googleads.v1.common.SitelinkFeedItem")
  932. }
  933. func init() {
  934. proto.RegisterFile("google/ads/googleads/v1/common/extensions.proto", fileDescriptor_extensions_d891c1e411eb40f7)
  935. }
  936. var fileDescriptor_extensions_d891c1e411eb40f7 = []byte{
  937. // 1419 bytes of a gzipped FileDescriptorProto
  938. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0xdd, 0x6e, 0x1b, 0x45,
  939. 0x14, 0xae, 0x13, 0xdb, 0x4d, 0x8e, 0x63, 0x3b, 0xd9, 0xb4, 0xc8, 0x84, 0xaa, 0x14, 0x4b, 0x48,
  940. 0x15, 0x12, 0xeb, 0xc6, 0x0d, 0x08, 0x5c, 0xa9, 0xe0, 0x38, 0x69, 0x13, 0xa4, 0xfc, 0x74, 0x9d,
  941. 0x44, 0x08, 0x45, 0x5a, 0x4d, 0x76, 0xc7, 0xee, 0xaa, 0xbb, 0x33, 0xcb, 0xcc, 0x6c, 0x48, 0x1e,
  942. 0x00, 0xf1, 0x04, 0xbc, 0x00, 0x48, 0x20, 0x71, 0xc1, 0x0b, 0x70, 0xc5, 0x2d, 0x77, 0xdc, 0xf0,
  943. 0x10, 0x7d, 0x0a, 0x34, 0xb3, 0xb3, 0xeb, 0xc4, 0x69, 0xb2, 0xeb, 0x10, 0x24, 0x2e, 0xb8, 0xca,
  944. 0xec, 0xfa, 0x7c, 0xdf, 0x9c, 0x39, 0xfb, 0x9d, 0x9f, 0x09, 0xb4, 0x86, 0x94, 0x0e, 0x7d, 0xdc,
  945. 0x42, 0x2e, 0xd7, 0x4b, 0xb9, 0x3a, 0x5e, 0x6e, 0x39, 0x34, 0x08, 0x28, 0x69, 0xe1, 0x13, 0x81,
  946. 0x09, 0xf7, 0x28, 0xe1, 0x66, 0xc8, 0xa8, 0xa0, 0xc6, 0xfd, 0xd8, 0xca, 0x44, 0x2e, 0x37, 0x53,
  947. 0x80, 0x79, 0xbc, 0x6c, 0xc6, 0x80, 0xa5, 0x8f, 0x32, 0x08, 0x9d, 0x88, 0x0b, 0x1a, 0xd8, 0x21,
  948. 0x62, 0x28, 0xc0, 0x02, 0xb3, 0x98, 0x76, 0xe9, 0x51, 0x06, 0x6c, 0x80, 0xb1, 0x6b, 0xc7, 0x6b,
  949. 0x8d, 0xf8, 0xf0, 0x32, 0x04, 0x26, 0x51, 0xc0, 0x5b, 0x28, 0x0c, 0x6d, 0x2e, 0x28, 0xc3, 0xda,
  950. 0xbc, 0x77, 0xb5, 0xb9, 0x83, 0x7c, 0xdf, 0x76, 0x28, 0x39, 0xc6, 0x4c, 0x9e, 0xd6, 0x66, 0x38,
  951. 0xa4, 0x4c, 0x78, 0x64, 0x68, 0x73, 0x81, 0x44, 0x4e, 0x92, 0x90, 0x79, 0x0e, 0xb6, 0xd3, 0x90,
  952. 0xd9, 0xf1, 0xf3, 0xd7, 0x11, 0xf2, 0xbd, 0x81, 0x97, 0x1e, 0xf5, 0xe9, 0x75, 0x48, 0x22, 0xe2,
  953. 0x09, 0x8d, 0xff, 0x64, 0x32, 0xbc, 0x38, 0x0d, 0x13, 0xf7, 0x37, 0xb3, 0x90, 0x34, 0xa0, 0x42,
  954. 0x62, 0x46, 0x68, 0xd7, 0xe3, 0x0e, 0x8d, 0x88, 0xb0, 0x03, 0xea, 0x9e, 0x3d, 0xc4, 0xe7, 0x93,
  955. 0x53, 0x51, 0xc7, 0x41, 0x72, 0xa1, 0x19, 0xb4, 0x90, 0x5a, 0xea, 0xe9, 0x28, 0x1a, 0xb4, 0xbe,
  956. 0x61, 0x28, 0x0c, 0x31, 0xd3, 0x42, 0x5b, 0xba, 0x97, 0xec, 0x10, 0x7a, 0x2d, 0x44, 0x08, 0x15,
  957. 0x48, 0x8c, 0x64, 0xd8, 0xfc, 0xab, 0x08, 0x95, 0x6e, 0x18, 0x3e, 0xc3, 0xd8, 0xdd, 0x14, 0x38,
  958. 0x30, 0x3e, 0x85, 0x59, 0xdf, 0x23, 0xaf, 0x6c, 0x81, 0x4f, 0x44, 0xa3, 0xf0, 0xa0, 0xf0, 0xb0,
  959. 0xd2, 0xbe, 0xa7, 0xf5, 0x69, 0x26, 0x3b, 0x98, 0x7d, 0xc1, 0x3c, 0x32, 0x3c, 0x40, 0x7e, 0x84,
  960. 0xad, 0x19, 0x69, 0xbe, 0x87, 0x4f, 0x84, 0xf1, 0x18, 0xca, 0x52, 0x2c, 0x9e, 0xdb, 0x98, 0xca,
  961. 0x81, 0x2b, 0xa1, 0x30, 0xdc, 0x74, 0x8d, 0x17, 0x30, 0x9b, 0x2a, 0xac, 0x31, 0xfd, 0xa0, 0xf0,
  962. 0xb0, 0xd6, 0x5e, 0x31, 0x2f, 0x4b, 0x0d, 0x15, 0x13, 0xb3, 0x1b, 0x86, 0x7d, 0x69, 0xbe, 0x4e,
  963. 0xa2, 0x20, 0x7d, 0xb0, 0x66, 0x90, 0x5e, 0x19, 0x4f, 0x00, 0x06, 0x1e, 0x41, 0xbe, 0x1d, 0x31,
  964. 0x9f, 0x37, 0x8a, 0x0f, 0xa6, 0x33, 0x7d, 0x99, 0x55, 0xf6, 0xfb, 0xcc, 0xe7, 0xc6, 0x06, 0x2c,
  965. 0xc4, 0xe0, 0x80, 0x1e, 0x79, 0x3e, 0x8e, 0x39, 0x4a, 0x39, 0x38, 0xea, 0x0a, 0xb6, 0xa5, 0x50,
  966. 0x8a, 0x69, 0x17, 0xee, 0x0a, 0x86, 0x9c, 0x57, 0x52, 0xfb, 0x11, 0xf3, 0x6d, 0x81, 0x83, 0xd0,
  967. 0x47, 0x02, 0x37, 0xca, 0x39, 0xa2, 0xb3, 0x98, 0x40, 0xf7, 0x99, 0xbf, 0xa7, 0x81, 0x86, 0x03,
  968. 0x77, 0x25, 0xd1, 0x78, 0xe6, 0xf3, 0xc6, 0x6d, 0xe5, 0x5f, 0xcb, 0xbc, 0xba, 0xa4, 0x98, 0x3d,
  969. 0x05, 0xdc, 0x4d, 0x70, 0xd6, 0x62, 0xc4, 0xfc, 0xb1, 0x77, 0xdc, 0x78, 0x06, 0xf3, 0x69, 0xf4,
  970. 0x6c, 0x1e, 0x0d, 0x06, 0xde, 0x49, 0x63, 0x26, 0x87, 0xc7, 0xb5, 0x24, 0x86, 0x7d, 0x85, 0x69,
  971. 0xfe, 0x5e, 0x84, 0xb9, 0x1e, 0xf2, 0xfd, 0x54, 0x59, 0x9f, 0xc1, 0x5c, 0xf8, 0x92, 0x12, 0x6c,
  972. 0x93, 0x28, 0x38, 0xc2, 0x2c, 0x97, 0xb8, 0x2a, 0x0a, 0xb1, 0xad, 0x00, 0x92, 0x40, 0xa5, 0x10,
  973. 0x3b, 0xb5, 0x1d, 0xea, 0xe2, 0x5c, 0x2a, 0xab, 0x68, 0x44, 0x8f, 0xba, 0xd8, 0xd8, 0x86, 0xbb,
  974. 0xaa, 0x3c, 0xa5, 0x9f, 0x05, 0x13, 0x74, 0xe4, 0x63, 0x57, 0xe9, 0xae, 0xd2, 0x5e, 0xba, 0xc0,
  975. 0xb4, 0x4a, 0xa9, 0xaf, 0xbf, 0x87, 0x04, 0xee, 0x69, 0xdc, 0x7a, 0x0c, 0x33, 0x2c, 0x78, 0x6b,
  976. 0xbc, 0xdc, 0x21, 0x47, 0x26, 0x57, 0xa3, 0x98, 0xc3, 0xb5, 0x3b, 0x12, 0xdb, 0x4b, 0xa1, 0x5d,
  977. 0x85, 0x34, 0x30, 0xbc, 0x37, 0xce, 0x99, 0xba, 0xeb, 0x7a, 0x3c, 0xf6, 0xb7, 0x94, 0xe9, 0xef,
  978. 0xfd, 0xf3, 0xe4, 0x89, 0xe7, 0x6b, 0x9a, 0xc1, 0xf8, 0xb1, 0x00, 0xef, 0x66, 0x94, 0x6a, 0xa5,
  979. 0xd3, 0x5a, 0xfb, 0x30, 0x23, 0x1b, 0x7b, 0xe7, 0x36, 0xb2, 0x12, 0x8e, 0xbe, 0xa4, 0x50, 0x19,
  980. 0x7a, 0x95, 0x81, 0x75, 0xcf, 0xb9, 0xe2, 0xd7, 0xa6, 0x05, 0x75, 0x89, 0xa6, 0x91, 0x38, 0xab,
  981. 0x22, 0x27, 0x7e, 0x95, 0xbf, 0x44, 0x55, 0x34, 0x42, 0x56, 0xa9, 0xe6, 0x9f, 0x53, 0xb0, 0x28,
  982. 0x17, 0x5b, 0x98, 0x73, 0x34, 0xc4, 0x29, 0x71, 0x17, 0xaa, 0x47, 0x11, 0xf7, 0x08, 0xe6, 0xdc,
  983. 0x26, 0x28, 0xc0, 0xb9, 0x98, 0xe7, 0x12, 0xc8, 0x36, 0x0a, 0xf0, 0x3f, 0x17, 0xe8, 0x78, 0x8a,
  984. 0x4c, 0x4f, 0x9a, 0x22, 0x8f, 0xa0, 0xa8, 0xa2, 0x92, 0x47, 0x7f, 0xca, 0xd2, 0xe8, 0x41, 0xed,
  985. 0x4c, 0x8b, 0x93, 0xd8, 0x52, 0x0e, 0x6c, 0x35, 0xc5, 0xa8, 0x98, 0xfe, 0x5c, 0x84, 0xea, 0xae,
  986. 0x6c, 0x97, 0x69, 0x34, 0x0f, 0xa1, 0x28, 0xfb, 0xa5, 0x0a, 0x62, 0xad, 0xbd, 0x91, 0xa1, 0x21,
  987. 0x85, 0x5d, 0x4f, 0x29, 0x4f, 0xc3, 0x58, 0x39, 0x17, 0x5f, 0x5b, 0x8a, 0xd5, 0xf8, 0xb6, 0x00,
  988. 0xf5, 0xb1, 0x99, 0x40, 0x05, 0x3b, 0x5b, 0xad, 0xe7, 0x29, 0xd5, 0xd3, 0x8b, 0x84, 0xe2, 0x0d,
  989. 0x7b, 0x9e, 0x37, 0xb0, 0x6a, 0xe1, 0xb9, 0xe7, 0xcb, 0x4b, 0xfc, 0xf4, 0x75, 0x4b, 0x7c, 0x17,
  990. 0xaa, 0x3e, 0x22, 0xc3, 0x08, 0x0d, 0x71, 0xac, 0xa1, 0x3c, 0x5f, 0x72, 0x2e, 0x81, 0x28, 0x11,
  991. 0xf5, 0x93, 0xd8, 0xd0, 0xc1, 0x00, 0x4b, 0xa3, 0xa4, 0x7f, 0x7d, 0x90, 0xd5, 0x1f, 0xd4, 0x69,
  992. 0x77, 0x24, 0x4a, 0x9f, 0x74, 0x27, 0x61, 0x78, 0x63, 0x57, 0x28, 0x5f, 0xa3, 0x2b, 0xfc, 0x3a,
  993. 0x0d, 0x30, 0xda, 0xc6, 0x58, 0x81, 0xf2, 0x4b, 0x8c, 0xdc, 0x9c, 0xdd, 0x40, 0xdb, 0x1a, 0x4f,
  994. 0xa1, 0xe2, 0x62, 0xee, 0x30, 0x2f, 0x54, 0xc5, 0x36, 0x57, 0x9a, 0x9d, 0x01, 0x18, 0x4f, 0xa0,
  995. 0xa4, 0x8e, 0xa7, 0x3f, 0xd3, 0xfb, 0x59, 0x71, 0xd9, 0xa2, 0x04, 0x9f, 0x5a, 0x31, 0xc6, 0x18,
  996. 0x40, 0x51, 0xce, 0x90, 0xea, 0xc3, 0xd4, 0xda, 0xd6, 0xe4, 0x7a, 0xdb, 0x27, 0x9e, 0xb8, 0x4c,
  997. 0x6a, 0xf2, 0x37, 0x4b, 0xf1, 0x8f, 0x4d, 0x31, 0xa5, 0x1b, 0x98, 0x62, 0xca, 0xd7, 0x98, 0x62,
  998. 0x9a, 0x3f, 0x01, 0x2c, 0xec, 0x26, 0x43, 0x68, 0x9a, 0xde, 0xcf, 0x61, 0x7e, 0x34, 0x99, 0x0a,
  999. 0xc4, 0x86, 0x38, 0x5f, 0x25, 0xae, 0xa7, 0xa8, 0x3d, 0x05, 0x32, 0xbe, 0x2f, 0xc0, 0xc2, 0x85,
  1000. 0xd1, 0x58, 0xe7, 0xf2, 0xcb, 0xcc, 0xd8, 0x6a, 0xae, 0x34, 0x86, 0x6b, 0x9a, 0x69, 0x4b, 0x13,
  1001. 0xe9, 0x30, 0x67, 0x99, 0x59, 0xf3, 0xee, 0xd8, 0x1b, 0x63, 0x1b, 0xee, 0x8c, 0x0e, 0xc8, 0x05,
  1002. 0x62, 0xc2, 0x76, 0x65, 0x62, 0xdf, 0xce, 0x71, 0x48, 0x23, 0x45, 0xf6, 0x25, 0x70, 0x4d, 0xe6,
  1003. 0xf5, 0x17, 0x60, 0x9c, 0x19, 0xe5, 0x89, 0x1b, 0xb3, 0xe5, 0x99, 0xab, 0x46, 0x81, 0x5e, 0x27,
  1004. 0xae, 0xe2, 0x12, 0x30, 0x93, 0x5c, 0x01, 0x1a, 0xb3, 0x2a, 0x52, 0x5f, 0x4e, 0x1c, 0xa9, 0x1d,
  1005. 0x4d, 0x70, 0x49, 0x84, 0x92, 0x9f, 0xad, 0x74, 0xa7, 0x31, 0x3d, 0xc2, 0x0d, 0xe8, 0xb1, 0x72,
  1006. 0xa3, 0x53, 0xf5, 0xdc, 0x8d, 0x4f, 0xd5, 0xd5, 0x7f, 0x79, 0xaa, 0xae, 0x4d, 0x5e, 0x3f, 0x2f,
  1007. 0xf6, 0x87, 0xfa, 0xc4, 0xfd, 0xe1, 0x29, 0x54, 0x42, 0xcc, 0x1c, 0x4c, 0x84, 0xec, 0x10, 0xba,
  1008. 0x06, 0xbe, 0x73, 0x81, 0x60, 0x93, 0x88, 0x8f, 0x57, 0x14, 0x7e, 0xe3, 0x96, 0x05, 0x1a, 0xb1,
  1009. 0x33, 0x18, 0x18, 0x2f, 0x60, 0x3e, 0x90, 0x05, 0xd1, 0x46, 0x81, 0xca, 0x5a, 0x49, 0x52, 0x9c,
  1010. 0xa0, 0x90, 0x6e, 0xdc, 0xb2, 0x6a, 0x8a, 0xa0, 0xab, 0xf0, 0x92, 0x72, 0x1d, 0x6a, 0xa3, 0xec,
  1011. 0x50, 0xc7, 0xca, 0x31, 0x84, 0x6c, 0x14, 0xac, 0x6a, 0x8a, 0x52, 0x27, 0xdb, 0x07, 0x83, 0x32,
  1012. 0x17, 0x33, 0x6e, 0xd3, 0x63, 0xcc, 0xb4, 0x7f, 0xba, 0x4d, 0xe5, 0xf4, 0xad, 0x60, 0xcd, 0xc7,
  1013. 0x14, 0x3b, 0xc7, 0x98, 0xc5, 0x0e, 0xae, 0xd6, 0xa1, 0x9a, 0x96, 0x28, 0x39, 0x7e, 0xac, 0x2e,
  1014. 0xc2, 0xc2, 0x99, 0xea, 0xc7, 0xbc, 0xe1, 0x10, 0xb3, 0xe6, 0x77, 0x05, 0x78, 0xbb, 0x2f, 0x58,
  1015. 0xe4, 0x88, 0x88, 0x61, 0xb7, 0x4f, 0xbc, 0x30, 0xc4, 0xa3, 0xb1, 0xf5, 0x7a, 0x8d, 0x6e, 0x05,
  1016. 0xca, 0xc7, 0xf2, 0x05, 0x6f, 0x4c, 0xe5, 0xc8, 0x15, 0x6d, 0xdb, 0xfc, 0xad, 0x08, 0xf3, 0x7d,
  1017. 0x4f, 0x60, 0x79, 0x31, 0xbf, 0x89, 0x7b, 0x7d, 0x1b, 0x4a, 0xbe, 0x47, 0xf0, 0x72, 0xbe, 0x6b,
  1018. 0xbd, 0x32, 0x4d, 0x30, 0xed, 0x5c, 0x93, 0x50, 0x6c, 0xfa, 0xff, 0xbd, 0xfd, 0xbf, 0x70, 0x6f,
  1019. 0x5f, 0x7d, 0x5d, 0x80, 0xa6, 0x43, 0x83, 0x0c, 0x9f, 0x56, 0xeb, 0x69, 0xaf, 0xe0, 0xbb, 0x92,
  1020. 0x76, 0xb7, 0xf0, 0xd5, 0x9a, 0x86, 0x0c, 0xa9, 0xac, 0x37, 0x26, 0x65, 0xc3, 0xd6, 0x10, 0x13,
  1021. 0xb5, 0x69, 0xf2, 0xaf, 0xad, 0xd0, 0xe3, 0x97, 0xfd, 0x67, 0xf2, 0x49, 0xfc, 0xe7, 0x87, 0xa9,
  1022. 0xe9, 0xe7, 0xdd, 0xee, 0x2f, 0x53, 0xf7, 0x9f, 0xc7, 0x64, 0x5d, 0x97, 0x9b, 0xf1, 0x52, 0xae,
  1023. 0x0e, 0x96, 0xcd, 0x9e, 0x32, 0xfb, 0x23, 0x31, 0x38, 0xec, 0xba, 0xfc, 0x30, 0x35, 0x38, 0x3c,
  1024. 0x58, 0x3e, 0x8c, 0x0d, 0x5e, 0x4f, 0x35, 0xe3, 0xb7, 0x9d, 0x4e, 0xd7, 0xe5, 0x9d, 0x4e, 0x6a,
  1025. 0xd2, 0xe9, 0x1c, 0x2c, 0x77, 0x3a, 0xb1, 0xd1, 0x51, 0x59, 0x79, 0xf7, 0xf8, 0xef, 0x00, 0x00,
  1026. 0x00, 0xff, 0xff, 0xc9, 0x43, 0x56, 0x26, 0xbe, 0x15, 0x00, 0x00,
  1027. }