Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / legacy-libs / google-proto-files / google / ads / googleads / v0 / resources / account_budget_proposal.proto
1 // Copyright 2018 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 //
15
16 syntax = "proto3";
17
18 package google.ads.googleads.v0.resources;
19
20 import "google/ads/googleads/v0/enums/account_budget_proposal_status.proto";
21 import "google/ads/googleads/v0/enums/account_budget_proposal_type.proto";
22 import "google/ads/googleads/v0/enums/spending_limit_type.proto";
23 import "google/ads/googleads/v0/enums/time_type.proto";
24 import "google/protobuf/wrappers.proto";
25
26 option csharp_namespace = "Google.Ads.GoogleAds.V0.Resources";
27 option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v0/resources;resources";
28 option java_multiple_files = true;
29 option java_outer_classname = "AccountBudgetProposalProto";
30 option java_package = "com.google.ads.googleads.v0.resources";
31 option objc_class_prefix = "GAA";
32 option php_namespace = "Google\\Ads\\GoogleAds\\V0\\Resources";
33 option ruby_package = "Google::Ads::GoogleAds::V0::Resources";
34
35 // Proto file describing the AccountBudgetProposal resource.
36
37 // An account-level budget proposal.
38 //
39 // All fields prefixed with 'proposed' may not necessarily be applied directly.
40 // For example, proposed spending limits may be adjusted before their
41 // application.  This is true if the 'proposed' field has an 'approved'
42 // counterpart, e.g. spending limits.
43 //
44 // Please note that the proposal type (proposal_type) changes which fields are
45 // required and which must remain empty.
46 message AccountBudgetProposal {
47   // The resource name of the proposal.
48   // AccountBudgetProposal resource names have the form:
49   //
50   //
51   // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}`
52   string resource_name = 1;
53
54   // The ID of the proposal.
55   google.protobuf.Int64Value id = 14;
56
57   // The resource name of the billing setup associated with this proposal.
58   google.protobuf.StringValue billing_setup = 2;
59
60   // The resource name of the account-level budget associated with this
61   // proposal.
62   google.protobuf.StringValue account_budget = 3;
63
64   // The type of this proposal, e.g. END to end the budget associated with this
65   // proposal.
66   google.ads.googleads.v0.enums.AccountBudgetProposalTypeEnum
67       .AccountBudgetProposalType proposal_type = 4;
68
69   // The status of this proposal.
70   // When a new proposal is created, the status defaults to PENDING.
71   google.ads.googleads.v0.enums.AccountBudgetProposalStatusEnum
72       .AccountBudgetProposalStatus status = 15;
73
74   // The name to assign to the account-level budget.
75   google.protobuf.StringValue proposed_name = 5;
76
77   // The approved start date time in yyyy-mm-dd hh:mm:ss format.
78   google.protobuf.StringValue approved_start_date_time = 20;
79
80   // A purchase order number is a value that enables the user to help them
81   // reference this budget in their monthly invoices.
82   google.protobuf.StringValue proposed_purchase_order_number = 12;
83
84   // Notes associated with this budget.
85   google.protobuf.StringValue proposed_notes = 13;
86
87   // The date time when this account-level budget proposal was created, which is
88   // not the same as its approval date time, if applicable.
89   google.protobuf.StringValue creation_date_time = 16;
90
91   // The date time when this account-level budget was approved, if applicable.
92   google.protobuf.StringValue approval_date_time = 17;
93
94   // The proposed start date time of the account-level budget, which cannot be
95   // in the past.
96   oneof proposed_start_time {
97     // The proposed start date time in yyyy-mm-dd hh:mm:ss format.
98     google.protobuf.StringValue proposed_start_date_time = 18;
99
100     // The proposed start date time as a well-defined type, e.g. NOW.
101     google.ads.googleads.v0.enums.TimeTypeEnum.TimeType
102         proposed_start_time_type = 7;
103   }
104
105   // The proposed end date time of the account-level budget, which cannot be in
106   // the past.
107   oneof proposed_end_time {
108     // The proposed end date time in yyyy-mm-dd hh:mm:ss format.
109     google.protobuf.StringValue proposed_end_date_time = 19;
110
111     // The proposed end date time as a well-defined type, e.g. FOREVER.
112     google.ads.googleads.v0.enums.TimeTypeEnum.TimeType proposed_end_time_type =
113         9;
114   }
115
116   // The approved end date time of the account-level budget.
117   oneof approved_end_time {
118     // The approved end date time in yyyy-mm-dd hh:mm:ss format.
119     google.protobuf.StringValue approved_end_date_time = 21;
120
121     // The approved end date time as a well-defined type, e.g. FOREVER.
122     google.ads.googleads.v0.enums.TimeTypeEnum.TimeType approved_end_time_type =
123         22;
124   }
125
126   // The proposed spending limit.
127   oneof proposed_spending_limit {
128     // The proposed spending limit in micros.  One million is equivalent to
129     // one unit.
130     google.protobuf.Int64Value proposed_spending_limit_micros = 10;
131
132     // The proposed spending limit as a well-defined type, e.g. INFINITE.
133     google.ads.googleads.v0.enums.SpendingLimitTypeEnum.SpendingLimitType
134         proposed_spending_limit_type = 11;
135   }
136
137   // The approved spending limit.
138   oneof approved_spending_limit {
139     // The approved spending limit in micros.  One million is equivalent to
140     // one unit.
141     google.protobuf.Int64Value approved_spending_limit_micros = 23;
142
143     // The approved spending limit as a well-defined type, e.g. INFINITE.
144     google.ads.googleads.v0.enums.SpendingLimitTypeEnum.SpendingLimitType
145         approved_spending_limit_type = 24;
146   }
147 }