xref: /aosp_15_r20/external/googleapis/google/ads/admanager/v1/frequency_cap.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.admanager.v1;
18
19option csharp_namespace = "Google.Ads.AdManager.V1";
20option go_package = "google.golang.org/genproto/googleapis/ads/admanager/v1;admanager";
21option java_multiple_files = true;
22option java_outer_classname = "FrequencyCapProto";
23option java_package = "com.google.ads.admanager.v1";
24option objc_class_prefix = "GAA";
25option php_namespace = "Google\\Ads\\AdManager\\V1";
26
27// Represents a Frequency Cap that can be applied to an entity.
28message FrequencyCap {
29  // The maximum number of impressions for this frequency cap.
30  optional int64 max_impressions = 1;
31
32  // The number of time units over which the frequency cap is effective.
33  optional int64 time_amount = 2;
34
35  // The units of time of this frequency cap.
36  optional TimeUnitEnum.TimeUnit time_unit = 3;
37}
38
39// Wrapper message for TimeUnit.
40message TimeUnitEnum {
41  // Unit of time for the frequency cap.
42  enum TimeUnit {
43    // Default value. This value is unused.
44    TIME_UNIT_UNSPECIFIED = 0;
45
46    // Minute
47    MINUTE = 1;
48
49    // Hour
50    HOUR = 2;
51
52    // Day
53    DAY = 3;
54
55    // Week
56    WEEK = 4;
57
58    // Month
59    MONTH = 5;
60
61    // Lifetime
62    LIFETIME = 6;
63
64    // Per pod of ads in a video stream. Only valid for entities in a
65    // VIDEO_PLAYER environment.
66    POD = 7;
67
68    // Per video stream. Only valid for entities in a VIDEO_PLAYER environment.
69    STREAM = 8;
70  }
71}
72