aws-sdk-costexplorer 1.33.0 → 1.34.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/aws-sdk-costexplorer.rb +1 -1
- data/lib/aws-sdk-costexplorer/client.rb +361 -8
- data/lib/aws-sdk-costexplorer/client_api.rb +146 -0
- data/lib/aws-sdk-costexplorer/errors.rb +32 -0
- data/lib/aws-sdk-costexplorer/types.rb +570 -7
- metadata +2 -2
@@ -14,11 +14,21 @@ module Aws::CostExplorer
|
|
14
14
|
AccountScope = Shapes::StringShape.new(name: 'AccountScope')
|
15
15
|
AmortizedRecurringFee = Shapes::StringShape.new(name: 'AmortizedRecurringFee')
|
16
16
|
AmortizedUpfrontFee = Shapes::StringShape.new(name: 'AmortizedUpfrontFee')
|
17
|
+
Arn = Shapes::StringShape.new(name: 'Arn')
|
17
18
|
AttributeType = Shapes::StringShape.new(name: 'AttributeType')
|
18
19
|
AttributeValue = Shapes::StringShape.new(name: 'AttributeValue')
|
19
20
|
Attributes = Shapes::MapShape.new(name: 'Attributes')
|
20
21
|
BillExpirationException = Shapes::StructureShape.new(name: 'BillExpirationException')
|
21
22
|
Context = Shapes::StringShape.new(name: 'Context')
|
23
|
+
CostCategory = Shapes::StructureShape.new(name: 'CostCategory')
|
24
|
+
CostCategoryName = Shapes::StringShape.new(name: 'CostCategoryName')
|
25
|
+
CostCategoryReference = Shapes::StructureShape.new(name: 'CostCategoryReference')
|
26
|
+
CostCategoryReferencesList = Shapes::ListShape.new(name: 'CostCategoryReferencesList')
|
27
|
+
CostCategoryRule = Shapes::StructureShape.new(name: 'CostCategoryRule')
|
28
|
+
CostCategoryRuleVersion = Shapes::StringShape.new(name: 'CostCategoryRuleVersion')
|
29
|
+
CostCategoryRulesList = Shapes::ListShape.new(name: 'CostCategoryRulesList')
|
30
|
+
CostCategoryValue = Shapes::StringShape.new(name: 'CostCategoryValue')
|
31
|
+
CostCategoryValues = Shapes::StructureShape.new(name: 'CostCategoryValues')
|
22
32
|
Coverage = Shapes::StructureShape.new(name: 'Coverage')
|
23
33
|
CoverageByTime = Shapes::StructureShape.new(name: 'CoverageByTime')
|
24
34
|
CoverageCost = Shapes::StructureShape.new(name: 'CoverageCost')
|
@@ -27,9 +37,15 @@ module Aws::CostExplorer
|
|
27
37
|
CoverageNormalizedUnits = Shapes::StructureShape.new(name: 'CoverageNormalizedUnits')
|
28
38
|
CoverageNormalizedUnitsPercentage = Shapes::StringShape.new(name: 'CoverageNormalizedUnitsPercentage')
|
29
39
|
CoveragesByTime = Shapes::ListShape.new(name: 'CoveragesByTime')
|
40
|
+
CreateCostCategoryDefinitionRequest = Shapes::StructureShape.new(name: 'CreateCostCategoryDefinitionRequest')
|
41
|
+
CreateCostCategoryDefinitionResponse = Shapes::StructureShape.new(name: 'CreateCostCategoryDefinitionResponse')
|
30
42
|
CurrentInstance = Shapes::StructureShape.new(name: 'CurrentInstance')
|
31
43
|
DataUnavailableException = Shapes::StructureShape.new(name: 'DataUnavailableException')
|
32
44
|
DateInterval = Shapes::StructureShape.new(name: 'DateInterval')
|
45
|
+
DeleteCostCategoryDefinitionRequest = Shapes::StructureShape.new(name: 'DeleteCostCategoryDefinitionRequest')
|
46
|
+
DeleteCostCategoryDefinitionResponse = Shapes::StructureShape.new(name: 'DeleteCostCategoryDefinitionResponse')
|
47
|
+
DescribeCostCategoryDefinitionRequest = Shapes::StructureShape.new(name: 'DescribeCostCategoryDefinitionRequest')
|
48
|
+
DescribeCostCategoryDefinitionResponse = Shapes::StructureShape.new(name: 'DescribeCostCategoryDefinitionResponse')
|
33
49
|
Dimension = Shapes::StringShape.new(name: 'Dimension')
|
34
50
|
DimensionValues = Shapes::StructureShape.new(name: 'DimensionValues')
|
35
51
|
DimensionValuesWithAttributes = Shapes::StructureShape.new(name: 'DimensionValuesWithAttributes')
|
@@ -89,6 +105,8 @@ module Aws::CostExplorer
|
|
89
105
|
Key = Shapes::StringShape.new(name: 'Key')
|
90
106
|
Keys = Shapes::ListShape.new(name: 'Keys')
|
91
107
|
LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
|
108
|
+
ListCostCategoryDefinitionsRequest = Shapes::StructureShape.new(name: 'ListCostCategoryDefinitionsRequest')
|
109
|
+
ListCostCategoryDefinitionsResponse = Shapes::StructureShape.new(name: 'ListCostCategoryDefinitionsResponse')
|
92
110
|
LookbackPeriodInDays = Shapes::StringShape.new(name: 'LookbackPeriodInDays')
|
93
111
|
MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
|
94
112
|
Metric = Shapes::StringShape.new(name: 'Metric')
|
@@ -131,6 +149,7 @@ module Aws::CostExplorer
|
|
131
149
|
ReservedHours = Shapes::StringShape.new(name: 'ReservedHours')
|
132
150
|
ReservedNormalizedUnits = Shapes::StringShape.new(name: 'ReservedNormalizedUnits')
|
133
151
|
ResourceDetails = Shapes::StructureShape.new(name: 'ResourceDetails')
|
152
|
+
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
134
153
|
ResourceUtilization = Shapes::StructureShape.new(name: 'ResourceUtilization')
|
135
154
|
ResultByTime = Shapes::StructureShape.new(name: 'ResultByTime')
|
136
155
|
ResultsByTime = Shapes::ListShape.new(name: 'ResultsByTime')
|
@@ -158,6 +177,7 @@ module Aws::CostExplorer
|
|
158
177
|
SavingsPlansUtilizationDetails = Shapes::ListShape.new(name: 'SavingsPlansUtilizationDetails')
|
159
178
|
SavingsPlansUtilizationsByTime = Shapes::ListShape.new(name: 'SavingsPlansUtilizationsByTime')
|
160
179
|
SearchString = Shapes::StringShape.new(name: 'SearchString')
|
180
|
+
ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
|
161
181
|
ServiceSpecification = Shapes::StructureShape.new(name: 'ServiceSpecification')
|
162
182
|
SupportedSavingsPlansType = Shapes::StringShape.new(name: 'SupportedSavingsPlansType')
|
163
183
|
TagKey = Shapes::StringShape.new(name: 'TagKey')
|
@@ -177,6 +197,8 @@ module Aws::CostExplorer
|
|
177
197
|
UnresolvableUsageUnitException = Shapes::StructureShape.new(name: 'UnresolvableUsageUnitException')
|
178
198
|
UnusedHours = Shapes::StringShape.new(name: 'UnusedHours')
|
179
199
|
UnusedUnits = Shapes::StringShape.new(name: 'UnusedUnits')
|
200
|
+
UpdateCostCategoryDefinitionRequest = Shapes::StructureShape.new(name: 'UpdateCostCategoryDefinitionRequest')
|
201
|
+
UpdateCostCategoryDefinitionResponse = Shapes::StructureShape.new(name: 'UpdateCostCategoryDefinitionResponse')
|
180
202
|
UtilizationByTime = Shapes::StructureShape.new(name: 'UtilizationByTime')
|
181
203
|
UtilizationPercentage = Shapes::StringShape.new(name: 'UtilizationPercentage')
|
182
204
|
UtilizationPercentageInUnits = Shapes::StringShape.new(name: 'UtilizationPercentageInUnits')
|
@@ -184,6 +206,7 @@ module Aws::CostExplorer
|
|
184
206
|
Value = Shapes::StringShape.new(name: 'Value')
|
185
207
|
Values = Shapes::ListShape.new(name: 'Values')
|
186
208
|
YearMonthDay = Shapes::StringShape.new(name: 'YearMonthDay')
|
209
|
+
ZonedDateTime = Shapes::StringShape.new(name: 'ZonedDateTime')
|
187
210
|
|
188
211
|
Attributes.key = Shapes::ShapeRef.new(shape: AttributeType)
|
189
212
|
Attributes.value = Shapes::ShapeRef.new(shape: AttributeValue)
|
@@ -191,6 +214,32 @@ module Aws::CostExplorer
|
|
191
214
|
BillExpirationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
192
215
|
BillExpirationException.struct_class = Types::BillExpirationException
|
193
216
|
|
217
|
+
CostCategory.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CostCategoryArn"))
|
218
|
+
CostCategory.add_member(:effective_start, Shapes::ShapeRef.new(shape: ZonedDateTime, required: true, location_name: "EffectiveStart"))
|
219
|
+
CostCategory.add_member(:effective_end, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveEnd"))
|
220
|
+
CostCategory.add_member(:name, Shapes::ShapeRef.new(shape: CostCategoryName, required: true, location_name: "Name"))
|
221
|
+
CostCategory.add_member(:rule_version, Shapes::ShapeRef.new(shape: CostCategoryRuleVersion, required: true, location_name: "RuleVersion"))
|
222
|
+
CostCategory.add_member(:rules, Shapes::ShapeRef.new(shape: CostCategoryRulesList, required: true, location_name: "Rules"))
|
223
|
+
CostCategory.struct_class = Types::CostCategory
|
224
|
+
|
225
|
+
CostCategoryReference.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CostCategoryArn"))
|
226
|
+
CostCategoryReference.add_member(:name, Shapes::ShapeRef.new(shape: CostCategoryName, location_name: "Name"))
|
227
|
+
CostCategoryReference.add_member(:effective_start, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveStart"))
|
228
|
+
CostCategoryReference.add_member(:effective_end, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveEnd"))
|
229
|
+
CostCategoryReference.struct_class = Types::CostCategoryReference
|
230
|
+
|
231
|
+
CostCategoryReferencesList.member = Shapes::ShapeRef.new(shape: CostCategoryReference)
|
232
|
+
|
233
|
+
CostCategoryRule.add_member(:value, Shapes::ShapeRef.new(shape: CostCategoryValue, required: true, location_name: "Value"))
|
234
|
+
CostCategoryRule.add_member(:rule, Shapes::ShapeRef.new(shape: Expression, required: true, location_name: "Rule"))
|
235
|
+
CostCategoryRule.struct_class = Types::CostCategoryRule
|
236
|
+
|
237
|
+
CostCategoryRulesList.member = Shapes::ShapeRef.new(shape: CostCategoryRule)
|
238
|
+
|
239
|
+
CostCategoryValues.add_member(:key, Shapes::ShapeRef.new(shape: CostCategoryName, location_name: "Key"))
|
240
|
+
CostCategoryValues.add_member(:values, Shapes::ShapeRef.new(shape: Values, location_name: "Values"))
|
241
|
+
CostCategoryValues.struct_class = Types::CostCategoryValues
|
242
|
+
|
194
243
|
Coverage.add_member(:coverage_hours, Shapes::ShapeRef.new(shape: CoverageHours, location_name: "CoverageHours"))
|
195
244
|
Coverage.add_member(:coverage_normalized_units, Shapes::ShapeRef.new(shape: CoverageNormalizedUnits, location_name: "CoverageNormalizedUnits"))
|
196
245
|
Coverage.add_member(:coverage_cost, Shapes::ShapeRef.new(shape: CoverageCost, location_name: "CoverageCost"))
|
@@ -218,6 +267,15 @@ module Aws::CostExplorer
|
|
218
267
|
|
219
268
|
CoveragesByTime.member = Shapes::ShapeRef.new(shape: CoverageByTime)
|
220
269
|
|
270
|
+
CreateCostCategoryDefinitionRequest.add_member(:name, Shapes::ShapeRef.new(shape: CostCategoryName, required: true, location_name: "Name"))
|
271
|
+
CreateCostCategoryDefinitionRequest.add_member(:rule_version, Shapes::ShapeRef.new(shape: CostCategoryRuleVersion, required: true, location_name: "RuleVersion"))
|
272
|
+
CreateCostCategoryDefinitionRequest.add_member(:rules, Shapes::ShapeRef.new(shape: CostCategoryRulesList, required: true, location_name: "Rules"))
|
273
|
+
CreateCostCategoryDefinitionRequest.struct_class = Types::CreateCostCategoryDefinitionRequest
|
274
|
+
|
275
|
+
CreateCostCategoryDefinitionResponse.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CostCategoryArn"))
|
276
|
+
CreateCostCategoryDefinitionResponse.add_member(:effective_start, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveStart"))
|
277
|
+
CreateCostCategoryDefinitionResponse.struct_class = Types::CreateCostCategoryDefinitionResponse
|
278
|
+
|
221
279
|
CurrentInstance.add_member(:resource_id, Shapes::ShapeRef.new(shape: GenericString, location_name: "ResourceId"))
|
222
280
|
CurrentInstance.add_member(:tags, Shapes::ShapeRef.new(shape: TagValuesList, location_name: "Tags"))
|
223
281
|
CurrentInstance.add_member(:resource_details, Shapes::ShapeRef.new(shape: ResourceDetails, location_name: "ResourceDetails"))
|
@@ -237,6 +295,20 @@ module Aws::CostExplorer
|
|
237
295
|
DateInterval.add_member(:end, Shapes::ShapeRef.new(shape: YearMonthDay, required: true, location_name: "End"))
|
238
296
|
DateInterval.struct_class = Types::DateInterval
|
239
297
|
|
298
|
+
DeleteCostCategoryDefinitionRequest.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CostCategoryArn"))
|
299
|
+
DeleteCostCategoryDefinitionRequest.struct_class = Types::DeleteCostCategoryDefinitionRequest
|
300
|
+
|
301
|
+
DeleteCostCategoryDefinitionResponse.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CostCategoryArn"))
|
302
|
+
DeleteCostCategoryDefinitionResponse.add_member(:effective_end, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveEnd"))
|
303
|
+
DeleteCostCategoryDefinitionResponse.struct_class = Types::DeleteCostCategoryDefinitionResponse
|
304
|
+
|
305
|
+
DescribeCostCategoryDefinitionRequest.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CostCategoryArn"))
|
306
|
+
DescribeCostCategoryDefinitionRequest.add_member(:effective_on, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveOn"))
|
307
|
+
DescribeCostCategoryDefinitionRequest.struct_class = Types::DescribeCostCategoryDefinitionRequest
|
308
|
+
|
309
|
+
DescribeCostCategoryDefinitionResponse.add_member(:cost_category, Shapes::ShapeRef.new(shape: CostCategory, location_name: "CostCategory"))
|
310
|
+
DescribeCostCategoryDefinitionResponse.struct_class = Types::DescribeCostCategoryDefinitionResponse
|
311
|
+
|
240
312
|
DimensionValues.add_member(:key, Shapes::ShapeRef.new(shape: Dimension, location_name: "Key"))
|
241
313
|
DimensionValues.add_member(:values, Shapes::ShapeRef.new(shape: Values, location_name: "Values"))
|
242
314
|
DimensionValues.struct_class = Types::DimensionValues
|
@@ -296,6 +368,7 @@ module Aws::CostExplorer
|
|
296
368
|
Expression.add_member(:not, Shapes::ShapeRef.new(shape: Expression, location_name: "Not"))
|
297
369
|
Expression.add_member(:dimensions, Shapes::ShapeRef.new(shape: DimensionValues, location_name: "Dimensions"))
|
298
370
|
Expression.add_member(:tags, Shapes::ShapeRef.new(shape: TagValues, location_name: "Tags"))
|
371
|
+
Expression.add_member(:cost_categories, Shapes::ShapeRef.new(shape: CostCategoryValues, location_name: "CostCategories"))
|
299
372
|
Expression.struct_class = Types::Expression
|
300
373
|
|
301
374
|
Expressions.member = Shapes::ShapeRef.new(shape: Expression)
|
@@ -508,6 +581,14 @@ module Aws::CostExplorer
|
|
508
581
|
LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
509
582
|
LimitExceededException.struct_class = Types::LimitExceededException
|
510
583
|
|
584
|
+
ListCostCategoryDefinitionsRequest.add_member(:effective_on, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveOn"))
|
585
|
+
ListCostCategoryDefinitionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextPageToken, location_name: "NextToken"))
|
586
|
+
ListCostCategoryDefinitionsRequest.struct_class = Types::ListCostCategoryDefinitionsRequest
|
587
|
+
|
588
|
+
ListCostCategoryDefinitionsResponse.add_member(:cost_category_references, Shapes::ShapeRef.new(shape: CostCategoryReferencesList, location_name: "CostCategoryReferences"))
|
589
|
+
ListCostCategoryDefinitionsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextPageToken, location_name: "NextToken"))
|
590
|
+
ListCostCategoryDefinitionsResponse.struct_class = Types::ListCostCategoryDefinitionsResponse
|
591
|
+
|
511
592
|
MetricNames.member = Shapes::ShapeRef.new(shape: MetricName)
|
512
593
|
|
513
594
|
MetricValue.add_member(:amount, Shapes::ShapeRef.new(shape: MetricAmount, location_name: "Amount"))
|
@@ -617,6 +698,9 @@ module Aws::CostExplorer
|
|
617
698
|
ResourceDetails.add_member(:ec2_resource_details, Shapes::ShapeRef.new(shape: EC2ResourceDetails, location_name: "EC2ResourceDetails"))
|
618
699
|
ResourceDetails.struct_class = Types::ResourceDetails
|
619
700
|
|
701
|
+
ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
702
|
+
ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
|
703
|
+
|
620
704
|
ResourceUtilization.add_member(:ec2_resource_utilization, Shapes::ShapeRef.new(shape: EC2ResourceUtilization, location_name: "EC2ResourceUtilization"))
|
621
705
|
ResourceUtilization.struct_class = Types::ResourceUtilization
|
622
706
|
|
@@ -748,6 +832,9 @@ module Aws::CostExplorer
|
|
748
832
|
|
749
833
|
SavingsPlansUtilizationsByTime.member = Shapes::ShapeRef.new(shape: SavingsPlansUtilizationByTime)
|
750
834
|
|
835
|
+
ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
836
|
+
ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
|
837
|
+
|
751
838
|
ServiceSpecification.add_member(:ec2_specification, Shapes::ShapeRef.new(shape: EC2Specification, location_name: "EC2Specification"))
|
752
839
|
ServiceSpecification.struct_class = Types::ServiceSpecification
|
753
840
|
|
@@ -776,6 +863,15 @@ module Aws::CostExplorer
|
|
776
863
|
UnresolvableUsageUnitException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
|
777
864
|
UnresolvableUsageUnitException.struct_class = Types::UnresolvableUsageUnitException
|
778
865
|
|
866
|
+
UpdateCostCategoryDefinitionRequest.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "CostCategoryArn"))
|
867
|
+
UpdateCostCategoryDefinitionRequest.add_member(:rule_version, Shapes::ShapeRef.new(shape: CostCategoryRuleVersion, required: true, location_name: "RuleVersion"))
|
868
|
+
UpdateCostCategoryDefinitionRequest.add_member(:rules, Shapes::ShapeRef.new(shape: CostCategoryRulesList, required: true, location_name: "Rules"))
|
869
|
+
UpdateCostCategoryDefinitionRequest.struct_class = Types::UpdateCostCategoryDefinitionRequest
|
870
|
+
|
871
|
+
UpdateCostCategoryDefinitionResponse.add_member(:cost_category_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "CostCategoryArn"))
|
872
|
+
UpdateCostCategoryDefinitionResponse.add_member(:effective_start, Shapes::ShapeRef.new(shape: ZonedDateTime, location_name: "EffectiveStart"))
|
873
|
+
UpdateCostCategoryDefinitionResponse.struct_class = Types::UpdateCostCategoryDefinitionResponse
|
874
|
+
|
779
875
|
UtilizationByTime.add_member(:time_period, Shapes::ShapeRef.new(shape: DateInterval, location_name: "TimePeriod"))
|
780
876
|
UtilizationByTime.add_member(:groups, Shapes::ShapeRef.new(shape: ReservationUtilizationGroups, location_name: "Groups"))
|
781
877
|
UtilizationByTime.add_member(:total, Shapes::ShapeRef.new(shape: ReservationAggregates, location_name: "Total"))
|
@@ -805,6 +901,36 @@ module Aws::CostExplorer
|
|
805
901
|
"uid" => "ce-2017-10-25",
|
806
902
|
}
|
807
903
|
|
904
|
+
api.add_operation(:create_cost_category_definition, Seahorse::Model::Operation.new.tap do |o|
|
905
|
+
o.name = "CreateCostCategoryDefinition"
|
906
|
+
o.http_method = "POST"
|
907
|
+
o.http_request_uri = "/"
|
908
|
+
o.input = Shapes::ShapeRef.new(shape: CreateCostCategoryDefinitionRequest)
|
909
|
+
o.output = Shapes::ShapeRef.new(shape: CreateCostCategoryDefinitionResponse)
|
910
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
911
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
912
|
+
end)
|
913
|
+
|
914
|
+
api.add_operation(:delete_cost_category_definition, Seahorse::Model::Operation.new.tap do |o|
|
915
|
+
o.name = "DeleteCostCategoryDefinition"
|
916
|
+
o.http_method = "POST"
|
917
|
+
o.http_request_uri = "/"
|
918
|
+
o.input = Shapes::ShapeRef.new(shape: DeleteCostCategoryDefinitionRequest)
|
919
|
+
o.output = Shapes::ShapeRef.new(shape: DeleteCostCategoryDefinitionResponse)
|
920
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
921
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
922
|
+
end)
|
923
|
+
|
924
|
+
api.add_operation(:describe_cost_category_definition, Seahorse::Model::Operation.new.tap do |o|
|
925
|
+
o.name = "DescribeCostCategoryDefinition"
|
926
|
+
o.http_method = "POST"
|
927
|
+
o.http_request_uri = "/"
|
928
|
+
o.input = Shapes::ShapeRef.new(shape: DescribeCostCategoryDefinitionRequest)
|
929
|
+
o.output = Shapes::ShapeRef.new(shape: DescribeCostCategoryDefinitionResponse)
|
930
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
931
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
932
|
+
end)
|
933
|
+
|
808
934
|
api.add_operation(:get_cost_and_usage, Seahorse::Model::Operation.new.tap do |o|
|
809
935
|
o.name = "GetCostAndUsage"
|
810
936
|
o.http_method = "POST"
|
@@ -974,6 +1100,26 @@ module Aws::CostExplorer
|
|
974
1100
|
o.errors << Shapes::ShapeRef.new(shape: DataUnavailableException)
|
975
1101
|
o.errors << Shapes::ShapeRef.new(shape: UnresolvableUsageUnitException)
|
976
1102
|
end)
|
1103
|
+
|
1104
|
+
api.add_operation(:list_cost_category_definitions, Seahorse::Model::Operation.new.tap do |o|
|
1105
|
+
o.name = "ListCostCategoryDefinitions"
|
1106
|
+
o.http_method = "POST"
|
1107
|
+
o.http_request_uri = "/"
|
1108
|
+
o.input = Shapes::ShapeRef.new(shape: ListCostCategoryDefinitionsRequest)
|
1109
|
+
o.output = Shapes::ShapeRef.new(shape: ListCostCategoryDefinitionsResponse)
|
1110
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
1111
|
+
end)
|
1112
|
+
|
1113
|
+
api.add_operation(:update_cost_category_definition, Seahorse::Model::Operation.new.tap do |o|
|
1114
|
+
o.name = "UpdateCostCategoryDefinition"
|
1115
|
+
o.http_method = "POST"
|
1116
|
+
o.http_request_uri = "/"
|
1117
|
+
o.input = Shapes::ShapeRef.new(shape: UpdateCostCategoryDefinitionRequest)
|
1118
|
+
o.output = Shapes::ShapeRef.new(shape: UpdateCostCategoryDefinitionResponse)
|
1119
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
1120
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
|
1121
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
1122
|
+
end)
|
977
1123
|
end
|
978
1124
|
|
979
1125
|
end
|
@@ -90,6 +90,38 @@ module Aws::CostExplorer
|
|
90
90
|
|
91
91
|
end
|
92
92
|
|
93
|
+
class ResourceNotFoundException < ServiceError
|
94
|
+
|
95
|
+
# @param [Seahorse::Client::RequestContext] context
|
96
|
+
# @param [String] message
|
97
|
+
# @param [Aws::CostExplorer::Types::ResourceNotFoundException] data
|
98
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
99
|
+
super(context, message, data)
|
100
|
+
end
|
101
|
+
|
102
|
+
# @return [String]
|
103
|
+
def message
|
104
|
+
@message || @data[:message]
|
105
|
+
end
|
106
|
+
|
107
|
+
end
|
108
|
+
|
109
|
+
class ServiceQuotaExceededException < ServiceError
|
110
|
+
|
111
|
+
# @param [Seahorse::Client::RequestContext] context
|
112
|
+
# @param [String] message
|
113
|
+
# @param [Aws::CostExplorer::Types::ServiceQuotaExceededException] data
|
114
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
115
|
+
super(context, message, data)
|
116
|
+
end
|
117
|
+
|
118
|
+
# @return [String]
|
119
|
+
def message
|
120
|
+
@message || @data[:message]
|
121
|
+
end
|
122
|
+
|
123
|
+
end
|
124
|
+
|
93
125
|
class UnresolvableUsageUnitException < ServiceError
|
94
126
|
|
95
127
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -20,6 +20,193 @@ module Aws::CostExplorer
|
|
20
20
|
include Aws::Structure
|
21
21
|
end
|
22
22
|
|
23
|
+
# <i> <b>Cost Category is in preview release for AWS Billing and Cost
|
24
|
+
# Management and is subject to change. Your use of Cost Categories is
|
25
|
+
# subject to the Beta Service Participation terms of the <a
|
26
|
+
# href="https://aws.amazon.com/service-terms/">AWS Service Terms</a>
|
27
|
+
# (Section 1.10).</b> </i>
|
28
|
+
#
|
29
|
+
# The structure of Cost Categories. This includes detailed metadata and
|
30
|
+
# the set of rules for the `CostCategory` object.
|
31
|
+
#
|
32
|
+
# @!attribute [rw] cost_category_arn
|
33
|
+
# The unique identifier for your Cost Category.
|
34
|
+
# @return [String]
|
35
|
+
#
|
36
|
+
# @!attribute [rw] effective_start
|
37
|
+
# The Cost Category's effective start date.
|
38
|
+
# @return [String]
|
39
|
+
#
|
40
|
+
# @!attribute [rw] effective_end
|
41
|
+
# The Cost Category's effective end date.
|
42
|
+
# @return [String]
|
43
|
+
#
|
44
|
+
# @!attribute [rw] name
|
45
|
+
# The unique name of the Cost Category.
|
46
|
+
# @return [String]
|
47
|
+
#
|
48
|
+
# @!attribute [rw] rule_version
|
49
|
+
# The rule schema version in this particular Cost Category.
|
50
|
+
# @return [String]
|
51
|
+
#
|
52
|
+
# @!attribute [rw] rules
|
53
|
+
# Rules are processed in order. If there are multiple rules that match
|
54
|
+
# the line item, then the first rule to match is used to determine
|
55
|
+
# that Cost Category value.
|
56
|
+
# @return [Array<Types::CostCategoryRule>]
|
57
|
+
#
|
58
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CostCategory AWS API Documentation
|
59
|
+
#
|
60
|
+
class CostCategory < Struct.new(
|
61
|
+
:cost_category_arn,
|
62
|
+
:effective_start,
|
63
|
+
:effective_end,
|
64
|
+
:name,
|
65
|
+
:rule_version,
|
66
|
+
:rules)
|
67
|
+
include Aws::Structure
|
68
|
+
end
|
69
|
+
|
70
|
+
# <i> <b>Cost Category is in preview release for AWS Billing and Cost
|
71
|
+
# Management and is subject to change. Your use of Cost Categories is
|
72
|
+
# subject to the Beta Service Participation terms of the <a
|
73
|
+
# href="https://aws.amazon.com/service-terms/">AWS Service Terms</a>
|
74
|
+
# (Section 1.10).</b> </i>
|
75
|
+
#
|
76
|
+
# A reference to a Cost Category containing only enough information to
|
77
|
+
# identify the Cost Category.
|
78
|
+
#
|
79
|
+
# You can use this information to retrieve the full Cost Category
|
80
|
+
# information using `DescribeCostCategory`.
|
81
|
+
#
|
82
|
+
# @!attribute [rw] cost_category_arn
|
83
|
+
# The unique identifier for your Cost Category Reference.
|
84
|
+
# @return [String]
|
85
|
+
#
|
86
|
+
# @!attribute [rw] name
|
87
|
+
# The unique name of the Cost Category.
|
88
|
+
# @return [String]
|
89
|
+
#
|
90
|
+
# @!attribute [rw] effective_start
|
91
|
+
# The Cost Category's effective start date.
|
92
|
+
# @return [String]
|
93
|
+
#
|
94
|
+
# @!attribute [rw] effective_end
|
95
|
+
# The Cost Category's effective end date.
|
96
|
+
# @return [String]
|
97
|
+
#
|
98
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CostCategoryReference AWS API Documentation
|
99
|
+
#
|
100
|
+
class CostCategoryReference < Struct.new(
|
101
|
+
:cost_category_arn,
|
102
|
+
:name,
|
103
|
+
:effective_start,
|
104
|
+
:effective_end)
|
105
|
+
include Aws::Structure
|
106
|
+
end
|
107
|
+
|
108
|
+
# <i> <b>Cost Category is in preview release for AWS Billing and Cost
|
109
|
+
# Management and is subject to change. Your use of Cost Categories is
|
110
|
+
# subject to the Beta Service Participation terms of the <a
|
111
|
+
# href="https://aws.amazon.com/service-terms/">AWS Service Terms</a>
|
112
|
+
# (Section 1.10).</b> </i>
|
113
|
+
#
|
114
|
+
# Rules are processed in order. If there are multiple rules that match
|
115
|
+
# the line item, then the first rule to match is used to determine that
|
116
|
+
# Cost Category value.
|
117
|
+
#
|
118
|
+
# @note When making an API call, you may pass CostCategoryRule
|
119
|
+
# data as a hash:
|
120
|
+
#
|
121
|
+
# {
|
122
|
+
# value: "CostCategoryValue", # required
|
123
|
+
# rule: { # required
|
124
|
+
# or: [
|
125
|
+
# {
|
126
|
+
# # recursive Expression
|
127
|
+
# },
|
128
|
+
# ],
|
129
|
+
# and: [
|
130
|
+
# {
|
131
|
+
# # recursive Expression
|
132
|
+
# },
|
133
|
+
# ],
|
134
|
+
# not: {
|
135
|
+
# # recursive Expression
|
136
|
+
# },
|
137
|
+
# dimensions: {
|
138
|
+
# key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
|
139
|
+
# values: ["Value"],
|
140
|
+
# },
|
141
|
+
# tags: {
|
142
|
+
# key: "TagKey",
|
143
|
+
# values: ["Value"],
|
144
|
+
# },
|
145
|
+
# cost_categories: {
|
146
|
+
# key: "CostCategoryName",
|
147
|
+
# values: ["Value"],
|
148
|
+
# },
|
149
|
+
# },
|
150
|
+
# }
|
151
|
+
#
|
152
|
+
# @!attribute [rw] value
|
153
|
+
# The value a line item will be categorized as, if it matches the
|
154
|
+
# rule.
|
155
|
+
# @return [String]
|
156
|
+
#
|
157
|
+
# @!attribute [rw] rule
|
158
|
+
# An [Expression][1] object used to categorize costs. This supports
|
159
|
+
# dimensions, Tags, and nested expressions. Currently the only
|
160
|
+
# dimensions supported is `LINKED_ACCOUNT`.
|
161
|
+
#
|
162
|
+
# Root level `OR` is not supported. We recommend you create a separate
|
163
|
+
# rule instead.
|
164
|
+
#
|
165
|
+
#
|
166
|
+
#
|
167
|
+
# [1]: http://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html
|
168
|
+
# @return [Types::Expression]
|
169
|
+
#
|
170
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CostCategoryRule AWS API Documentation
|
171
|
+
#
|
172
|
+
class CostCategoryRule < Struct.new(
|
173
|
+
:value,
|
174
|
+
:rule)
|
175
|
+
include Aws::Structure
|
176
|
+
end
|
177
|
+
|
178
|
+
# <i> <b>Cost Category is in preview release for AWS Billing and Cost
|
179
|
+
# Management and is subject to change. Your use of Cost Categories is
|
180
|
+
# subject to the Beta Service Participation terms of the <a
|
181
|
+
# href="https://aws.amazon.com/service-terms/">AWS Service Terms</a>
|
182
|
+
# (Section 1.10).</b> </i>
|
183
|
+
#
|
184
|
+
# The values that are available for Cost Categories.
|
185
|
+
#
|
186
|
+
# @note When making an API call, you may pass CostCategoryValues
|
187
|
+
# data as a hash:
|
188
|
+
#
|
189
|
+
# {
|
190
|
+
# key: "CostCategoryName",
|
191
|
+
# values: ["Value"],
|
192
|
+
# }
|
193
|
+
#
|
194
|
+
# @!attribute [rw] key
|
195
|
+
# The unique name of the Cost Category.
|
196
|
+
# @return [String]
|
197
|
+
#
|
198
|
+
# @!attribute [rw] values
|
199
|
+
# The specific value of the Cost Category.
|
200
|
+
# @return [Array<String>]
|
201
|
+
#
|
202
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CostCategoryValues AWS API Documentation
|
203
|
+
#
|
204
|
+
class CostCategoryValues < Struct.new(
|
205
|
+
:key,
|
206
|
+
:values)
|
207
|
+
include Aws::Structure
|
208
|
+
end
|
209
|
+
|
23
210
|
# The amount of instance usage that a reservation covered.
|
24
211
|
#
|
25
212
|
# @!attribute [rw] coverage_hours
|
@@ -155,6 +342,85 @@ module Aws::CostExplorer
|
|
155
342
|
include Aws::Structure
|
156
343
|
end
|
157
344
|
|
345
|
+
# @note When making an API call, you may pass CreateCostCategoryDefinitionRequest
|
346
|
+
# data as a hash:
|
347
|
+
#
|
348
|
+
# {
|
349
|
+
# name: "CostCategoryName", # required
|
350
|
+
# rule_version: "CostCategoryExpression.v1", # required, accepts CostCategoryExpression.v1
|
351
|
+
# rules: [ # required
|
352
|
+
# {
|
353
|
+
# value: "CostCategoryValue", # required
|
354
|
+
# rule: { # required
|
355
|
+
# or: [
|
356
|
+
# {
|
357
|
+
# # recursive Expression
|
358
|
+
# },
|
359
|
+
# ],
|
360
|
+
# and: [
|
361
|
+
# {
|
362
|
+
# # recursive Expression
|
363
|
+
# },
|
364
|
+
# ],
|
365
|
+
# not: {
|
366
|
+
# # recursive Expression
|
367
|
+
# },
|
368
|
+
# dimensions: {
|
369
|
+
# key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
|
370
|
+
# values: ["Value"],
|
371
|
+
# },
|
372
|
+
# tags: {
|
373
|
+
# key: "TagKey",
|
374
|
+
# values: ["Value"],
|
375
|
+
# },
|
376
|
+
# cost_categories: {
|
377
|
+
# key: "CostCategoryName",
|
378
|
+
# values: ["Value"],
|
379
|
+
# },
|
380
|
+
# },
|
381
|
+
# },
|
382
|
+
# ],
|
383
|
+
# }
|
384
|
+
#
|
385
|
+
# @!attribute [rw] name
|
386
|
+
# The unique name of the Cost Category.
|
387
|
+
# @return [String]
|
388
|
+
#
|
389
|
+
# @!attribute [rw] rule_version
|
390
|
+
# The rule schema version in this particular Cost Category.
|
391
|
+
# @return [String]
|
392
|
+
#
|
393
|
+
# @!attribute [rw] rules
|
394
|
+
# Rules are processed in order. If there are multiple rules that match
|
395
|
+
# the line item, then the first rule to match is used to determine
|
396
|
+
# that Cost Category value.
|
397
|
+
# @return [Array<Types::CostCategoryRule>]
|
398
|
+
#
|
399
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CreateCostCategoryDefinitionRequest AWS API Documentation
|
400
|
+
#
|
401
|
+
class CreateCostCategoryDefinitionRequest < Struct.new(
|
402
|
+
:name,
|
403
|
+
:rule_version,
|
404
|
+
:rules)
|
405
|
+
include Aws::Structure
|
406
|
+
end
|
407
|
+
|
408
|
+
# @!attribute [rw] cost_category_arn
|
409
|
+
# The unique identifier for your newly created Cost Category.
|
410
|
+
# @return [String]
|
411
|
+
#
|
412
|
+
# @!attribute [rw] effective_start
|
413
|
+
# The Cost Category's effective start date.
|
414
|
+
# @return [String]
|
415
|
+
#
|
416
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/CreateCostCategoryDefinitionResponse AWS API Documentation
|
417
|
+
#
|
418
|
+
class CreateCostCategoryDefinitionResponse < Struct.new(
|
419
|
+
:cost_category_arn,
|
420
|
+
:effective_start)
|
421
|
+
include Aws::Structure
|
422
|
+
end
|
423
|
+
|
158
424
|
# Context about the current instance.
|
159
425
|
#
|
160
426
|
# @!attribute [rw] resource_id
|
@@ -262,6 +528,84 @@ module Aws::CostExplorer
|
|
262
528
|
include Aws::Structure
|
263
529
|
end
|
264
530
|
|
531
|
+
# @note When making an API call, you may pass DeleteCostCategoryDefinitionRequest
|
532
|
+
# data as a hash:
|
533
|
+
#
|
534
|
+
# {
|
535
|
+
# cost_category_arn: "Arn", # required
|
536
|
+
# }
|
537
|
+
#
|
538
|
+
# @!attribute [rw] cost_category_arn
|
539
|
+
# The unique identifier for your Cost Category.
|
540
|
+
# @return [String]
|
541
|
+
#
|
542
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DeleteCostCategoryDefinitionRequest AWS API Documentation
|
543
|
+
#
|
544
|
+
class DeleteCostCategoryDefinitionRequest < Struct.new(
|
545
|
+
:cost_category_arn)
|
546
|
+
include Aws::Structure
|
547
|
+
end
|
548
|
+
|
549
|
+
# @!attribute [rw] cost_category_arn
|
550
|
+
# The unique identifier for your Cost Category.
|
551
|
+
# @return [String]
|
552
|
+
#
|
553
|
+
# @!attribute [rw] effective_end
|
554
|
+
# The effective end date of the Cost Category as a result of deleting
|
555
|
+
# it. No costs after this date will be categorized by the deleted Cost
|
556
|
+
# Category.
|
557
|
+
# @return [String]
|
558
|
+
#
|
559
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DeleteCostCategoryDefinitionResponse AWS API Documentation
|
560
|
+
#
|
561
|
+
class DeleteCostCategoryDefinitionResponse < Struct.new(
|
562
|
+
:cost_category_arn,
|
563
|
+
:effective_end)
|
564
|
+
include Aws::Structure
|
565
|
+
end
|
566
|
+
|
567
|
+
# @note When making an API call, you may pass DescribeCostCategoryDefinitionRequest
|
568
|
+
# data as a hash:
|
569
|
+
#
|
570
|
+
# {
|
571
|
+
# cost_category_arn: "Arn", # required
|
572
|
+
# effective_on: "ZonedDateTime",
|
573
|
+
# }
|
574
|
+
#
|
575
|
+
# @!attribute [rw] cost_category_arn
|
576
|
+
# The unique identifier for your Cost Category.
|
577
|
+
# @return [String]
|
578
|
+
#
|
579
|
+
# @!attribute [rw] effective_on
|
580
|
+
# The date when the Cost Category was effective.
|
581
|
+
# @return [String]
|
582
|
+
#
|
583
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DescribeCostCategoryDefinitionRequest AWS API Documentation
|
584
|
+
#
|
585
|
+
class DescribeCostCategoryDefinitionRequest < Struct.new(
|
586
|
+
:cost_category_arn,
|
587
|
+
:effective_on)
|
588
|
+
include Aws::Structure
|
589
|
+
end
|
590
|
+
|
591
|
+
# @!attribute [rw] cost_category
|
592
|
+
# <i> <b>Cost Category is in preview release for AWS Billing and Cost
|
593
|
+
# Management and is subject to change. Your use of Cost Categories is
|
594
|
+
# subject to the Beta Service Participation terms of the <a
|
595
|
+
# href="https://aws.amazon.com/service-terms/">AWS Service Terms</a>
|
596
|
+
# (Section 1.10).</b> </i>
|
597
|
+
#
|
598
|
+
# The structure of Cost Categories. This includes detailed metadata
|
599
|
+
# and the set of rules for the `CostCategory` object.
|
600
|
+
# @return [Types::CostCategory]
|
601
|
+
#
|
602
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/DescribeCostCategoryDefinitionResponse AWS API Documentation
|
603
|
+
#
|
604
|
+
class DescribeCostCategoryDefinitionResponse < Struct.new(
|
605
|
+
:cost_category)
|
606
|
+
include Aws::Structure
|
607
|
+
end
|
608
|
+
|
265
609
|
# The metadata that you can use to filter and group your results. You
|
266
610
|
# can use `GetDimensionValues` to find specific values.
|
267
611
|
#
|
@@ -611,6 +955,10 @@ module Aws::CostExplorer
|
|
611
955
|
# key: "TagKey",
|
612
956
|
# values: ["Value"],
|
613
957
|
# },
|
958
|
+
# cost_categories: {
|
959
|
+
# key: "CostCategoryName",
|
960
|
+
# values: ["Value"],
|
961
|
+
# },
|
614
962
|
# },
|
615
963
|
# ],
|
616
964
|
# and: [
|
@@ -632,6 +980,10 @@ module Aws::CostExplorer
|
|
632
980
|
# key: "TagKey",
|
633
981
|
# values: ["Value"],
|
634
982
|
# },
|
983
|
+
# cost_categories: {
|
984
|
+
# key: "CostCategoryName",
|
985
|
+
# values: ["Value"],
|
986
|
+
# },
|
635
987
|
# },
|
636
988
|
# ],
|
637
989
|
# not: {
|
@@ -656,6 +1008,10 @@ module Aws::CostExplorer
|
|
656
1008
|
# key: "TagKey",
|
657
1009
|
# values: ["Value"],
|
658
1010
|
# },
|
1011
|
+
# cost_categories: {
|
1012
|
+
# key: "CostCategoryName",
|
1013
|
+
# values: ["Value"],
|
1014
|
+
# },
|
659
1015
|
# },
|
660
1016
|
# dimensions: {
|
661
1017
|
# key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
|
@@ -665,6 +1021,10 @@ module Aws::CostExplorer
|
|
665
1021
|
# key: "TagKey",
|
666
1022
|
# values: ["Value"],
|
667
1023
|
# },
|
1024
|
+
# cost_categories: {
|
1025
|
+
# key: "CostCategoryName",
|
1026
|
+
# values: ["Value"],
|
1027
|
+
# },
|
668
1028
|
# }
|
669
1029
|
#
|
670
1030
|
# @!attribute [rw] or
|
@@ -687,6 +1047,16 @@ module Aws::CostExplorer
|
|
687
1047
|
# The specific `Tag` to use for `Expression`.
|
688
1048
|
# @return [Types::TagValues]
|
689
1049
|
#
|
1050
|
+
# @!attribute [rw] cost_categories
|
1051
|
+
# <i> <b>Cost Category is in preview release for AWS Billing and Cost
|
1052
|
+
# Management and is subject to change. Your use of Cost Categories is
|
1053
|
+
# subject to the Beta Service Participation terms of the <a
|
1054
|
+
# href="https://aws.amazon.com/service-terms/">AWS Service Terms</a>
|
1055
|
+
# (Section 1.10).</b> </i>
|
1056
|
+
#
|
1057
|
+
# The specific `CostCategory` used for `Expression`.
|
1058
|
+
# @return [Types::CostCategoryValues]
|
1059
|
+
#
|
690
1060
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/Expression AWS API Documentation
|
691
1061
|
#
|
692
1062
|
class Expression < Struct.new(
|
@@ -694,7 +1064,8 @@ module Aws::CostExplorer
|
|
694
1064
|
:and,
|
695
1065
|
:not,
|
696
1066
|
:dimensions,
|
697
|
-
:tags
|
1067
|
+
:tags,
|
1068
|
+
:cost_categories)
|
698
1069
|
include Aws::Structure
|
699
1070
|
end
|
700
1071
|
|
@@ -757,11 +1128,15 @@ module Aws::CostExplorer
|
|
757
1128
|
# key: "TagKey",
|
758
1129
|
# values: ["Value"],
|
759
1130
|
# },
|
1131
|
+
# cost_categories: {
|
1132
|
+
# key: "CostCategoryName",
|
1133
|
+
# values: ["Value"],
|
1134
|
+
# },
|
760
1135
|
# },
|
761
1136
|
# metrics: ["MetricName"],
|
762
1137
|
# group_by: [
|
763
1138
|
# {
|
764
|
-
# type: "DIMENSION", # accepts DIMENSION, TAG
|
1139
|
+
# type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
|
765
1140
|
# key: "GroupDefinitionKey",
|
766
1141
|
# },
|
767
1142
|
# ],
|
@@ -905,11 +1280,15 @@ module Aws::CostExplorer
|
|
905
1280
|
# key: "TagKey",
|
906
1281
|
# values: ["Value"],
|
907
1282
|
# },
|
1283
|
+
# cost_categories: {
|
1284
|
+
# key: "CostCategoryName",
|
1285
|
+
# values: ["Value"],
|
1286
|
+
# },
|
908
1287
|
# },
|
909
1288
|
# metrics: ["MetricName"],
|
910
1289
|
# group_by: [
|
911
1290
|
# {
|
912
|
-
# type: "DIMENSION", # accepts DIMENSION, TAG
|
1291
|
+
# type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
|
913
1292
|
# key: "GroupDefinitionKey",
|
914
1293
|
# },
|
915
1294
|
# ],
|
@@ -1052,6 +1431,10 @@ module Aws::CostExplorer
|
|
1052
1431
|
# key: "TagKey",
|
1053
1432
|
# values: ["Value"],
|
1054
1433
|
# },
|
1434
|
+
# cost_categories: {
|
1435
|
+
# key: "CostCategoryName",
|
1436
|
+
# values: ["Value"],
|
1437
|
+
# },
|
1055
1438
|
# },
|
1056
1439
|
# prediction_interval_level: 1,
|
1057
1440
|
# }
|
@@ -1434,7 +1817,7 @@ module Aws::CostExplorer
|
|
1434
1817
|
# },
|
1435
1818
|
# group_by: [
|
1436
1819
|
# {
|
1437
|
-
# type: "DIMENSION", # accepts DIMENSION, TAG
|
1820
|
+
# type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
|
1438
1821
|
# key: "GroupDefinitionKey",
|
1439
1822
|
# },
|
1440
1823
|
# ],
|
@@ -1461,6 +1844,10 @@ module Aws::CostExplorer
|
|
1461
1844
|
# key: "TagKey",
|
1462
1845
|
# values: ["Value"],
|
1463
1846
|
# },
|
1847
|
+
# cost_categories: {
|
1848
|
+
# key: "CostCategoryName",
|
1849
|
+
# values: ["Value"],
|
1850
|
+
# },
|
1464
1851
|
# },
|
1465
1852
|
# metrics: ["MetricName"],
|
1466
1853
|
# next_page_token: "NextPageToken",
|
@@ -1713,7 +2100,7 @@ module Aws::CostExplorer
|
|
1713
2100
|
# },
|
1714
2101
|
# group_by: [
|
1715
2102
|
# {
|
1716
|
-
# type: "DIMENSION", # accepts DIMENSION, TAG
|
2103
|
+
# type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
|
1717
2104
|
# key: "GroupDefinitionKey",
|
1718
2105
|
# },
|
1719
2106
|
# ],
|
@@ -1740,6 +2127,10 @@ module Aws::CostExplorer
|
|
1740
2127
|
# key: "TagKey",
|
1741
2128
|
# values: ["Value"],
|
1742
2129
|
# },
|
2130
|
+
# cost_categories: {
|
2131
|
+
# key: "CostCategoryName",
|
2132
|
+
# values: ["Value"],
|
2133
|
+
# },
|
1743
2134
|
# },
|
1744
2135
|
# next_page_token: "NextPageToken",
|
1745
2136
|
# }
|
@@ -1870,6 +2261,10 @@ module Aws::CostExplorer
|
|
1870
2261
|
# key: "TagKey",
|
1871
2262
|
# values: ["Value"],
|
1872
2263
|
# },
|
2264
|
+
# cost_categories: {
|
2265
|
+
# key: "CostCategoryName",
|
2266
|
+
# values: ["Value"],
|
2267
|
+
# },
|
1873
2268
|
# },
|
1874
2269
|
# service: "GenericString", # required
|
1875
2270
|
# page_size: 1,
|
@@ -1986,7 +2381,7 @@ module Aws::CostExplorer
|
|
1986
2381
|
# },
|
1987
2382
|
# group_by: [
|
1988
2383
|
# {
|
1989
|
-
# type: "DIMENSION", # accepts DIMENSION, TAG
|
2384
|
+
# type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
|
1990
2385
|
# key: "GroupDefinitionKey",
|
1991
2386
|
# },
|
1992
2387
|
# ],
|
@@ -2013,6 +2408,10 @@ module Aws::CostExplorer
|
|
2013
2408
|
# key: "TagKey",
|
2014
2409
|
# values: ["Value"],
|
2015
2410
|
# },
|
2411
|
+
# cost_categories: {
|
2412
|
+
# key: "CostCategoryName",
|
2413
|
+
# values: ["Value"],
|
2414
|
+
# },
|
2016
2415
|
# },
|
2017
2416
|
# metrics: ["MetricName"],
|
2018
2417
|
# next_token: "NextPageToken",
|
@@ -2214,6 +2613,10 @@ module Aws::CostExplorer
|
|
2214
2613
|
# key: "TagKey",
|
2215
2614
|
# values: ["Value"],
|
2216
2615
|
# },
|
2616
|
+
# cost_categories: {
|
2617
|
+
# key: "CostCategoryName",
|
2618
|
+
# values: ["Value"],
|
2619
|
+
# },
|
2217
2620
|
# },
|
2218
2621
|
# next_token: "NextPageToken",
|
2219
2622
|
# max_results: 1,
|
@@ -2330,6 +2733,10 @@ module Aws::CostExplorer
|
|
2330
2733
|
# key: "TagKey",
|
2331
2734
|
# values: ["Value"],
|
2332
2735
|
# },
|
2736
|
+
# cost_categories: {
|
2737
|
+
# key: "CostCategoryName",
|
2738
|
+
# values: ["Value"],
|
2739
|
+
# },
|
2333
2740
|
# },
|
2334
2741
|
# }
|
2335
2742
|
#
|
@@ -2505,6 +2912,10 @@ module Aws::CostExplorer
|
|
2505
2912
|
# key: "TagKey",
|
2506
2913
|
# values: ["Value"],
|
2507
2914
|
# },
|
2915
|
+
# cost_categories: {
|
2916
|
+
# key: "CostCategoryName",
|
2917
|
+
# values: ["Value"],
|
2918
|
+
# },
|
2508
2919
|
# },
|
2509
2920
|
# prediction_interval_level: 1,
|
2510
2921
|
# }
|
@@ -2604,7 +3015,7 @@ module Aws::CostExplorer
|
|
2604
3015
|
# data as a hash:
|
2605
3016
|
#
|
2606
3017
|
# {
|
2607
|
-
# type: "DIMENSION", # accepts DIMENSION, TAG
|
3018
|
+
# type: "DIMENSION", # accepts DIMENSION, TAG, COST_CATEGORY
|
2608
3019
|
# key: "GroupDefinitionKey",
|
2609
3020
|
# }
|
2610
3021
|
#
|
@@ -2681,6 +3092,54 @@ module Aws::CostExplorer
|
|
2681
3092
|
include Aws::Structure
|
2682
3093
|
end
|
2683
3094
|
|
3095
|
+
# @note When making an API call, you may pass ListCostCategoryDefinitionsRequest
|
3096
|
+
# data as a hash:
|
3097
|
+
#
|
3098
|
+
# {
|
3099
|
+
# effective_on: "ZonedDateTime",
|
3100
|
+
# next_token: "NextPageToken",
|
3101
|
+
# }
|
3102
|
+
#
|
3103
|
+
# @!attribute [rw] effective_on
|
3104
|
+
# The date when the Cost Category was effective.
|
3105
|
+
# @return [String]
|
3106
|
+
#
|
3107
|
+
# @!attribute [rw] next_token
|
3108
|
+
# The token to retrieve the next set of results. Amazon Web Services
|
3109
|
+
# provides the token when the response from a previous call has more
|
3110
|
+
# results than the maximum page size.
|
3111
|
+
#
|
3112
|
+
# You can use this information to retrieve the full Cost Category
|
3113
|
+
# information using `DescribeCostCategory`.
|
3114
|
+
# @return [String]
|
3115
|
+
#
|
3116
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ListCostCategoryDefinitionsRequest AWS API Documentation
|
3117
|
+
#
|
3118
|
+
class ListCostCategoryDefinitionsRequest < Struct.new(
|
3119
|
+
:effective_on,
|
3120
|
+
:next_token)
|
3121
|
+
include Aws::Structure
|
3122
|
+
end
|
3123
|
+
|
3124
|
+
# @!attribute [rw] cost_category_references
|
3125
|
+
# A reference to a Cost Category containing enough information to
|
3126
|
+
# identify the Cost Category.
|
3127
|
+
# @return [Array<Types::CostCategoryReference>]
|
3128
|
+
#
|
3129
|
+
# @!attribute [rw] next_token
|
3130
|
+
# The token to retrieve the next set of results. Amazon Web Services
|
3131
|
+
# provides the token when the response from a previous call has more
|
3132
|
+
# results than the maximum page size.
|
3133
|
+
# @return [String]
|
3134
|
+
#
|
3135
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ListCostCategoryDefinitionsResponse AWS API Documentation
|
3136
|
+
#
|
3137
|
+
class ListCostCategoryDefinitionsResponse < Struct.new(
|
3138
|
+
:cost_category_references,
|
3139
|
+
:next_token)
|
3140
|
+
include Aws::Structure
|
3141
|
+
end
|
3142
|
+
|
2684
3143
|
# The aggregated value for a metric.
|
2685
3144
|
#
|
2686
3145
|
# @!attribute [rw] amount
|
@@ -3184,6 +3643,18 @@ module Aws::CostExplorer
|
|
3184
3643
|
include Aws::Structure
|
3185
3644
|
end
|
3186
3645
|
|
3646
|
+
# The specified ARN in the request doesn't exist.
|
3647
|
+
#
|
3648
|
+
# @!attribute [rw] message
|
3649
|
+
# @return [String]
|
3650
|
+
#
|
3651
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ResourceNotFoundException AWS API Documentation
|
3652
|
+
#
|
3653
|
+
class ResourceNotFoundException < Struct.new(
|
3654
|
+
:message)
|
3655
|
+
include Aws::Structure
|
3656
|
+
end
|
3657
|
+
|
3187
3658
|
# Resource utilization of current resource.
|
3188
3659
|
#
|
3189
3660
|
# @!attribute [rw] ec2_resource_utilization
|
@@ -3819,6 +4290,19 @@ module Aws::CostExplorer
|
|
3819
4290
|
include Aws::Structure
|
3820
4291
|
end
|
3821
4292
|
|
4293
|
+
# You've reached the limit on the number of resources you can create,
|
4294
|
+
# or exceeded the size of an individual resources.
|
4295
|
+
#
|
4296
|
+
# @!attribute [rw] message
|
4297
|
+
# @return [String]
|
4298
|
+
#
|
4299
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/ServiceQuotaExceededException AWS API Documentation
|
4300
|
+
#
|
4301
|
+
class ServiceQuotaExceededException < Struct.new(
|
4302
|
+
:message)
|
4303
|
+
include Aws::Structure
|
4304
|
+
end
|
4305
|
+
|
3822
4306
|
# Hardware specifications for the service that you want recommendations
|
3823
4307
|
# for.
|
3824
4308
|
#
|
@@ -3942,6 +4426,85 @@ module Aws::CostExplorer
|
|
3942
4426
|
include Aws::Structure
|
3943
4427
|
end
|
3944
4428
|
|
4429
|
+
# @note When making an API call, you may pass UpdateCostCategoryDefinitionRequest
|
4430
|
+
# data as a hash:
|
4431
|
+
#
|
4432
|
+
# {
|
4433
|
+
# cost_category_arn: "Arn", # required
|
4434
|
+
# rule_version: "CostCategoryExpression.v1", # required, accepts CostCategoryExpression.v1
|
4435
|
+
# rules: [ # required
|
4436
|
+
# {
|
4437
|
+
# value: "CostCategoryValue", # required
|
4438
|
+
# rule: { # required
|
4439
|
+
# or: [
|
4440
|
+
# {
|
4441
|
+
# # recursive Expression
|
4442
|
+
# },
|
4443
|
+
# ],
|
4444
|
+
# and: [
|
4445
|
+
# {
|
4446
|
+
# # recursive Expression
|
4447
|
+
# },
|
4448
|
+
# ],
|
4449
|
+
# not: {
|
4450
|
+
# # recursive Expression
|
4451
|
+
# },
|
4452
|
+
# dimensions: {
|
4453
|
+
# key: "AZ", # accepts AZ, INSTANCE_TYPE, LINKED_ACCOUNT, OPERATION, PURCHASE_TYPE, REGION, SERVICE, USAGE_TYPE, USAGE_TYPE_GROUP, RECORD_TYPE, OPERATING_SYSTEM, TENANCY, SCOPE, PLATFORM, SUBSCRIPTION_ID, LEGAL_ENTITY_NAME, DEPLOYMENT_OPTION, DATABASE_ENGINE, CACHE_ENGINE, INSTANCE_TYPE_FAMILY, BILLING_ENTITY, RESERVATION_ID, RESOURCE_ID, RIGHTSIZING_TYPE, SAVINGS_PLANS_TYPE, SAVINGS_PLAN_ARN, PAYMENT_OPTION
|
4454
|
+
# values: ["Value"],
|
4455
|
+
# },
|
4456
|
+
# tags: {
|
4457
|
+
# key: "TagKey",
|
4458
|
+
# values: ["Value"],
|
4459
|
+
# },
|
4460
|
+
# cost_categories: {
|
4461
|
+
# key: "CostCategoryName",
|
4462
|
+
# values: ["Value"],
|
4463
|
+
# },
|
4464
|
+
# },
|
4465
|
+
# },
|
4466
|
+
# ],
|
4467
|
+
# }
|
4468
|
+
#
|
4469
|
+
# @!attribute [rw] cost_category_arn
|
4470
|
+
# The unique identifier for your Cost Category.
|
4471
|
+
# @return [String]
|
4472
|
+
#
|
4473
|
+
# @!attribute [rw] rule_version
|
4474
|
+
# The rule schema version in this particular Cost Category.
|
4475
|
+
# @return [String]
|
4476
|
+
#
|
4477
|
+
# @!attribute [rw] rules
|
4478
|
+
# Rules are processed in order. If there are multiple rules that match
|
4479
|
+
# the line item, then the first rule to match is used to determine
|
4480
|
+
# that Cost Category value.
|
4481
|
+
# @return [Array<Types::CostCategoryRule>]
|
4482
|
+
#
|
4483
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/UpdateCostCategoryDefinitionRequest AWS API Documentation
|
4484
|
+
#
|
4485
|
+
class UpdateCostCategoryDefinitionRequest < Struct.new(
|
4486
|
+
:cost_category_arn,
|
4487
|
+
:rule_version,
|
4488
|
+
:rules)
|
4489
|
+
include Aws::Structure
|
4490
|
+
end
|
4491
|
+
|
4492
|
+
# @!attribute [rw] cost_category_arn
|
4493
|
+
# The unique identifier for your Cost Category.
|
4494
|
+
# @return [String]
|
4495
|
+
#
|
4496
|
+
# @!attribute [rw] effective_start
|
4497
|
+
# The Cost Category's effective start date.
|
4498
|
+
# @return [String]
|
4499
|
+
#
|
4500
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ce-2017-10-25/UpdateCostCategoryDefinitionResponse AWS API Documentation
|
4501
|
+
#
|
4502
|
+
class UpdateCostCategoryDefinitionResponse < Struct.new(
|
4503
|
+
:cost_category_arn,
|
4504
|
+
:effective_start)
|
4505
|
+
include Aws::Structure
|
4506
|
+
end
|
4507
|
+
|
3945
4508
|
# The amount of utilization, in hours.
|
3946
4509
|
#
|
3947
4510
|
# @!attribute [rw] time_period
|