aws-sdk-budgets 1.0.0.rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/aws-sdk-budgets/client.rb +684 -0
- data/lib/aws-sdk-budgets/client_api.rb +405 -0
- data/lib/aws-sdk-budgets/customizations.rb +7 -0
- data/lib/aws-sdk-budgets/errors.rb +23 -0
- data/lib/aws-sdk-budgets/resource.rb +25 -0
- data/lib/aws-sdk-budgets/types.rb +879 -0
- data/lib/aws-sdk-budgets.rb +47 -0
- metadata +80 -0
@@ -0,0 +1,879 @@
|
|
1
|
+
# WARNING ABOUT GENERATED CODE
|
2
|
+
#
|
3
|
+
# This file is generated. See the contributing for info on making contributions:
|
4
|
+
# https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
|
5
|
+
#
|
6
|
+
# WARNING ABOUT GENERATED CODE
|
7
|
+
|
8
|
+
module Aws
|
9
|
+
module Budgets
|
10
|
+
module Types
|
11
|
+
|
12
|
+
# AWS Budget model
|
13
|
+
# @note When making an API call, pass Budget
|
14
|
+
# data as a hash:
|
15
|
+
#
|
16
|
+
# {
|
17
|
+
# budget_name: "BudgetName", # required
|
18
|
+
# budget_limit: { # required
|
19
|
+
# amount: "NumericValue", # required
|
20
|
+
# unit: "GenericString", # required
|
21
|
+
# },
|
22
|
+
# cost_filters: {
|
23
|
+
# "GenericString" => ["GenericString"],
|
24
|
+
# },
|
25
|
+
# cost_types: { # required
|
26
|
+
# include_tax: false, # required
|
27
|
+
# include_subscription: false, # required
|
28
|
+
# use_blended: false, # required
|
29
|
+
# },
|
30
|
+
# time_unit: "MONTHLY", # required, accepts MONTHLY, QUARTERLY, ANNUALLY
|
31
|
+
# time_period: { # required
|
32
|
+
# start: Time.now, # required
|
33
|
+
# end: Time.now, # required
|
34
|
+
# },
|
35
|
+
# calculated_spend: {
|
36
|
+
# actual_spend: { # required
|
37
|
+
# amount: "NumericValue", # required
|
38
|
+
# unit: "GenericString", # required
|
39
|
+
# },
|
40
|
+
# forecasted_spend: {
|
41
|
+
# amount: "NumericValue", # required
|
42
|
+
# unit: "GenericString", # required
|
43
|
+
# },
|
44
|
+
# },
|
45
|
+
# budget_type: "USAGE", # required, accepts USAGE, COST
|
46
|
+
# }
|
47
|
+
# @!attribute [rw] budget_name
|
48
|
+
# A string represents the budget name. No ":" character is allowed.
|
49
|
+
# @return [String]
|
50
|
+
#
|
51
|
+
# @!attribute [rw] budget_limit
|
52
|
+
# A structure represent either a cost spend or usage spend. Contains
|
53
|
+
# an amount and a unit.
|
54
|
+
# @return [Types::Spend]
|
55
|
+
#
|
56
|
+
# @!attribute [rw] cost_filters
|
57
|
+
# A map represents the cost filters applied to the budget.
|
58
|
+
# @return [Hash<String,Array<String>>]
|
59
|
+
#
|
60
|
+
# @!attribute [rw] cost_types
|
61
|
+
# This includes the options for getting the cost of a budget.
|
62
|
+
# @return [Types::CostTypes]
|
63
|
+
#
|
64
|
+
# @!attribute [rw] time_unit
|
65
|
+
# The time unit of the budget. e.g. weekly, monthly, etc.
|
66
|
+
# @return [String]
|
67
|
+
#
|
68
|
+
# @!attribute [rw] time_period
|
69
|
+
# A time period indicated the start date and end date of a budget.
|
70
|
+
# @return [Types::TimePeriod]
|
71
|
+
#
|
72
|
+
# @!attribute [rw] calculated_spend
|
73
|
+
# A structure holds the actual and forecasted spend for a budget.
|
74
|
+
# @return [Types::CalculatedSpend]
|
75
|
+
#
|
76
|
+
# @!attribute [rw] budget_type
|
77
|
+
# The type of a budget. Can be COST or USAGE.
|
78
|
+
# @return [String]
|
79
|
+
class Budget < Struct.new(
|
80
|
+
:budget_name,
|
81
|
+
:budget_limit,
|
82
|
+
:cost_filters,
|
83
|
+
:cost_types,
|
84
|
+
:time_unit,
|
85
|
+
:time_period,
|
86
|
+
:calculated_spend,
|
87
|
+
:budget_type)
|
88
|
+
include Aws::Structure
|
89
|
+
end
|
90
|
+
|
91
|
+
# A structure holds the actual and forecasted spend for a budget.
|
92
|
+
# @note When making an API call, pass CalculatedSpend
|
93
|
+
# data as a hash:
|
94
|
+
#
|
95
|
+
# {
|
96
|
+
# actual_spend: { # required
|
97
|
+
# amount: "NumericValue", # required
|
98
|
+
# unit: "GenericString", # required
|
99
|
+
# },
|
100
|
+
# forecasted_spend: {
|
101
|
+
# amount: "NumericValue", # required
|
102
|
+
# unit: "GenericString", # required
|
103
|
+
# },
|
104
|
+
# }
|
105
|
+
# @!attribute [rw] actual_spend
|
106
|
+
# A structure represent either a cost spend or usage spend. Contains
|
107
|
+
# an amount and a unit.
|
108
|
+
# @return [Types::Spend]
|
109
|
+
#
|
110
|
+
# @!attribute [rw] forecasted_spend
|
111
|
+
# A structure represent either a cost spend or usage spend. Contains
|
112
|
+
# an amount and a unit.
|
113
|
+
# @return [Types::Spend]
|
114
|
+
class CalculatedSpend < Struct.new(
|
115
|
+
:actual_spend,
|
116
|
+
:forecasted_spend)
|
117
|
+
include Aws::Structure
|
118
|
+
end
|
119
|
+
|
120
|
+
# This includes the options for getting the cost of a budget.
|
121
|
+
# @note When making an API call, pass CostTypes
|
122
|
+
# data as a hash:
|
123
|
+
#
|
124
|
+
# {
|
125
|
+
# include_tax: false, # required
|
126
|
+
# include_subscription: false, # required
|
127
|
+
# use_blended: false, # required
|
128
|
+
# }
|
129
|
+
# @!attribute [rw] include_tax
|
130
|
+
# A generic boolean value.
|
131
|
+
# @return [Boolean]
|
132
|
+
#
|
133
|
+
# @!attribute [rw] include_subscription
|
134
|
+
# A generic boolean value.
|
135
|
+
# @return [Boolean]
|
136
|
+
#
|
137
|
+
# @!attribute [rw] use_blended
|
138
|
+
# A generic boolean value.
|
139
|
+
# @return [Boolean]
|
140
|
+
class CostTypes < Struct.new(
|
141
|
+
:include_tax,
|
142
|
+
:include_subscription,
|
143
|
+
:use_blended)
|
144
|
+
include Aws::Structure
|
145
|
+
end
|
146
|
+
|
147
|
+
# Request of CreateBudget
|
148
|
+
# @note When making an API call, pass CreateBudgetRequest
|
149
|
+
# data as a hash:
|
150
|
+
#
|
151
|
+
# {
|
152
|
+
# account_id: "AccountId", # required
|
153
|
+
# budget: { # required
|
154
|
+
# budget_name: "BudgetName", # required
|
155
|
+
# budget_limit: { # required
|
156
|
+
# amount: "NumericValue", # required
|
157
|
+
# unit: "GenericString", # required
|
158
|
+
# },
|
159
|
+
# cost_filters: {
|
160
|
+
# "GenericString" => ["GenericString"],
|
161
|
+
# },
|
162
|
+
# cost_types: { # required
|
163
|
+
# include_tax: false, # required
|
164
|
+
# include_subscription: false, # required
|
165
|
+
# use_blended: false, # required
|
166
|
+
# },
|
167
|
+
# time_unit: "MONTHLY", # required, accepts MONTHLY, QUARTERLY, ANNUALLY
|
168
|
+
# time_period: { # required
|
169
|
+
# start: Time.now, # required
|
170
|
+
# end: Time.now, # required
|
171
|
+
# },
|
172
|
+
# calculated_spend: {
|
173
|
+
# actual_spend: { # required
|
174
|
+
# amount: "NumericValue", # required
|
175
|
+
# unit: "GenericString", # required
|
176
|
+
# },
|
177
|
+
# forecasted_spend: {
|
178
|
+
# amount: "NumericValue", # required
|
179
|
+
# unit: "GenericString", # required
|
180
|
+
# },
|
181
|
+
# },
|
182
|
+
# budget_type: "USAGE", # required, accepts USAGE, COST
|
183
|
+
# },
|
184
|
+
# notifications_with_subscribers: [
|
185
|
+
# {
|
186
|
+
# notification: { # required
|
187
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
188
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
189
|
+
# threshold: 1.0, # required
|
190
|
+
# },
|
191
|
+
# subscribers: [ # required
|
192
|
+
# {
|
193
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
194
|
+
# address: "GenericString", # required
|
195
|
+
# },
|
196
|
+
# ],
|
197
|
+
# },
|
198
|
+
# ],
|
199
|
+
# }
|
200
|
+
# @!attribute [rw] account_id
|
201
|
+
# Account Id of the customer. It should be a 12 digit number.
|
202
|
+
# @return [String]
|
203
|
+
#
|
204
|
+
# @!attribute [rw] budget
|
205
|
+
# AWS Budget model
|
206
|
+
# @return [Types::Budget]
|
207
|
+
#
|
208
|
+
# @!attribute [rw] notifications_with_subscribers
|
209
|
+
# A list of Notifications, each with a list of subscribers.
|
210
|
+
# @return [Array<Types::NotificationWithSubscribers>]
|
211
|
+
class CreateBudgetRequest < Struct.new(
|
212
|
+
:account_id,
|
213
|
+
:budget,
|
214
|
+
:notifications_with_subscribers)
|
215
|
+
include Aws::Structure
|
216
|
+
end
|
217
|
+
|
218
|
+
# Response of CreateBudget
|
219
|
+
class CreateBudgetResponse < Aws::EmptyStructure; end
|
220
|
+
|
221
|
+
# Request of CreateNotification
|
222
|
+
# @note When making an API call, pass CreateNotificationRequest
|
223
|
+
# data as a hash:
|
224
|
+
#
|
225
|
+
# {
|
226
|
+
# account_id: "AccountId", # required
|
227
|
+
# budget_name: "BudgetName", # required
|
228
|
+
# notification: { # required
|
229
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
230
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
231
|
+
# threshold: 1.0, # required
|
232
|
+
# },
|
233
|
+
# subscribers: [ # required
|
234
|
+
# {
|
235
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
236
|
+
# address: "GenericString", # required
|
237
|
+
# },
|
238
|
+
# ],
|
239
|
+
# }
|
240
|
+
# @!attribute [rw] account_id
|
241
|
+
# Account Id of the customer. It should be a 12 digit number.
|
242
|
+
# @return [String]
|
243
|
+
#
|
244
|
+
# @!attribute [rw] budget_name
|
245
|
+
# A string represents the budget name. No ":" character is allowed.
|
246
|
+
# @return [String]
|
247
|
+
#
|
248
|
+
# @!attribute [rw] notification
|
249
|
+
# Notification model. Each budget may contain multiple notifications
|
250
|
+
# with different settings.
|
251
|
+
# @return [Types::Notification]
|
252
|
+
#
|
253
|
+
# @!attribute [rw] subscribers
|
254
|
+
# A list of subscribers.
|
255
|
+
# @return [Array<Types::Subscriber>]
|
256
|
+
class CreateNotificationRequest < Struct.new(
|
257
|
+
:account_id,
|
258
|
+
:budget_name,
|
259
|
+
:notification,
|
260
|
+
:subscribers)
|
261
|
+
include Aws::Structure
|
262
|
+
end
|
263
|
+
|
264
|
+
# Response of CreateNotification
|
265
|
+
class CreateNotificationResponse < Aws::EmptyStructure; end
|
266
|
+
|
267
|
+
# Request of CreateSubscriber
|
268
|
+
# @note When making an API call, pass CreateSubscriberRequest
|
269
|
+
# data as a hash:
|
270
|
+
#
|
271
|
+
# {
|
272
|
+
# account_id: "AccountId", # required
|
273
|
+
# budget_name: "BudgetName", # required
|
274
|
+
# notification: { # required
|
275
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
276
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
277
|
+
# threshold: 1.0, # required
|
278
|
+
# },
|
279
|
+
# subscriber: { # required
|
280
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
281
|
+
# address: "GenericString", # required
|
282
|
+
# },
|
283
|
+
# }
|
284
|
+
# @!attribute [rw] account_id
|
285
|
+
# Account Id of the customer. It should be a 12 digit number.
|
286
|
+
# @return [String]
|
287
|
+
#
|
288
|
+
# @!attribute [rw] budget_name
|
289
|
+
# A string represents the budget name. No ":" character is allowed.
|
290
|
+
# @return [String]
|
291
|
+
#
|
292
|
+
# @!attribute [rw] notification
|
293
|
+
# Notification model. Each budget may contain multiple notifications
|
294
|
+
# with different settings.
|
295
|
+
# @return [Types::Notification]
|
296
|
+
#
|
297
|
+
# @!attribute [rw] subscriber
|
298
|
+
# Subscriber model. Each notification may contain multiple subscribers
|
299
|
+
# with different addresses.
|
300
|
+
# @return [Types::Subscriber]
|
301
|
+
class CreateSubscriberRequest < Struct.new(
|
302
|
+
:account_id,
|
303
|
+
:budget_name,
|
304
|
+
:notification,
|
305
|
+
:subscriber)
|
306
|
+
include Aws::Structure
|
307
|
+
end
|
308
|
+
|
309
|
+
# Response of CreateSubscriber
|
310
|
+
class CreateSubscriberResponse < Aws::EmptyStructure; end
|
311
|
+
|
312
|
+
# Request of DeleteBudget
|
313
|
+
# @note When making an API call, pass DeleteBudgetRequest
|
314
|
+
# data as a hash:
|
315
|
+
#
|
316
|
+
# {
|
317
|
+
# account_id: "AccountId", # required
|
318
|
+
# budget_name: "BudgetName", # required
|
319
|
+
# }
|
320
|
+
# @!attribute [rw] account_id
|
321
|
+
# Account Id of the customer. It should be a 12 digit number.
|
322
|
+
# @return [String]
|
323
|
+
#
|
324
|
+
# @!attribute [rw] budget_name
|
325
|
+
# A string represents the budget name. No ":" character is allowed.
|
326
|
+
# @return [String]
|
327
|
+
class DeleteBudgetRequest < Struct.new(
|
328
|
+
:account_id,
|
329
|
+
:budget_name)
|
330
|
+
include Aws::Structure
|
331
|
+
end
|
332
|
+
|
333
|
+
# Response of DeleteBudget
|
334
|
+
class DeleteBudgetResponse < Aws::EmptyStructure; end
|
335
|
+
|
336
|
+
# Request of DeleteNotification
|
337
|
+
# @note When making an API call, pass DeleteNotificationRequest
|
338
|
+
# data as a hash:
|
339
|
+
#
|
340
|
+
# {
|
341
|
+
# account_id: "AccountId", # required
|
342
|
+
# budget_name: "BudgetName", # required
|
343
|
+
# notification: { # required
|
344
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
345
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
346
|
+
# threshold: 1.0, # required
|
347
|
+
# },
|
348
|
+
# }
|
349
|
+
# @!attribute [rw] account_id
|
350
|
+
# Account Id of the customer. It should be a 12 digit number.
|
351
|
+
# @return [String]
|
352
|
+
#
|
353
|
+
# @!attribute [rw] budget_name
|
354
|
+
# A string represents the budget name. No ":" character is allowed.
|
355
|
+
# @return [String]
|
356
|
+
#
|
357
|
+
# @!attribute [rw] notification
|
358
|
+
# Notification model. Each budget may contain multiple notifications
|
359
|
+
# with different settings.
|
360
|
+
# @return [Types::Notification]
|
361
|
+
class DeleteNotificationRequest < Struct.new(
|
362
|
+
:account_id,
|
363
|
+
:budget_name,
|
364
|
+
:notification)
|
365
|
+
include Aws::Structure
|
366
|
+
end
|
367
|
+
|
368
|
+
# Response of DeleteNotification
|
369
|
+
class DeleteNotificationResponse < Aws::EmptyStructure; end
|
370
|
+
|
371
|
+
# Request of DeleteSubscriber
|
372
|
+
# @note When making an API call, pass DeleteSubscriberRequest
|
373
|
+
# data as a hash:
|
374
|
+
#
|
375
|
+
# {
|
376
|
+
# account_id: "AccountId", # required
|
377
|
+
# budget_name: "BudgetName", # required
|
378
|
+
# notification: { # required
|
379
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
380
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
381
|
+
# threshold: 1.0, # required
|
382
|
+
# },
|
383
|
+
# subscriber: { # required
|
384
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
385
|
+
# address: "GenericString", # required
|
386
|
+
# },
|
387
|
+
# }
|
388
|
+
# @!attribute [rw] account_id
|
389
|
+
# Account Id of the customer. It should be a 12 digit number.
|
390
|
+
# @return [String]
|
391
|
+
#
|
392
|
+
# @!attribute [rw] budget_name
|
393
|
+
# A string represents the budget name. No ":" character is allowed.
|
394
|
+
# @return [String]
|
395
|
+
#
|
396
|
+
# @!attribute [rw] notification
|
397
|
+
# Notification model. Each budget may contain multiple notifications
|
398
|
+
# with different settings.
|
399
|
+
# @return [Types::Notification]
|
400
|
+
#
|
401
|
+
# @!attribute [rw] subscriber
|
402
|
+
# Subscriber model. Each notification may contain multiple subscribers
|
403
|
+
# with different addresses.
|
404
|
+
# @return [Types::Subscriber]
|
405
|
+
class DeleteSubscriberRequest < Struct.new(
|
406
|
+
:account_id,
|
407
|
+
:budget_name,
|
408
|
+
:notification,
|
409
|
+
:subscriber)
|
410
|
+
include Aws::Structure
|
411
|
+
end
|
412
|
+
|
413
|
+
# Response of DeleteSubscriber
|
414
|
+
class DeleteSubscriberResponse < Aws::EmptyStructure; end
|
415
|
+
|
416
|
+
# Request of DescribeBudget
|
417
|
+
# @note When making an API call, pass DescribeBudgetRequest
|
418
|
+
# data as a hash:
|
419
|
+
#
|
420
|
+
# {
|
421
|
+
# account_id: "AccountId", # required
|
422
|
+
# budget_name: "BudgetName", # required
|
423
|
+
# }
|
424
|
+
# @!attribute [rw] account_id
|
425
|
+
# Account Id of the customer. It should be a 12 digit number.
|
426
|
+
# @return [String]
|
427
|
+
#
|
428
|
+
# @!attribute [rw] budget_name
|
429
|
+
# A string represents the budget name. No ":" character is allowed.
|
430
|
+
# @return [String]
|
431
|
+
class DescribeBudgetRequest < Struct.new(
|
432
|
+
:account_id,
|
433
|
+
:budget_name)
|
434
|
+
include Aws::Structure
|
435
|
+
end
|
436
|
+
|
437
|
+
# Response of DescribeBudget
|
438
|
+
# @!attribute [rw] budget
|
439
|
+
# AWS Budget model
|
440
|
+
# @return [Types::Budget]
|
441
|
+
class DescribeBudgetResponse < Struct.new(
|
442
|
+
:budget)
|
443
|
+
include Aws::Structure
|
444
|
+
end
|
445
|
+
|
446
|
+
# Request of DescribeBudgets
|
447
|
+
# @note When making an API call, pass DescribeBudgetsRequest
|
448
|
+
# data as a hash:
|
449
|
+
#
|
450
|
+
# {
|
451
|
+
# account_id: "AccountId", # required
|
452
|
+
# max_results: 1,
|
453
|
+
# next_token: "GenericString",
|
454
|
+
# }
|
455
|
+
# @!attribute [rw] account_id
|
456
|
+
# Account Id of the customer. It should be a 12 digit number.
|
457
|
+
# @return [String]
|
458
|
+
#
|
459
|
+
# @!attribute [rw] max_results
|
460
|
+
# An integer to represent how many entries should a pagianted response
|
461
|
+
# contains. Maxium is set to 100.
|
462
|
+
# @return [Integer]
|
463
|
+
#
|
464
|
+
# @!attribute [rw] next_token
|
465
|
+
# A generic String.
|
466
|
+
# @return [String]
|
467
|
+
class DescribeBudgetsRequest < Struct.new(
|
468
|
+
:account_id,
|
469
|
+
:max_results,
|
470
|
+
:next_token)
|
471
|
+
include Aws::Structure
|
472
|
+
end
|
473
|
+
|
474
|
+
# Response of DescribeBudgets
|
475
|
+
# @!attribute [rw] budgets
|
476
|
+
# A list of budgets
|
477
|
+
# @return [Array<Types::Budget>]
|
478
|
+
#
|
479
|
+
# @!attribute [rw] next_token
|
480
|
+
# A generic String.
|
481
|
+
# @return [String]
|
482
|
+
class DescribeBudgetsResponse < Struct.new(
|
483
|
+
:budgets,
|
484
|
+
:next_token)
|
485
|
+
include Aws::Structure
|
486
|
+
end
|
487
|
+
|
488
|
+
# Request of DescribeNotificationsForBudget
|
489
|
+
# @note When making an API call, pass DescribeNotificationsForBudgetRequest
|
490
|
+
# data as a hash:
|
491
|
+
#
|
492
|
+
# {
|
493
|
+
# account_id: "AccountId", # required
|
494
|
+
# budget_name: "BudgetName", # required
|
495
|
+
# max_results: 1,
|
496
|
+
# next_token: "GenericString",
|
497
|
+
# }
|
498
|
+
# @!attribute [rw] account_id
|
499
|
+
# Account Id of the customer. It should be a 12 digit number.
|
500
|
+
# @return [String]
|
501
|
+
#
|
502
|
+
# @!attribute [rw] budget_name
|
503
|
+
# A string represents the budget name. No ":" character is allowed.
|
504
|
+
# @return [String]
|
505
|
+
#
|
506
|
+
# @!attribute [rw] max_results
|
507
|
+
# An integer to represent how many entries should a pagianted response
|
508
|
+
# contains. Maxium is set to 100.
|
509
|
+
# @return [Integer]
|
510
|
+
#
|
511
|
+
# @!attribute [rw] next_token
|
512
|
+
# A generic String.
|
513
|
+
# @return [String]
|
514
|
+
class DescribeNotificationsForBudgetRequest < Struct.new(
|
515
|
+
:account_id,
|
516
|
+
:budget_name,
|
517
|
+
:max_results,
|
518
|
+
:next_token)
|
519
|
+
include Aws::Structure
|
520
|
+
end
|
521
|
+
|
522
|
+
# Response of GetNotificationsForBudget
|
523
|
+
# @!attribute [rw] notifications
|
524
|
+
# A list of notifications.
|
525
|
+
# @return [Array<Types::Notification>]
|
526
|
+
#
|
527
|
+
# @!attribute [rw] next_token
|
528
|
+
# A generic String.
|
529
|
+
# @return [String]
|
530
|
+
class DescribeNotificationsForBudgetResponse < Struct.new(
|
531
|
+
:notifications,
|
532
|
+
:next_token)
|
533
|
+
include Aws::Structure
|
534
|
+
end
|
535
|
+
|
536
|
+
# Request of DescribeSubscribersForNotification
|
537
|
+
# @note When making an API call, pass DescribeSubscribersForNotificationRequest
|
538
|
+
# data as a hash:
|
539
|
+
#
|
540
|
+
# {
|
541
|
+
# account_id: "AccountId", # required
|
542
|
+
# budget_name: "BudgetName", # required
|
543
|
+
# notification: { # required
|
544
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
545
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
546
|
+
# threshold: 1.0, # required
|
547
|
+
# },
|
548
|
+
# max_results: 1,
|
549
|
+
# next_token: "GenericString",
|
550
|
+
# }
|
551
|
+
# @!attribute [rw] account_id
|
552
|
+
# Account Id of the customer. It should be a 12 digit number.
|
553
|
+
# @return [String]
|
554
|
+
#
|
555
|
+
# @!attribute [rw] budget_name
|
556
|
+
# A string represents the budget name. No ":" character is allowed.
|
557
|
+
# @return [String]
|
558
|
+
#
|
559
|
+
# @!attribute [rw] notification
|
560
|
+
# Notification model. Each budget may contain multiple notifications
|
561
|
+
# with different settings.
|
562
|
+
# @return [Types::Notification]
|
563
|
+
#
|
564
|
+
# @!attribute [rw] max_results
|
565
|
+
# An integer to represent how many entries should a pagianted response
|
566
|
+
# contains. Maxium is set to 100.
|
567
|
+
# @return [Integer]
|
568
|
+
#
|
569
|
+
# @!attribute [rw] next_token
|
570
|
+
# A generic String.
|
571
|
+
# @return [String]
|
572
|
+
class DescribeSubscribersForNotificationRequest < Struct.new(
|
573
|
+
:account_id,
|
574
|
+
:budget_name,
|
575
|
+
:notification,
|
576
|
+
:max_results,
|
577
|
+
:next_token)
|
578
|
+
include Aws::Structure
|
579
|
+
end
|
580
|
+
|
581
|
+
# Response of DescribeSubscribersForNotification
|
582
|
+
# @!attribute [rw] subscribers
|
583
|
+
# A list of subscribers.
|
584
|
+
# @return [Array<Types::Subscriber>]
|
585
|
+
#
|
586
|
+
# @!attribute [rw] next_token
|
587
|
+
# A generic String.
|
588
|
+
# @return [String]
|
589
|
+
class DescribeSubscribersForNotificationResponse < Struct.new(
|
590
|
+
:subscribers,
|
591
|
+
:next_token)
|
592
|
+
include Aws::Structure
|
593
|
+
end
|
594
|
+
|
595
|
+
# Notification model. Each budget may contain multiple notifications
|
596
|
+
# with different settings.
|
597
|
+
# @note When making an API call, pass Notification
|
598
|
+
# data as a hash:
|
599
|
+
#
|
600
|
+
# {
|
601
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
602
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
603
|
+
# threshold: 1.0, # required
|
604
|
+
# }
|
605
|
+
# @!attribute [rw] notification_type
|
606
|
+
# The type of a notification. It should be ACTUAL or FORECASTED.
|
607
|
+
# @return [String]
|
608
|
+
#
|
609
|
+
# @!attribute [rw] comparison_operator
|
610
|
+
# The comparison operator of a notification. Currently we support less
|
611
|
+
# than, equal to and greater than.
|
612
|
+
# @return [String]
|
613
|
+
#
|
614
|
+
# @!attribute [rw] threshold
|
615
|
+
# The threshold of the a notification. It should be a number between 0
|
616
|
+
# and 100.
|
617
|
+
# @return [Float]
|
618
|
+
class Notification < Struct.new(
|
619
|
+
:notification_type,
|
620
|
+
:comparison_operator,
|
621
|
+
:threshold)
|
622
|
+
include Aws::Structure
|
623
|
+
end
|
624
|
+
|
625
|
+
# A structure to relate notification and a list of subscribers who
|
626
|
+
# belong to the notification.
|
627
|
+
# @note When making an API call, pass NotificationWithSubscribers
|
628
|
+
# data as a hash:
|
629
|
+
#
|
630
|
+
# {
|
631
|
+
# notification: { # required
|
632
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
633
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
634
|
+
# threshold: 1.0, # required
|
635
|
+
# },
|
636
|
+
# subscribers: [ # required
|
637
|
+
# {
|
638
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
639
|
+
# address: "GenericString", # required
|
640
|
+
# },
|
641
|
+
# ],
|
642
|
+
# }
|
643
|
+
# @!attribute [rw] notification
|
644
|
+
# Notification model. Each budget may contain multiple notifications
|
645
|
+
# with different settings.
|
646
|
+
# @return [Types::Notification]
|
647
|
+
#
|
648
|
+
# @!attribute [rw] subscribers
|
649
|
+
# A list of subscribers.
|
650
|
+
# @return [Array<Types::Subscriber>]
|
651
|
+
class NotificationWithSubscribers < Struct.new(
|
652
|
+
:notification,
|
653
|
+
:subscribers)
|
654
|
+
include Aws::Structure
|
655
|
+
end
|
656
|
+
|
657
|
+
# A structure represent either a cost spend or usage spend. Contains an
|
658
|
+
# amount and a unit.
|
659
|
+
# @note When making an API call, pass Spend
|
660
|
+
# data as a hash:
|
661
|
+
#
|
662
|
+
# {
|
663
|
+
# amount: "NumericValue", # required
|
664
|
+
# unit: "GenericString", # required
|
665
|
+
# }
|
666
|
+
# @!attribute [rw] amount
|
667
|
+
# A string to represent NumericValue.
|
668
|
+
# @return [String]
|
669
|
+
#
|
670
|
+
# @!attribute [rw] unit
|
671
|
+
# A generic String.
|
672
|
+
# @return [String]
|
673
|
+
class Spend < Struct.new(
|
674
|
+
:amount,
|
675
|
+
:unit)
|
676
|
+
include Aws::Structure
|
677
|
+
end
|
678
|
+
|
679
|
+
# Subscriber model. Each notification may contain multiple subscribers
|
680
|
+
# with different addresses.
|
681
|
+
# @note When making an API call, pass Subscriber
|
682
|
+
# data as a hash:
|
683
|
+
#
|
684
|
+
# {
|
685
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
686
|
+
# address: "GenericString", # required
|
687
|
+
# }
|
688
|
+
# @!attribute [rw] subscription_type
|
689
|
+
# The subscription type of the subscriber. It can be SMS or EMAIL.
|
690
|
+
# @return [String]
|
691
|
+
#
|
692
|
+
# @!attribute [rw] address
|
693
|
+
# A generic String.
|
694
|
+
# @return [String]
|
695
|
+
class Subscriber < Struct.new(
|
696
|
+
:subscription_type,
|
697
|
+
:address)
|
698
|
+
include Aws::Structure
|
699
|
+
end
|
700
|
+
|
701
|
+
# A time period indicated the start date and end date of a budget.
|
702
|
+
# @note When making an API call, pass TimePeriod
|
703
|
+
# data as a hash:
|
704
|
+
#
|
705
|
+
# {
|
706
|
+
# start: Time.now, # required
|
707
|
+
# end: Time.now, # required
|
708
|
+
# }
|
709
|
+
# @!attribute [rw] start
|
710
|
+
# A generic timestamp. In Java it is transformed to a Date object.
|
711
|
+
# @return [Time]
|
712
|
+
#
|
713
|
+
# @!attribute [rw] end
|
714
|
+
# A generic timestamp. In Java it is transformed to a Date object.
|
715
|
+
# @return [Time]
|
716
|
+
class TimePeriod < Struct.new(
|
717
|
+
:start,
|
718
|
+
:end)
|
719
|
+
include Aws::Structure
|
720
|
+
end
|
721
|
+
|
722
|
+
# Request of UpdateBudget
|
723
|
+
# @note When making an API call, pass UpdateBudgetRequest
|
724
|
+
# data as a hash:
|
725
|
+
#
|
726
|
+
# {
|
727
|
+
# account_id: "AccountId", # required
|
728
|
+
# new_budget: { # required
|
729
|
+
# budget_name: "BudgetName", # required
|
730
|
+
# budget_limit: { # required
|
731
|
+
# amount: "NumericValue", # required
|
732
|
+
# unit: "GenericString", # required
|
733
|
+
# },
|
734
|
+
# cost_filters: {
|
735
|
+
# "GenericString" => ["GenericString"],
|
736
|
+
# },
|
737
|
+
# cost_types: { # required
|
738
|
+
# include_tax: false, # required
|
739
|
+
# include_subscription: false, # required
|
740
|
+
# use_blended: false, # required
|
741
|
+
# },
|
742
|
+
# time_unit: "MONTHLY", # required, accepts MONTHLY, QUARTERLY, ANNUALLY
|
743
|
+
# time_period: { # required
|
744
|
+
# start: Time.now, # required
|
745
|
+
# end: Time.now, # required
|
746
|
+
# },
|
747
|
+
# calculated_spend: {
|
748
|
+
# actual_spend: { # required
|
749
|
+
# amount: "NumericValue", # required
|
750
|
+
# unit: "GenericString", # required
|
751
|
+
# },
|
752
|
+
# forecasted_spend: {
|
753
|
+
# amount: "NumericValue", # required
|
754
|
+
# unit: "GenericString", # required
|
755
|
+
# },
|
756
|
+
# },
|
757
|
+
# budget_type: "USAGE", # required, accepts USAGE, COST
|
758
|
+
# },
|
759
|
+
# }
|
760
|
+
# @!attribute [rw] account_id
|
761
|
+
# Account Id of the customer. It should be a 12 digit number.
|
762
|
+
# @return [String]
|
763
|
+
#
|
764
|
+
# @!attribute [rw] new_budget
|
765
|
+
# AWS Budget model
|
766
|
+
# @return [Types::Budget]
|
767
|
+
class UpdateBudgetRequest < Struct.new(
|
768
|
+
:account_id,
|
769
|
+
:new_budget)
|
770
|
+
include Aws::Structure
|
771
|
+
end
|
772
|
+
|
773
|
+
# Response of UpdateBudget
|
774
|
+
class UpdateBudgetResponse < Aws::EmptyStructure; end
|
775
|
+
|
776
|
+
# Request of UpdateNotification
|
777
|
+
# @note When making an API call, pass UpdateNotificationRequest
|
778
|
+
# data as a hash:
|
779
|
+
#
|
780
|
+
# {
|
781
|
+
# account_id: "AccountId", # required
|
782
|
+
# budget_name: "BudgetName", # required
|
783
|
+
# old_notification: { # required
|
784
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
785
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
786
|
+
# threshold: 1.0, # required
|
787
|
+
# },
|
788
|
+
# new_notification: { # required
|
789
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
790
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
791
|
+
# threshold: 1.0, # required
|
792
|
+
# },
|
793
|
+
# }
|
794
|
+
# @!attribute [rw] account_id
|
795
|
+
# Account Id of the customer. It should be a 12 digit number.
|
796
|
+
# @return [String]
|
797
|
+
#
|
798
|
+
# @!attribute [rw] budget_name
|
799
|
+
# A string represents the budget name. No ":" character is allowed.
|
800
|
+
# @return [String]
|
801
|
+
#
|
802
|
+
# @!attribute [rw] old_notification
|
803
|
+
# Notification model. Each budget may contain multiple notifications
|
804
|
+
# with different settings.
|
805
|
+
# @return [Types::Notification]
|
806
|
+
#
|
807
|
+
# @!attribute [rw] new_notification
|
808
|
+
# Notification model. Each budget may contain multiple notifications
|
809
|
+
# with different settings.
|
810
|
+
# @return [Types::Notification]
|
811
|
+
class UpdateNotificationRequest < Struct.new(
|
812
|
+
:account_id,
|
813
|
+
:budget_name,
|
814
|
+
:old_notification,
|
815
|
+
:new_notification)
|
816
|
+
include Aws::Structure
|
817
|
+
end
|
818
|
+
|
819
|
+
# Response of UpdateNotification
|
820
|
+
class UpdateNotificationResponse < Aws::EmptyStructure; end
|
821
|
+
|
822
|
+
# Request of UpdateSubscriber
|
823
|
+
# @note When making an API call, pass UpdateSubscriberRequest
|
824
|
+
# data as a hash:
|
825
|
+
#
|
826
|
+
# {
|
827
|
+
# account_id: "AccountId", # required
|
828
|
+
# budget_name: "BudgetName", # required
|
829
|
+
# notification: { # required
|
830
|
+
# notification_type: "ACTUAL", # required, accepts ACTUAL, FORECASTED
|
831
|
+
# comparison_operator: "GREATER_THAN", # required, accepts GREATER_THAN, LESS_THAN, EQUAL_TO
|
832
|
+
# threshold: 1.0, # required
|
833
|
+
# },
|
834
|
+
# old_subscriber: { # required
|
835
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
836
|
+
# address: "GenericString", # required
|
837
|
+
# },
|
838
|
+
# new_subscriber: { # required
|
839
|
+
# subscription_type: "SNS", # required, accepts SNS, EMAIL
|
840
|
+
# address: "GenericString", # required
|
841
|
+
# },
|
842
|
+
# }
|
843
|
+
# @!attribute [rw] account_id
|
844
|
+
# Account Id of the customer. It should be a 12 digit number.
|
845
|
+
# @return [String]
|
846
|
+
#
|
847
|
+
# @!attribute [rw] budget_name
|
848
|
+
# A string represents the budget name. No ":" character is allowed.
|
849
|
+
# @return [String]
|
850
|
+
#
|
851
|
+
# @!attribute [rw] notification
|
852
|
+
# Notification model. Each budget may contain multiple notifications
|
853
|
+
# with different settings.
|
854
|
+
# @return [Types::Notification]
|
855
|
+
#
|
856
|
+
# @!attribute [rw] old_subscriber
|
857
|
+
# Subscriber model. Each notification may contain multiple subscribers
|
858
|
+
# with different addresses.
|
859
|
+
# @return [Types::Subscriber]
|
860
|
+
#
|
861
|
+
# @!attribute [rw] new_subscriber
|
862
|
+
# Subscriber model. Each notification may contain multiple subscribers
|
863
|
+
# with different addresses.
|
864
|
+
# @return [Types::Subscriber]
|
865
|
+
class UpdateSubscriberRequest < Struct.new(
|
866
|
+
:account_id,
|
867
|
+
:budget_name,
|
868
|
+
:notification,
|
869
|
+
:old_subscriber,
|
870
|
+
:new_subscriber)
|
871
|
+
include Aws::Structure
|
872
|
+
end
|
873
|
+
|
874
|
+
# Response of UpdateSubscriber
|
875
|
+
class UpdateSubscriberResponse < Aws::EmptyStructure; end
|
876
|
+
|
877
|
+
end
|
878
|
+
end
|
879
|
+
end
|