• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2023 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package google.ads.googleads.v15.resources;
18
19import "google/ads/googleads/v15/enums/keyword_plan_network.proto";
20import "google/api/field_behavior.proto";
21import "google/api/resource.proto";
22
23option csharp_namespace = "Google.Ads.GoogleAds.V15.Resources";
24option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v15/resources;resources";
25option java_multiple_files = true;
26option java_outer_classname = "KeywordPlanCampaignProto";
27option java_package = "com.google.ads.googleads.v15.resources";
28option objc_class_prefix = "GAA";
29option php_namespace = "Google\\Ads\\GoogleAds\\V15\\Resources";
30option ruby_package = "Google::Ads::GoogleAds::V15::Resources";
31
32// Proto file describing the keyword plan campaign resource.
33
34// A Keyword Plan campaign.
35// Max number of keyword plan campaigns per plan allowed: 1.
36message KeywordPlanCampaign {
37  option (google.api.resource) = {
38    type: "googleads.googleapis.com/KeywordPlanCampaign"
39    pattern: "customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}"
40  };
41
42  // Immutable. The resource name of the Keyword Plan campaign.
43  // KeywordPlanCampaign resource names have the form:
44  //
45  // `customers/{customer_id}/keywordPlanCampaigns/{kp_campaign_id}`
46  string resource_name = 1 [
47    (google.api.field_behavior) = IMMUTABLE,
48    (google.api.resource_reference) = {
49      type: "googleads.googleapis.com/KeywordPlanCampaign"
50    }
51  ];
52
53  // The keyword plan this campaign belongs to.
54  optional string keyword_plan = 9 [(google.api.resource_reference) = {
55    type: "googleads.googleapis.com/KeywordPlan"
56  }];
57
58  // Output only. The ID of the Keyword Plan campaign.
59  optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
60
61  // The name of the Keyword Plan campaign.
62  //
63  // This field is required and should not be empty when creating Keyword Plan
64  // campaigns.
65  optional string name = 11;
66
67  // The languages targeted for the Keyword Plan campaign.
68  // Max allowed: 1.
69  repeated string language_constants = 12 [(google.api.resource_reference) = {
70    type: "googleads.googleapis.com/LanguageConstant"
71  }];
72
73  // Targeting network.
74  //
75  // This field is required and should not be empty when creating Keyword Plan
76  // campaigns.
77  google.ads.googleads.v15.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork
78      keyword_plan_network = 6;
79
80  // A default max cpc bid in micros, and in the account currency, for all ad
81  // groups under the campaign.
82  //
83  // This field is required and should not be empty when creating Keyword Plan
84  // campaigns.
85  optional int64 cpc_bid_micros = 13;
86
87  // The geo targets.
88  // Max number allowed: 20.
89  repeated KeywordPlanGeoTarget geo_targets = 8;
90}
91
92// A geo target.
93message KeywordPlanGeoTarget {
94  // Required. The resource name of the geo target.
95  optional string geo_target_constant = 2 [(google.api.resource_reference) = {
96    type: "googleads.googleapis.com/GeoTargetConstant"
97  }];
98}
99