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/asset_policy.proto"; 20import "google/ads/googleads/v15/common/policy_summary.proto"; 21import "google/ads/googleads/v15/enums/asset_field_type.proto"; 22import "google/ads/googleads/v15/enums/asset_link_primary_status.proto"; 23import "google/ads/googleads/v15/enums/asset_link_primary_status_reason.proto"; 24import "google/ads/googleads/v15/enums/asset_link_status.proto"; 25import "google/ads/googleads/v15/enums/asset_performance_label.proto"; 26import "google/ads/googleads/v15/enums/asset_source.proto"; 27import "google/api/field_behavior.proto"; 28import "google/api/resource.proto"; 29 30option csharp_namespace = "Google.Ads.GoogleAds.V15.Resources"; 31option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v15/resources;resources"; 32option java_multiple_files = true; 33option java_outer_classname = "AssetGroupAssetProto"; 34option java_package = "com.google.ads.googleads.v15.resources"; 35option objc_class_prefix = "GAA"; 36option php_namespace = "Google\\Ads\\GoogleAds\\V15\\Resources"; 37option ruby_package = "Google::Ads::GoogleAds::V15::Resources"; 38 39// AssetGroupAsset is the link between an asset and an asset group. 40// Adding an AssetGroupAsset links an asset with an asset group. 41message AssetGroupAsset { 42 option (google.api.resource) = { 43 type: "googleads.googleapis.com/AssetGroupAsset" 44 pattern: "customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}" 45 }; 46 47 // Immutable. The resource name of the asset group asset. 48 // Asset group asset resource name have the form: 49 // 50 // `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}` 51 string resource_name = 1 [ 52 (google.api.field_behavior) = IMMUTABLE, 53 (google.api.resource_reference) = { 54 type: "googleads.googleapis.com/AssetGroupAsset" 55 } 56 ]; 57 58 // Immutable. The asset group which this asset group asset is linking. 59 string asset_group = 2 [ 60 (google.api.field_behavior) = IMMUTABLE, 61 (google.api.resource_reference) = { 62 type: "googleads.googleapis.com/AssetGroup" 63 } 64 ]; 65 66 // Immutable. The asset which this asset group asset is linking. 67 string asset = 3 [ 68 (google.api.field_behavior) = IMMUTABLE, 69 (google.api.resource_reference) = { type: "googleads.googleapis.com/Asset" } 70 ]; 71 72 // The description of the placement of the asset within the asset group. For 73 // example: HEADLINE, YOUTUBE_VIDEO etc 74 google.ads.googleads.v15.enums.AssetFieldTypeEnum.AssetFieldType field_type = 75 4; 76 77 // The status of the link between an asset and asset group. 78 google.ads.googleads.v15.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5; 79 80 // Output only. Provides the PrimaryStatus of this asset link. 81 // Primary status is meant essentially to differentiate between the plain 82 // "status" field, which has advertiser set values of enabled, paused, or 83 // removed. The primary status takes into account other signals (for assets 84 // its mainly policy and quality approvals) to come up with a more 85 // comprehensive status to indicate its serving state. 86 google.ads.googleads.v15.enums.AssetLinkPrimaryStatusEnum 87 .AssetLinkPrimaryStatus primary_status = 8 88 [(google.api.field_behavior) = OUTPUT_ONLY]; 89 90 // Output only. Provides a list of reasons for why an asset is not serving or 91 // not serving at full capacity. 92 repeated google.ads.googleads.v15.enums.AssetLinkPrimaryStatusReasonEnum 93 .AssetLinkPrimaryStatusReason primary_status_reasons = 9 94 [(google.api.field_behavior) = OUTPUT_ONLY]; 95 96 // Output only. Provides the details of the primary status and its associated 97 // reasons. 98 repeated google.ads.googleads.v15.common.AssetLinkPrimaryStatusDetails 99 primary_status_details = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; 100 101 // Output only. The performance of this asset group asset. 102 google.ads.googleads.v15.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel 103 performance_label = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 104 105 // Output only. The policy information for this asset group asset. 106 google.ads.googleads.v15.common.PolicySummary policy_summary = 7 107 [(google.api.field_behavior) = OUTPUT_ONLY]; 108 109 // Output only. Source of the asset group asset. 110 google.ads.googleads.v15.enums.AssetSourceEnum.AssetSource source = 11 111 [(google.api.field_behavior) = OUTPUT_ONLY]; 112} 113