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/common/policy.proto"; 20import "google/ads/googleads/v15/enums/ad_group_ad_status.proto"; 21import "google/ads/googleads/v15/enums/ad_strength.proto"; 22import "google/ads/googleads/v15/enums/policy_approval_status.proto"; 23import "google/ads/googleads/v15/enums/policy_review_status.proto"; 24import "google/ads/googleads/v15/resources/ad.proto"; 25import "google/api/field_behavior.proto"; 26import "google/api/resource.proto"; 27 28option csharp_namespace = "Google.Ads.GoogleAds.V15.Resources"; 29option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v15/resources;resources"; 30option java_multiple_files = true; 31option java_outer_classname = "AdGroupAdProto"; 32option java_package = "com.google.ads.googleads.v15.resources"; 33option objc_class_prefix = "GAA"; 34option php_namespace = "Google\\Ads\\GoogleAds\\V15\\Resources"; 35option ruby_package = "Google::Ads::GoogleAds::V15::Resources"; 36 37// Proto file describing the ad group ad resource. 38 39// An ad group ad. 40message AdGroupAd { 41 option (google.api.resource) = { 42 type: "googleads.googleapis.com/AdGroupAd" 43 pattern: "customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}" 44 }; 45 46 // Immutable. The resource name of the ad. 47 // Ad group ad resource names have the form: 48 // 49 // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` 50 string resource_name = 1 [ 51 (google.api.field_behavior) = IMMUTABLE, 52 (google.api.resource_reference) = { 53 type: "googleads.googleapis.com/AdGroupAd" 54 } 55 ]; 56 57 // The status of the ad. 58 google.ads.googleads.v15.enums.AdGroupAdStatusEnum.AdGroupAdStatus status = 3; 59 60 // Immutable. The ad group to which the ad belongs. 61 optional string ad_group = 9 [ 62 (google.api.field_behavior) = IMMUTABLE, 63 (google.api.resource_reference) = { 64 type: "googleads.googleapis.com/AdGroup" 65 } 66 ]; 67 68 // Immutable. The ad. 69 Ad ad = 5 [(google.api.field_behavior) = IMMUTABLE]; 70 71 // Output only. Policy information for the ad. 72 AdGroupAdPolicySummary policy_summary = 6 73 [(google.api.field_behavior) = OUTPUT_ONLY]; 74 75 // Output only. Overall ad strength for this ad group ad. 76 google.ads.googleads.v15.enums.AdStrengthEnum.AdStrength ad_strength = 7 77 [(google.api.field_behavior) = OUTPUT_ONLY]; 78 79 // Output only. A list of recommendations to improve the ad strength. For 80 // example, a recommendation could be "Try adding a few more unique headlines 81 // or unpinning some assets.". 82 repeated string action_items = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; 83 84 // Output only. The resource names of labels attached to this ad group ad. 85 repeated string labels = 10 [ 86 (google.api.field_behavior) = OUTPUT_ONLY, 87 (google.api.resource_reference) = { 88 type: "googleads.googleapis.com/AdGroupAdLabel" 89 } 90 ]; 91} 92 93// Contains policy information for an ad. 94message AdGroupAdPolicySummary { 95 // Output only. The list of policy findings for this ad. 96 repeated google.ads.googleads.v15.common.PolicyTopicEntry 97 policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 98 99 // Output only. Where in the review process this ad is. 100 google.ads.googleads.v15.enums.PolicyReviewStatusEnum.PolicyReviewStatus 101 review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 102 103 // Output only. The overall approval status of this ad, calculated based on 104 // the status of its individual policy topic entries. 105 google.ads.googleads.v15.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus 106 approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; 107} 108