xref: /aosp_15_r20/external/googleapis/google/ads/googleads/v14/resources/campaign_customizer.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
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.v14.resources;
18
19import "google/ads/googleads/v14/common/customizer_value.proto";
20import "google/ads/googleads/v14/enums/customizer_value_status.proto";
21import "google/api/field_behavior.proto";
22import "google/api/resource.proto";
23
24option csharp_namespace = "Google.Ads.GoogleAds.V14.Resources";
25option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v14/resources;resources";
26option java_multiple_files = true;
27option java_outer_classname = "CampaignCustomizerProto";
28option java_package = "com.google.ads.googleads.v14.resources";
29option objc_class_prefix = "GAA";
30option php_namespace = "Google\\Ads\\GoogleAds\\V14\\Resources";
31option ruby_package = "Google::Ads::GoogleAds::V14::Resources";
32
33// A customizer value for the associated CustomizerAttribute at the Campaign
34// level.
35message CampaignCustomizer {
36  option (google.api.resource) = {
37    type: "googleads.googleapis.com/CampaignCustomizer"
38    pattern: "customers/{customer_id}/campaignCustomizers/{campaign_id}~{customizer_attribute_id}"
39  };
40
41  // Immutable. The resource name of the campaign customizer.
42  // Campaign customizer resource names have the form:
43  //
44  // `customers/{customer_id}/campaignCustomizers/{campaign_id}~{customizer_attribute_id}`
45  string resource_name = 1 [
46    (google.api.field_behavior) = IMMUTABLE,
47    (google.api.resource_reference) = {
48      type: "googleads.googleapis.com/CampaignCustomizer"
49    }
50  ];
51
52  // Immutable. The campaign to which the customizer attribute is linked.
53  string campaign = 2 [
54    (google.api.field_behavior) = IMMUTABLE,
55    (google.api.resource_reference) = {
56      type: "googleads.googleapis.com/Campaign"
57    }
58  ];
59
60  // Required. Immutable. The customizer attribute which is linked to the
61  // campaign.
62  string customizer_attribute = 3 [
63    (google.api.field_behavior) = REQUIRED,
64    (google.api.field_behavior) = IMMUTABLE,
65    (google.api.resource_reference) = {
66      type: "googleads.googleapis.com/CustomizerAttribute"
67    }
68  ];
69
70  // Output only. The status of the campaign customizer.
71  google.ads.googleads.v14.enums.CustomizerValueStatusEnum.CustomizerValueStatus
72      status = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
73
74  // Required. The value to associate with the customizer attribute at this
75  // level. The value must be of the type specified for the CustomizerAttribute.
76  google.ads.googleads.v14.common.CustomizerValue value = 5
77      [(google.api.field_behavior) = REQUIRED];
78}
79