diff options
Diffstat (limited to 'google/ads/googleads/v1/resources')
88 files changed, 6978 insertions, 0 deletions
diff --git a/google/ads/googleads/v1/resources/account_budget.proto b/google/ads/googleads/v1/resources/account_budget.proto new file mode 100644 index 000000000..20bb29eb1 --- /dev/null +++ b/google/ads/googleads/v1/resources/account_budget.proto @@ -0,0 +1,232 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/account_budget_proposal_type.proto"; +import "google/ads/googleads/v1/enums/account_budget_status.proto"; +import "google/ads/googleads/v1/enums/spending_limit_type.proto"; +import "google/ads/googleads/v1/enums/time_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the AccountBudget resource. + +// An account-level budget. It contains information about the budget itself, +// as well as the most recently approved changes to the budget and proposed +// changes that are pending approval. The proposed changes that are pending +// approval, if any, are found in 'pending_proposal'. Effective details about +// the budget are found in fields prefixed 'approved_', 'adjusted_' and those +// without a prefix. Since some effective details may differ from what the user +// had originally requested (e.g. spending limit), these differences are +// juxtaposed via 'proposed_', 'approved_', and possibly 'adjusted_' fields. +// +// This resource is mutated using AccountBudgetProposal and cannot be mutated +// directly. A budget may have at most one pending proposal at any given time. +// It is read through pending_proposal. +// +// Once approved, a budget may be subject to adjustments, such as credit +// adjustments. Adjustments create differences between the 'approved' and +// 'adjusted' fields, which would otherwise be identical. +message AccountBudget { + // A pending proposal associated with the enclosing account-level budget, + // if applicable. + message PendingAccountBudgetProposal { + // The resource name of the proposal. + // AccountBudgetProposal resource names have the form: + // + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + google.protobuf.StringValue account_budget_proposal = 1; + + // The type of this proposal, e.g. END to end the budget associated + // with this proposal. + google.ads.googleads.v1.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 2; + + // The name to assign to the account-level budget. + google.protobuf.StringValue name = 3; + + // The start time in yyyy-MM-dd HH:mm:ss format. + google.protobuf.StringValue start_date_time = 4; + + // A purchase order number is a value that helps users reference this budget + // in their monthly invoices. + google.protobuf.StringValue purchase_order_number = 9; + + // Notes associated with this budget. + google.protobuf.StringValue notes = 10; + + // The time when this account-level budget proposal was created. + // Formatted as yyyy-MM-dd HH:mm:ss. + google.protobuf.StringValue creation_date_time = 11; + + // The end time of the account-level budget. + oneof end_time { + // The end time in yyyy-MM-dd HH:mm:ss format. + google.protobuf.StringValue end_date_time = 5; + + // The end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType end_time_type = 6; + } + + // The spending limit. + oneof spending_limit { + // The spending limit in micros. One million is equivalent to + // one unit. + google.protobuf.Int64Value spending_limit_micros = 7; + + // The spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v1.enums.SpendingLimitTypeEnum.SpendingLimitType spending_limit_type = 8; + } + } + + // The resource name of the account-level budget. + // AccountBudget resource names have the form: + // + // `customers/{customer_id}/accountBudgets/{account_budget_id}` + string resource_name = 1; + + // The ID of the account-level budget. + google.protobuf.Int64Value id = 2; + + // The resource name of the billing setup associated with this account-level + // budget. BillingSetup resource names have the form: + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + google.protobuf.StringValue billing_setup = 3; + + // The status of this account-level budget. + google.ads.googleads.v1.enums.AccountBudgetStatusEnum.AccountBudgetStatus status = 4; + + // The name of the account-level budget. + google.protobuf.StringValue name = 5; + + // The proposed start time of the account-level budget in + // yyyy-MM-dd HH:mm:ss format. If a start time type of NOW was proposed, + // this is the time of request. + google.protobuf.StringValue proposed_start_date_time = 6; + + // The approved start time of the account-level budget in yyyy-MM-dd HH:mm:ss + // format. + // + // For example, if a new budget is approved after the proposed start time, + // the approved start time is the time of approval. + google.protobuf.StringValue approved_start_date_time = 7; + + // The total adjustments amount. + // + // An example of an adjustment is courtesy credits. + google.protobuf.Int64Value total_adjustments_micros = 18; + + // The value of Ads that have been served, in micros. + // + // This includes overdelivery costs, in which case a credit might be + // automatically applied to the budget (see total_adjustments_micros). + google.protobuf.Int64Value amount_served_micros = 19; + + // A purchase order number is a value that helps users reference this budget + // in their monthly invoices. + google.protobuf.StringValue purchase_order_number = 20; + + // Notes associated with the budget. + google.protobuf.StringValue notes = 21; + + // The pending proposal to modify this budget, if applicable. + PendingAccountBudgetProposal pending_proposal = 22; + + // The proposed end time of the account-level budget. + oneof proposed_end_time { + // The proposed end time in yyyy-MM-dd HH:mm:ss format. + google.protobuf.StringValue proposed_end_date_time = 8; + + // The proposed end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9; + } + + // The approved end time of the account-level budget. + // + // For example, if a budget's end time is updated and the proposal is approved + // after the proposed end time, the approved end time is the time of approval. + oneof approved_end_time { + // The approved end time in yyyy-MM-dd HH:mm:ss format. + google.protobuf.StringValue approved_end_date_time = 10; + + // The approved end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType approved_end_time_type = 11; + } + + // The proposed spending limit. + oneof proposed_spending_limit { + // The proposed spending limit in micros. One million is equivalent to + // one unit. + google.protobuf.Int64Value proposed_spending_limit_micros = 12; + + // The proposed spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v1.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 13; + } + + // The approved spending limit. + // + // For example, if the amount already spent by the account exceeds the + // proposed spending limit at the time the proposal is approved, the approved + // spending limit is set to the amount already spent. + oneof approved_spending_limit { + // The approved spending limit in micros. One million is equivalent to + // one unit. This will only be populated if the proposed spending limit + // is finite, and will always be greater than or equal to the + // proposed spending limit. + google.protobuf.Int64Value approved_spending_limit_micros = 14; + + // The approved spending limit as a well-defined type, e.g. INFINITE. This + // will only be populated if the approved spending limit is INFINITE. + google.ads.googleads.v1.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 15; + } + + // The spending limit after adjustments have been applied. Adjustments are + // stored in total_adjustments_micros. + // + // This value has the final say on how much the account is allowed to spend. + oneof adjusted_spending_limit { + // The adjusted spending limit in micros. One million is equivalent to + // one unit. + // + // If the approved spending limit is finite, the adjusted + // spending limit may vary depending on the types of adjustments applied + // to this budget, if applicable. + // + // The different kinds of adjustments are described here: + // https://support.google.com/google-ads/answer/1704323 + // + // For example, a debit adjustment reduces how much the account is + // allowed to spend. + google.protobuf.Int64Value adjusted_spending_limit_micros = 16; + + // The adjusted spending limit as a well-defined type, e.g. INFINITE. + // This will only be populated if the adjusted spending limit is INFINITE, + // which is guaranteed to be true if the approved spending limit is + // INFINITE. + google.ads.googleads.v1.enums.SpendingLimitTypeEnum.SpendingLimitType adjusted_spending_limit_type = 17; + } +} diff --git a/google/ads/googleads/v1/resources/account_budget_proposal.proto b/google/ads/googleads/v1/resources/account_budget_proposal.proto new file mode 100644 index 000000000..a9fe4c8ae --- /dev/null +++ b/google/ads/googleads/v1/resources/account_budget_proposal.proto @@ -0,0 +1,140 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/account_budget_proposal_status.proto"; +import "google/ads/googleads/v1/enums/account_budget_proposal_type.proto"; +import "google/ads/googleads/v1/enums/spending_limit_type.proto"; +import "google/ads/googleads/v1/enums/time_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the AccountBudgetProposal resource. + +// An account-level budget proposal. +// +// All fields prefixed with 'proposed' may not necessarily be applied directly. +// For example, proposed spending limits may be adjusted before their +// application. This is true if the 'proposed' field has an 'approved' +// counterpart, e.g. spending limits. +// +// Please note that the proposal type (proposal_type) changes which fields are +// required and which must remain empty. +message AccountBudgetProposal { + // The resource name of the proposal. + // AccountBudgetProposal resource names have the form: + // + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + string resource_name = 1; + + // The ID of the proposal. + google.protobuf.Int64Value id = 14; + + // The resource name of the billing setup associated with this proposal. + google.protobuf.StringValue billing_setup = 2; + + // The resource name of the account-level budget associated with this + // proposal. + google.protobuf.StringValue account_budget = 3; + + // The type of this proposal, e.g. END to end the budget associated with this + // proposal. + google.ads.googleads.v1.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 4; + + // The status of this proposal. + // When a new proposal is created, the status defaults to PENDING. + google.ads.googleads.v1.enums.AccountBudgetProposalStatusEnum.AccountBudgetProposalStatus status = 15; + + // The name to assign to the account-level budget. + google.protobuf.StringValue proposed_name = 5; + + // The approved start date time in yyyy-mm-dd hh:mm:ss format. + google.protobuf.StringValue approved_start_date_time = 20; + + // A purchase order number is a value that enables the user to help them + // reference this budget in their monthly invoices. + google.protobuf.StringValue proposed_purchase_order_number = 12; + + // Notes associated with this budget. + google.protobuf.StringValue proposed_notes = 13; + + // The date time when this account-level budget proposal was created, which is + // not the same as its approval date time, if applicable. + google.protobuf.StringValue creation_date_time = 16; + + // The date time when this account-level budget was approved, if applicable. + google.protobuf.StringValue approval_date_time = 17; + + // The proposed start date time of the account-level budget, which cannot be + // in the past. + oneof proposed_start_time { + // The proposed start date time in yyyy-mm-dd hh:mm:ss format. + google.protobuf.StringValue proposed_start_date_time = 18; + + // The proposed start date time as a well-defined type, e.g. NOW. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType proposed_start_time_type = 7; + } + + // The proposed end date time of the account-level budget, which cannot be in + // the past. + oneof proposed_end_time { + // The proposed end date time in yyyy-mm-dd hh:mm:ss format. + google.protobuf.StringValue proposed_end_date_time = 19; + + // The proposed end date time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9; + } + + // The approved end date time of the account-level budget. + oneof approved_end_time { + // The approved end date time in yyyy-mm-dd hh:mm:ss format. + google.protobuf.StringValue approved_end_date_time = 21; + + // The approved end date time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType approved_end_time_type = 22; + } + + // The proposed spending limit. + oneof proposed_spending_limit { + // The proposed spending limit in micros. One million is equivalent to + // one unit. + google.protobuf.Int64Value proposed_spending_limit_micros = 10; + + // The proposed spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v1.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 11; + } + + // The approved spending limit. + oneof approved_spending_limit { + // The approved spending limit in micros. One million is equivalent to + // one unit. + google.protobuf.Int64Value approved_spending_limit_micros = 23; + + // The approved spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v1.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 24; + } +} diff --git a/google/ads/googleads/v1/resources/ad.proto b/google/ads/googleads/v1/resources/ad.proto new file mode 100644 index 000000000..10c20045d --- /dev/null +++ b/google/ads/googleads/v1/resources/ad.proto @@ -0,0 +1,133 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/ad_type_infos.proto"; +import "google/ads/googleads/v1/common/custom_parameter.proto"; +import "google/ads/googleads/v1/common/url_collection.proto"; +import "google/ads/googleads/v1/enums/ad_type.proto"; +import "google/ads/googleads/v1/enums/device.proto"; +import "google/ads/googleads/v1/enums/system_managed_entity_source.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad type. + +// An ad. +message Ad { + // The ID of the ad. + google.protobuf.Int64Value id = 1; + + // The list of possible final URLs after all cross-domain redirects for the + // ad. + repeated google.protobuf.StringValue final_urls = 2; + + // The list of possible final mobile URLs after all cross-domain redirects + // for the ad. + repeated google.protobuf.StringValue final_mobile_urls = 16; + + // The URL template for constructing a tracking URL. + google.protobuf.StringValue tracking_url_template = 12; + + // The list of mappings that can be used to substitute custom parameter tags + // in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v1.common.CustomParameter url_custom_parameters = 10; + + // The URL that appears in the ad description for some ad formats. + google.protobuf.StringValue display_url = 4; + + // The type of ad. + google.ads.googleads.v1.enums.AdTypeEnum.AdType type = 5; + + // Indicates if this ad was automatically added by Google Ads and not by a + // user. For example, this could happen when ads are automatically created as + // suggestions for new ads based on knowledge of how existing ads are + // performing. + google.protobuf.BoolValue added_by_google_ads = 19; + + // The device preference for the ad. You can only specify a preference for + // mobile devices. When this preference is set the ad will be preferred over + // other ads when being displayed on a mobile device. The ad can still be + // displayed on other device types, e.g. if no other ads are available. + // If unspecified (no device preference), all devices are targeted. + // This is only supported by some ad types. + google.ads.googleads.v1.enums.DeviceEnum.Device device_preference = 20; + + // Additional URLs for the ad that are tagged with a unique identifier that + // can be referenced from other fields in the ad. + repeated google.ads.googleads.v1.common.UrlCollection url_collections = 26; + + // The name of the ad. This is only used to be able to identify the ad. It + // does not need to be unique and does not affect the served ad. + google.protobuf.StringValue name = 23; + + // If this ad is system managed, then this field will indicate the source. + // This field is read-only. + google.ads.googleads.v1.enums.SystemManagedResourceSourceEnum.SystemManagedResourceSource system_managed_resource_source = 27; + + // Details pertinent to the ad type. Exactly one value must be set. + oneof ad_data { + // Details pertaining to a text ad. + google.ads.googleads.v1.common.TextAdInfo text_ad = 6; + + // Details pertaining to an expanded text ad. + google.ads.googleads.v1.common.ExpandedTextAdInfo expanded_text_ad = 7; + + // Details pertaining to a call-only ad. + google.ads.googleads.v1.common.CallOnlyAdInfo call_only_ad = 13; + + // Details pertaining to an Expanded Dynamic Search Ad. + // This type of ad has its headline, final URLs, and display URL + // auto-generated at serving time according to domain name specific + // information provided by `dynamic_search_ads_setting` linked at the + // campaign level. + google.ads.googleads.v1.common.ExpandedDynamicSearchAdInfo expanded_dynamic_search_ad = 14; + + // Details pertaining to a hotel ad. + google.ads.googleads.v1.common.HotelAdInfo hotel_ad = 15; + + // Details pertaining to a Smart Shopping ad. + google.ads.googleads.v1.common.ShoppingSmartAdInfo shopping_smart_ad = 17; + + // Details pertaining to a Shopping product ad. + google.ads.googleads.v1.common.ShoppingProductAdInfo shopping_product_ad = 18; + + // Details pertaining to a Gmail ad. + google.ads.googleads.v1.common.GmailAdInfo gmail_ad = 21; + + // Details pertaining to an Image ad. + google.ads.googleads.v1.common.ImageAdInfo image_ad = 22; + + // Details pertaining to a Video ad. + google.ads.googleads.v1.common.VideoAdInfo video_ad = 24; + + // Details pertaining to a responsive search ad. + google.ads.googleads.v1.common.ResponsiveSearchAdInfo responsive_search_ad = 25; + + // Details pertaining to a legacy responsive display ad. + google.ads.googleads.v1.common.LegacyResponsiveDisplayAdInfo legacy_responsive_display_ad = 28; + } +} diff --git a/google/ads/googleads/v1/resources/ad_group.proto b/google/ads/googleads/v1/resources/ad_group.proto new file mode 100644 index 000000000..eb1636013 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group.proto @@ -0,0 +1,138 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/custom_parameter.proto"; +import "google/ads/googleads/v1/common/explorer_auto_optimizer_setting.proto"; +import "google/ads/googleads/v1/common/targeting_setting.proto"; +import "google/ads/googleads/v1/enums/ad_group_ad_rotation_mode.proto"; +import "google/ads/googleads/v1/enums/ad_group_status.proto"; +import "google/ads/googleads/v1/enums/ad_group_type.proto"; +import "google/ads/googleads/v1/enums/bidding_source.proto"; +import "google/ads/googleads/v1/enums/targeting_dimension.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group resource. + +// An ad group. +message AdGroup { + // The resource name of the ad group. + // Ad group resource names have the form: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + string resource_name = 1; + + // The ID of the ad group. + google.protobuf.Int64Value id = 3; + + // The name of the ad group. + // + // This field is required and should not be empty when creating new ad + // groups. + // + // It must contain fewer than 255 UTF-8 full-width characters. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + google.protobuf.StringValue name = 4; + + // The status of the ad group. + google.ads.googleads.v1.enums.AdGroupStatusEnum.AdGroupStatus status = 5; + + // The type of the ad group. + google.ads.googleads.v1.enums.AdGroupTypeEnum.AdGroupType type = 12; + + // The ad rotation mode of the ad group. + google.ads.googleads.v1.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; + + // The URL template for constructing a tracking URL. + google.protobuf.StringValue tracking_url_template = 13; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v1.common.CustomParameter url_custom_parameters = 6; + + // The campaign to which the ad group belongs. + google.protobuf.StringValue campaign = 10; + + // The maximum CPC (cost-per-click) bid. + google.protobuf.Int64Value cpc_bid_micros = 14; + + // The maximum CPM (cost-per-thousand viewable impressions) bid. + google.protobuf.Int64Value cpm_bid_micros = 15; + + // The target CPA (cost-per-acquisition). + google.protobuf.Int64Value target_cpa_micros = 27; + + // The CPV (cost-per-view) bid. + google.protobuf.Int64Value cpv_bid_micros = 17; + + // Average amount in micros that the advertiser is willing to pay for every + // thousand times the ad is shown. + google.protobuf.Int64Value target_cpm_micros = 26; + + // The target ROAS (return-on-ad-spend) override. If the ad group's campaign + // bidding strategy is a standard Target ROAS strategy, then this field + // overrides the target ROAS specified in the campaign's bidding strategy. + // Otherwise, this value is ignored. + google.protobuf.DoubleValue target_roas = 30; + + // The percent cpc bid amount, expressed as a fraction of the advertised price + // for some good or service. The valid range for the fraction is [0,1) and the + // value stored here is 1,000,000 * [fraction]. + google.protobuf.Int64Value percent_cpc_bid_micros = 20; + + // Settings for the Display Campaign Optimizer, initially termed "Explorer". + google.ads.googleads.v1.common.ExplorerAutoOptimizerSetting explorer_auto_optimizer_setting = 21; + + // Allows advertisers to specify a targeting dimension on which to place + // absolute bids. This is only applicable for campaigns that target only the + // display network and not search. + google.ads.googleads.v1.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; + + // URL template for appending params to Final URL. + google.protobuf.StringValue final_url_suffix = 24; + + // Setting for targeting related features. + google.ads.googleads.v1.common.TargetingSetting targeting_setting = 25; + + // The effective target CPA (cost-per-acquisition). + // This field is read-only. + google.protobuf.Int64Value effective_target_cpa_micros = 28; + + // Source of the effective target CPA. + // This field is read-only. + google.ads.googleads.v1.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29; + + // The effective target ROAS (return-on-ad-spend). + // This field is read-only. + google.protobuf.DoubleValue effective_target_roas = 31; + + // Source of the effective target ROAS. + // This field is read-only. + google.ads.googleads.v1.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32; +} diff --git a/google/ads/googleads/v1/resources/ad_group_ad.proto b/google/ads/googleads/v1/resources/ad_group_ad.proto new file mode 100644 index 000000000..51fc02931 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_ad.proto @@ -0,0 +1,74 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/policy.proto"; +import "google/ads/googleads/v1/enums/ad_group_ad_status.proto"; +import "google/ads/googleads/v1/enums/ad_strength.proto"; +import "google/ads/googleads/v1/enums/policy_approval_status.proto"; +import "google/ads/googleads/v1/enums/policy_review_status.proto"; +import "google/ads/googleads/v1/resources/ad.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group ad resource. + +// An ad group ad. +message AdGroupAd { + // The resource name of the ad. + // Ad group ad resource names have the form: + // + // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` + string resource_name = 1; + + // The status of the ad. + google.ads.googleads.v1.enums.AdGroupAdStatusEnum.AdGroupAdStatus status = 3; + + // The ad group to which the ad belongs. + google.protobuf.StringValue ad_group = 4; + + // The ad. + Ad ad = 5; + + // Policy information for the ad. + AdGroupAdPolicySummary policy_summary = 6; + + // Overall ad strength for this ad group ad. + google.ads.googleads.v1.enums.AdStrengthEnum.AdStrength ad_strength = 7; +} + +// Contains policy information for an ad. +message AdGroupAdPolicySummary { + // The list of policy findings for this ad. + repeated google.ads.googleads.v1.common.PolicyTopicEntry policy_topic_entries = 1; + + // Where in the review process this ad is. + google.ads.googleads.v1.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2; + + // The overall approval status of this ad, calculated based on the status of + // its individual policy topic entries. + google.ads.googleads.v1.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3; +} diff --git a/google/ads/googleads/v1/resources/ad_group_ad_label.proto b/google/ads/googleads/v1/resources/ad_group_ad_label.proto new file mode 100644 index 000000000..9ed4a1dfa --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_ad_label.proto @@ -0,0 +1,45 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdLabelProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group ad label resource. + +// A relationship between an ad group ad and a label. +message AdGroupAdLabel { + // The resource name of the ad group ad label. + // Ad group ad label resource names have the form: + // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}` + string resource_name = 1; + + // The ad group ad to which the label is attached. + google.protobuf.StringValue ad_group_ad = 2; + + // The label assigned to the ad group ad. + google.protobuf.StringValue label = 3; +} diff --git a/google/ads/googleads/v1/resources/ad_group_audience_view.proto b/google/ads/googleads/v1/resources/ad_group_audience_view.proto new file mode 100644 index 000000000..be80a6d61 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_audience_view.proto @@ -0,0 +1,42 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAudienceViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group audience view resource. + +// An ad group audience view. +// Includes performance data from interests and remarketing lists for Display +// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), +// aggregated at the audience level. +message AdGroupAudienceView { + // The resource name of the ad group audience view. + // Ad group audience view resource names have the form: + // + // `customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/ad_group_bid_modifier.proto b/google/ads/googleads/v1/resources/ad_group_bid_modifier.proto new file mode 100644 index 000000000..cd55eabc0 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_bid_modifier.proto @@ -0,0 +1,86 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/ads/googleads/v1/enums/bid_modifier_source.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupBidModifierProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group bid modifier resource. + +// Represents an ad group bid modifier. +message AdGroupBidModifier { + // The resource name of the ad group bid modifier. + // Ad group bid modifier resource names have the form: + // + // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` + string resource_name = 1; + + // The ad group to which this criterion belongs. + google.protobuf.StringValue ad_group = 2; + + // The ID of the criterion to bid modify. + // + // This field is ignored for mutates. + google.protobuf.Int64Value criterion_id = 3; + + // The modifier for the bid when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. The range is 1.0 - 6.0 for PreferredContent. + // Use 0 to opt out of a Device type. + google.protobuf.DoubleValue bid_modifier = 4; + + // The base ad group from which this draft/trial adgroup bid modifier was + // created. If ad_group is a base ad group then this field will be equal to + // ad_group. If the ad group was created in the draft or trial and has no + // corresponding base ad group, then this field will be null. + // This field is readonly. + google.protobuf.StringValue base_ad_group = 9; + + // Bid modifier source. + google.ads.googleads.v1.enums.BidModifierSourceEnum.BidModifierSource bid_modifier_source = 10; + + // The criterion of this ad group bid modifier. + oneof criterion { + // Criterion for hotel date selection (default dates vs. user selected). + google.ads.googleads.v1.common.HotelDateSelectionTypeInfo hotel_date_selection_type = 5; + + // Criterion for number of days prior to the stay the booking is being made. + google.ads.googleads.v1.common.HotelAdvanceBookingWindowInfo hotel_advance_booking_window = 6; + + // Criterion for length of hotel stay in nights. + google.ads.googleads.v1.common.HotelLengthOfStayInfo hotel_length_of_stay = 7; + + // Criterion for day of the week the booking is for. + google.ads.googleads.v1.common.HotelCheckInDayInfo hotel_check_in_day = 8; + + // A device criterion. + google.ads.googleads.v1.common.DeviceInfo device = 11; + + // A preferred content criterion. + google.ads.googleads.v1.common.PreferredContentInfo preferred_content = 12; + } +} diff --git a/google/ads/googleads/v1/resources/ad_group_criterion.proto b/google/ads/googleads/v1/resources/ad_group_criterion.proto new file mode 100644 index 000000000..d7b7d7c68 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_criterion.proto @@ -0,0 +1,232 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/ads/googleads/v1/common/custom_parameter.proto"; +import "google/ads/googleads/v1/enums/ad_group_criterion_status.proto"; +import "google/ads/googleads/v1/enums/bidding_source.proto"; +import "google/ads/googleads/v1/enums/criterion_system_serving_status.proto"; +import "google/ads/googleads/v1/enums/criterion_type.proto"; +import "google/ads/googleads/v1/enums/quality_score_bucket.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group criterion resource. + +// An ad group criterion. +message AdGroupCriterion { + // A container for ad group criterion quality information. + message QualityInfo { + // The quality score. + // + // This field may not be populated if Google does not have enough + // information to determine a value. + google.protobuf.Int32Value quality_score = 1; + + // The performance of the ad compared to other advertisers. + google.ads.googleads.v1.enums.QualityScoreBucketEnum.QualityScoreBucket creative_quality_score = 2; + + // The quality score of the landing page. + google.ads.googleads.v1.enums.QualityScoreBucketEnum.QualityScoreBucket post_click_quality_score = 3; + + // The click-through rate compared to that of other advertisers. + google.ads.googleads.v1.enums.QualityScoreBucketEnum.QualityScoreBucket search_predicted_ctr = 4; + } + + // Estimates for criterion bids at various positions. + message PositionEstimates { + // The estimate of the CPC bid required for ad to be shown on first + // page of search results. + google.protobuf.Int64Value first_page_cpc_micros = 1; + + // The estimate of the CPC bid required for ad to be displayed in first + // position, at the top of the first page of search results. + google.protobuf.Int64Value first_position_cpc_micros = 2; + + // The estimate of the CPC bid required for ad to be displayed at the top + // of the first page of search results. + google.protobuf.Int64Value top_of_page_cpc_micros = 3; + + // Estimate of how many clicks per week you might get by changing your + // keyword bid to the value in first_position_cpc_micros. + google.protobuf.Int64Value estimated_add_clicks_at_first_position_cpc = 4; + + // Estimate of how your cost per week might change when changing your + // keyword bid to the value in first_position_cpc_micros. + google.protobuf.Int64Value estimated_add_cost_at_first_position_cpc = 5; + } + + // The resource name of the ad group criterion. + // Ad group criterion resource names have the form: + // + // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` + string resource_name = 1; + + // The ID of the criterion. + // + // This field is ignored for mutates. + google.protobuf.Int64Value criterion_id = 26; + + // The status of the criterion. + google.ads.googleads.v1.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus status = 3; + + // Information regarding the quality of the criterion. + QualityInfo quality_info = 4; + + // The ad group to which the criterion belongs. + google.protobuf.StringValue ad_group = 5; + + // The type of the criterion. + google.ads.googleads.v1.enums.CriterionTypeEnum.CriterionType type = 25; + + // Whether to target (`false`) or exclude (`true`) the criterion. + // + // This field is immutable. To switch a criterion from positive to negative, + // remove then re-add it. + google.protobuf.BoolValue negative = 31; + + // Serving status of the criterion. + google.ads.googleads.v1.enums.CriterionSystemServingStatusEnum.CriterionSystemServingStatus system_serving_status = 52; + + // The modifier for the bid when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. + google.protobuf.DoubleValue bid_modifier = 44; + + // The CPC (cost-per-click) bid. + google.protobuf.Int64Value cpc_bid_micros = 16; + + // The CPM (cost-per-thousand viewable impressions) bid. + google.protobuf.Int64Value cpm_bid_micros = 17; + + // The CPV (cost-per-view) bid. + google.protobuf.Int64Value cpv_bid_micros = 24; + + // The CPC bid amount, expressed as a fraction of the advertised price + // for some good or service. The valid range for the fraction is [0,1) and the + // value stored here is 1,000,000 * [fraction]. + google.protobuf.Int64Value percent_cpc_bid_micros = 33; + + // The effective CPC (cost-per-click) bid. + google.protobuf.Int64Value effective_cpc_bid_micros = 18; + + // The effective CPM (cost-per-thousand viewable impressions) bid. + google.protobuf.Int64Value effective_cpm_bid_micros = 19; + + // The effective CPV (cost-per-view) bid. + google.protobuf.Int64Value effective_cpv_bid_micros = 20; + + // The effective Percent CPC bid amount. + google.protobuf.Int64Value effective_percent_cpc_bid_micros = 34; + + // Source of the effective CPC bid. + google.ads.googleads.v1.enums.BiddingSourceEnum.BiddingSource effective_cpc_bid_source = 21; + + // Source of the effective CPM bid. + google.ads.googleads.v1.enums.BiddingSourceEnum.BiddingSource effective_cpm_bid_source = 22; + + // Source of the effective CPV bid. + google.ads.googleads.v1.enums.BiddingSourceEnum.BiddingSource effective_cpv_bid_source = 23; + + // Source of the effective Percent CPC bid. + google.ads.googleads.v1.enums.BiddingSourceEnum.BiddingSource effective_percent_cpc_bid_source = 35; + + // Estimates for criterion bids at various positions. + PositionEstimates position_estimates = 10; + + // The list of possible final URLs after all cross-domain redirects for the + // ad. + repeated google.protobuf.StringValue final_urls = 11; + + // The list of possible final mobile URLs after all cross-domain redirects. + repeated google.protobuf.StringValue final_mobile_urls = 51; + + // URL template for appending params to final URL. + google.protobuf.StringValue final_url_suffix = 50; + + // The URL template for constructing a tracking URL. + google.protobuf.StringValue tracking_url_template = 13; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v1.common.CustomParameter url_custom_parameters = 14; + + // The ad group criterion. + // + // Exactly one must be set. + oneof criterion { + // Keyword. + google.ads.googleads.v1.common.KeywordInfo keyword = 27; + + // Placement. + google.ads.googleads.v1.common.PlacementInfo placement = 28; + + // Mobile app category. + google.ads.googleads.v1.common.MobileAppCategoryInfo mobile_app_category = 29; + + // Listing group. + google.ads.googleads.v1.common.ListingGroupInfo listing_group = 32; + + // Age range. + google.ads.googleads.v1.common.AgeRangeInfo age_range = 36; + + // Gender. + google.ads.googleads.v1.common.GenderInfo gender = 37; + + // Income range. + google.ads.googleads.v1.common.IncomeRangeInfo income_range = 38; + + // Parental status. + google.ads.googleads.v1.common.ParentalStatusInfo parental_status = 39; + + // User List. + google.ads.googleads.v1.common.UserListInfo user_list = 42; + + // YouTube Video. + google.ads.googleads.v1.common.YouTubeVideoInfo youtube_video = 40; + + // YouTube Channel. + google.ads.googleads.v1.common.YouTubeChannelInfo youtube_channel = 41; + + // Topic. + google.ads.googleads.v1.common.TopicInfo topic = 43; + + // User Interest. + google.ads.googleads.v1.common.UserInterestInfo user_interest = 45; + + // Webpage + google.ads.googleads.v1.common.WebpageInfo webpage = 46; + + // App Payment Model. + google.ads.googleads.v1.common.AppPaymentModelInfo app_payment_model = 47; + + // Custom Affinity. + google.ads.googleads.v1.common.CustomAffinityInfo custom_affinity = 48; + + // Custom Intent. + google.ads.googleads.v1.common.CustomIntentInfo custom_intent = 49; + } +} diff --git a/google/ads/googleads/v1/resources/ad_group_criterion_label.proto b/google/ads/googleads/v1/resources/ad_group_criterion_label.proto new file mode 100644 index 000000000..ae14a54ae --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_criterion_label.proto @@ -0,0 +1,46 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionLabelProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group criterion label resource. + +// A relationship between an ad group criterion and a label. +message AdGroupCriterionLabel { + // The resource name of the ad group criterion label. + // Ad group criterion label resource names have the form: + // + // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` + string resource_name = 1; + + // The ad group criterion to which the label is attached. + google.protobuf.StringValue ad_group_criterion = 2; + + // The label assigned to the ad group criterion. + google.protobuf.StringValue label = 3; +} diff --git a/google/ads/googleads/v1/resources/ad_group_extension_setting.proto b/google/ads/googleads/v1/resources/ad_group_extension_setting.proto new file mode 100644 index 000000000..936b9ad22 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_extension_setting.proto @@ -0,0 +1,62 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/extension_setting_device.proto"; +import "google/ads/googleads/v1/enums/extension_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the AdGroupExtensionSetting resource. + +// An ad group extension setting. +message AdGroupExtensionSetting { + // The resource name of the ad group extension setting. + // AdGroupExtensionSetting resource names have the form: + // + // + // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` + string resource_name = 1; + + // The extension type of the ad group extension setting. + google.ads.googleads.v1.enums.ExtensionTypeEnum.ExtensionType extension_type = 2; + + // The resource name of the ad group. The linked extension feed items will + // serve under this ad group. + // AdGroup resource names have the form: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + google.protobuf.StringValue ad_group = 3; + + // The resource names of the extension feed items to serve under the ad group. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated google.protobuf.StringValue extension_feed_items = 4; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v1.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; +} diff --git a/google/ads/googleads/v1/resources/ad_group_feed.proto b/google/ads/googleads/v1/resources/ad_group_feed.proto new file mode 100644 index 000000000..c6e584f55 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_feed.proto @@ -0,0 +1,62 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/matching_function.proto"; +import "google/ads/googleads/v1/enums/feed_link_status.proto"; +import "google/ads/googleads/v1/enums/placeholder_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupFeedProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the AdGroupFeed resource. + +// An ad group feed. +message AdGroupFeed { + // The resource name of the ad group feed. + // Ad group feed resource names have the form: + // + // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id} + string resource_name = 1; + + // The feed being linked to the ad group. + google.protobuf.StringValue feed = 2; + + // The ad group being linked to the feed. + google.protobuf.StringValue ad_group = 3; + + // Indicates which placeholder types the feed may populate under the connected + // ad group. Required. + repeated google.ads.googleads.v1.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; + + // Matching function associated with the AdGroupFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v1.common.MatchingFunction matching_function = 5; + + // Status of the ad group feed. + // This field is read-only. + google.ads.googleads.v1.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6; +} diff --git a/google/ads/googleads/v1/resources/ad_group_label.proto b/google/ads/googleads/v1/resources/ad_group_label.proto new file mode 100644 index 000000000..2059ad13f --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_group_label.proto @@ -0,0 +1,45 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupLabelProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad group label resource. + +// A relationship between an ad group and a label. +message AdGroupLabel { + // The resource name of the ad group label. + // Ad group label resource names have the form: + // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` + string resource_name = 1; + + // The ad group to which the label is attached. + google.protobuf.StringValue ad_group = 2; + + // The label assigned to the ad group. + google.protobuf.StringValue label = 3; +} diff --git a/google/ads/googleads/v1/resources/ad_parameter.proto b/google/ads/googleads/v1/resources/ad_parameter.proto new file mode 100644 index 000000000..395e26501 --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_parameter.proto @@ -0,0 +1,67 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdParameterProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad parameter resource. + +// An ad parameter that is used to update numeric values (such as prices or +// inventory levels) in any text line of an ad (including URLs). There can +// be a maximum of two AdParameters per ad group criterion. (One with +// parameter_index = 1 and one with parameter_index = 2.) +// In the ad the parameters are referenced by a placeholder of the form +// "{param#:value}". E.g. "{param1:$17}" +message AdParameter { + // The resource name of the ad parameter. + // Ad parameter resource names have the form: + // + // + // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` + string resource_name = 1; + + // The ad group criterion that this ad parameter belongs to. + google.protobuf.StringValue ad_group_criterion = 2; + + // The unique index of this ad parameter. Must be either 1 or 2. + google.protobuf.Int64Value parameter_index = 3; + + // Numeric value to insert into the ad text. The following restrictions + // apply: + // - Can use comma or period as a separator, with an optional period or + // comma (respectively) for fractional values. For example, 1,000,000.00 + // and 2.000.000,10 are valid. + // - Can be prepended or appended with a currency symbol. For example, + // $99.99 and 200£ are valid. + // - Can be prepended or appended with a currency code. For example, 99.99USD + // and EUR200 are valid. + // - Can use '%'. For example, 1.0% and 1,0% are valid. + // - Can use plus or minus. For example, -10.99 and 25+ are valid. + // - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are + // valid. + google.protobuf.StringValue insertion_text = 4; +} diff --git a/google/ads/googleads/v1/resources/ad_schedule_view.proto b/google/ads/googleads/v1/resources/ad_schedule_view.proto new file mode 100644 index 000000000..e99e7590b --- /dev/null +++ b/google/ads/googleads/v1/resources/ad_schedule_view.proto @@ -0,0 +1,40 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdScheduleViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ad schedule view resource. + +// An ad schedule view summarizes the performance of campaigns by +// AdSchedule criteria. +message AdScheduleView { + // The resource name of the ad schedule view. + // AdSchedule view resource names have the form: + // + // `customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/age_range_view.proto b/google/ads/googleads/v1/resources/age_range_view.proto new file mode 100644 index 000000000..c6b0f7dc9 --- /dev/null +++ b/google/ads/googleads/v1/resources/age_range_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AgeRangeViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the age range view resource. + +// An age range view. +message AgeRangeView { + // The resource name of the age range view. + // Age range view resource names have the form: + // + // `customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/bidding_strategy.proto b/google/ads/googleads/v1/resources/bidding_strategy.proto new file mode 100644 index 000000000..76ab65b3f --- /dev/null +++ b/google/ads/googleads/v1/resources/bidding_strategy.proto @@ -0,0 +1,108 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/bidding.proto"; +import "google/ads/googleads/v1/enums/bidding_strategy_status.proto"; +import "google/ads/googleads/v1/enums/bidding_strategy_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the BiddingStrategy resource + +// A bidding strategy. +message BiddingStrategy { + // The resource name of the bidding strategy. + // Bidding strategy resource names have the form: + // + // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` + string resource_name = 1; + + // The ID of the bidding strategy. + google.protobuf.Int64Value id = 3; + + // The name of the bidding strategy. + // All bidding strategies within an account must be named distinctly. + // + // The length of this string should be between 1 and 255, inclusive, + // in UTF-8 bytes, (trimmed). + google.protobuf.StringValue name = 4; + + // The status of the bidding strategy. + // + // This field is read-only. + google.ads.googleads.v1.enums.BiddingStrategyStatusEnum.BiddingStrategyStatus status = 15; + + // The type of the bidding strategy. + // Create a bidding strategy by setting the bidding scheme. + // + // This field is read-only. + google.ads.googleads.v1.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 5; + + // The number of campaigns attached to this bidding strategy. + // + // This field is read-only. + google.protobuf.Int64Value campaign_count = 13; + + // The number of non-removed campaigns attached to this bidding strategy. + // + // This field is read-only. + google.protobuf.Int64Value non_removed_campaign_count = 14; + + // The bidding scheme. + // + // Only one can be set. + oneof scheme { + // A bidding strategy that raises bids for clicks that seem more likely to + // lead to a conversion and lowers them for clicks where they seem less + // likely. + google.ads.googleads.v1.common.EnhancedCpc enhanced_cpc = 7; + + // A bidding strategy that sets max CPC bids to target impressions on + // page one or page one promoted slots on google.com. + google.ads.googleads.v1.common.PageOnePromoted page_one_promoted = 8; + + // A bidding strategy that sets bids to help get as many conversions as + // possible at the target cost-per-acquisition (CPA) you set. + google.ads.googleads.v1.common.TargetCpa target_cpa = 9; + + // A bidding strategy that automatically optimizes towards a desired + // percentage of impressions. + google.ads.googleads.v1.common.TargetImpressionShare target_impression_share = 48; + + // A bidding strategy that sets bids based on the target fraction of + // auctions where the advertiser should outrank a specific competitor. + google.ads.googleads.v1.common.TargetOutrankShare target_outrank_share = 10; + + // A bidding strategy that helps you maximize revenue while averaging a + // specific target Return On Ad Spend (ROAS). + google.ads.googleads.v1.common.TargetRoas target_roas = 11; + + // A bid strategy that sets your bids to help get as many clicks as + // possible within your budget. + google.ads.googleads.v1.common.TargetSpend target_spend = 12; + } +} diff --git a/google/ads/googleads/v1/resources/billing_setup.proto b/google/ads/googleads/v1/resources/billing_setup.proto new file mode 100644 index 000000000..48d1be00b --- /dev/null +++ b/google/ads/googleads/v1/resources/billing_setup.proto @@ -0,0 +1,123 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/billing_setup_status.proto"; +import "google/ads/googleads/v1/enums/time_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the BillingSetup resource. + +// A billing setup across Ads and Payments systems; an association between a +// Payments account and an advertiser. A billing setup is specific to one +// advertiser. +message BillingSetup { + // Container of Payments account information for this billing. + message PaymentsAccountInfo { + // A 16 digit id used to identify the Payments account associated with the + // billing setup. + // + // This must be passed as a string with dashes, e.g. "1234-5678-9012-3456". + google.protobuf.StringValue payments_account_id = 1; + + // The name of the Payments account associated with the billing setup. + // + // This enables the user to specify a meaningful name for a Payments account + // to aid in reconciling monthly invoices. + // + // This name will be printed in the monthly invoices. + google.protobuf.StringValue payments_account_name = 2; + + // A 12 digit id used to identify the Payments profile associated with the + // billing setup. + // + // This must be passed in as a string with dashes, e.g. "1234-5678-9012". + google.protobuf.StringValue payments_profile_id = 3; + + // The name of the Payments profile associated with the billing setup. + google.protobuf.StringValue payments_profile_name = 4; + + // A secondary payments profile id present in uncommon situations, e.g. + // when a sequential liability agreement has been arranged. + google.protobuf.StringValue secondary_payments_profile_id = 5; + } + + // The resource name of the billing setup. + // BillingSetup resource names have the form: + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + string resource_name = 1; + + // The ID of the billing setup. + google.protobuf.Int64Value id = 2; + + // The status of the billing setup. + google.ads.googleads.v1.enums.BillingSetupStatusEnum.BillingSetupStatus status = 3; + + // The resource name of the Payments account associated with this billing + // setup. Payments resource names have the form: + // + // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` + // When setting up billing, this is used to signup with an existing Payments + // account (and then payments_account_info should not be set). + // When getting a billing setup, this and payments_account_info will be + // populated. + google.protobuf.StringValue payments_account = 11; + + // The Payments account information associated with this billing setup. + // When setting up billing, this is used to signup with a new Payments account + // (and then payments_account should not be set). + // When getting a billing setup, this and payments_account will be + // populated. + PaymentsAccountInfo payments_account_info = 12; + + // When creating a new billing setup, this is when the setup should take + // effect. NOW is the only acceptable start time if the customer doesn't have + // any approved setups. + // + // When fetching an existing billing setup, this is the requested start time. + // However, if the setup was approved (see status) after the requested start + // time, then this is the approval time. + oneof start_time { + // The start date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. Only a + // future time is allowed. + google.protobuf.StringValue start_date_time = 9; + + // The start time as a type. Only NOW is allowed. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType start_time_type = 10; + } + + // When the billing setup ends / ended. This is either FOREVER or the start + // time of the next scheduled billing setup. + oneof end_time { + // The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. + google.protobuf.StringValue end_date_time = 13; + + // The end time as a type. The only possible value is FOREVER. + google.ads.googleads.v1.enums.TimeTypeEnum.TimeType end_time_type = 14; + } +} diff --git a/google/ads/googleads/v1/resources/campaign.proto b/google/ads/googleads/v1/resources/campaign.proto new file mode 100644 index 000000000..877e2b1d2 --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign.proto @@ -0,0 +1,321 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/bidding.proto"; +import "google/ads/googleads/v1/common/custom_parameter.proto"; +import "google/ads/googleads/v1/common/frequency_cap.proto"; +import "google/ads/googleads/v1/common/real_time_bidding_setting.proto"; +import "google/ads/googleads/v1/common/targeting_setting.proto"; +import "google/ads/googleads/v1/enums/ad_serving_optimization_status.proto"; +import "google/ads/googleads/v1/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v1/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v1/enums/bidding_strategy_type.proto"; +import "google/ads/googleads/v1/enums/brand_safety_suitability.proto"; +import "google/ads/googleads/v1/enums/campaign_serving_status.proto"; +import "google/ads/googleads/v1/enums/campaign_status.proto"; +import "google/ads/googleads/v1/enums/negative_geo_target_type.proto"; +import "google/ads/googleads/v1/enums/positive_geo_target_type.proto"; +import "google/ads/googleads/v1/enums/vanity_pharma_display_url_mode.proto"; +import "google/ads/googleads/v1/enums/vanity_pharma_text.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Campaign resource. + +// A campaign. +message Campaign { + // The network settings for the campaign. + message NetworkSettings { + // Whether ads will be served with google.com search results. + google.protobuf.BoolValue target_google_search = 1; + + // Whether ads will be served on partner sites in the Google Search Network + // (requires `target_google_search` to also be `true`). + google.protobuf.BoolValue target_search_network = 2; + + // Whether ads will be served on specified placements in the Google Display + // Network. Placements are specified using the Placement criterion. + google.protobuf.BoolValue target_content_network = 3; + + // Whether ads will be served on the Google Partner Network. + // This is available only to some select Google partner accounts. + google.protobuf.BoolValue target_partner_search_network = 4; + } + + // Campaign-level settings for hotel ads. + message HotelSettingInfo { + // The linked Hotel Center account. + google.protobuf.Int64Value hotel_center_id = 1; + } + + // The setting for controlling Dynamic Search Ads (DSA). + message DynamicSearchAdsSetting { + // The Internet domain name that this setting represents, e.g., "google.com" + // or "www.google.com". + google.protobuf.StringValue domain_name = 1; + + // The language code specifying the language of the domain, e.g., "en". + google.protobuf.StringValue language_code = 2; + + // Whether the campaign uses advertiser supplied URLs exclusively. + google.protobuf.BoolValue use_supplied_urls_only = 3; + + // The list of page feeds associated with the campaign. + repeated google.protobuf.StringValue feeds = 5; + } + + // Represents a collection of settings related to ads geotargeting. + message GeoTargetTypeSetting { + // The setting used for positive geotargeting in this particular campaign. + google.ads.googleads.v1.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1; + + // The setting used for negative geotargeting in this particular campaign. + google.ads.googleads.v1.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2; + } + + // The setting for Shopping campaigns. Defines the universe of products that + // can be advertised by the campaign, and how this campaign interacts with + // other Shopping campaigns. + message ShoppingSetting { + // ID of the Merchant Center account. + // This field is required for create operations. This field is immutable for + // Shopping campaigns. + google.protobuf.Int64Value merchant_id = 1; + + // Sales country of products to include in the campaign. + // This field is required for Shopping campaigns. This field is immutable. + // This field is optional for non-Shopping campaigns, but it must be equal + // to 'ZZ' if set. + google.protobuf.StringValue sales_country = 2; + + // Priority of the campaign. Campaigns with numerically higher priorities + // take precedence over those with lower priorities. + // This field is required for Shopping campaigns, with values between 0 and + // 2, inclusive. + // This field is optional for Smart Shopping campaigns, but must be equal to + // 3 if set. + google.protobuf.Int32Value campaign_priority = 3; + + // Enable local inventory ads. This field may only be set to false for Smart + // Shopping Campaigns. + google.protobuf.BoolValue enable_local = 4; + } + + // Selective optimization setting for this campaign, which includes a set of + // conversion actions to optimize this campaign towards. + message SelectiveOptimization { + // The selected set of conversion actions for optimizing this campaign. + repeated google.protobuf.StringValue conversion_actions = 1; + } + + // Campaign level settings for tracking information. + message TrackingSetting { + // The url used for dynamic tracking. + google.protobuf.StringValue tracking_url = 1; + } + + // Describes how unbranded pharma ads will be displayed. + message VanityPharma { + // The display mode for vanity pharma URLs. + google.ads.googleads.v1.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode vanity_pharma_display_url_mode = 1; + + // The text that will be displayed in display URL of the text ad when + // website description is the selected display mode for vanity pharma URLs. + google.ads.googleads.v1.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2; + } + + // The resource name of the campaign. + // Campaign resource names have the form: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + string resource_name = 1; + + // The ID of the campaign. + google.protobuf.Int64Value id = 3; + + // The name of the campaign. + // + // This field is required and should not be empty when creating new + // campaigns. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + google.protobuf.StringValue name = 4; + + // The status of the campaign. + // + // When a new campaign is added, the status defaults to ENABLED. + google.ads.googleads.v1.enums.CampaignStatusEnum.CampaignStatus status = 5; + + // The ad serving status of the campaign. + google.ads.googleads.v1.enums.CampaignServingStatusEnum.CampaignServingStatus serving_status = 21; + + // The ad serving optimization status of the campaign. + google.ads.googleads.v1.enums.AdServingOptimizationStatusEnum.AdServingOptimizationStatus ad_serving_optimization_status = 8; + + // The primary serving target for ads within the campaign. + // The targeting options can be refined in `network_settings`. + // + // This field is required and should not be empty when creating new + // campaigns. + // + // Can be set only when creating campaigns. + // After the campaign is created, the field can not be changed. + google.ads.googleads.v1.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 9; + + // Optional refinement to `advertising_channel_type`. + // Must be a valid sub-type of the parent channel type. + // + // Can be set only when creating campaigns. + // After campaign is created, the field can not be changed. + google.ads.googleads.v1.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 10; + + // The URL template for constructing a tracking URL. + google.protobuf.StringValue tracking_url_template = 11; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v1.common.CustomParameter url_custom_parameters = 12; + + // Settings for Real-Time Bidding, a feature only available for campaigns + // targeting the Ad Exchange network. + google.ads.googleads.v1.common.RealTimeBiddingSetting real_time_bidding_setting = 39; + + // The network settings for the campaign. + NetworkSettings network_settings = 14; + + // The hotel setting for the campaign. + HotelSettingInfo hotel_setting = 32; + + // The setting for controlling Dynamic Search Ads (DSA). + DynamicSearchAdsSetting dynamic_search_ads_setting = 33; + + // The setting for controlling Shopping campaigns. + ShoppingSetting shopping_setting = 36; + + // Setting for targeting related features. + google.ads.googleads.v1.common.TargetingSetting targeting_setting = 43; + + // The setting for ads geotargeting. + GeoTargetTypeSetting geo_target_type_setting = 47; + + // The budget of the campaign. + google.protobuf.StringValue campaign_budget = 6; + + // The type of bidding strategy. + // + // A bidding strategy can be created by setting either the bidding scheme to + // create a standard bidding strategy or the `bidding_strategy` field to + // create a portfolio bidding strategy. + // + // This field is read-only. + google.ads.googleads.v1.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22; + + // The date when campaign started. + // + // This field must not be used in WHERE clauses. + google.protobuf.StringValue start_date = 19; + + // The date when campaign ended. + // + // This field must not be used in WHERE clauses. + google.protobuf.StringValue end_date = 20; + + // Suffix used to append query parameters to landing pages that are served + // with parallel tracking. + google.protobuf.StringValue final_url_suffix = 38; + + // A list that limits how often each user will see this campaign's ads. + repeated google.ads.googleads.v1.common.FrequencyCapEntry frequency_caps = 40; + + // 3-Tier Brand Safety setting for the campaign. + google.ads.googleads.v1.enums.BrandSafetySuitabilityEnum.BrandSafetySuitability video_brand_safety_suitability = 42; + + // Describes how unbranded pharma ads will be displayed. + VanityPharma vanity_pharma = 44; + + // Selective optimization setting for this campaign, which includes a set of + // conversion actions to optimize this campaign towards. + SelectiveOptimization selective_optimization = 45; + + // Campaign level settings for tracking information. + TrackingSetting tracking_setting = 46; + + // The bidding strategy for the campaign. + // + // Must be either portfolio (created via BiddingStrategy service) or + // standard, that is embedded into the campaign. + oneof campaign_bidding_strategy { + // Portfolio bidding strategy used by campaign. + google.protobuf.StringValue bidding_strategy = 23; + + // Standard Manual CPC bidding strategy. + // Manual click-based bidding where user pays per click. + google.ads.googleads.v1.common.ManualCpc manual_cpc = 24; + + // Standard Manual CPM bidding strategy. + // Manual impression-based bidding where user pays per thousand + // impressions. + google.ads.googleads.v1.common.ManualCpm manual_cpm = 25; + + // A bidding strategy that pays a configurable amount per video view. + google.ads.googleads.v1.common.ManualCpv manual_cpv = 37; + + // Standard Maximize Conversions bidding strategy that automatically + // maximizes number of conversions given a daily budget. + google.ads.googleads.v1.common.MaximizeConversions maximize_conversions = 30; + + // Standard Maximize Conversion Value bidding strategy that automatically + // sets bids to maximize revenue while spending your budget. + google.ads.googleads.v1.common.MaximizeConversionValue maximize_conversion_value = 31; + + // Standard Target CPA bidding strategy that automatically sets bids to + // help get as many conversions as possible at the target + // cost-per-acquisition (CPA) you set. + google.ads.googleads.v1.common.TargetCpa target_cpa = 26; + + // Target Impression Share bidding strategy. An automated bidding strategy + // that sets bids to achieve a desired percentage of impressions. + google.ads.googleads.v1.common.TargetImpressionShare target_impression_share = 48; + + // Standard Target ROAS bidding strategy that automatically maximizes + // revenue while averaging a specific target return on ad spend (ROAS). + google.ads.googleads.v1.common.TargetRoas target_roas = 29; + + // Standard Target Spend bidding strategy that automatically sets your bids + // to help get as many clicks as possible within your budget. + google.ads.googleads.v1.common.TargetSpend target_spend = 27; + + // Standard Percent Cpc bidding strategy where bids are a fraction of the + // advertised price for some good or service. + google.ads.googleads.v1.common.PercentCpc percent_cpc = 34; + + // A bidding strategy that automatically optimizes cost per thousand + // impressions. + google.ads.googleads.v1.common.TargetCpm target_cpm = 41; + } +} diff --git a/google/ads/googleads/v1/resources/campaign_audience_view.proto b/google/ads/googleads/v1/resources/campaign_audience_view.proto new file mode 100644 index 000000000..b5129e7d0 --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_audience_view.proto @@ -0,0 +1,44 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAudienceViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the campaign audience view resource. + +// A campaign audience view. +// Includes performance data from interests and remarketing lists for Display +// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), +// aggregated by campaign and audience criterion. This view only includes +// audiences attached at the campaign level. +message CampaignAudienceView { + // The resource name of the campaign audience view. + // Campaign audience view resource names have the form: + // + // + // `customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/campaign_bid_modifier.proto b/google/ads/googleads/v1/resources/campaign_bid_modifier.proto new file mode 100644 index 000000000..821c9f9aa --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_bid_modifier.proto @@ -0,0 +1,58 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBidModifierProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Campaign Bid Modifier resource. + +// Represents a bid-modifiable only criterion at the campaign level. +message CampaignBidModifier { + // The resource name of the campaign bid modifier. + // Campaign bid modifier resource names have the form: + // + // `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}` + string resource_name = 1; + + // The campaign to which this criterion belongs. + google.protobuf.StringValue campaign = 2; + + // The ID of the criterion to bid modify. + // + // This field is ignored for mutates. + google.protobuf.Int64Value criterion_id = 3; + + // The modifier for the bid when the criterion matches. + google.protobuf.DoubleValue bid_modifier = 4; + + // The criterion of this campaign bid modifier. + oneof criterion { + // Criterion for interaction type. Only supported for search campaigns. + google.ads.googleads.v1.common.InteractionTypeInfo interaction_type = 5; + } +} diff --git a/google/ads/googleads/v1/resources/campaign_budget.proto b/google/ads/googleads/v1/resources/campaign_budget.proto new file mode 100644 index 000000000..8a93b6732 --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_budget.proto @@ -0,0 +1,141 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/budget_delivery_method.proto"; +import "google/ads/googleads/v1/enums/budget_period.proto"; +import "google/ads/googleads/v1/enums/budget_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBudgetProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Budget resource. + +// A campaign budget. +message CampaignBudget { + // The resource name of the campaign budget. + // Campaign budget resource names have the form: + // + // `customers/{customer_id}/campaignBudgets/{budget_id}` + string resource_name = 1; + + // The ID of the campaign budget. + // + // A campaign budget is created using the CampaignBudgetService create + // operation and is assigned a budget ID. A budget ID can be shared across + // different campaigns; the system will then allocate the campaign budget + // among different campaigns to get optimum results. + google.protobuf.Int64Value id = 3; + + // The name of the campaign budget. + // + // When creating a campaign budget through CampaignBudgetService, every + // explicitly shared campaign budget must have a non-null, non-empty name. + // Campaign budgets that are not explicitly shared derive their name from the + // attached campaign's name. + // + // The length of this string must be between 1 and 255, inclusive, + // in UTF-8 bytes, (trimmed). + google.protobuf.StringValue name = 4; + + // The amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + google.protobuf.Int64Value amount_micros = 5; + + // The lifetime amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + google.protobuf.Int64Value total_amount_micros = 10; + + // The status of this campaign budget. This field is read-only. + google.ads.googleads.v1.enums.BudgetStatusEnum.BudgetStatus status = 6; + + // The delivery method that determines the rate at which the campaign budget + // is spent. + // + // Defaults to STANDARD if unspecified in a create operation. + google.ads.googleads.v1.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod delivery_method = 7; + + // Specifies whether the budget is explicitly shared. Defaults to true if + // unspecified in a create operation. + // + // If true, the budget was created with the purpose of sharing + // across one or more campaigns. + // + // If false, the budget was created with the intention of only being used + // with a single campaign. The budget's name and status will stay in sync + // with the campaign's name and status. Attempting to share the budget with a + // second campaign will result in an error. + // + // A non-shared budget can become an explicitly shared. The same operation + // must also assign the budget a name. + // + // A shared campaign budget can never become non-shared. + google.protobuf.BoolValue explicitly_shared = 8; + + // The number of campaigns actively using the budget. + // + // This field is read-only. + google.protobuf.Int64Value reference_count = 9; + + // Indicates whether there is a recommended budget for this campaign budget. + // + // This field is read-only. + google.protobuf.BoolValue has_recommended_budget = 11; + + // The recommended budget amount. If no recommendation is available, this will + // be set to the budget amount. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + // + // This field is read-only. + google.protobuf.Int64Value recommended_budget_amount_micros = 12; + + // Period over which to spend the budget. Defaults to DAILY if not specified. + google.ads.googleads.v1.enums.BudgetPeriodEnum.BudgetPeriod period = 13; + + // The estimated change in weekly clicks if the recommended budget is applied. + // + // This field is read-only. + google.protobuf.Int64Value recommended_budget_estimated_change_weekly_clicks = 14; + + // The estimated change in weekly cost in micros if the recommended budget is + // applied. One million is equivalent to one currency unit. + // + // This field is read-only. + google.protobuf.Int64Value recommended_budget_estimated_change_weekly_cost_micros = 15; + + // The estimated change in weekly interactions if the recommended budget is + // applied. + // + // This field is read-only. + google.protobuf.Int64Value recommended_budget_estimated_change_weekly_interactions = 16; + + // The estimated change in weekly views if the recommended budget is applied. + // + // This field is read-only. + google.protobuf.Int64Value recommended_budget_estimated_change_weekly_views = 17; +} diff --git a/google/ads/googleads/v1/resources/campaign_criterion.proto b/google/ads/googleads/v1/resources/campaign_criterion.proto new file mode 100644 index 000000000..c2f56b568 --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_criterion.proto @@ -0,0 +1,138 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/ads/googleads/v1/enums/criterion_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Campaign Criterion resource. + +// A campaign criterion. +message CampaignCriterion { + // The resource name of the campaign criterion. + // Campaign criterion resource names have the form: + // + // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` + string resource_name = 1; + + // The campaign to which the criterion belongs. + google.protobuf.StringValue campaign = 4; + + // The ID of the criterion. + // + // This field is ignored during mutate. + google.protobuf.Int64Value criterion_id = 5; + + // The modifier for the bids when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. + // Use 0 to opt out of a Device type. + google.protobuf.FloatValue bid_modifier = 14; + + // Whether to target (`false`) or exclude (`true`) the criterion. + google.protobuf.BoolValue negative = 7; + + // The type of the criterion. + google.ads.googleads.v1.enums.CriterionTypeEnum.CriterionType type = 6; + + // The campaign criterion. + // + // Exactly one must be set. + oneof criterion { + // Keyword. + google.ads.googleads.v1.common.KeywordInfo keyword = 8; + + // Placement. + google.ads.googleads.v1.common.PlacementInfo placement = 9; + + // Mobile app category. + google.ads.googleads.v1.common.MobileAppCategoryInfo mobile_app_category = 10; + + // Location. + google.ads.googleads.v1.common.LocationInfo location = 12; + + // Device. + google.ads.googleads.v1.common.DeviceInfo device = 13; + + // Ad Schedule. + google.ads.googleads.v1.common.AdScheduleInfo ad_schedule = 15; + + // Age range. + google.ads.googleads.v1.common.AgeRangeInfo age_range = 16; + + // Gender. + google.ads.googleads.v1.common.GenderInfo gender = 17; + + // Income range. + google.ads.googleads.v1.common.IncomeRangeInfo income_range = 18; + + // Parental status. + google.ads.googleads.v1.common.ParentalStatusInfo parental_status = 19; + + // User List. + google.ads.googleads.v1.common.UserListInfo user_list = 22; + + // YouTube Video. + google.ads.googleads.v1.common.YouTubeVideoInfo youtube_video = 20; + + // YouTube Channel. + google.ads.googleads.v1.common.YouTubeChannelInfo youtube_channel = 21; + + // Proximity. + google.ads.googleads.v1.common.ProximityInfo proximity = 23; + + // Topic. + google.ads.googleads.v1.common.TopicInfo topic = 24; + + // Listing scope. + google.ads.googleads.v1.common.ListingScopeInfo listing_scope = 25; + + // Language. + google.ads.googleads.v1.common.LanguageInfo language = 26; + + // IpBlock. + google.ads.googleads.v1.common.IpBlockInfo ip_block = 27; + + // ContentLabel. + google.ads.googleads.v1.common.ContentLabelInfo content_label = 28; + + // Carrier. + google.ads.googleads.v1.common.CarrierInfo carrier = 29; + + // User Interest. + google.ads.googleads.v1.common.UserInterestInfo user_interest = 30; + + // Webpage. + google.ads.googleads.v1.common.WebpageInfo webpage = 31; + + // Operating system version. + google.ads.googleads.v1.common.OperatingSystemVersionInfo operating_system_version = 32; + + // Mobile Device. + google.ads.googleads.v1.common.MobileDeviceInfo mobile_device = 33; + } +} diff --git a/google/ads/googleads/v1/resources/campaign_extension_setting.proto b/google/ads/googleads/v1/resources/campaign_extension_setting.proto new file mode 100644 index 000000000..7c089affb --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_extension_setting.proto @@ -0,0 +1,62 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/extension_setting_device.proto"; +import "google/ads/googleads/v1/enums/extension_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CampaignExtensionSetting resource. + +// A campaign extension setting. +message CampaignExtensionSetting { + // The resource name of the campaign extension setting. + // CampaignExtensionSetting resource names have the form: + // + // + // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` + string resource_name = 1; + + // The extension type of the customer extension setting. + google.ads.googleads.v1.enums.ExtensionTypeEnum.ExtensionType extension_type = 2; + + // The resource name of the campaign. The linked extension feed items will + // serve under this campaign. + // Campaign resource names have the form: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + google.protobuf.StringValue campaign = 3; + + // The resource names of the extension feed items to serve under the campaign. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated google.protobuf.StringValue extension_feed_items = 4; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v1.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; +} diff --git a/google/ads/googleads/v1/resources/campaign_feed.proto b/google/ads/googleads/v1/resources/campaign_feed.proto new file mode 100644 index 000000000..7618dd9f0 --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_feed.proto @@ -0,0 +1,62 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/matching_function.proto"; +import "google/ads/googleads/v1/enums/feed_link_status.proto"; +import "google/ads/googleads/v1/enums/placeholder_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignFeedProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CampaignFeed resource. + +// A campaign feed. +message CampaignFeed { + // The resource name of the campaign feed. + // Campaign feed resource names have the form: + // + // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id} + string resource_name = 1; + + // The feed to which the CampaignFeed belongs. + google.protobuf.StringValue feed = 2; + + // The campaign to which the CampaignFeed belongs. + google.protobuf.StringValue campaign = 3; + + // Indicates which placeholder types the feed may populate under the connected + // campaign. Required. + repeated google.ads.googleads.v1.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; + + // Matching function associated with the CampaignFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v1.common.MatchingFunction matching_function = 5; + + // Status of the campaign feed. + // This field is read-only. + google.ads.googleads.v1.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6; +} diff --git a/google/ads/googleads/v1/resources/campaign_label.proto b/google/ads/googleads/v1/resources/campaign_label.proto new file mode 100644 index 000000000..86f52a458 --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_label.proto @@ -0,0 +1,45 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignLabelProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the campaign label resource. + +// Represents a relationship between a campaign and a label. +message CampaignLabel { + // Name of the resource. + // Campaign label resource names have the form: + // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` + string resource_name = 1; + + // The campaign to which the label is attached. + google.protobuf.StringValue campaign = 2; + + // The label assigned to the campaign. + google.protobuf.StringValue label = 3; +} diff --git a/google/ads/googleads/v1/resources/campaign_shared_set.proto b/google/ads/googleads/v1/resources/campaign_shared_set.proto new file mode 100644 index 000000000..cab32be00 --- /dev/null +++ b/google/ads/googleads/v1/resources/campaign_shared_set.proto @@ -0,0 +1,56 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/campaign_shared_set_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CampaignSharedSet resource. + +// CampaignSharedSets are used for managing the shared sets associated with a +// campaign. +message CampaignSharedSet { + // The resource name of the campaign shared set. + // Campaign shared set resource names have the form: + // + // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` + string resource_name = 1; + + // The campaign to which the campaign shared set belongs. + google.protobuf.StringValue campaign = 3; + + // The shared set associated with the campaign. This may be a negative keyword + // shared set of another customer. This customer should be a manager of the + // other customer, otherwise the campaign shared set will exist but have no + // serving effect. Only negative keyword shared sets can be associated with + // Shopping campaigns. Only negative placement shared sets can be associated + // with Display mobile app campaigns. + google.protobuf.StringValue shared_set = 4; + + // The status of this campaign shared set. Read only. + google.ads.googleads.v1.enums.CampaignSharedSetStatusEnum.CampaignSharedSetStatus status = 2; +} diff --git a/google/ads/googleads/v1/resources/carrier_constant.proto b/google/ads/googleads/v1/resources/carrier_constant.proto new file mode 100644 index 000000000..1ad91c950 --- /dev/null +++ b/google/ads/googleads/v1/resources/carrier_constant.proto @@ -0,0 +1,50 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CarrierConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Carrier constant resource. + +// A carrier criterion that can be used in campaign targeting. +message CarrierConstant { + // The resource name of the carrier criterion. + // Carrier criterion resource names have the form: + // + // `carrierConstants/{criterion_id}` + string resource_name = 1; + + // The ID of the carrier criterion. + google.protobuf.Int64Value id = 2; + + // The full name of the carrier in English. + google.protobuf.StringValue name = 3; + + // The country code of the country where the carrier is located, e.g., "AR", + // "FR", etc. + google.protobuf.StringValue country_code = 4; +} diff --git a/google/ads/googleads/v1/resources/change_status.proto b/google/ads/googleads/v1/resources/change_status.proto new file mode 100644 index 000000000..f625d6e37 --- /dev/null +++ b/google/ads/googleads/v1/resources/change_status.proto @@ -0,0 +1,83 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/change_status_operation.proto"; +import "google/ads/googleads/v1/enums/change_status_resource_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Change Status resource. + +// Describes the status of returned resource. +message ChangeStatus { + // The resource name of the change status. + // Change status resource names have the form: + // + // `customers/{customer_id}/changeStatus/{change_status_id}` + string resource_name = 1; + + // Time at which the most recent change has occurred on this resource. + google.protobuf.StringValue last_change_date_time = 3; + + // Represents the type of the changed resource. This dictates what fields + // will be set. For example, for AD_GROUP, campaign and ad_group fields will + // be set. + google.ads.googleads.v1.enums.ChangeStatusResourceTypeEnum.ChangeStatusResourceType resource_type = 4; + + // The Campaign affected by this change. + google.protobuf.StringValue campaign = 5; + + // The AdGroup affected by this change. + google.protobuf.StringValue ad_group = 6; + + // Represents the status of the changed resource. + google.ads.googleads.v1.enums.ChangeStatusOperationEnum.ChangeStatusOperation resource_status = 8; + + // The AdGroupAd affected by this change. + google.protobuf.StringValue ad_group_ad = 9; + + // The AdGroupCriterion affected by this change. + google.protobuf.StringValue ad_group_criterion = 10; + + // The CampaignCriterion affected by this change. + google.protobuf.StringValue campaign_criterion = 11; + + // The Feed affected by this change. + google.protobuf.StringValue feed = 12; + + // The FeedItem affected by this change. + google.protobuf.StringValue feed_item = 13; + + // The AdGroupFeed affected by this change. + google.protobuf.StringValue ad_group_feed = 14; + + // The CampaignFeed affected by this change. + google.protobuf.StringValue campaign_feed = 15; + + // The AdGroupBidModifier affected by this change. + google.protobuf.StringValue ad_group_bid_modifier = 16; +} diff --git a/google/ads/googleads/v1/resources/click_view.proto b/google/ads/googleads/v1/resources/click_view.proto new file mode 100644 index 000000000..517b99dd7 --- /dev/null +++ b/google/ads/googleads/v1/resources/click_view.proto @@ -0,0 +1,57 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/click_location.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ClickViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ClickView resource. + +// A click view with metrics aggregated at each click level, including both +// valid and invalid clicks. For non-Search campaigns, metrics.clicks +// represents the number of valid and invalid interactions. +message ClickView { + // The resource name of the click view. + // Click view resource names have the form: + // + // `customers/{customer_id}/clickViews/{date (yyyy-MM-dd)}~{gclid}` + string resource_name = 1; + + // The Google Click ID. + google.protobuf.StringValue gclid = 2; + + // The location criteria matching the area of interest associated with the + // impression. + google.ads.googleads.v1.common.ClickLocation area_of_interest = 3; + + // The location criteria matching the location of presence associated with the + // impression. + google.ads.googleads.v1.common.ClickLocation location_of_presence = 4; + + // Page number in search results where the ad was shown. + google.protobuf.Int64Value page_number = 5; +} diff --git a/google/ads/googleads/v1/resources/conversion_action.proto b/google/ads/googleads/v1/resources/conversion_action.proto new file mode 100644 index 000000000..8fde41094 --- /dev/null +++ b/google/ads/googleads/v1/resources/conversion_action.proto @@ -0,0 +1,132 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/tag_snippet.proto"; +import "google/ads/googleads/v1/enums/attribution_model.proto"; +import "google/ads/googleads/v1/enums/conversion_action_category.proto"; +import "google/ads/googleads/v1/enums/conversion_action_counting_type.proto"; +import "google/ads/googleads/v1/enums/conversion_action_status.proto"; +import "google/ads/googleads/v1/enums/conversion_action_type.proto"; +import "google/ads/googleads/v1/enums/data_driven_model_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Conversion Action resource. + +// A conversion action. +message ConversionAction { + // Settings related to this conversion action's attribution model. + message AttributionModelSettings { + // The attribution model type of this conversion action. + google.ads.googleads.v1.enums.AttributionModelEnum.AttributionModel attribution_model = 1; + + // The status of the data-driven attribution model for the conversion + // action. + google.ads.googleads.v1.enums.DataDrivenModelStatusEnum.DataDrivenModelStatus data_driven_model_status = 2; + } + + // Settings related to the value for conversion events associated with this + // conversion action. + message ValueSettings { + // The value to use when conversion events for this conversion action are + // sent with an invalid, disallowed or missing value, or when + // this conversion action is configured to always use the default value. + google.protobuf.DoubleValue default_value = 1; + + // The currency code to use when conversion events for this conversion + // action are sent with an invalid or missing currency code, or when this + // conversion action is configured to always use the default value. + google.protobuf.StringValue default_currency_code = 2; + + // Controls whether the default value and default currency code are used in + // place of the value and currency code specified in conversion events for + // this conversion action. + google.protobuf.BoolValue always_use_default_value = 3; + } + + // The resource name of the conversion action. + // Conversion action resource names have the form: + // + // `customers/{customer_id}/conversionActions/{conversion_action_id}` + string resource_name = 1; + + // The ID of the conversion action. + google.protobuf.Int64Value id = 2; + + // The name of the conversion action. + // + // This field is required and should not be empty when creating new + // conversion actions. + google.protobuf.StringValue name = 3; + + // The status of this conversion action for conversion event accrual. + google.ads.googleads.v1.enums.ConversionActionStatusEnum.ConversionActionStatus status = 4; + + // The type of this conversion action. + google.ads.googleads.v1.enums.ConversionActionTypeEnum.ConversionActionType type = 5; + + // The category of conversions reported for this conversion action. + google.ads.googleads.v1.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 6; + + // The resource name of the conversion action owner customer, or null if this + // is a system-defined conversion action. + google.protobuf.StringValue owner_customer = 7; + + // Whether this conversion action should be included in the "conversions" + // metric. + google.protobuf.BoolValue include_in_conversions_metric = 8; + + // The maximum number of days that may elapse between an interaction + // (e.g., a click) and a conversion event. + google.protobuf.Int64Value click_through_lookback_window_days = 9; + + // The maximum number of days which may elapse between an impression and a + // conversion without an interaction. + google.protobuf.Int64Value view_through_lookback_window_days = 10; + + // Settings related to the value for conversion events associated with this + // conversion action. + ValueSettings value_settings = 11; + + // How to count conversion events for the conversion action. + google.ads.googleads.v1.enums.ConversionActionCountingTypeEnum.ConversionActionCountingType counting_type = 12; + + // Settings related to this conversion action's attribution model. + AttributionModelSettings attribution_model_settings = 13; + + // The snippets used for tracking conversions. + repeated google.ads.googleads.v1.common.TagSnippet tag_snippets = 14; + + // The phone call duration in seconds after which a conversion should be + // reported for this conversion action. + // + // The value must be between 0 and 10000, inclusive. + google.protobuf.Int64Value phone_call_duration_seconds = 15; + + // App ID for an app conversion action. + google.protobuf.StringValue app_id = 16; +} diff --git a/google/ads/googleads/v1/resources/custom_interest.proto b/google/ads/googleads/v1/resources/custom_interest.proto new file mode 100644 index 000000000..4eacedd32 --- /dev/null +++ b/google/ads/googleads/v1/resources/custom_interest.proto @@ -0,0 +1,78 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/custom_interest_member_type.proto"; +import "google/ads/googleads/v1/enums/custom_interest_status.proto"; +import "google/ads/googleads/v1/enums/custom_interest_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Custom Interest resource. + +// A custom interest. This is a list of users by interest. +message CustomInterest { + // The resource name of the custom interest. + // Custom interest resource names have the form: + // + // `customers/{customer_id}/customInterests/{custom_interest_id}` + string resource_name = 1; + + // Id of the custom interest. + google.protobuf.Int64Value id = 2; + + // Status of this custom interest. Indicates whether the custom interest is + // enabled or removed. + google.ads.googleads.v1.enums.CustomInterestStatusEnum.CustomInterestStatus status = 3; + + // Name of the custom interest. It should be unique across the same custom + // affinity audience. + // This field is required for create operations. + google.protobuf.StringValue name = 4; + + // Type of the custom interest, CUSTOM_AFFINITY or CUSTOM_INTENT. + // By default the type is set to CUSTOM_AFFINITY. + google.ads.googleads.v1.enums.CustomInterestTypeEnum.CustomInterestType type = 5; + + // Description of this custom interest audience. + google.protobuf.StringValue description = 6; + + // List of custom interest members that this custom interest is composed of. + // Members can be added during CustomInterest creation. If members are + // presented in UPDATE operation, existing members will be overridden. + repeated CustomInterestMember members = 7; +} + +// A member of custom interest audience. A member can be a keyword or url. +// It is immutable, that is, it can only be created or removed but not changed. +message CustomInterestMember { + // The type of custom interest member, KEYWORD or URL. + google.ads.googleads.v1.enums.CustomInterestMemberTypeEnum.CustomInterestMemberType member_type = 1; + + // Keyword text when member_type is KEYWORD or URL string when + // member_type is URL. + google.protobuf.StringValue parameter = 2; +} diff --git a/google/ads/googleads/v1/resources/customer.proto b/google/ads/googleads/v1/resources/customer.proto new file mode 100644 index 000000000..b5e550d99 --- /dev/null +++ b/google/ads/googleads/v1/resources/customer.proto @@ -0,0 +1,119 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Customer resource. + +// A customer. +message Customer { + // The resource name of the customer. + // Customer resource names have the form: + // + // `customers/{customer_id}` + string resource_name = 1; + + // The ID of the customer. + google.protobuf.Int64Value id = 3; + + // Optional, non-unique descriptive name of the customer. + google.protobuf.StringValue descriptive_name = 4; + + // The currency in which the account operates. + // A subset of the currency codes from the ISO 4217 standard is + // supported. + google.protobuf.StringValue currency_code = 5; + + // The local timezone ID of the customer. + google.protobuf.StringValue time_zone = 6; + + // The URL template for constructing a tracking URL out of parameters. + google.protobuf.StringValue tracking_url_template = 7; + + // The URL template for appending params to the final URL + google.protobuf.StringValue final_url_suffix = 11; + + // Whether auto-tagging is enabled for the customer. + google.protobuf.BoolValue auto_tagging_enabled = 8; + + // Whether the Customer has a Partners program badge. If the Customer is not + // associated with the Partners program, this will be false. For more + // information, see https://support.google.com/partners/answer/3125774. + google.protobuf.BoolValue has_partners_badge = 9; + + // Whether the customer is a manager. + google.protobuf.BoolValue manager = 12; + + // Whether the customer is a test account. + google.protobuf.BoolValue test_account = 13; + + // Call reporting setting for a customer. + CallReportingSetting call_reporting_setting = 10; + + // Conversion tracking setting for a customer. + ConversionTrackingSetting conversion_tracking_setting = 14; + + // Remarketing setting for a customer. + RemarketingSetting remarketing_setting = 15; +} + +// Call reporting setting for a customer. +message CallReportingSetting { + // Enable reporting of phone call events by redirecting them via Google + // System. + google.protobuf.BoolValue call_reporting_enabled = 1; + + // Whether to enable call conversion reporting. + google.protobuf.BoolValue call_conversion_reporting_enabled = 2; + + // Customer-level call conversion action to attribute a call conversion to. + // If not set a default conversion action is used. Only in effect when + // call_conversion_reporting_enabled is set to true. + google.protobuf.StringValue call_conversion_action = 9; +} + +// A collection of customer-wide settings related to Google Ads Conversion +// Tracking. +message ConversionTrackingSetting { + // The conversion tracking id used for this account. This id is automatically + // assigned after any conversion tracking feature is used. If the customer + // doesn't use conversion tracking, this is 0. This field is read-only. + google.protobuf.Int64Value conversion_tracking_id = 1; + + // The conversion tracking id of the customer's manager. This is set when the + // customer is opted into cross account conversion tracking, and it overrides + // conversion_tracking_id. This field can only be managed through the Google + // Ads UI. This field is read-only. + google.protobuf.Int64Value cross_account_conversion_tracking_id = 2; +} + +// Remarketing setting for a customer. +message RemarketingSetting { + // The Google global site tag. + google.protobuf.StringValue google_global_site_tag = 1; +} diff --git a/google/ads/googleads/v1/resources/customer_client.proto b/google/ads/googleads/v1/resources/customer_client.proto new file mode 100644 index 000000000..92a6453f9 --- /dev/null +++ b/google/ads/googleads/v1/resources/customer_client.proto @@ -0,0 +1,55 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CustomerClient resource. + +// A link between the given customer and a client customer. CustomerClients only +// exist for manager customers. All direct and indirect client customers are +// included, as well as the manager itself. +message CustomerClient { + // The resource name of the customer client. + // CustomerClient resource names have the form: + // `customers/{customer_id}/customerClients/{client_customer_id}` + string resource_name = 1; + + // The resource name of the client-customer which is linked to + // the given customer. Read only. + google.protobuf.StringValue client_customer = 3; + + // Specifies whether this is a hidden account. Learn more about hidden + // accounts <a + // href="https://support.google.com/google-ads/answer/7519830">here</a>. Read + // only. + google.protobuf.BoolValue hidden = 4; + + // Distance between given customer and client. For self link, the level value + // will be 0. Read only. + google.protobuf.Int64Value level = 5; +} diff --git a/google/ads/googleads/v1/resources/customer_client_link.proto b/google/ads/googleads/v1/resources/customer_client_link.proto new file mode 100644 index 000000000..77a72f2e8 --- /dev/null +++ b/google/ads/googleads/v1/resources/customer_client_link.proto @@ -0,0 +1,55 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/manager_link_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientLinkProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CustomerClientLink resource. + +// Represents customer client link relationship. +message CustomerClientLink { + // Name of the resource. + // CustomerClientLink resource names have the form: + // + // `customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}` + string resource_name = 1; + + // The client customer linked to this customer. + google.protobuf.StringValue client_customer = 3; + + // This is uniquely identifies a customer client link. Read only. + google.protobuf.Int64Value manager_link_id = 4; + + // This is the status of the link between client and manager. + google.ads.googleads.v1.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; + + // The visibility of the link. Users can choose whether or not to see hidden + // links in the AdWords UI. + // Default value is false + google.protobuf.BoolValue hidden = 6; +} diff --git a/google/ads/googleads/v1/resources/customer_extension_setting.proto b/google/ads/googleads/v1/resources/customer_extension_setting.proto new file mode 100644 index 000000000..2cf041314 --- /dev/null +++ b/google/ads/googleads/v1/resources/customer_extension_setting.proto @@ -0,0 +1,54 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/extension_setting_device.proto"; +import "google/ads/googleads/v1/enums/extension_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CustomerExtensionSetting resource. + +// A customer extension setting. +message CustomerExtensionSetting { + // The resource name of the customer extension setting. + // CustomerExtensionSetting resource names have the form: + // + // `customers/{customer_id}/customerExtensionSettings/{extension_type}` + string resource_name = 1; + + // The extension type of the customer extension setting. + google.ads.googleads.v1.enums.ExtensionTypeEnum.ExtensionType extension_type = 2; + + // The resource names of the extension feed items to serve under the customer. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated google.protobuf.StringValue extension_feed_items = 3; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v1.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 4; +} diff --git a/google/ads/googleads/v1/resources/customer_feed.proto b/google/ads/googleads/v1/resources/customer_feed.proto new file mode 100644 index 000000000..891f9683b --- /dev/null +++ b/google/ads/googleads/v1/resources/customer_feed.proto @@ -0,0 +1,59 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/matching_function.proto"; +import "google/ads/googleads/v1/enums/feed_link_status.proto"; +import "google/ads/googleads/v1/enums/placeholder_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerFeedProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CustomerFeed resource. + +// A customer feed. +message CustomerFeed { + // The resource name of the customer feed. + // Customer feed resource names have the form: + // + // `customers/{customer_id}/customerFeeds/{feed_id}` + string resource_name = 1; + + // The feed being linked to the customer. + google.protobuf.StringValue feed = 2; + + // Indicates which placeholder types the feed may populate under the connected + // customer. Required. + repeated google.ads.googleads.v1.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 3; + + // Matching function associated with the CustomerFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v1.common.MatchingFunction matching_function = 4; + + // Status of the customer feed. + // This field is read-only. + google.ads.googleads.v1.enums.FeedLinkStatusEnum.FeedLinkStatus status = 5; +} diff --git a/google/ads/googleads/v1/resources/customer_label.proto b/google/ads/googleads/v1/resources/customer_label.proto new file mode 100644 index 000000000..23436d86a --- /dev/null +++ b/google/ads/googleads/v1/resources/customer_label.proto @@ -0,0 +1,51 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerLabelProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the customer label resource. + +// Represents a relationship between a customer and a label. This customer may +// not have access to all the labels attached to it. Additional CustomerLabels +// may be returned by increasing permissions with login-customer-id. +message CustomerLabel { + // Name of the resource. + // Customer label resource names have the form: + // `customers/{customer_id}/customerLabels/{label_id}` + string resource_name = 1; + + // The resource name of the customer to which the label is attached. + // Read only. + google.protobuf.StringValue customer = 2; + + // The resource name of the label assigned to the customer. + // + // Note: the Customer ID portion of the label resource name is not + // validated when creating a new CustomerLabel. + google.protobuf.StringValue label = 3; +} diff --git a/google/ads/googleads/v1/resources/customer_manager_link.proto b/google/ads/googleads/v1/resources/customer_manager_link.proto new file mode 100644 index 000000000..0cf7b8414 --- /dev/null +++ b/google/ads/googleads/v1/resources/customer_manager_link.proto @@ -0,0 +1,50 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/manager_link_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerManagerLinkProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the CustomerManagerLink resource. + +// Represents customer-manager link relationship. +message CustomerManagerLink { + // Name of the resource. + // CustomerManagerLink resource names have the form: + // + // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` + string resource_name = 1; + + // The manager customer linked to the customer. + google.protobuf.StringValue manager_customer = 3; + + // ID of the customer-manager link. This field is read only. + google.protobuf.Int64Value manager_link_id = 4; + + // Status of the link between the customer and the manager. + google.ads.googleads.v1.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; +} diff --git a/google/ads/googleads/v1/resources/customer_negative_criterion.proto b/google/ads/googleads/v1/resources/customer_negative_criterion.proto new file mode 100644 index 000000000..8ac449a90 --- /dev/null +++ b/google/ads/googleads/v1/resources/customer_negative_criterion.proto @@ -0,0 +1,71 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/ads/googleads/v1/enums/criterion_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerNegativeCriterionProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Customer Negative Criterion resource. + +// A negative criterion for exclusions at the customer level. +message CustomerNegativeCriterion { + // The resource name of the customer negative criterion. + // Customer negative criterion resource names have the form: + // + // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` + string resource_name = 1; + + // The ID of the criterion. + google.protobuf.Int64Value id = 2; + + // The type of the criterion. + google.ads.googleads.v1.enums.CriterionTypeEnum.CriterionType type = 3; + + // The customer negative criterion. + // + // Exactly one must be set. + oneof criterion { + // ContentLabel. + google.ads.googleads.v1.common.ContentLabelInfo content_label = 4; + + // MobileApplication. + google.ads.googleads.v1.common.MobileApplicationInfo mobile_application = 5; + + // MobileAppCategory. + google.ads.googleads.v1.common.MobileAppCategoryInfo mobile_app_category = 6; + + // Placement. + google.ads.googleads.v1.common.PlacementInfo placement = 7; + + // YouTube Video. + google.ads.googleads.v1.common.YouTubeVideoInfo youtube_video = 8; + + // YouTube Channel. + google.ads.googleads.v1.common.YouTubeChannelInfo youtube_channel = 9; + } +} diff --git a/google/ads/googleads/v1/resources/detail_placement_view.proto b/google/ads/googleads/v1/resources/detail_placement_view.proto new file mode 100644 index 000000000..85ec76bdc --- /dev/null +++ b/google/ads/googleads/v1/resources/detail_placement_view.proto @@ -0,0 +1,61 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/placement_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DetailPlacementViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Services"; +// Proto file describing the detail placement view resource. + +// A view with metrics aggregated by ad group and URL or YouTube video. +message DetailPlacementView { + // The resource name of the detail placement view. + // Detail placement view resource names have the form: + // + // + // `customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}` + string resource_name = 1; + + // The automatic placement string at detail level, e. g. website URL, mobile + // application ID, or a YouTube video ID. + google.protobuf.StringValue placement = 2; + + // The display name is URL name for websites, YouTube video name for YouTube + // videos, and translated mobile app name for mobile apps. + google.protobuf.StringValue display_name = 3; + + // URL of the group placement, e.g. domain, link to the mobile application in + // app store, or a YouTube channel URL. + google.protobuf.StringValue group_placement_target_url = 4; + + // URL of the placement, e.g. website, link to the mobile application in app + // store, or a YouTube video URL. + google.protobuf.StringValue target_url = 5; + + // Type of the placement, e.g. Website, YouTube Video, and Mobile Application. + google.ads.googleads.v1.enums.PlacementTypeEnum.PlacementType placement_type = 6; +} diff --git a/google/ads/googleads/v1/resources/display_keyword_view.proto b/google/ads/googleads/v1/resources/display_keyword_view.proto new file mode 100644 index 000000000..609777c83 --- /dev/null +++ b/google/ads/googleads/v1/resources/display_keyword_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DisplayKeywordViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the display keyword view resource. + +// A display keyword view. +message DisplayKeywordView { + // The resource name of the display keyword view. + // Display Keyword view resource names have the form: + // + // `customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/domain_category.proto b/google/ads/googleads/v1/resources/domain_category.proto new file mode 100644 index 000000000..874bb07b2 --- /dev/null +++ b/google/ads/googleads/v1/resources/domain_category.proto @@ -0,0 +1,75 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DomainCategoryProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Domain Category resource. + +// A category generated automatically by crawling a domain. If a campaign uses +// the DynamicSearchAdsSetting, then domain categories will be generated for +// the domain. The categories can be targeted using WebpageConditionInfo. +// See: https://support.google.com/google-ads/answer/2471185 +message DomainCategory { + // The resource name of the domain category. + // Domain category resource names have the form: + // + // + // `customers/{customer_id}/domainCategories/{campaign_id}~{category_base64}~{language_code}` + string resource_name = 1; + + // The campaign this category is recommended for. + google.protobuf.StringValue campaign = 2; + + // Recommended category for the website domain. e.g. if you have a website + // about electronics, the categories could be "cameras", "televisions", etc. + google.protobuf.StringValue category = 3; + + // The language code specifying the language of the website. e.g. "en" for + // English. The language can be specified in the DynamicSearchAdsSetting + // required for dynamic search ads. This is the language of the pages from + // your website that you want Google Ads to find, create ads for, + // and match searches with. + google.protobuf.StringValue language_code = 4; + + // The domain for the website. The domain can be specified in the + // DynamicSearchAdsSetting required for dynamic search ads. + google.protobuf.StringValue domain = 5; + + // Fraction of pages on your site that this category matches. + google.protobuf.DoubleValue coverage_fraction = 6; + + // The position of this category in the set of categories. Lower numbers + // indicate a better match for the domain. null indicates not recommended. + google.protobuf.Int64Value category_rank = 7; + + // Indicates whether this category has sub-categories. + google.protobuf.BoolValue has_children = 8; + + // The recommended cost per click for the category. + google.protobuf.Int64Value recommended_cpc_bid_micros = 9; +} diff --git a/google/ads/googleads/v1/resources/dynamic_search_ads_search_term_view.proto b/google/ads/googleads/v1/resources/dynamic_search_ads_search_term_view.proto new file mode 100644 index 000000000..75eeb5ad4 --- /dev/null +++ b/google/ads/googleads/v1/resources/dynamic_search_ads_search_term_view.proto @@ -0,0 +1,61 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DynamicSearchAdsSearchTermViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Dynamic Search Ads Search Term View resource. + +// A dynamic search ads search term view. +message DynamicSearchAdsSearchTermView { + // The resource name of the dynamic search ads search term view. + // Dynamic search ads search term view resource names have the form: + // + // + // `customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fp}~{headline_fp}~{landing_page_fp}~{page_url_fp}` + string resource_name = 1; + + // Search term + // + // This field is read-only. + google.protobuf.StringValue search_term = 2; + + // The dynamically generated headline of the Dynamic Search Ad. + // + // This field is read-only. + google.protobuf.StringValue headline = 3; + + // The dynamically selected landing page URL of the impression. + // + // This field is read-only. + google.protobuf.StringValue landing_page = 4; + + // The URL of page feed item served for the impression. + // + // This field is read-only. + google.protobuf.StringValue page_url = 5; +} diff --git a/google/ads/googleads/v1/resources/extension_feed_item.proto b/google/ads/googleads/v1/resources/extension_feed_item.proto new file mode 100644 index 000000000..7507e4786 --- /dev/null +++ b/google/ads/googleads/v1/resources/extension_feed_item.proto @@ -0,0 +1,84 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/extensions.proto"; +import "google/ads/googleads/v1/enums/feed_item_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionFeedItemProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ExtensionFeedItem resource. + +// An extension feed item. +message ExtensionFeedItem { + // The resource name of the extension feed item. + // Extension feed item resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + string resource_name = 1; + + // Start time in which this feed item is effective and can begin serving. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + google.protobuf.StringValue start_date_time = 5; + + // End time in which this feed item is no longer effective and will stop + // serving. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + google.protobuf.StringValue end_date_time = 6; + + // Status of the feed item. + // This field is read-only. + google.ads.googleads.v1.enums.FeedItemStatusEnum.FeedItemStatus status = 4; + + // Extension type. + oneof extension { + // Sitelink extension. + google.ads.googleads.v1.common.SitelinkFeedItem sitelink_feed_item = 2; + + // Structured snippet extension. + google.ads.googleads.v1.common.StructuredSnippetFeedItem structured_snippet_feed_item = 3; + + // App extension. + google.ads.googleads.v1.common.AppFeedItem app_feed_item = 7; + + // Call extension. + google.ads.googleads.v1.common.CallFeedItem call_feed_item = 8; + + // Callout extension. + google.ads.googleads.v1.common.CalloutFeedItem callout_feed_item = 9; + + // Text message extension. + google.ads.googleads.v1.common.TextMessageFeedItem text_message_feed_item = 10; + + // Price extension. + google.ads.googleads.v1.common.PriceFeedItem price_feed_item = 11; + + // Promotion extension. + google.ads.googleads.v1.common.PromotionFeedItem promotion_feed_item = 12; + } +} diff --git a/google/ads/googleads/v1/resources/feed.proto b/google/ads/googleads/v1/resources/feed.proto new file mode 100644 index 000000000..1339271a6 --- /dev/null +++ b/google/ads/googleads/v1/resources/feed.proto @@ -0,0 +1,179 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/affiliate_location_feed_relationship_type.proto"; +import "google/ads/googleads/v1/enums/feed_attribute_type.proto"; +import "google/ads/googleads/v1/enums/feed_origin.proto"; +import "google/ads/googleads/v1/enums/feed_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Feed resource. + +// A feed. +message Feed { + // Data used to configure a location feed populated from Google My Business + // Locations. + message PlacesLocationFeedData { + // Data used for authorization using OAuth. + message OAuthInfo { + // The HTTP method used to obtain authorization. + google.protobuf.StringValue http_method = 1; + + // The HTTP request URL used to obtain authorization. + google.protobuf.StringValue http_request_url = 2; + + // The HTTP authorization header used to obtain authorization. + google.protobuf.StringValue http_authorization_header = 3; + } + + // Required authentication token (from OAuth API) for the email. + // This field can only be specified in a create request. All its subfields + // are not selectable. + OAuthInfo oauth_info = 1; + + // Email address of a Google My Business account or email address of a + // manager of the Google My Business account. Required. + google.protobuf.StringValue email_address = 2; + + // Plus page ID of the managed business whose locations should be used. If + // this field is not set, then all businesses accessible by the user + // (specified by email_address) are used. + // This field is mutate-only and is not selectable. + google.protobuf.StringValue business_account_id = 10; + + // Used to filter Google My Business listings by business name. If + // business_name_filter is set, only listings with a matching business name + // are candidates to be sync'd into FeedItems. + google.protobuf.StringValue business_name_filter = 4; + + // Used to filter Google My Business listings by categories. If entries + // exist in category_filters, only listings that belong to any of the + // categories are candidates to be sync'd into FeedItems. If no entries + // exist in category_filters, then all listings are candidates for syncing. + repeated google.protobuf.StringValue category_filters = 5; + + // Used to filter Google My Business listings by labels. If entries exist in + // label_filters, only listings that has any of the labels set are + // candidates to be synchronized into FeedItems. If no entries exist in + // label_filters, then all listings are candidates for syncing. + repeated google.protobuf.StringValue label_filters = 6; + } + + // Data used to configure an affiliate location feed populated with the + // specified chains. + message AffiliateLocationFeedData { + // The list of chains that the affiliate location feed will sync the + // locations from. + repeated google.protobuf.Int64Value chain_ids = 1; + + // The relationship the chains have with the advertiser. + google.ads.googleads.v1.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType relationship_type = 2; + } + + // The resource name of the feed. + // Feed resource names have the form: + // + // `customers/{customer_id}/feeds/{feed_id}` + string resource_name = 1; + + // The ID of the feed. + // This field is read-only. + google.protobuf.Int64Value id = 2; + + // Name of the feed. Required. + google.protobuf.StringValue name = 3; + + // The Feed's attributes. Required on CREATE. + // Disallowed on UPDATE. Use attribute_operations to add new attributes. + repeated FeedAttribute attributes = 4; + + // The list of operations changing the feed attributes. Attributes can only + // be added, not removed. + repeated FeedAttributeOperation attribute_operations = 9; + + // Specifies who manages the FeedAttributes for the Feed. + google.ads.googleads.v1.enums.FeedOriginEnum.FeedOrigin origin = 5; + + // Status of the feed. + // This field is read-only. + google.ads.googleads.v1.enums.FeedStatusEnum.FeedStatus status = 8; + + // The system data for the Feed. This data specifies information for + // generating the feed items of the system generated feed. + oneof system_feed_generation_data { + // Data used to configure a location feed populated from Google My Business + // Locations. + PlacesLocationFeedData places_location_feed_data = 6; + + // Data used to configure an affiliate location feed populated with + // the specified chains. + AffiliateLocationFeedData affiliate_location_feed_data = 7; + } +} + +// FeedAttributes define the types of data expected to be present in a Feed. A +// single FeedAttribute specifies the expected type of the FeedItemAttributes +// with the same FeedAttributeId. Optionally, a FeedAttribute can be marked as +// being part of a FeedItem's unique key. +message FeedAttribute { + // ID of the attribute. + google.protobuf.Int64Value id = 1; + + // The name of the attribute. Required. + google.protobuf.StringValue name = 2; + + // Data type for feed attribute. Required. + google.ads.googleads.v1.enums.FeedAttributeTypeEnum.FeedAttributeType type = 3; + + // Indicates that data corresponding to this attribute is part of a + // FeedItem's unique key. It defaults to false if it is unspecified. Note + // that a unique key is not required in a Feed's schema, in which case the + // FeedItems must be referenced by their feed_item_id. + google.protobuf.BoolValue is_part_of_key = 4; +} + +// Operation to be performed on a feed attribute list in a mutate. +message FeedAttributeOperation { + // The operator. + enum Operator { + // Unspecified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Add the attribute to the existing attributes. + ADD = 2; + } + + // Type of list operation to perform. + Operator operator = 1; + + // The feed attribute being added to the list. + FeedAttribute value = 2; +} diff --git a/google/ads/googleads/v1/resources/feed_item.proto b/google/ads/googleads/v1/resources/feed_item.proto new file mode 100644 index 000000000..4db8689e9 --- /dev/null +++ b/google/ads/googleads/v1/resources/feed_item.proto @@ -0,0 +1,196 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/custom_parameter.proto"; +import "google/ads/googleads/v1/common/feed_common.proto"; +import "google/ads/googleads/v1/common/policy.proto"; +import "google/ads/googleads/v1/enums/feed_item_quality_approval_status.proto"; +import "google/ads/googleads/v1/enums/feed_item_quality_disapproval_reason.proto"; +import "google/ads/googleads/v1/enums/feed_item_status.proto"; +import "google/ads/googleads/v1/enums/feed_item_validation_status.proto"; +import "google/ads/googleads/v1/enums/geo_targeting_restriction.proto"; +import "google/ads/googleads/v1/enums/policy_approval_status.proto"; +import "google/ads/googleads/v1/enums/policy_review_status.proto"; +import "google/ads/googleads/v1/errors/feed_item_validation_error.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the FeedItem resource. + +// A feed item. +message FeedItem { + // The resource name of the feed item. + // Feed item resource names have the form: + // + // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` + string resource_name = 1; + + // The feed to which this feed item belongs. + google.protobuf.StringValue feed = 2; + + // The ID of this feed item. + google.protobuf.Int64Value id = 3; + + // Start time in which this feed item is effective and can begin serving. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + google.protobuf.StringValue start_date_time = 4; + + // End time in which this feed item is no longer effective and will stop + // serving. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + google.protobuf.StringValue end_date_time = 5; + + // The feed item's attribute values. + repeated FeedItemAttributeValue attribute_values = 6; + + // Geo targeting restriction specifies the type of location that can be used + // for targeting. + google.ads.googleads.v1.enums.GeoTargetingRestrictionEnum.GeoTargetingRestriction geo_targeting_restriction = 7; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v1.common.CustomParameter url_custom_parameters = 8; + + // Status of the feed item. + // This field is read-only. + google.ads.googleads.v1.enums.FeedItemStatusEnum.FeedItemStatus status = 9; + + // List of info about a feed item's validation and approval state for active + // feed mappings. There will be an entry in the list for each type of feed + // mapping associated with the feed, e.g. a feed with a sitelink and a call + // feed mapping would cause every feed item associated with that feed to have + // an entry in this list for both sitelink and call. + // This field is read-only. + repeated FeedItemPlaceholderPolicyInfo policy_infos = 10; +} + +// A feed item attribute value. +message FeedItemAttributeValue { + // Id of the feed attribute for which the value is associated with. + google.protobuf.Int64Value feed_attribute_id = 1; + + // Int64 value. Should be set if feed_attribute_id refers to a feed attribute + // of type INT64. + google.protobuf.Int64Value integer_value = 2; + + // Bool value. Should be set if feed_attribute_id refers to a feed attribute + // of type BOOLEAN. + google.protobuf.BoolValue boolean_value = 3; + + // String value. Should be set if feed_attribute_id refers to a feed attribute + // of type STRING, URL or DATE_TIME. + // For STRING the maximum length is 1500 characters. For URL the maximum + // length is 2076 characters. For DATE_TIME the format of the string must + // be the same as start and end time for the feed item. + google.protobuf.StringValue string_value = 4; + + // Double value. Should be set if feed_attribute_id refers to a feed attribute + // of type DOUBLE. + google.protobuf.DoubleValue double_value = 5; + + // Price value. Should be set if feed_attribute_id refers to a feed attribute + // of type PRICE. + google.ads.googleads.v1.common.Money price_value = 6; + + // Repeated int64 value. Should be set if feed_attribute_id refers to a feed + // attribute of type INT64_LIST. + repeated google.protobuf.Int64Value integer_values = 7; + + // Repeated bool value. Should be set if feed_attribute_id refers to a feed + // attribute of type BOOLEAN_LIST. + repeated google.protobuf.BoolValue boolean_values = 8; + + // Repeated string value. Should be set if feed_attribute_id refers to a feed + // attribute of type STRING_LIST, URL_LIST or DATE_TIME_LIST. + // For STRING_LIST and URL_LIST the total size of the list in bytes may not + // exceed 3000. For DATE_TIME_LIST the number of elements may not exceed 200. + // + // For STRING_LIST the maximum length of each string element is 1500 + // characters. For URL_LIST the maximum length is 2076 characters. For + // DATE_TIME the format of the string must be the same as start and end time + // for the feed item. + repeated google.protobuf.StringValue string_values = 9; + + // Repeated double value. Should be set if feed_attribute_id refers to a feed + // attribute of type DOUBLE_LIST. + repeated google.protobuf.DoubleValue double_values = 10; +} + +// Policy, validation, and quality approval info for a feed item for the +// specified placeholder type. +message FeedItemPlaceholderPolicyInfo { + // The placeholder type. + google.protobuf.Int32Value placeholder_type = 1; + + // The FeedMapping that contains the placeholder type. + google.protobuf.StringValue feed_mapping_resource_name = 2; + + // Where the placeholder type is in the review process. + google.ads.googleads.v1.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 3; + + // The overall approval status of the placeholder type, calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v1.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 4; + + // The list of policy findings for the placeholder type. + repeated google.ads.googleads.v1.common.PolicyTopicEntry policy_topic_entries = 5; + + // The validation status of the palceholder type. + google.ads.googleads.v1.enums.FeedItemValidationStatusEnum.FeedItemValidationStatus validation_status = 6; + + // List of placeholder type validation errors. + repeated FeedItemValidationError validation_errors = 7; + + // Placeholder type quality evaluation approval status. + google.ads.googleads.v1.enums.FeedItemQualityApprovalStatusEnum.FeedItemQualityApprovalStatus quality_approval_status = 8; + + // List of placeholder type quality evaluation disapproval reasons. + repeated google.ads.googleads.v1.enums.FeedItemQualityDisapprovalReasonEnum.FeedItemQualityDisapprovalReason quality_disapproval_reasons = 9; +} + +// Stores a validation error and the set of offending feed attributes which +// together are responsible for causing a feed item validation error. +message FeedItemValidationError { + // Error code indicating what validation error was triggered. The description + // of the error can be found in the 'description' field. + google.ads.googleads.v1.errors.FeedItemValidationErrorEnum.FeedItemValidationError validation_error = 1; + + // The description of the validation error. + google.protobuf.StringValue description = 2; + + // Set of feed attributes in the feed item flagged during validation. If + // empty, no specific feed attributes can be associated with the error + // (e.g. error across the entire feed item). + repeated google.protobuf.Int64Value feed_attribute_ids = 3; + + // Any extra information related to this error which is not captured by + // validation_error and feed_attribute_id (e.g. placeholder field IDs when + // feed_attribute_id is not mapped). Note that extra_info is not localized. + google.protobuf.StringValue extra_info = 5; +} diff --git a/google/ads/googleads/v1/resources/feed_item_target.proto b/google/ads/googleads/v1/resources/feed_item_target.proto new file mode 100644 index 000000000..758705e28 --- /dev/null +++ b/google/ads/googleads/v1/resources/feed_item_target.proto @@ -0,0 +1,73 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/ads/googleads/v1/enums/feed_item_target_device.proto"; +import "google/ads/googleads/v1/enums/feed_item_target_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the FeedItemTarget resource. + +// A feed item target. +message FeedItemTarget { + // The resource name of the feed item target. + // Feed item target resource names have the form: + // + // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` + string resource_name = 1; + + // The feed item to which this feed item target belongs. + google.protobuf.StringValue feed_item = 2; + + // The target type of this feed item target. This field is read-only. + google.ads.googleads.v1.enums.FeedItemTargetTypeEnum.FeedItemTargetType feed_item_target_type = 3; + + // The ID of the targeted resource. This field is read-only. + google.protobuf.Int64Value feed_item_target_id = 6; + + // The targeted resource. + oneof target { + // The targeted campaign. + google.protobuf.StringValue campaign = 4; + + // The targeted ad group. + google.protobuf.StringValue ad_group = 5; + + // The targeted keyword. + google.ads.googleads.v1.common.KeywordInfo keyword = 7; + + // The targeted geo target constant resource name. + google.protobuf.StringValue geo_target_constant = 8; + + // The targeted device. + google.ads.googleads.v1.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 9; + + // The targeted schedule. + google.ads.googleads.v1.common.AdScheduleInfo ad_schedule = 10; + } +} diff --git a/google/ads/googleads/v1/resources/feed_mapping.proto b/google/ads/googleads/v1/resources/feed_mapping.proto new file mode 100644 index 000000000..75c83e381 --- /dev/null +++ b/google/ads/googleads/v1/resources/feed_mapping.proto @@ -0,0 +1,169 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/ad_customizer_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/affiliate_location_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/app_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/call_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/callout_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/custom_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/dsa_page_feed_criterion_field.proto"; +import "google/ads/googleads/v1/enums/education_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/feed_mapping_criterion_type.proto"; +import "google/ads/googleads/v1/enums/feed_mapping_status.proto"; +import "google/ads/googleads/v1/enums/flight_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/hotel_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/job_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/local_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/location_extension_targeting_criterion_field.proto"; +import "google/ads/googleads/v1/enums/location_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/message_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/placeholder_type.proto"; +import "google/ads/googleads/v1/enums/price_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/promotion_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/real_estate_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/sitelink_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/structured_snippet_placeholder_field.proto"; +import "google/ads/googleads/v1/enums/travel_placeholder_field.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the FeedMapping resource. + +// A feed mapping. +message FeedMapping { + // The resource name of the feed mapping. + // Feed mapping resource names have the form: + // + // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` + string resource_name = 1; + + // The feed of this feed mapping. + google.protobuf.StringValue feed = 2; + + // Feed attributes to field mappings. These mappings are a one-to-many + // relationship meaning that 1 feed attribute can be used to populate + // multiple placeholder fields, but 1 placeholder field can only draw + // data from 1 feed attribute. Ad Customizer is an exception, 1 placeholder + // field can be mapped to multiple feed attributes. Required. + repeated AttributeFieldMapping attribute_field_mappings = 5; + + // Status of the feed mapping. + // This field is read-only. + google.ads.googleads.v1.enums.FeedMappingStatusEnum.FeedMappingStatus status = 6; + + // Feed mapping target. Can be either a placeholder or a criterion. For a + // given feed, the active FeedMappings must have unique targets. Required. + oneof target { + // The placeholder type of this mapping (i.e., if the mapping maps feed + // attributes to placeholder fields). + google.ads.googleads.v1.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 3; + + // The criterion type of this mapping (i.e., if the mapping maps feed + // attributes to criterion fields). + google.ads.googleads.v1.enums.FeedMappingCriterionTypeEnum.FeedMappingCriterionType criterion_type = 4; + } +} + +// Maps from feed attribute id to a placeholder or criterion field id. +message AttributeFieldMapping { + // Feed attribute from which to map. + google.protobuf.Int64Value feed_attribute_id = 1; + + // The placeholder field ID. If a placeholder field enum is not published in + // the current API version, then this field will be populated and the field + // oneof will be empty. + // This field is read-only. + google.protobuf.Int64Value field_id = 2; + + // Placeholder or criterion field to be populated using data from + // the above feed attribute. Required. + oneof field { + // Sitelink Placeholder Fields. + google.ads.googleads.v1.enums.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField sitelink_field = 3; + + // Call Placeholder Fields. + google.ads.googleads.v1.enums.CallPlaceholderFieldEnum.CallPlaceholderField call_field = 4; + + // App Placeholder Fields. + google.ads.googleads.v1.enums.AppPlaceholderFieldEnum.AppPlaceholderField app_field = 5; + + // Location Placeholder Fields. This field is read-only. + google.ads.googleads.v1.enums.LocationPlaceholderFieldEnum.LocationPlaceholderField location_field = 6; + + // Affiliate Location Placeholder Fields. This field is read-only. + google.ads.googleads.v1.enums.AffiliateLocationPlaceholderFieldEnum.AffiliateLocationPlaceholderField affiliate_location_field = 7; + + // Callout Placeholder Fields. + google.ads.googleads.v1.enums.CalloutPlaceholderFieldEnum.CalloutPlaceholderField callout_field = 8; + + // Structured Snippet Placeholder Fields. + google.ads.googleads.v1.enums.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField structured_snippet_field = 9; + + // Message Placeholder Fields. + google.ads.googleads.v1.enums.MessagePlaceholderFieldEnum.MessagePlaceholderField message_field = 10; + + // Price Placeholder Fields. + google.ads.googleads.v1.enums.PricePlaceholderFieldEnum.PricePlaceholderField price_field = 11; + + // Promotion Placeholder Fields. + google.ads.googleads.v1.enums.PromotionPlaceholderFieldEnum.PromotionPlaceholderField promotion_field = 12; + + // Ad Customizer Placeholder Fields + google.ads.googleads.v1.enums.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField ad_customizer_field = 13; + + // Dynamic Search Ad Page Feed Fields. + google.ads.googleads.v1.enums.DsaPageFeedCriterionFieldEnum.DsaPageFeedCriterionField dsa_page_feed_field = 14; + + // Location Target Fields. + google.ads.googleads.v1.enums.LocationExtensionTargetingCriterionFieldEnum.LocationExtensionTargetingCriterionField location_extension_targeting_field = 15; + + // Education Placeholder Fields + google.ads.googleads.v1.enums.EducationPlaceholderFieldEnum.EducationPlaceholderField education_field = 16; + + // Flight Placeholder Fields + google.ads.googleads.v1.enums.FlightPlaceholderFieldEnum.FlightPlaceholderField flight_field = 17; + + // Custom Placeholder Fields + google.ads.googleads.v1.enums.CustomPlaceholderFieldEnum.CustomPlaceholderField custom_field = 18; + + // Hotel Placeholder Fields + google.ads.googleads.v1.enums.HotelPlaceholderFieldEnum.HotelPlaceholderField hotel_field = 19; + + // Real Estate Placeholder Fields + google.ads.googleads.v1.enums.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField real_estate_field = 20; + + // Travel Placeholder Fields + google.ads.googleads.v1.enums.TravelPlaceholderFieldEnum.TravelPlaceholderField travel_field = 21; + + // Local Placeholder Fields + google.ads.googleads.v1.enums.LocalPlaceholderFieldEnum.LocalPlaceholderField local_field = 22; + + // Job Placeholder Fields + google.ads.googleads.v1.enums.JobPlaceholderFieldEnum.JobPlaceholderField job_field = 23; + } +} diff --git a/google/ads/googleads/v1/resources/feed_placeholder_view.proto b/google/ads/googleads/v1/resources/feed_placeholder_view.proto new file mode 100644 index 000000000..f70f40a12 --- /dev/null +++ b/google/ads/googleads/v1/resources/feed_placeholder_view.proto @@ -0,0 +1,43 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/placeholder_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedPlaceholderViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the FeedPlaceholderView resource. + +// A feed placeholder view. +message FeedPlaceholderView { + // The resource name of the feed placeholder view. + // Feed placeholder view resource names have the form: + // + // `customers/{customer_id}/feedPlaceholderViews/{placeholder_type}` + string resource_name = 1; + + // The placeholder type of the feed placeholder view. + google.ads.googleads.v1.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 2; +} diff --git a/google/ads/googleads/v1/resources/gender_view.proto b/google/ads/googleads/v1/resources/gender_view.proto new file mode 100644 index 000000000..80ecf85dc --- /dev/null +++ b/google/ads/googleads/v1/resources/gender_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GenderViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the gender view resource. + +// A gender view. +message GenderView { + // The resource name of the gender view. + // Gender view resource names have the form: + // + // `customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/geo_target_constant.proto b/google/ads/googleads/v1/resources/geo_target_constant.proto new file mode 100644 index 000000000..3ce652019 --- /dev/null +++ b/google/ads/googleads/v1/resources/geo_target_constant.proto @@ -0,0 +1,60 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/geo_target_constant_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the geo target constant resource. + +// A geo target constant. +message GeoTargetConstant { + // The resource name of the geo target constant. + // Geo target constant resource names have the form: + // + // `geoTargetConstants/{geo_target_constant_id}` + string resource_name = 1; + + // The ID of the geo target constant. + google.protobuf.Int64Value id = 3; + + // Geo target constant English name. + google.protobuf.StringValue name = 4; + + // The ISO-3166-1 alpha-2 country code that is associated with the target. + google.protobuf.StringValue country_code = 5; + + // Geo target constant target type. + google.protobuf.StringValue target_type = 6; + + // Geo target constant status. + google.ads.googleads.v1.enums.GeoTargetConstantStatusEnum.GeoTargetConstantStatus status = 7; + + // The fully qualified English name, consisting of the target's name and that + // of its parent and country. + google.protobuf.StringValue canonical_name = 8; +} diff --git a/google/ads/googleads/v1/resources/geographic_view.proto b/google/ads/googleads/v1/resources/geographic_view.proto new file mode 100644 index 000000000..97c04d766 --- /dev/null +++ b/google/ads/googleads/v1/resources/geographic_view.proto @@ -0,0 +1,53 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/geo_targeting_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GeographicViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the geographic view resource. + +// A geographic view. +// +// Geographic View includes all metrics aggregated at the country level, +// one row per country. It reports metrics at either actual physical location of +// the user or an area of interest. If other segment fields are used, you may +// get more than one row per country. +message GeographicView { + // The resource name of the geographic view. + // Geographic view resource names have the form: + // + // + // `customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}` + string resource_name = 1; + + // CriterionId for the geo target for a country. + google.protobuf.StringValue country_geo_target_constant = 2; + + // Type of the geo targeting of the campaign. + google.ads.googleads.v1.enums.GeoTargetingTypeEnum.GeoTargetingType location_type = 3; +} diff --git a/google/ads/googleads/v1/resources/google_ads_field.proto b/google/ads/googleads/v1/resources/google_ads_field.proto new file mode 100644 index 000000000..edf922acc --- /dev/null +++ b/google/ads/googleads/v1/resources/google_ads_field.proto @@ -0,0 +1,106 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/google_ads_field_category.proto"; +import "google/ads/googleads/v1/enums/google_ads_field_data_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Google Ads Field resource. + +// A field or resource (artifact) used by GoogleAdsService. +message GoogleAdsField { + // The resource name of the artifact. + // Artifact resource names have the form: + // + // `googleAdsFields/{name}` + string resource_name = 1; + + // The name of the artifact. + google.protobuf.StringValue name = 2; + + // The category of the artifact. + google.ads.googleads.v1.enums.GoogleAdsFieldCategoryEnum.GoogleAdsFieldCategory category = 3; + + // Whether the artifact can be used in a SELECT clause in search + // queries. + google.protobuf.BoolValue selectable = 4; + + // Whether the artifact can be used in a WHERE clause in search + // queries. + google.protobuf.BoolValue filterable = 5; + + // Whether the artifact can be used in a ORDER BY clause in search + // queries. + google.protobuf.BoolValue sortable = 6; + + // The names of all resources, segments, and metrics that are selectable with + // the described artifact. + repeated google.protobuf.StringValue selectable_with = 7; + + // The names of all resources that are selectable with the described + // artifact. Fields from these resources do not segment metrics when included + // in search queries. + // + // This field is only set for artifacts whose category is RESOURCE. + repeated google.protobuf.StringValue attribute_resources = 8; + + // At and beyond version V1 this field lists the names of all metrics that are + // selectable with the described artifact when it is used in the FROM clause. + // It is only set for artifacts whose category is RESOURCE. + // + // Before version V1 this field lists the names of all metrics that are + // selectable with the described artifact. It is only set for artifacts whose + // category is either RESOURCE or SEGMENT + repeated google.protobuf.StringValue metrics = 9; + + // At and beyond version V1 this field lists the names of all artifacts, + // whether a segment or another resource, that segment metrics when included + // in search queries and when the described artifact is used in the FROM + // clause. It is only set for artifacts whose category is RESOURCE. + // + // Before version V1 this field lists the names of all artifacts, whether a + // segment or another resource, that segment metrics when included in search + // queries. It is only set for artifacts of category RESOURCE, SEGMENT or + // METRIC. + repeated google.protobuf.StringValue segments = 10; + + // Values the artifact can assume if it is a field of type ENUM. + // + // This field is only set for artifacts of category SEGMENT or ATTRIBUTE. + repeated google.protobuf.StringValue enum_values = 11; + + // This field determines the operators that can be used with the artifact + // in WHERE clauses. + google.ads.googleads.v1.enums.GoogleAdsFieldDataTypeEnum.GoogleAdsFieldDataType data_type = 12; + + // The URL of proto describing the artifact's data type. + google.protobuf.StringValue type_url = 13; + + // Whether the field artifact is repeated. + google.protobuf.BoolValue is_repeated = 14; +} diff --git a/google/ads/googleads/v1/resources/group_placement_view.proto b/google/ads/googleads/v1/resources/group_placement_view.proto new file mode 100644 index 000000000..ae23c17f8 --- /dev/null +++ b/google/ads/googleads/v1/resources/group_placement_view.proto @@ -0,0 +1,56 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/placement_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GroupPlacementViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Services"; +// Proto file describing the group placement view resource. + +// A group placement view. +message GroupPlacementView { + // The resource name of the group placement view. + // Group placement view resource names have the form: + // + // + // `customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}` + string resource_name = 1; + + // The automatic placement string at group level, e. g. web domain, mobile + // app ID, or a YouTube channel ID. + google.protobuf.StringValue placement = 2; + + // Domain name for websites and YouTube channel name for YouTube channels. + google.protobuf.StringValue display_name = 3; + + // URL of the group placement, e.g. domain, link to the mobile application in + // app store, or a YouTube channel URL. + google.protobuf.StringValue target_url = 4; + + // Type of the placement, e.g. Website, YouTube Channel, Mobile Application. + google.ads.googleads.v1.enums.PlacementTypeEnum.PlacementType placement_type = 5; +} diff --git a/google/ads/googleads/v1/resources/hotel_group_view.proto b/google/ads/googleads/v1/resources/hotel_group_view.proto new file mode 100644 index 000000000..53c188fce --- /dev/null +++ b/google/ads/googleads/v1/resources/hotel_group_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "HotelGroupViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the hotel group view resource. + +// A hotel group view. +message HotelGroupView { + // The resource name of the hotel group view. + // Hotel Group view resource names have the form: + // + // `customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/hotel_performance_view.proto b/google/ads/googleads/v1/resources/hotel_performance_view.proto new file mode 100644 index 000000000..992313779 --- /dev/null +++ b/google/ads/googleads/v1/resources/hotel_performance_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "HotelPerformanceViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the hotel performance view resource. + +// A hotel performance view. +message HotelPerformanceView { + // The resource name of the hotel performance view. + // Hotel performance view resource names have the form: + // + // `customers/{customer_id}/hotelPerformanceView` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/keyword_plan.proto b/google/ads/googleads/v1/resources/keyword_plan.proto new file mode 100644 index 000000000..71d629481 --- /dev/null +++ b/google/ads/googleads/v1/resources/keyword_plan.proto @@ -0,0 +1,70 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/dates.proto"; +import "google/ads/googleads/v1/enums/keyword_plan_forecast_interval.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the keyword plan resource. + +// A Keyword Planner plan. +// Max number of saved keyword plans: 10000. +// It's possible to remove plans if limit is reached. +message KeywordPlan { + // The resource name of the Keyword Planner plan. + // KeywordPlan resource names have the form: + // + // `customers/{customer_id}/keywordPlans/{kp_plan_id}` + string resource_name = 1; + + // The ID of the keyword plan. + google.protobuf.Int64Value id = 2; + + // The name of the keyword plan. + // + // This field is required and should not be empty when creating new keyword + // plans. + google.protobuf.StringValue name = 3; + + // The date period used for forecasting the plan. + KeywordPlanForecastPeriod forecast_period = 4; +} + +// The forecasting period associated with the keyword plan. +message KeywordPlanForecastPeriod { + // Required. The date used for forecasting the Plan. + oneof interval { + // A future date range relative to the current date used for forecasting. + google.ads.googleads.v1.enums.KeywordPlanForecastIntervalEnum.KeywordPlanForecastInterval date_interval = 1; + + // The custom date range used for forecasting. + // The start and end dates must be in the future. Otherwise, an error will + // be returned when the forecasting action is performed. + google.ads.googleads.v1.common.DateRange date_range = 2; + } +} diff --git a/google/ads/googleads/v1/resources/keyword_plan_ad_group.proto b/google/ads/googleads/v1/resources/keyword_plan_ad_group.proto new file mode 100644 index 000000000..9092b13a8 --- /dev/null +++ b/google/ads/googleads/v1/resources/keyword_plan_ad_group.proto @@ -0,0 +1,58 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the keyword plan ad group resource. + +// A Keyword Planner ad group. +// Max number of keyword plan ad groups per plan: 200. +message KeywordPlanAdGroup { + // The resource name of the Keyword Planner ad group. + // KeywordPlanAdGroup resource names have the form: + // + // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` + string resource_name = 1; + + // The keyword plan campaign to which this ad group belongs. + google.protobuf.StringValue keyword_plan_campaign = 2; + + // The ID of the keyword plan ad group. + google.protobuf.Int64Value id = 3; + + // The name of the keyword plan ad group. + // + // This field is required and should not be empty when creating keyword plan + // ad group. + google.protobuf.StringValue name = 4; + + // A default ad group max cpc bid in micros in account currency for all + // biddable keywords under the keyword plan ad group. + // If not set, will inherit from parent campaign. + google.protobuf.Int64Value cpc_bid_micros = 5; +} diff --git a/google/ads/googleads/v1/resources/keyword_plan_campaign.proto b/google/ads/googleads/v1/resources/keyword_plan_campaign.proto new file mode 100644 index 000000000..f304cf8e7 --- /dev/null +++ b/google/ads/googleads/v1/resources/keyword_plan_campaign.proto @@ -0,0 +1,82 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/keyword_plan_network.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the keyword plan campaign resource. + +// A Keyword Plan campaign. +// Max number of keyword plan campaigns per plan allowed: 1. +message KeywordPlanCampaign { + // The resource name of the Keyword Plan campaign. + // KeywordPlanCampaign resource names have the form: + // + // `customers/{customer_id}/keywordPlanCampaigns/{kp_campaign_id}` + string resource_name = 1; + + // The keyword plan this campaign belongs to. + google.protobuf.StringValue keyword_plan = 2; + + // The ID of the Keyword Plan campaign. + google.protobuf.Int64Value id = 3; + + // The name of the Keyword Plan campaign. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + google.protobuf.StringValue name = 4; + + // The languages targeted for the Keyword Plan campaign. + // Max allowed: 1. + repeated google.protobuf.StringValue language_constants = 5; + + // Targeting network. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + google.ads.googleads.v1.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 6; + + // A default max cpc bid in micros, and in the account currency, for all ad + // groups under the campaign. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + google.protobuf.Int64Value cpc_bid_micros = 7; + + // The geo targets. + // Max number allowed: 20. + repeated KeywordPlanGeoTarget geo_targets = 8; +} + +// A geo target. +// Next ID: 3 +message KeywordPlanGeoTarget { + // Required. The resource name of the geo target. + google.protobuf.StringValue geo_target_constant = 1; +} diff --git a/google/ads/googleads/v1/resources/keyword_plan_keyword.proto b/google/ads/googleads/v1/resources/keyword_plan_keyword.proto new file mode 100644 index 000000000..a3144e7cc --- /dev/null +++ b/google/ads/googleads/v1/resources/keyword_plan_keyword.proto @@ -0,0 +1,58 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/keyword_match_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanKeywordProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the keyword plan keyword resource. + +// A Keyword Plan ad group keyword. +// Max number of keyword plan keywords per plan: 2500. +message KeywordPlanKeyword { + // The resource name of the Keyword Plan ad group keyword. + // KeywordPlanKeyword resource names have the form: + // + // `customers/{customer_id}/keywordPlanKeywords/{kp_ad_group_keyword_id}` + string resource_name = 1; + + // The Keyword Plan ad group to which this keyword belongs. + google.protobuf.StringValue keyword_plan_ad_group = 2; + + // The ID of the Keyword Plan keyword. + google.protobuf.Int64Value id = 3; + + // The keyword text. + google.protobuf.StringValue text = 4; + + // The keyword match type. + google.ads.googleads.v1.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; + + // A keyword level max cpc bid in micros, in the account currency, that + // overrides the keyword plan ad group cpc bid. + google.protobuf.Int64Value cpc_bid_micros = 6; +} diff --git a/google/ads/googleads/v1/resources/keyword_plan_negative_keyword.proto b/google/ads/googleads/v1/resources/keyword_plan_negative_keyword.proto new file mode 100644 index 000000000..74db907a9 --- /dev/null +++ b/google/ads/googleads/v1/resources/keyword_plan_negative_keyword.proto @@ -0,0 +1,55 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/keyword_match_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanNegativeKeywordProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the keyword plan negative keyword resource. + +// A Keyword Plan negative keyword. +// Max number of keyword plan negative keywords per plan: 1000. +message KeywordPlanNegativeKeyword { + // The resource name of the Keyword Plan negative keyword. + // KeywordPlanNegativeKeyword resource names have the form: + // + // + // `customers/{customer_id}/keywordPlanNegativeKeywords/{kp_negative_keyword_id}` + string resource_name = 1; + + // The Keyword Plan campaign to which this negative keyword belongs. + google.protobuf.StringValue keyword_plan_campaign = 2; + + // The ID of the Keyword Plan negative keyword. + google.protobuf.Int64Value id = 3; + + // The keyword text. + google.protobuf.StringValue text = 4; + + // The keyword match type. + google.ads.googleads.v1.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; +} diff --git a/google/ads/googleads/v1/resources/keyword_view.proto b/google/ads/googleads/v1/resources/keyword_view.proto new file mode 100644 index 000000000..fe28cc605 --- /dev/null +++ b/google/ads/googleads/v1/resources/keyword_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the keyword view resource. + +// A keyword view. +message KeywordView { + // The resource name of the keyword view. + // Keyword view resource names have the form: + // + // `customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/label.proto b/google/ads/googleads/v1/resources/label.proto new file mode 100644 index 000000000..9f37d7c4f --- /dev/null +++ b/google/ads/googleads/v1/resources/label.proto @@ -0,0 +1,57 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/text_label.proto"; +import "google/ads/googleads/v1/enums/label_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LabelProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; + + +// A label. +message Label { + // Name of the resource. + // Label resource names have the form: + // `customers/{customer_id}/labels/{label_id}` + string resource_name = 1; + + // Id of the label. Read only. + google.protobuf.Int64Value id = 2; + + // The name of the label. + // + // This field is required and should not be empty when creating a new label. + // + // The length of this string should be between 1 and 80, inclusive. + google.protobuf.StringValue name = 3; + + // Status of the label. Read only. + google.ads.googleads.v1.enums.LabelStatusEnum.LabelStatus status = 4; + + // A type of label displaying text on a colored background. + google.ads.googleads.v1.common.TextLabel text_label = 5; +} diff --git a/google/ads/googleads/v1/resources/language_constant.proto b/google/ads/googleads/v1/resources/language_constant.proto new file mode 100644 index 000000000..8b0be8653 --- /dev/null +++ b/google/ads/googleads/v1/resources/language_constant.proto @@ -0,0 +1,53 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LanguageConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the language constant resource. + +// A language. +message LanguageConstant { + // The resource name of the language constant. + // Language constant resource names have the form: + // + // `languageConstants/{criterion_id}` + string resource_name = 1; + + // The ID of the language constant. + google.protobuf.Int64Value id = 2; + + // The language code, e.g. "en_US", "en_AU", "es", "fr", etc. + google.protobuf.StringValue code = 3; + + // The full name of the language in English, e.g., "English (US)", "Spanish", + // etc. + google.protobuf.StringValue name = 4; + + // Whether the language is targetable. + google.protobuf.BoolValue targetable = 5; +} diff --git a/google/ads/googleads/v1/resources/location_view.proto b/google/ads/googleads/v1/resources/location_view.proto new file mode 100644 index 000000000..8c90049e0 --- /dev/null +++ b/google/ads/googleads/v1/resources/location_view.proto @@ -0,0 +1,40 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LocationViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the location view resource. + +// A location view summarizes the performance of campaigns by +// Location criteria. +message LocationView { + // The resource name of the location view. + // Location view resource names have the form: + // + // `customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/managed_placement_view.proto b/google/ads/googleads/v1/resources/managed_placement_view.proto new file mode 100644 index 000000000..2d5aa2082 --- /dev/null +++ b/google/ads/googleads/v1/resources/managed_placement_view.proto @@ -0,0 +1,40 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ManagedPlacementViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Managed Placement view resource. + +// A managed placement view. +message ManagedPlacementView { + // The resource name of the Managed Placement view. + // Managed placement view resource names have the form: + // + // + // `customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/media_file.proto b/google/ads/googleads/v1/resources/media_file.proto new file mode 100644 index 000000000..a44173878 --- /dev/null +++ b/google/ads/googleads/v1/resources/media_file.proto @@ -0,0 +1,113 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/media_type.proto"; +import "google/ads/googleads/v1/enums/mime_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MediaFileProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the media file resource. + +// A media file. +message MediaFile { + // The resource name of the media file. + // Media file resource names have the form: + // + // `customers/{customer_id}/mediaFiles/{media_file_id}` + string resource_name = 1; + + // The ID of the media file. + google.protobuf.Int64Value id = 2; + + // Type of the media file. + google.ads.googleads.v1.enums.MediaTypeEnum.MediaType type = 5; + + // The mime type of the media file. + google.ads.googleads.v1.enums.MimeTypeEnum.MimeType mime_type = 6; + + // The URL of where the original media file was downloaded from (or a file + // name). + google.protobuf.StringValue source_url = 7; + + // The name of the media file. The name can be used by clients to help + // identify previously uploaded media. + google.protobuf.StringValue name = 8; + + // The size of the media file in bytes. + google.protobuf.Int64Value file_size = 9; + + // The specific type of the media file. + oneof mediatype { + // Encapsulates an Image. + MediaImage image = 3; + + // A ZIP archive media the content of which contains HTML5 assets. + MediaBundle media_bundle = 4; + + // Encapsulates an Audio. + MediaAudio audio = 10; + + // Encapsulates a Video. + MediaVideo video = 11; + } +} + +// Encapsulates an Image. +message MediaImage { + // Raw image data. + google.protobuf.BytesValue data = 1; +} + +// Represents a ZIP archive media the content of which contains HTML5 assets. +message MediaBundle { + // Raw zipped data. + google.protobuf.BytesValue data = 1; +} + +// Encapsulates an Audio. +message MediaAudio { + // The duration of the Audio in milliseconds. + google.protobuf.Int64Value ad_duration_millis = 1; +} + +// Encapsulates a Video. +message MediaVideo { + // The duration of the Video in milliseconds. + google.protobuf.Int64Value ad_duration_millis = 1; + + // The YouTube video ID (as seen in YouTube URLs). + google.protobuf.StringValue youtube_video_id = 2; + + // The Advertising Digital Identification code for this video, as defined by + // the American Association of Advertising Agencies, used mainly for + // television commercials. + google.protobuf.StringValue advertising_id_code = 3; + + // The Industry Standard Commercial Identifier code for this video, used + // mainly for television commercials. + google.protobuf.StringValue isci_code = 4; +} diff --git a/google/ads/googleads/v1/resources/merchant_center_link.proto b/google/ads/googleads/v1/resources/merchant_center_link.proto new file mode 100644 index 000000000..4c615f4e4 --- /dev/null +++ b/google/ads/googleads/v1/resources/merchant_center_link.proto @@ -0,0 +1,53 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/merchant_center_link_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterLinkProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Merchant Center link resource. + +// A data sharing connection, proposed or in use, +// between a Google Ads Customer and a Merchant Center account. +message MerchantCenterLink { + // The resource name of the merchant center link. + // Merchant center link resource names have the form: + // + // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` + string resource_name = 1; + + // The ID of the Merchant Center account. + // This field is readonly. + google.protobuf.Int64Value id = 3; + + // The name of the Merchant Center account. + // This field is readonly. + google.protobuf.StringValue merchant_center_account_name = 4; + + // The status of the link. + google.ads.googleads.v1.enums.MerchantCenterLinkStatusEnum.MerchantCenterLinkStatus status = 5; +} diff --git a/google/ads/googleads/v1/resources/mobile_app_category_constant.proto b/google/ads/googleads/v1/resources/mobile_app_category_constant.proto new file mode 100644 index 000000000..4ddcaad18 --- /dev/null +++ b/google/ads/googleads/v1/resources/mobile_app_category_constant.proto @@ -0,0 +1,46 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MobileAppCategoryConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Mobile App Category Constant resource. + +// A mobile application category constant. +message MobileAppCategoryConstant { + // The resource name of the mobile app category constant. + // Mobile app category constant resource names have the form: + // + // `mobileAppCategoryConstants/{mobile_app_category_id}` + string resource_name = 1; + + // The ID of the mobile app category constant. + google.protobuf.Int32Value id = 2; + + // Mobile app category name. + google.protobuf.StringValue name = 3; +} diff --git a/google/ads/googleads/v1/resources/mobile_device_constant.proto b/google/ads/googleads/v1/resources/mobile_device_constant.proto new file mode 100644 index 000000000..48c87eec4 --- /dev/null +++ b/google/ads/googleads/v1/resources/mobile_device_constant.proto @@ -0,0 +1,56 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/mobile_device_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MobileDeviceConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the mobile device constant resource. + +// A mobile device constant. +message MobileDeviceConstant { + // The resource name of the mobile device constant. + // Mobile device constant resource names have the form: + // + // `mobileDeviceConstants/{criterion_id}` + string resource_name = 1; + + // The ID of the mobile device constant. + google.protobuf.Int64Value id = 2; + + // The name of the mobile device. + google.protobuf.StringValue name = 3; + + // The manufacturer of the mobile device. + google.protobuf.StringValue manufacturer_name = 4; + + // The operating system of the mobile device. + google.protobuf.StringValue operating_system_name = 5; + + // The type of mobile device. + google.ads.googleads.v1.enums.MobileDeviceTypeEnum.MobileDeviceType type = 6; +} diff --git a/google/ads/googleads/v1/resources/mutate_job.proto b/google/ads/googleads/v1/resources/mutate_job.proto new file mode 100644 index 000000000..9111a40e6 --- /dev/null +++ b/google/ads/googleads/v1/resources/mutate_job.proto @@ -0,0 +1,72 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/mutate_job_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MutateJobProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the mutate job resource. + +// A list of mutates being processed asynchronously. The mutates are uploaded +// by the user. The mutates themselves aren’t readable and the results of the +// job can only be read using MutateJobService.ListMutateJobResults. +message MutateJob { + // Additional information about the mutate job. This message is also used as + // metadata returned in mutate job Long Running Operations. + message MutateJobMetadata { + // The time when this mutate job was created. + // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:00" + google.protobuf.StringValue creation_date_time = 1; + + // The time when this mutate job was completed. + // Formatted as yyyy-MM-dd HH:mm:ss. Example: "2018-03-05 09:16:00" + google.protobuf.StringValue completion_date_time = 2; + + // The fraction (between 0.0 and 1.0) of mutates that have been processed. + // This is empty if the job hasn't started running yet. + google.protobuf.DoubleValue estimated_completion_ratio = 3; + } + + // The resource name of the mutate job. + // Mutate job resource names have the form: + // + // `customers/{customer_id}/mutateJobs/{mutate_job_id}` + string resource_name = 1; + + // ID of this mutate job. + google.protobuf.Int64Value id = 2; + + // The next sequence token to use when adding operations. Only set when the + // mutate job status is PENDING. + google.protobuf.StringValue next_add_sequence_token = 3; + + // Contains additional information about this mutate job. + MutateJobMetadata metadata = 4; + + // Status of this mutate job. + google.ads.googleads.v1.enums.MutateJobStatusEnum.MutateJobStatus status = 5; +} diff --git a/google/ads/googleads/v1/resources/operating_system_version_constant.proto b/google/ads/googleads/v1/resources/operating_system_version_constant.proto new file mode 100644 index 000000000..9eeaf279e --- /dev/null +++ b/google/ads/googleads/v1/resources/operating_system_version_constant.proto @@ -0,0 +1,62 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/operating_system_version_operator_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "OperatingSystemVersionConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the operating system version constant resource. + +// A mobile operating system version or a range of versions, depending on +// 'operator_type'. The complete list of available mobile platforms is available +// <a +// +// href="https://developers.google.com/adwords/api/docs/appendix/codes-formats#mobile-platforms> +// here</a>. +message OperatingSystemVersionConstant { + // The resource name of the operating system version constant. + // Operating system version constant resource names have the form: + // + // `operatingSystemVersionConstants/{criterion_id}` + string resource_name = 1; + + // The ID of the operating system version. + google.protobuf.Int64Value id = 2; + + // Name of the operating system. + google.protobuf.StringValue name = 3; + + // The OS Major Version number. + google.protobuf.Int32Value os_major_version = 4; + + // The OS Minor Version number. + google.protobuf.Int32Value os_minor_version = 5; + + // Determines whether this constant represents a single version or a range of + // versions. + google.ads.googleads.v1.enums.OperatingSystemVersionOperatorTypeEnum.OperatingSystemVersionOperatorType operator_type = 6; +} diff --git a/google/ads/googleads/v1/resources/parental_status_view.proto b/google/ads/googleads/v1/resources/parental_status_view.proto new file mode 100644 index 000000000..293a8fb9c --- /dev/null +++ b/google/ads/googleads/v1/resources/parental_status_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ParentalStatusViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the parental status view resource. + +// A parental status view. +message ParentalStatusView { + // The resource name of the parental status view. + // Parental Status view resource names have the form: + // + // `customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/payments_account.proto b/google/ads/googleads/v1/resources/payments_account.proto new file mode 100644 index 000000000..c8767b955 --- /dev/null +++ b/google/ads/googleads/v1/resources/payments_account.proto @@ -0,0 +1,59 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "PaymentsAccountProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the PaymentsAccount resource. + +// A Payments account, which can be used to set up billing for an Ads customer. +message PaymentsAccount { + // The resource name of the Payments account. + // PaymentsAccount resource names have the form: + // + // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` + string resource_name = 1; + + // A 16 digit ID used to identify a Payments account. + google.protobuf.StringValue payments_account_id = 2; + + // The name of the Payments account. + google.protobuf.StringValue name = 3; + + // The currency code of the Payments account. + // A subset of the currency codes derived from the ISO 4217 standard is + // supported. + google.protobuf.StringValue currency_code = 4; + + // A 12 digit ID used to identify the Payments profile associated with the + // Payments account. + google.protobuf.StringValue payments_profile_id = 5; + + // A secondary Payments profile ID present in uncommon situations, e.g. + // when a sequential liability agreement has been arranged. + google.protobuf.StringValue secondary_payments_profile_id = 6; +} diff --git a/google/ads/googleads/v1/resources/product_bidding_category_constant.proto b/google/ads/googleads/v1/resources/product_bidding_category_constant.proto new file mode 100644 index 000000000..012594cc0 --- /dev/null +++ b/google/ads/googleads/v1/resources/product_bidding_category_constant.proto @@ -0,0 +1,67 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/product_bidding_category_level.proto"; +import "google/ads/googleads/v1/enums/product_bidding_category_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Enums"; +// Proto file describing the ProductBiddingCategoryConstant resource. + +// A Product Bidding Category. +message ProductBiddingCategoryConstant { + // The resource name of the product bidding category. + // Product bidding category resource names have the form: + // + // `productBiddingCategoryConstants/{country_code}~{level}~{id}` + string resource_name = 1; + + // ID of the product bidding category. + // + // This ID is equivalent to the google_product_category ID as described in + // this article: https://support.google.com/merchants/answer/6324436. + google.protobuf.Int64Value id = 2; + + // Two-letter upper-case country code of the product bidding category. + google.protobuf.StringValue country_code = 3; + + // Resource name of the parent product bidding category. + google.protobuf.StringValue product_bidding_category_constant_parent = 4; + + // Level of the product bidding category. + google.ads.googleads.v1.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 5; + + // Status of the product bidding category. + google.ads.googleads.v1.enums.ProductBiddingCategoryStatusEnum.ProductBiddingCategoryStatus status = 6; + + // Language code of the product bidding category. + google.protobuf.StringValue language_code = 7; + + // Display value of the product bidding category localized according to + // language_code. + google.protobuf.StringValue localized_name = 8; +} diff --git a/google/ads/googleads/v1/resources/product_group_view.proto b/google/ads/googleads/v1/resources/product_group_view.proto new file mode 100644 index 000000000..616494291 --- /dev/null +++ b/google/ads/googleads/v1/resources/product_group_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ProductGroupViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ProductGroup View resource. + +// A product group view. +message ProductGroupView { + // The resource name of the product group view. + // Product group view resource names have the form: + // + // `customers/{customer_id}/productGroupViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/recommendation.proto b/google/ads/googleads/v1/resources/recommendation.proto new file mode 100644 index 000000000..a18c58c60 --- /dev/null +++ b/google/ads/googleads/v1/resources/recommendation.proto @@ -0,0 +1,238 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/ads/googleads/v1/enums/recommendation_type.proto"; +import "google/ads/googleads/v1/enums/target_cpa_opt_in_recommendation_goal.proto"; +import "google/ads/googleads/v1/resources/ad.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Recommendation resource. + +// A recommendation. +message Recommendation { + // The impact of making the change as described in the recommendation. + // Some types of recommendations may not have impact information. + message RecommendationImpact { + // Base metrics at the time the recommendation was generated. + RecommendationMetrics base_metrics = 1; + + // Estimated metrics if the recommendation is applied. + RecommendationMetrics potential_metrics = 2; + } + + // Weekly account performance metrics. For some recommendation types, these + // are averaged over the past 90-day period and hence can be fractional. + message RecommendationMetrics { + // Number of ad impressions. + google.protobuf.DoubleValue impressions = 1; + + // Number of ad clicks. + google.protobuf.DoubleValue clicks = 2; + + // Cost (in micros) for advertising, in the local currency for the account. + google.protobuf.Int64Value cost_micros = 3; + + // Number of conversions. + google.protobuf.DoubleValue conversions = 4; + + // Number of video views for a video ad campaign. + google.protobuf.DoubleValue video_views = 5; + } + + // The budget recommendation for budget constrained campaigns. + message CampaignBudgetRecommendation { + // The impact estimates for a given budget amount. + message CampaignBudgetRecommendationOption { + // The budget amount for this option. + google.protobuf.Int64Value budget_amount_micros = 1; + + // The impact estimate if budget is changed to amount specified in this + // option. + RecommendationImpact impact = 2; + } + + // The current budget amount in micros. + google.protobuf.Int64Value current_budget_amount_micros = 1; + + // The recommended budget amount in micros. + google.protobuf.Int64Value recommended_budget_amount_micros = 2; + + // The budget amounts and associated impact estimates for some values of + // possible budget amounts. + repeated CampaignBudgetRecommendationOption budget_options = 3; + } + + // The keyword recommendation. + message KeywordRecommendation { + // The recommended keyword. + google.ads.googleads.v1.common.KeywordInfo keyword = 1; + + // The recommended CPC (cost-per-click) bid. + google.protobuf.Int64Value recommended_cpc_bid_micros = 2; + } + + // The Maximize Conversions Opt-In recommendation. + message MaximizeConversionsOptInRecommendation { + // The recommended new budget amount. + google.protobuf.Int64Value recommended_budget_amount_micros = 1; + } + + // The Maximize Clicks opt-in recommendation. + message MaximizeClicksOptInRecommendation { + // The recommended new budget amount. + // Only set if the current budget is too high. + google.protobuf.Int64Value recommended_budget_amount_micros = 1; + } + + // The text ad recommendation. + message TextAdRecommendation { + // Recommended ad. + Ad ad = 1; + + // Creation date of the recommended ad. + // YYYY-MM-DD format, e.g., 2018-04-17. + google.protobuf.StringValue creation_date = 2; + + // Date, if present, is the earliest when the recommendation will be auto + // applied. + // YYYY-MM-DD format, e.g., 2018-04-17. + google.protobuf.StringValue auto_apply_date = 3; + } + + // The Target CPA opt-in recommendation. + message TargetCpaOptInRecommendation { + // The Target CPA opt-in option with impact estimate. + message TargetCpaOptInRecommendationOption { + // The goal achieved by this option. + google.ads.googleads.v1.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal goal = 1; + + // Average CPA target. + google.protobuf.Int64Value target_cpa_micros = 2; + + // The minimum campaign budget, in local currency for the account, + // required to achieve the target CPA. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + google.protobuf.Int64Value required_campaign_budget_amount_micros = 3; + + // The impact estimate if this option is selected. + RecommendationImpact impact = 4; + } + + // The available goals and corresponding options for Target CPA strategy. + repeated TargetCpaOptInRecommendationOption options = 1; + + // The recommended average CPA target. See required budget amount and impact + // of using this recommendation in options list. + google.protobuf.Int64Value recommended_target_cpa_micros = 2; + } + + // The Search Partners Opt-In recommendation. + message SearchPartnersOptInRecommendation { + + } + + // The Optimize Ad Rotation recommendation. + message OptimizeAdRotationRecommendation { + + } + + // The Enhanced Cost-Per-Click Opt-In recommendation. + message EnhancedCpcOptInRecommendation { + + } + + // The resource name of the recommendation. + // + // `customers/{customer_id}/recommendations/{recommendation_id}` + string resource_name = 1; + + // The type of recommendation. + google.ads.googleads.v1.enums.RecommendationTypeEnum.RecommendationType type = 2; + + // The impact on account performance as a result of applying the + // recommendation. + RecommendationImpact impact = 3; + + // The budget targeted by this recommendation. This will be set only when + // the recommendation affects a single campaign budget. + // + // This field will be set for the following recommendation types: + // CAMPAIGN_BUDGET + google.protobuf.StringValue campaign_budget = 5; + + // The campaign targeted by this recommendation. This will be set only when + // the recommendation affects a single campaign. + // + // This field will be set for the following recommendation types: + // ENHANCED_CPC_OPT_IN, KEYWORD, MAXIMIZE_CLICKS_OPT_IN, + // MAXIMIZE_CONVERSIONS_OPT_IN, OPTIMIZE_AD_ROTATION, SEARCH_PARTNERS_OPT_IN, + // TARGET_CPA_OPT_IN, TEXT_AD + google.protobuf.StringValue campaign = 6; + + // The ad group targeted by this recommendation. This will be set only when + // the recommendation affects a single ad group. + // + // This field will be set for the following recommendation types: + // KEYWORD, OPTIMIZE_AD_ROTATION, TEXT_AD + google.protobuf.StringValue ad_group = 7; + + // Whether the recommendation is dismissed or not. + google.protobuf.BoolValue dismissed = 13; + + // The details of recommendation. + oneof recommendation { + // The campaign budget recommendation. + CampaignBudgetRecommendation campaign_budget_recommendation = 4; + + // The keyword recommendation. + KeywordRecommendation keyword_recommendation = 8; + + // Add expanded text ad recommendation. + TextAdRecommendation text_ad_recommendation = 9; + + // The TargetCPA opt-in recommendation. + TargetCpaOptInRecommendation target_cpa_opt_in_recommendation = 10; + + // The MaximizeConversions Opt-In recommendation. + MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation = 11; + + // The Enhanced Cost-Per-Click Opt-In recommendation. + EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation = 12; + + // The Search Partners Opt-In recommendation. + SearchPartnersOptInRecommendation search_partners_opt_in_recommendation = 14; + + // The MaximizeClicks Opt-In recommendation. + MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation = 15; + + // The Optimize Ad Rotation recommendation. + OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation = 16; + } +} diff --git a/google/ads/googleads/v1/resources/remarketing_action.proto b/google/ads/googleads/v1/resources/remarketing_action.proto new file mode 100644 index 000000000..58099d2c4 --- /dev/null +++ b/google/ads/googleads/v1/resources/remarketing_action.proto @@ -0,0 +1,55 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/tag_snippet.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "RemarketingActionProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Remarketing Action resource. + +// A remarketing action. A snippet of JavaScript code that will collect the +// product id and the type of page people visited (product page, shopping cart +// page, purchase page, general site visit) on an advertiser's website. +message RemarketingAction { + // The resource name of the remarketing action. + // Remarketing action resource names have the form: + // + // `customers/{customer_id}/remarketingActions/{remarketing_action_id}` + string resource_name = 1; + + // Id of the remarketing action. + google.protobuf.Int64Value id = 2; + + // The name of the remarketing action. + // + // This field is required and should not be empty when creating new + // remarketing actions. + google.protobuf.StringValue name = 3; + + // The snippets used for tracking remarketing actions. + repeated google.ads.googleads.v1.common.TagSnippet tag_snippets = 4; +} diff --git a/google/ads/googleads/v1/resources/search_term_view.proto b/google/ads/googleads/v1/resources/search_term_view.proto new file mode 100644 index 000000000..39eb93889 --- /dev/null +++ b/google/ads/googleads/v1/resources/search_term_view.proto @@ -0,0 +1,53 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/search_term_targeting_status.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the SearchTermView resource. + +// A search term view with metrics aggregated by search term at the ad group +// level. +message SearchTermView { + // The resource name of the search term view. + // Search term view resource names have the form: + // + // `customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}_ + // {URL-base64 search term}` + string resource_name = 1; + + // The search term. + google.protobuf.StringValue search_term = 2; + + // The ad group the search term served in. + google.protobuf.StringValue ad_group = 3; + + // Indicates whether the search term is currently one of your + // targeted or excluded keywords. + google.ads.googleads.v1.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatus status = 4; +} diff --git a/google/ads/googleads/v1/resources/shared_criterion.proto b/google/ads/googleads/v1/resources/shared_criterion.proto new file mode 100644 index 000000000..4f25da1e2 --- /dev/null +++ b/google/ads/googleads/v1/resources/shared_criterion.proto @@ -0,0 +1,73 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criteria.proto"; +import "google/ads/googleads/v1/enums/criterion_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SharedCriterionProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the SharedCriterion resource. + +// A criterion belonging to a shared set. +message SharedCriterion { + // The resource name of the shared criterion. + // Shared set resource names have the form: + // + // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` + string resource_name = 1; + + // The shared set to which the shared criterion belongs. + google.protobuf.StringValue shared_set = 2; + + // The ID of the criterion. + // + // This field is ignored for mutates. + google.protobuf.Int64Value criterion_id = 26; + + // The type of the criterion. + google.ads.googleads.v1.enums.CriterionTypeEnum.CriterionType type = 4; + + // The criterion. + // + // Exactly one must be set. + oneof criterion { + // Keyword. + google.ads.googleads.v1.common.KeywordInfo keyword = 3; + + // YouTube Video. + google.ads.googleads.v1.common.YouTubeVideoInfo youtube_video = 5; + + // YouTube Channel. + google.ads.googleads.v1.common.YouTubeChannelInfo youtube_channel = 6; + + // Placement. + google.ads.googleads.v1.common.PlacementInfo placement = 7; + + // Mobile App Category. + google.ads.googleads.v1.common.MobileAppCategoryInfo mobile_app_category = 8; + } +} diff --git a/google/ads/googleads/v1/resources/shared_set.proto b/google/ads/googleads/v1/resources/shared_set.proto new file mode 100644 index 000000000..84d130673 --- /dev/null +++ b/google/ads/googleads/v1/resources/shared_set.proto @@ -0,0 +1,66 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/enums/shared_set_status.proto"; +import "google/ads/googleads/v1/enums/shared_set_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the SharedSet resource. + +// SharedSets are used for sharing criterion exclusions across multiple +// campaigns. +message SharedSet { + // The resource name of the shared set. + // Shared set resource names have the form: + // + // `customers/{customer_id}/sharedSets/{shared_set_id}` + string resource_name = 1; + + // The ID of this shared set. Read only. + google.protobuf.Int64Value id = 2; + + // The type of this shared set: each shared set holds only a single kind + // of resource. Required. Immutable. + google.ads.googleads.v1.enums.SharedSetTypeEnum.SharedSetType type = 3; + + // The name of this shared set. Required. + // Shared Sets must have names that are unique among active shared sets of + // the same type. + // The length of this string should be between 1 and 255 UTF-8 bytes, + // inclusive. + google.protobuf.StringValue name = 4; + + // The status of this shared set. Read only. + google.ads.googleads.v1.enums.SharedSetStatusEnum.SharedSetStatus status = 5; + + // The number of shared criteria within this shared set. Read only. + google.protobuf.Int64Value member_count = 6; + + // The number of campaigns associated with this shared set. Read only. + google.protobuf.Int64Value reference_count = 7; +} diff --git a/google/ads/googleads/v1/resources/shopping_performance_view.proto b/google/ads/googleads/v1/resources/shopping_performance_view.proto new file mode 100644 index 000000000..b14e415ae --- /dev/null +++ b/google/ads/googleads/v1/resources/shopping_performance_view.proto @@ -0,0 +1,43 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ShoppingPerformanceViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the ShoppingPerformanceView resource. + +// Shopping performance view. +// Provides Shopping campaign statistics aggregated at several product dimension +// levels. Product dimension values from Merchant Center such as brand, +// category, custom attributes, product condition and product type will reflect +// the state of each dimension as of the date and time when the corresponding +// event was recorded. +message ShoppingPerformanceView { + // The resource name of the Shopping performance view. + // Shopping performance view resource names have the form: + // `customers/{customer_id}/shoppingPerformanceView` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/topic_constant.proto b/google/ads/googleads/v1/resources/topic_constant.proto new file mode 100644 index 000000000..a67fe1846 --- /dev/null +++ b/google/ads/googleads/v1/resources/topic_constant.proto @@ -0,0 +1,58 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "TopicConstantProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the Topic Constant resource. + +// Use topics to target or exclude placements in the Google Display Network +// based on the category into which the placement falls (for example, +// "Pets & Animals/Pets/Dogs"). +message TopicConstant { + // The resource name of the topic constant. + // topic constant resource names have the form: + // + // `topicConstants/{topic_id}` + string resource_name = 1; + + // The ID of the topic. + google.protobuf.Int64Value id = 2; + + // Resource name of parent of the topic constant. + google.protobuf.StringValue topic_constant_parent = 3; + + // The category to target or exclude. Each subsequent element in the array + // describes a more specific sub-category. For example, + // {"Pets & Animals", "Pets", "Dogs"} represents the + // "Pets & Animals/Pets/Dogs" category. A complete list of available topic + // categories is available + // <a + // href="https://developers.google.com/adwords/api/docs/appendix/verticals"> + // here</a> + repeated google.protobuf.StringValue path = 4; +} diff --git a/google/ads/googleads/v1/resources/topic_view.proto b/google/ads/googleads/v1/resources/topic_view.proto new file mode 100644 index 000000000..ab6f2396d --- /dev/null +++ b/google/ads/googleads/v1/resources/topic_view.proto @@ -0,0 +1,39 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "TopicViewProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the topic view resource. + +// A topic view. +message TopicView { + // The resource name of the topic view. + // Topic view resource names have the form: + // + // `customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}` + string resource_name = 1; +} diff --git a/google/ads/googleads/v1/resources/user_interest.proto b/google/ads/googleads/v1/resources/user_interest.proto new file mode 100644 index 000000000..c42a43657 --- /dev/null +++ b/google/ads/googleads/v1/resources/user_interest.proto @@ -0,0 +1,60 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/criterion_category_availability.proto"; +import "google/ads/googleads/v1/enums/user_interest_taxonomy_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserInterestProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the User Interest resource. + +// A user interest: a particular interest-based vertical to be targeted. +message UserInterest { + // The resource name of the user interest. + // User interest resource names have the form: + // + // `customers/{customer_id}/userInterests/{user_interest_id}` + string resource_name = 1; + + // Taxonomy type of the user interest. + google.ads.googleads.v1.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType taxonomy_type = 2; + + // The ID of the user interest. + google.protobuf.Int64Value user_interest_id = 3; + + // The name of the user interest. + google.protobuf.StringValue name = 4; + + // The parent of the user interest. + google.protobuf.StringValue user_interest_parent = 5; + + // True if the user interest is launched to all channels and locales. + google.protobuf.BoolValue launched_to_all = 6; + + // Availability information of the user interest. + repeated google.ads.googleads.v1.common.CriterionCategoryAvailability availabilities = 7; +} diff --git a/google/ads/googleads/v1/resources/user_list.proto b/google/ads/googleads/v1/resources/user_list.proto new file mode 100644 index 000000000..014cd0040 --- /dev/null +++ b/google/ads/googleads/v1/resources/user_list.proto @@ -0,0 +1,156 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/ads/googleads/v1/common/user_lists.proto"; +import "google/ads/googleads/v1/enums/access_reason.proto"; +import "google/ads/googleads/v1/enums/user_list_access_status.proto"; +import "google/ads/googleads/v1/enums/user_list_closing_reason.proto"; +import "google/ads/googleads/v1/enums/user_list_membership_status.proto"; +import "google/ads/googleads/v1/enums/user_list_size_range.proto"; +import "google/ads/googleads/v1/enums/user_list_type.proto"; +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserListProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the User List resource. + +// A user list. This is a list of users a customer may target. +message UserList { + // The resource name of the user list. + // User list resource names have the form: + // + // `customers/{customer_id}/userLists/{user_list_id}` + string resource_name = 1; + + // Id of the user list. + google.protobuf.Int64Value id = 2; + + // A flag that indicates if a user may edit a list. Depends on the list + // ownership and list type. For example, external remarketing user lists are + // not editable. + // + // This field is read-only. + google.protobuf.BoolValue read_only = 3; + + // Name of this user list. Depending on its access_reason, the user list name + // may not be unique (e.g. if access_reason=SHARED) + google.protobuf.StringValue name = 4; + + // Description of this user list. + google.protobuf.StringValue description = 5; + + // Membership status of this user list. Indicates whether a user list is open + // or active. Only open user lists can accumulate more users and can be + // targeted to. + google.ads.googleads.v1.enums.UserListMembershipStatusEnum.UserListMembershipStatus membership_status = 6; + + // An ID from external system. It is used by user list sellers to correlate + // IDs on their systems. + google.protobuf.StringValue integration_code = 7; + + // Number of days a user's cookie stays on your list since its most recent + // addition to the list. This field must be between 0 and 540 inclusive. + // However, for CRM based userlists, this field can be set to 10000 which + // means no expiration. + // + // It'll be ignored for logical_user_list. + google.protobuf.Int64Value membership_life_span = 8; + + // Estimated number of users in this user list, on the Google Display Network. + // This value is null if the number of users has not yet been determined. + // + // This field is read-only. + google.protobuf.Int64Value size_for_display = 9; + + // Size range in terms of number of users of the UserList, on the Google + // Display Network. + // + // This field is read-only. + google.ads.googleads.v1.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_display = 10; + + // Estimated number of users in this user list in the google.com domain. + // These are the users available for targeting in Search campaigns. + // This value is null if the number of users has not yet been determined. + // + // This field is read-only. + google.protobuf.Int64Value size_for_search = 11; + + // Size range in terms of number of users of the UserList, for Search ads. + // + // This field is read-only. + google.ads.googleads.v1.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_search = 12; + + // Type of this list. + // + // This field is read-only. + google.ads.googleads.v1.enums.UserListTypeEnum.UserListType type = 13; + + // Indicating the reason why this user list membership status is closed. It is + // only populated on lists that were automatically closed due to inactivity, + // and will be cleared once the list membership status becomes open. + google.ads.googleads.v1.enums.UserListClosingReasonEnum.UserListClosingReason closing_reason = 14; + + // Indicates the reason this account has been granted access to the list. + // The reason can be SHARED, OWNED, LICENSED or SUBSCRIBED. + // + // This field is read-only. + google.ads.googleads.v1.enums.AccessReasonEnum.AccessReason access_reason = 15; + + // Indicates if this share is still enabled. When a UserList is shared with + // the user this field is set to ENABLED. Later the userList owner can decide + // to revoke the share and make it DISABLED. + // The default value of this field is set to ENABLED. + google.ads.googleads.v1.enums.UserListAccessStatusEnum.UserListAccessStatus account_user_list_status = 16; + + // Indicates if this user list is eligible for Google Search Network. + google.protobuf.BoolValue eligible_for_search = 17; + + // Indicates this user list is eligible for Google Display Network. + // + // This field is read-only. + google.protobuf.BoolValue eligible_for_display = 18; + + // The user list. + // + // Exactly one must be set. + oneof user_list { + // User list of CRM users provided by the advertiser. + google.ads.googleads.v1.common.CrmBasedUserListInfo crm_based_user_list = 19; + + // User list which are similar to users from another UserList. + // These lists are readonly and automatically created by google. + google.ads.googleads.v1.common.SimilarUserListInfo similar_user_list = 20; + + // User list generated by a rule. + google.ads.googleads.v1.common.RuleBasedUserListInfo rule_based_user_list = 21; + + // User list that is a custom combination of user lists and user interests. + google.ads.googleads.v1.common.LogicalUserListInfo logical_user_list = 22; + + // User list targeting as a collection of conversion or remarketing actions. + google.ads.googleads.v1.common.BasicUserListInfo basic_user_list = 23; + } +} diff --git a/google/ads/googleads/v1/resources/video.proto b/google/ads/googleads/v1/resources/video.proto new file mode 100644 index 000000000..1ed2612e0 --- /dev/null +++ b/google/ads/googleads/v1/resources/video.proto @@ -0,0 +1,52 @@ +// Copyright 2019 Google LLC. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +syntax = "proto3"; + +package google.ads.googleads.v1.resources; + +import "google/protobuf/wrappers.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V1.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "VideoProto"; +option java_package = "com.google.ads.googleads.v1.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V1::Resources"; +// Proto file describing the video resource. + +// A video. +message Video { + // The resource name of the video. + // Video resource names have the form: + // + // `customers/{customer_id}/videos/{video_id}` + string resource_name = 1; + + // The ID of the video. + google.protobuf.StringValue id = 2; + + // The owner channel id of the video. + google.protobuf.StringValue channel_id = 3; + + // The duration of the video in milliseconds. + google.protobuf.Int64Value duration_millis = 4; + + // The title of the video. + google.protobuf.StringValue title = 5; +} |