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