aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--google/ads/googleads/v1/common/bidding.proto2
-rw-r--r--google/ads/googleads/v1/common/keyword_plan_common.proto8
-rw-r--r--google/ads/googleads/v1/common/metrics.proto2
-rw-r--r--google/ads/googleads/v1/enums/keyword_plan_competition_level.proto6
-rw-r--r--google/ads/googleads/v1/errors/customer_error.proto1
-rw-r--r--google/ads/googleads/v1/resources/ad.proto1
-rw-r--r--google/ads/googleads/v1/resources/campaign.proto62
-rw-r--r--google/ads/googleads/v1/resources/keyword_plan_campaign.proto1
-rw-r--r--google/ads/googleads/v1/resources/recommendation.proto66
-rw-r--r--google/ads/googleads/v1/services/conversion_adjustment_upload_service.proto6
-rw-r--r--google/ads/googleads/v1/services/conversion_upload_service.proto12
-rw-r--r--google/ads/googleads/v1/services/customer_service.proto1
-rw-r--r--google/ads/googleads/v1/services/keyword_plan_service.proto2
-rw-r--r--google/ads/googleads/v2/common/bidding.proto2
-rw-r--r--google/ads/googleads/v2/common/keyword_plan_common.proto8
-rw-r--r--google/ads/googleads/v2/common/metrics.proto2
-rw-r--r--google/ads/googleads/v2/enums/keyword_plan_competition_level.proto6
-rw-r--r--google/ads/googleads/v2/errors/customer_error.proto1
-rw-r--r--google/ads/googleads/v2/resources/ad.proto1
-rw-r--r--google/ads/googleads/v2/resources/campaign.proto34
-rw-r--r--google/ads/googleads/v2/resources/invoice.proto1
-rw-r--r--google/ads/googleads/v2/resources/keyword_plan_campaign.proto1
-rw-r--r--google/ads/googleads/v2/resources/recommendation.proto78
-rw-r--r--google/ads/googleads/v2/services/conversion_adjustment_upload_service.proto6
-rw-r--r--google/ads/googleads/v2/services/conversion_upload_service.proto12
-rw-r--r--google/ads/googleads/v2/services/keyword_plan_service.proto2
-rw-r--r--google/ads/googleads/v2/services/reach_plan_service.proto21
27 files changed, 173 insertions, 172 deletions
diff --git a/google/ads/googleads/v1/common/bidding.proto b/google/ads/googleads/v1/common/bidding.proto
index 3d00cbacf..656ef5d3f 100644
--- a/google/ads/googleads/v1/common/bidding.proto
+++ b/google/ads/googleads/v1/common/bidding.proto
@@ -140,7 +140,7 @@ message TargetCpm {
// An automated bidding strategy that sets bids so that a certain percentage of
// search ads are shown at the top of the first page (or other targeted
// location).
-// Next Id = 4
+// next tag = 4
message TargetImpressionShare {
// The targeted location on the search results page.
google.ads.googleads.v1.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1;
diff --git a/google/ads/googleads/v1/common/keyword_plan_common.proto b/google/ads/googleads/v1/common/keyword_plan_common.proto
index 5afc324cf..ffb1769ee 100644
--- a/google/ads/googleads/v1/common/keyword_plan_common.proto
+++ b/google/ads/googleads/v1/common/keyword_plan_common.proto
@@ -31,9 +31,13 @@ option ruby_package = "Google::Ads::GoogleAds::V1::Common";
// Proto file describing Keyword Planner messages.
-// Historical metrics.
+// Historical metrics specific to the targeting options selected.
+// Targeting options include geographies, network, etc.
+// Refer to https://support.google.com/google-ads/answer/3022575 for more
+// details.
message KeywordPlanHistoricalMetrics {
- // Average monthly searches for the past 12 months.
+ // Approximate number of monthly searches on this query averaged
+ // for the past 12 months.
google.protobuf.Int64Value avg_monthly_searches = 1;
// The competition level for the query.
diff --git a/google/ads/googleads/v1/common/metrics.proto b/google/ads/googleads/v1/common/metrics.proto
index 9cb045165..f891a9647 100644
--- a/google/ads/googleads/v1/common/metrics.proto
+++ b/google/ads/googleads/v1/common/metrics.proto
@@ -297,7 +297,7 @@ message Metrics {
// future, other ad types may support engagement metrics.
google.protobuf.Int64Value engagements = 32;
- // Average lead value of hotel.
+ // Average lead value based on clicks.
google.protobuf.DoubleValue hotel_average_lead_value_micros = 75;
// The creative historical quality score.
diff --git a/google/ads/googleads/v1/enums/keyword_plan_competition_level.proto b/google/ads/googleads/v1/enums/keyword_plan_competition_level.proto
index ff157550b..242c3f548 100644
--- a/google/ads/googleads/v1/enums/keyword_plan_competition_level.proto
+++ b/google/ads/googleads/v1/enums/keyword_plan_competition_level.proto
@@ -43,13 +43,13 @@ message KeywordPlanCompetitionLevelEnum {
// The value is unknown in this version.
UNKNOWN = 1;
- // Low competition.
+ // Low competition. The Competition Index range for this is [0, 33].
LOW = 2;
- // Medium competition.
+ // Medium competition. The Competition Index range for this is [34, 66].
MEDIUM = 3;
- // High competition.
+ // High competition. The Competition Index range for this is [67, 100].
HIGH = 4;
}
diff --git a/google/ads/googleads/v1/errors/customer_error.proto b/google/ads/googleads/v1/errors/customer_error.proto
index 2069e71a6..496780c5b 100644
--- a/google/ads/googleads/v1/errors/customer_error.proto
+++ b/google/ads/googleads/v1/errors/customer_error.proto
@@ -30,7 +30,6 @@ option ruby_package = "Google::Ads::GoogleAds::V1::Errors";
// Container for enum describing possible customer errors.
message CustomerErrorEnum {
// Set of errors that are related to requests dealing with Customer.
- // Next id: 26
enum CustomerError {
// Enum unspecified.
UNSPECIFIED = 0;
diff --git a/google/ads/googleads/v1/resources/ad.proto b/google/ads/googleads/v1/resources/ad.proto
index 8a54706d7..d1934414c 100644
--- a/google/ads/googleads/v1/resources/ad.proto
+++ b/google/ads/googleads/v1/resources/ad.proto
@@ -60,6 +60,7 @@ message Ad {
// The list of mappings that can be used to substitute custom parameter tags
// in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
+ // For mutates, please use url custom parameter operations.
repeated google.ads.googleads.v1.common.CustomParameter url_custom_parameters = 10;
// The URL that appears in the ad description for some ad formats.
diff --git a/google/ads/googleads/v1/resources/campaign.proto b/google/ads/googleads/v1/resources/campaign.proto
index 0f3ba2ada..8ceafcdc5 100644
--- a/google/ads/googleads/v1/resources/campaign.proto
+++ b/google/ads/googleads/v1/resources/campaign.proto
@@ -83,19 +83,6 @@ message Campaign {
google.protobuf.Int64Value hotel_center_id = 1 [(google.api.field_behavior) = IMMUTABLE];
}
- // Campaign-level settings for App Campaigns.
- message AppCampaignSetting {
- // Represents the goal which the bidding strategy of this app campaign
- // should optimize towards.
- google.ads.googleads.v1.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1;
-
- // Immutable. A string that uniquely identifies a mobile application.
- google.protobuf.StringValue app_id = 2 [(google.api.field_behavior) = IMMUTABLE];
-
- // Immutable. The application store that distributes this specific app.
- google.ads.googleads.v1.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE];
- }
-
// The setting for controlling Dynamic Search Ads (DSA).
message DynamicSearchAdsSetting {
// The Internet domain name that this setting represents, e.g., "google.com"
@@ -117,16 +104,6 @@ message Campaign {
];
}
- // 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 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.
@@ -160,6 +137,15 @@ message Campaign {
google.protobuf.StringValue tracking_url = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
+ // 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 [(google.api.resource_reference) = {
+ type: "googleads.googleapis.com/ConversionAction"
+ }];
+ }
+
// Represents a collection of settings related to ads geotargeting.
message GeoTargetTypeSetting {
// The setting used for positive geotargeting in this particular campaign.
@@ -169,13 +155,27 @@ message Campaign {
google.ads.googleads.v1.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2;
}
- // 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 [(google.api.resource_reference) = {
- type: "googleads.googleapis.com/ConversionAction"
- }];
+ // Campaign-level settings for App Campaigns.
+ message AppCampaignSetting {
+ // Represents the goal which the bidding strategy of this app campaign
+ // should optimize towards.
+ google.ads.googleads.v1.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1;
+
+ // Immutable. A string that uniquely identifies a mobile application.
+ google.protobuf.StringValue app_id = 2 [(google.api.field_behavior) = IMMUTABLE];
+
+ // Immutable. The application store that distributes this specific app.
+ google.ads.googleads.v1.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE];
+ }
+
+ // 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;
}
// Immutable. The resource name of the campaign.
@@ -298,12 +298,10 @@ message Campaign {
google.ads.googleads.v1.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY];
// 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;
diff --git a/google/ads/googleads/v1/resources/keyword_plan_campaign.proto b/google/ads/googleads/v1/resources/keyword_plan_campaign.proto
index 2f6bb8a5f..ac614467b 100644
--- a/google/ads/googleads/v1/resources/keyword_plan_campaign.proto
+++ b/google/ads/googleads/v1/resources/keyword_plan_campaign.proto
@@ -91,7 +91,6 @@ message KeywordPlanCampaign {
}
// A geo target.
-// Next ID: 3
message KeywordPlanGeoTarget {
// Required. The resource name of the geo target.
google.protobuf.StringValue geo_target_constant = 1 [(google.api.resource_reference) = {
diff --git a/google/ads/googleads/v1/resources/recommendation.proto b/google/ads/googleads/v1/resources/recommendation.proto
index ce7a08c7a..f0e2f6611 100644
--- a/google/ads/googleads/v1/resources/recommendation.proto
+++ b/google/ads/googleads/v1/resources/recommendation.proto
@@ -106,10 +106,15 @@ message Recommendation {
google.protobuf.Int64Value recommended_cpc_bid_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
- // The Call extension recommendation.
- message CallExtensionRecommendation {
- // Output only. Call extensions recommended to be added.
- repeated google.ads.googleads.v1.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ // The Optimize Ad Rotation recommendation.
+ message OptimizeAdRotationRecommendation {
+
+ }
+
+ // The Callout extension recommendation.
+ message CalloutExtensionRecommendation {
+ // Output only. Callout extensions recommended to be added.
+ repeated google.ads.googleads.v1.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// The text ad recommendation.
@@ -155,17 +160,10 @@ message Recommendation {
google.protobuf.Int64Value recommended_target_cpa_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
- // The Maximize Clicks opt-in recommendation.
- message MaximizeClicksOptInRecommendation {
- // Output only. The recommended new budget amount.
- // Only set if the current budget is too high.
- google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
-
- // The Maximize Conversions Opt-In recommendation.
- message MaximizeConversionsOptInRecommendation {
- // Output only. The recommended new budget amount.
- google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ // The Sitelink extension recommendation.
+ message SitelinkExtensionRecommendation {
+ // Output only. Sitelink extensions recommended to be added.
+ repeated google.ads.googleads.v1.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// The move unused budget recommendation.
@@ -177,25 +175,15 @@ message Recommendation {
CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
- // The Enhanced Cost-Per-Click Opt-In recommendation.
- message EnhancedCpcOptInRecommendation {
-
- }
-
// The Search Partners Opt-In recommendation.
message SearchPartnersOptInRecommendation {
}
- // The Optimize Ad Rotation recommendation.
- message OptimizeAdRotationRecommendation {
-
- }
-
- // The Callout extension recommendation.
- message CalloutExtensionRecommendation {
- // Output only. Callout extensions recommended to be added.
- repeated google.ads.googleads.v1.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ // The Maximize Conversions Opt-In recommendation.
+ message MaximizeConversionsOptInRecommendation {
+ // Output only. The recommended new budget amount.
+ google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// The keyword match type recommendation.
@@ -207,10 +195,22 @@ message Recommendation {
google.ads.googleads.v1.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
- // The Sitelink extension recommendation.
- message SitelinkExtensionRecommendation {
- // Output only. Sitelink extensions recommended to be added.
- repeated google.ads.googleads.v1.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ // The Enhanced Cost-Per-Click Opt-In recommendation.
+ message EnhancedCpcOptInRecommendation {
+
+ }
+
+ // The Maximize Clicks opt-in recommendation.
+ message MaximizeClicksOptInRecommendation {
+ // Output only. The recommended new budget amount.
+ // Only set if the current budget is too high.
+ google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ }
+
+ // The Call extension recommendation.
+ message CallExtensionRecommendation {
+ // Output only. Call extensions recommended to be added.
+ repeated google.ads.googleads.v1.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// Immutable. The resource name of the recommendation.
diff --git a/google/ads/googleads/v1/services/conversion_adjustment_upload_service.proto b/google/ads/googleads/v1/services/conversion_adjustment_upload_service.proto
index f54aceb0f..45222d103 100644
--- a/google/ads/googleads/v1/services/conversion_adjustment_upload_service.proto
+++ b/google/ads/googleads/v1/services/conversion_adjustment_upload_service.proto
@@ -42,7 +42,7 @@ service ConversionAdjustmentUploadService {
post: "/v1/customers/{customer_id=*}:uploadConversionAdjustments"
body: "*"
};
- option (google.api.method_signature) = "customer_id,conversion_adjustments";
+ option (google.api.method_signature) = "customer_id,conversion_adjustments,partial_failure";
}
}
@@ -55,11 +55,11 @@ message UploadConversionAdjustmentsRequest {
// Required. The conversion adjustments that are being uploaded.
repeated ConversionAdjustment conversion_adjustments = 2 [(google.api.field_behavior) = REQUIRED];
- // If true, successful operations will be carried out and invalid
+ // Required. If true, successful operations will be carried out and invalid
// operations will return errors. If false, all operations will be carried out
// in one transaction if and only if they are all valid. This should always be
// set to true.
- bool partial_failure = 3;
+ bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED];
// If true, the request is validated but not executed. Only errors are
// returned, not results.
diff --git a/google/ads/googleads/v1/services/conversion_upload_service.proto b/google/ads/googleads/v1/services/conversion_upload_service.proto
index 4d7da51f0..312853345 100644
--- a/google/ads/googleads/v1/services/conversion_upload_service.proto
+++ b/google/ads/googleads/v1/services/conversion_upload_service.proto
@@ -41,7 +41,7 @@ service ConversionUploadService {
post: "/v1/customers/{customer_id=*}:uploadClickConversions"
body: "*"
};
- option (google.api.method_signature) = "customer_id,conversions";
+ option (google.api.method_signature) = "customer_id,conversions,partial_failure";
}
// Processes the given call conversions.
@@ -50,7 +50,7 @@ service ConversionUploadService {
post: "/v1/customers/{customer_id=*}:uploadCallConversions"
body: "*"
};
- option (google.api.method_signature) = "customer_id,conversions";
+ option (google.api.method_signature) = "customer_id,conversions,partial_failure";
}
}
@@ -62,11 +62,11 @@ message UploadClickConversionsRequest {
// Required. The conversions that are being uploaded.
repeated ClickConversion conversions = 2 [(google.api.field_behavior) = REQUIRED];
- // If true, successful operations will be carried out and invalid
+ // Required. If true, successful operations will be carried out and invalid
// operations will return errors. If false, all operations will be carried
// out in one transaction if and only if they are all valid.
// This should always be set to true.
- bool partial_failure = 3;
+ bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED];
// If true, the request is validated but not executed. Only errors are
// returned, not results.
@@ -94,11 +94,11 @@ message UploadCallConversionsRequest {
// Required. The conversions that are being uploaded.
repeated CallConversion conversions = 2 [(google.api.field_behavior) = REQUIRED];
- // If true, successful operations will be carried out and invalid
+ // Required. If true, successful operations will be carried out and invalid
// operations will return errors. If false, all operations will be carried
// out in one transaction if and only if they are all valid.
// This should always be set to true.
- bool partial_failure = 3;
+ bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED];
// If true, the request is validated but not executed. Only errors are
// returned, not results.
diff --git a/google/ads/googleads/v1/services/customer_service.proto b/google/ads/googleads/v1/services/customer_service.proto
index 9b2eb12d0..5f229e266 100644
--- a/google/ads/googleads/v1/services/customer_service.proto
+++ b/google/ads/googleads/v1/services/customer_service.proto
@@ -22,7 +22,6 @@ import "google/api/client.proto";
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/protobuf/field_mask.proto";
-import "google/protobuf/wrappers.proto";
option csharp_namespace = "Google.Ads.GoogleAds.V1.Services";
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/services;services";
diff --git a/google/ads/googleads/v1/services/keyword_plan_service.proto b/google/ads/googleads/v1/services/keyword_plan_service.proto
index 9f27a3be5..46fe672ca 100644
--- a/google/ads/googleads/v1/services/keyword_plan_service.proto
+++ b/google/ads/googleads/v1/services/keyword_plan_service.proto
@@ -172,7 +172,7 @@ message GenerateForecastMetricsResponse {
message KeywordPlanCampaignForecast {
// The resource name of the Keyword Plan campaign related to the forecast.
//
- // `customers/{customer_id}/keywordPlanCampaigns/{keyword+plan_campaign_id}`
+ // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}`
google.protobuf.StringValue keyword_plan_campaign = 1;
// The forecast for the Keyword Plan campaign.
diff --git a/google/ads/googleads/v2/common/bidding.proto b/google/ads/googleads/v2/common/bidding.proto
index a3633c633..20b39bcbd 100644
--- a/google/ads/googleads/v2/common/bidding.proto
+++ b/google/ads/googleads/v2/common/bidding.proto
@@ -140,7 +140,7 @@ message TargetCpm {
// An automated bidding strategy that sets bids so that a certain percentage of
// search ads are shown at the top of the first page (or other targeted
// location).
-// Next Id = 4
+// next tag = 4
message TargetImpressionShare {
// The targeted location on the search results page.
google.ads.googleads.v2.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1;
diff --git a/google/ads/googleads/v2/common/keyword_plan_common.proto b/google/ads/googleads/v2/common/keyword_plan_common.proto
index 4134367cf..f7a56609e 100644
--- a/google/ads/googleads/v2/common/keyword_plan_common.proto
+++ b/google/ads/googleads/v2/common/keyword_plan_common.proto
@@ -31,9 +31,13 @@ option ruby_package = "Google::Ads::GoogleAds::V2::Common";
// Proto file describing Keyword Planner messages.
-// Historical metrics.
+// Historical metrics specific to the targeting options selected.
+// Targeting options include geographies, network, etc.
+// Refer to https://support.google.com/google-ads/answer/3022575 for more
+// details.
message KeywordPlanHistoricalMetrics {
- // Average monthly searches for the past 12 months.
+ // Approximate number of monthly searches on this query averaged
+ // for the past 12 months.
google.protobuf.Int64Value avg_monthly_searches = 1;
// The competition level for the query.
diff --git a/google/ads/googleads/v2/common/metrics.proto b/google/ads/googleads/v2/common/metrics.proto
index 8040b8e67..4f73f4819 100644
--- a/google/ads/googleads/v2/common/metrics.proto
+++ b/google/ads/googleads/v2/common/metrics.proto
@@ -290,7 +290,7 @@ message Metrics {
// future, other ad types may support engagement metrics.
google.protobuf.Int64Value engagements = 32;
- // Average lead value of hotel.
+ // Average lead value based on clicks.
google.protobuf.DoubleValue hotel_average_lead_value_micros = 75;
// The average price difference between the price offered by reporting hotel
diff --git a/google/ads/googleads/v2/enums/keyword_plan_competition_level.proto b/google/ads/googleads/v2/enums/keyword_plan_competition_level.proto
index f09a1f548..b3fbcdb2c 100644
--- a/google/ads/googleads/v2/enums/keyword_plan_competition_level.proto
+++ b/google/ads/googleads/v2/enums/keyword_plan_competition_level.proto
@@ -43,13 +43,13 @@ message KeywordPlanCompetitionLevelEnum {
// The value is unknown in this version.
UNKNOWN = 1;
- // Low competition.
+ // Low competition. The Competition Index range for this is [0, 33].
LOW = 2;
- // Medium competition.
+ // Medium competition. The Competition Index range for this is [34, 66].
MEDIUM = 3;
- // High competition.
+ // High competition. The Competition Index range for this is [67, 100].
HIGH = 4;
}
diff --git a/google/ads/googleads/v2/errors/customer_error.proto b/google/ads/googleads/v2/errors/customer_error.proto
index 1a9049660..ef4a88c32 100644
--- a/google/ads/googleads/v2/errors/customer_error.proto
+++ b/google/ads/googleads/v2/errors/customer_error.proto
@@ -30,7 +30,6 @@ option ruby_package = "Google::Ads::GoogleAds::V2::Errors";
// Container for enum describing possible customer errors.
message CustomerErrorEnum {
// Set of errors that are related to requests dealing with Customer.
- // Next id: 26
enum CustomerError {
// Enum unspecified.
UNSPECIFIED = 0;
diff --git a/google/ads/googleads/v2/resources/ad.proto b/google/ads/googleads/v2/resources/ad.proto
index a8580b581..179411019 100644
--- a/google/ads/googleads/v2/resources/ad.proto
+++ b/google/ads/googleads/v2/resources/ad.proto
@@ -80,6 +80,7 @@ message Ad {
// The list of mappings that can be used to substitute custom parameter tags
// in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
+ // For mutates, please use url custom parameter operations.
repeated google.ads.googleads.v2.common.CustomParameter url_custom_parameters = 10;
// The URL that appears in the ad description for some ad formats.
diff --git a/google/ads/googleads/v2/resources/campaign.proto b/google/ads/googleads/v2/resources/campaign.proto
index 4d3287cc4..1f80390d5 100644
--- a/google/ads/googleads/v2/resources/campaign.proto
+++ b/google/ads/googleads/v2/resources/campaign.proto
@@ -83,16 +83,6 @@ message Campaign {
google.protobuf.Int64Value hotel_center_id = 1 [(google.api.field_behavior) = IMMUTABLE];
}
- // Describes how unbranded pharma ads will be displayed.
- message VanityPharma {
- // The display mode for vanity pharma URLs.
- google.ads.googleads.v2.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.v2.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2;
- }
-
// The setting for controlling Dynamic Search Ads (DSA).
message DynamicSearchAdsSetting {
// The Internet domain name that this setting represents, e.g., "google.com"
@@ -156,6 +146,15 @@ message Campaign {
google.protobuf.StringValue tracking_url = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
+ // Represents a collection of settings related to ads geotargeting.
+ message GeoTargetTypeSetting {
+ // The setting used for positive geotargeting in this particular campaign.
+ google.ads.googleads.v2.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1;
+
+ // The setting used for negative geotargeting in this particular campaign.
+ google.ads.googleads.v2.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2;
+ }
+
// Campaign-level settings for App Campaigns.
message AppCampaignSetting {
// Represents the goal which the bidding strategy of this app campaign
@@ -169,13 +168,14 @@ message Campaign {
google.ads.googleads.v2.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE];
}
- // Represents a collection of settings related to ads geotargeting.
- message GeoTargetTypeSetting {
- // The setting used for positive geotargeting in this particular campaign.
- google.ads.googleads.v2.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1;
+ // Describes how unbranded pharma ads will be displayed.
+ message VanityPharma {
+ // The display mode for vanity pharma URLs.
+ google.ads.googleads.v2.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode vanity_pharma_display_url_mode = 1;
- // The setting used for negative geotargeting in this particular campaign.
- google.ads.googleads.v2.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2;
+ // 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.v2.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2;
}
// Immutable. The resource name of the campaign.
@@ -298,12 +298,10 @@ message Campaign {
google.ads.googleads.v2.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY];
// 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;
diff --git a/google/ads/googleads/v2/resources/invoice.proto b/google/ads/googleads/v2/resources/invoice.proto
index 40ad89bd6..c76b43f0c 100644
--- a/google/ads/googleads/v2/resources/invoice.proto
+++ b/google/ads/googleads/v2/resources/invoice.proto
@@ -158,7 +158,6 @@ message Invoice {
// Output only. The resource name of the original invoice corrected, wrote off, or canceled
// by this invoice, if applicable. If `corrected_invoice` is set,
// `replaced_invoices` will not be set.
- //
// Invoice resource names have the form:
//
// `customers/{customer_id}/invoices/{invoice_id}`
diff --git a/google/ads/googleads/v2/resources/keyword_plan_campaign.proto b/google/ads/googleads/v2/resources/keyword_plan_campaign.proto
index 47c0f4e57..cebd04a54 100644
--- a/google/ads/googleads/v2/resources/keyword_plan_campaign.proto
+++ b/google/ads/googleads/v2/resources/keyword_plan_campaign.proto
@@ -91,7 +91,6 @@ message KeywordPlanCampaign {
}
// A geo target.
-// Next ID: 3
message KeywordPlanGeoTarget {
// Required. The resource name of the geo target.
google.protobuf.StringValue geo_target_constant = 1 [(google.api.resource_reference) = {
diff --git a/google/ads/googleads/v2/resources/recommendation.proto b/google/ads/googleads/v2/resources/recommendation.proto
index bebd708b1..95d6d364d 100644
--- a/google/ads/googleads/v2/resources/recommendation.proto
+++ b/google/ads/googleads/v2/resources/recommendation.proto
@@ -106,13 +106,13 @@ message Recommendation {
google.protobuf.Int64Value recommended_cpc_bid_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
- // The move unused budget recommendation.
- message MoveUnusedBudgetRecommendation {
- // Output only. The excess budget's resource_name.
- google.protobuf.StringValue excess_campaign_budget = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ // The keyword match type recommendation.
+ message KeywordMatchTypeRecommendation {
+ // Output only. The existing keyword where the match type should be more broad.
+ google.ads.googleads.v2.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The recommendation for the constrained budget to increase.
- CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+ // Output only. The recommended new match type.
+ google.ads.googleads.v2.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// The text ad recommendation.
@@ -130,24 +130,6 @@ message Recommendation {
google.protobuf.StringValue auto_apply_date = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
}
- // The Search Partners Opt-In recommendation.
- message SearchPartnersOptInRecommendation {
-
- }
-
- // The Maximize Clicks opt-in recommendation.
- message MaximizeClicksOptInRecommendation {
- // Output only. The recommended new budget amount.
- // Only set if the current budget is too high.
- google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
-
- // The Call extension recommendation.
- message CallExtensionRecommendation {
- // Output only. Call extensions recommended to be added.
- repeated google.ads.googleads.v2.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
-
// The Target CPA opt-in recommendation.
message TargetCpaOptInRecommendation {
// The Target CPA opt-in option with impact estimate.
@@ -176,35 +158,42 @@ message Recommendation {
google.protobuf.Int64Value recommended_target_cpa_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
- // The keyword match type recommendation.
- message KeywordMatchTypeRecommendation {
- // Output only. The existing keyword where the match type should be more broad.
- google.ads.googleads.v2.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
-
- // Output only. The recommended new match type.
- google.ads.googleads.v2.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
-
// The Maximize Conversions Opt-In recommendation.
message MaximizeConversionsOptInRecommendation {
// Output only. The recommended new budget amount.
google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
+ // The Call extension recommendation.
+ message CallExtensionRecommendation {
+ // Output only. Call extensions recommended to be added.
+ repeated google.ads.googleads.v2.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ }
+
+ // The move unused budget recommendation.
+ message MoveUnusedBudgetRecommendation {
+ // Output only. The excess budget's resource_name.
+ google.protobuf.StringValue excess_campaign_budget = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. The recommendation for the constrained budget to increase.
+ CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
+ }
+
// The Enhanced Cost-Per-Click Opt-In recommendation.
message EnhancedCpcOptInRecommendation {
}
- // The Optimize Ad Rotation recommendation.
- message OptimizeAdRotationRecommendation {
+ // The Search Partners Opt-In recommendation.
+ message SearchPartnersOptInRecommendation {
}
- // The Callout extension recommendation.
- message CalloutExtensionRecommendation {
- // Output only. Callout extensions recommended to be added.
- repeated google.ads.googleads.v2.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ // The Maximize Clicks opt-in recommendation.
+ message MaximizeClicksOptInRecommendation {
+ // Output only. The recommended new budget amount.
+ // Only set if the current budget is too high.
+ google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// The Sitelink extension recommendation.
@@ -213,6 +202,17 @@ message Recommendation {
repeated google.ads.googleads.v2.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
}
+ // The Optimize Ad Rotation recommendation.
+ message OptimizeAdRotationRecommendation {
+
+ }
+
+ // The Callout extension recommendation.
+ message CalloutExtensionRecommendation {
+ // Output only. Callout extensions recommended to be added.
+ repeated google.ads.googleads.v2.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
+ }
+
// Immutable. The resource name of the recommendation.
//
// `customers/{customer_id}/recommendations/{recommendation_id}`
diff --git a/google/ads/googleads/v2/services/conversion_adjustment_upload_service.proto b/google/ads/googleads/v2/services/conversion_adjustment_upload_service.proto
index 96c65bf3f..58ae0e2b6 100644
--- a/google/ads/googleads/v2/services/conversion_adjustment_upload_service.proto
+++ b/google/ads/googleads/v2/services/conversion_adjustment_upload_service.proto
@@ -42,7 +42,7 @@ service ConversionAdjustmentUploadService {
post: "/v2/customers/{customer_id=*}:uploadConversionAdjustments"
body: "*"
};
- option (google.api.method_signature) = "customer_id,conversion_adjustments";
+ option (google.api.method_signature) = "customer_id,conversion_adjustments,partial_failure";
}
}
@@ -55,11 +55,11 @@ message UploadConversionAdjustmentsRequest {
// Required. The conversion adjustments that are being uploaded.
repeated ConversionAdjustment conversion_adjustments = 2 [(google.api.field_behavior) = REQUIRED];
- // If true, successful operations will be carried out and invalid
+ // Required. If true, successful operations will be carried out and invalid
// operations will return errors. If false, all operations will be carried out
// in one transaction if and only if they are all valid. This should always be
// set to true.
- bool partial_failure = 3;
+ bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED];
// If true, the request is validated but not executed. Only errors are
// returned, not results.
diff --git a/google/ads/googleads/v2/services/conversion_upload_service.proto b/google/ads/googleads/v2/services/conversion_upload_service.proto
index bd5ab39c6..ec7de2da4 100644
--- a/google/ads/googleads/v2/services/conversion_upload_service.proto
+++ b/google/ads/googleads/v2/services/conversion_upload_service.proto
@@ -41,7 +41,7 @@ service ConversionUploadService {
post: "/v2/customers/{customer_id=*}:uploadClickConversions"
body: "*"
};
- option (google.api.method_signature) = "customer_id,conversions";
+ option (google.api.method_signature) = "customer_id,conversions,partial_failure";
}
// Processes the given call conversions.
@@ -50,7 +50,7 @@ service ConversionUploadService {
post: "/v2/customers/{customer_id=*}:uploadCallConversions"
body: "*"
};
- option (google.api.method_signature) = "customer_id,conversions";
+ option (google.api.method_signature) = "customer_id,conversions,partial_failure";
}
}
@@ -62,11 +62,11 @@ message UploadClickConversionsRequest {
// Required. The conversions that are being uploaded.
repeated ClickConversion conversions = 2 [(google.api.field_behavior) = REQUIRED];
- // If true, successful operations will be carried out and invalid
+ // Required. If true, successful operations will be carried out and invalid
// operations will return errors. If false, all operations will be carried
// out in one transaction if and only if they are all valid.
// This should always be set to true.
- bool partial_failure = 3;
+ bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED];
// If true, the request is validated but not executed. Only errors are
// returned, not results.
@@ -94,11 +94,11 @@ message UploadCallConversionsRequest {
// Required. The conversions that are being uploaded.
repeated CallConversion conversions = 2 [(google.api.field_behavior) = REQUIRED];
- // If true, successful operations will be carried out and invalid
+ // Required. If true, successful operations will be carried out and invalid
// operations will return errors. If false, all operations will be carried
// out in one transaction if and only if they are all valid.
// This should always be set to true.
- bool partial_failure = 3;
+ bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED];
// If true, the request is validated but not executed. Only errors are
// returned, not results.
diff --git a/google/ads/googleads/v2/services/keyword_plan_service.proto b/google/ads/googleads/v2/services/keyword_plan_service.proto
index 8aa95c9d0..212dd5ec3 100644
--- a/google/ads/googleads/v2/services/keyword_plan_service.proto
+++ b/google/ads/googleads/v2/services/keyword_plan_service.proto
@@ -172,7 +172,7 @@ message GenerateForecastMetricsResponse {
message KeywordPlanCampaignForecast {
// The resource name of the Keyword Plan campaign related to the forecast.
//
- // `customers/{customer_id}/keywordPlanCampaigns/{keyword+plan_campaign_id}`
+ // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}`
google.protobuf.StringValue keyword_plan_campaign = 1;
// The forecast for the Keyword Plan campaign.
diff --git a/google/ads/googleads/v2/services/reach_plan_service.proto b/google/ads/googleads/v2/services/reach_plan_service.proto
index dd023380f..59f52e7ec 100644
--- a/google/ads/googleads/v2/services/reach_plan_service.proto
+++ b/google/ads/googleads/v2/services/reach_plan_service.proto
@@ -231,7 +231,7 @@ message GenerateReachForecastRequest {
// This is equivalent to the frequency cap exposed in Google Ads when creating
// a campaign, it represents the maximum number of times an ad can be shown to
// the same user.
- // If not specified no cap is applied.
+ // If not specified, no cap is applied.
google.protobuf.Int32Value cookie_frequency_cap = 4;
// Desired minimum effective frequency (the number of times a person was
@@ -245,16 +245,14 @@ message GenerateReachForecastRequest {
// This is planned targeting: execution details might vary based on the
// advertising product, please consult an implementation specialist.
//
- // If no targeting dimensions are specified, then campaigns will target
- // everywhere and everyone.
- //
// See specific metrics for details on how targeting affects them.
//
// In some cases, targeting may be overridden using the
// PlannedProduct.advanced_product_targeting field.
Targeting targeting = 6;
- // Required. The product to be planned.
+ // Required. The products to be forecast.
+ // The max number of allowed planned products is 15.
repeated PlannedProduct planned_products = 7 [(google.api.field_behavior) = REQUIRED];
}
@@ -264,14 +262,17 @@ message Targeting {
// Plannable locations ID can be obtained from ListPlannableLocations.
google.protobuf.StringValue plannable_location_id = 1;
- // Required
- // Selected age range to be planned on.
+ // Targeted age range.
+ // If not specified, targets all age ranges.
google.ads.googleads.v2.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_range = 2;
- // Targetable genders for the ad product.
+ // Targeted genders.
+ // If not specified, targets all genders.
repeated google.ads.googleads.v2.common.GenderInfo genders = 3;
- // Targetable devices for the ad product.
+ // Targeted devices.
+ // If not specified, targets all applicable devices. Applicable devices vary
+ // by product and region and can be obtained from ListPlannableProducts.
repeated google.ads.googleads.v2.common.DeviceInfo devices = 4;
}
@@ -337,7 +338,7 @@ message Forecast {
google.protobuf.Int64Value on_target_impressions = 3;
// Total number of ad impressions. This includes impressions that may fall
- // outside the specified Targeting, due to insufficent information on
+ // outside the specified Targeting, due to insufficient information on
// signed-in users.
google.protobuf.Int64Value total_impressions = 4;
}