aws-sdk-billingconductor 1.17.0 → 1.19.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7f938856c5ad9eb17255ab658ea49935ce68472e9c3eacb96d7ab8660ccddaef
4
- data.tar.gz: 7353a191067127cd3b8480a616132be9322141a75bfe939e986b3e21d7b777ac
3
+ metadata.gz: b792d769e4dbc91a7104a520e6ff25b236cc9f275f84c6e800cc7d5fe5b419f7
4
+ data.tar.gz: ed59f60bfd1789aefae2743fc0ff3ad0cfc1bdbe7a7f54f1e60ab52c49ab4345
5
5
  SHA512:
6
- metadata.gz: 452f58c84c9818629aa8caa24b809986ede32d9aae611ee5f9338aa35164a792216751108a0b70abea9f9ace03bb6b46a627378680f8fe246de6e086c22625fc
7
- data.tar.gz: ddad6051c852f245c021fe92c12b0cf76d014c2da53f4fde929e132cb4c2b0b2d03610a9df9ae441461243572d7404d9f9ce56d515b49f6cd5d63427e2dcf9e7
6
+ metadata.gz: e0d86edb633f6ae518084e4ea7b330fa1910aba1001c15b37f429a8f604541306d76d807a15118481f5b1560290f4f1dbf25965abf2c63c3faaa65acd194638d
7
+ data.tar.gz: 611ab7c4d4fdf8541bd2f158d93330c2c8b09440ee22468e03f2f173cfb4aba25899f24c1fd6a144632835dda9ab144a4827368c566bcde61cce35ded4d440f7
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.19.0 (2023-12-14)
5
+ ------------------
6
+
7
+ * Feature - Billing Conductor is releasing a new API, GetBillingGroupCostReport, which provides the ability to retrieve/view the Billing Group Cost Report broken down by attributes for a specific billing group.
8
+
9
+ 1.18.0 (2023-12-04)
10
+ ------------------
11
+
12
+ * Feature - This release adds the ability to specify a linked account of the billing group for the custom line item resource.
13
+
4
14
  1.17.0 (2023-11-28)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.17.0
1
+ 1.19.0
@@ -658,6 +658,10 @@ module Aws::BillingConductor
658
658
  # A `CustomLineItemChargeDetails` that describes the charge details for
659
659
  # a custom line item.
660
660
  #
661
+ # @option params [String] :account_id
662
+ # The Amazon Web Services account in which this custom line item will be
663
+ # applied to.
664
+ #
661
665
  # @return [Types::CreateCustomLineItemOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
662
666
  #
663
667
  # * {Types::CreateCustomLineItemOutput#arn #arn} => String
@@ -693,6 +697,7 @@ module Aws::BillingConductor
693
697
  # },
694
698
  # ],
695
699
  # },
700
+ # account_id: "AccountId",
696
701
  # })
697
702
  #
698
703
  # @example Response structure
@@ -1056,6 +1061,71 @@ module Aws::BillingConductor
1056
1061
  req.send_request(options)
1057
1062
  end
1058
1063
 
1064
+ # Retrieves the margin summary report, which includes the Amazon Web
1065
+ # Services cost and charged amount (pro forma cost) by Amazon Web
1066
+ # Service for a specific billing group.
1067
+ #
1068
+ # @option params [required, String] :arn
1069
+ # The Amazon Resource Number (ARN) that uniquely identifies the billing
1070
+ # group.
1071
+ #
1072
+ # @option params [Types::BillingPeriodRange] :billing_period_range
1073
+ # A time range for which the margin summary is effective. You can
1074
+ # specify up to 12 months.
1075
+ #
1076
+ # @option params [Array<String>] :group_by
1077
+ # A list of strings that specify the attributes that are used to break
1078
+ # down costs in the margin summary reports for the billing group. For
1079
+ # example, you can view your costs by the Amazon Web Service name or the
1080
+ # billing period.
1081
+ #
1082
+ # @option params [Integer] :max_results
1083
+ # The maximum number of margin summary reports to retrieve.
1084
+ #
1085
+ # @option params [String] :next_token
1086
+ # The pagination token used on subsequent calls to get reports.
1087
+ #
1088
+ # @return [Types::GetBillingGroupCostReportOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1089
+ #
1090
+ # * {Types::GetBillingGroupCostReportOutput#billing_group_cost_report_results #billing_group_cost_report_results} => Array&lt;Types::BillingGroupCostReportResultElement&gt;
1091
+ # * {Types::GetBillingGroupCostReportOutput#next_token #next_token} => String
1092
+ #
1093
+ # @example Request syntax with placeholder values
1094
+ #
1095
+ # resp = client.get_billing_group_cost_report({
1096
+ # arn: "BillingGroupArn", # required
1097
+ # billing_period_range: {
1098
+ # inclusive_start_billing_period: "BillingPeriod", # required
1099
+ # exclusive_end_billing_period: "BillingPeriod", # required
1100
+ # },
1101
+ # group_by: ["PRODUCT_NAME"], # accepts PRODUCT_NAME, BILLING_PERIOD
1102
+ # max_results: 1,
1103
+ # next_token: "Token",
1104
+ # })
1105
+ #
1106
+ # @example Response structure
1107
+ #
1108
+ # resp.billing_group_cost_report_results #=> Array
1109
+ # resp.billing_group_cost_report_results[0].arn #=> String
1110
+ # resp.billing_group_cost_report_results[0].aws_cost #=> String
1111
+ # resp.billing_group_cost_report_results[0].proforma_cost #=> String
1112
+ # resp.billing_group_cost_report_results[0].margin #=> String
1113
+ # resp.billing_group_cost_report_results[0].margin_percentage #=> String
1114
+ # resp.billing_group_cost_report_results[0].currency #=> String
1115
+ # resp.billing_group_cost_report_results[0].attributes #=> Array
1116
+ # resp.billing_group_cost_report_results[0].attributes[0].key #=> String
1117
+ # resp.billing_group_cost_report_results[0].attributes[0].value #=> String
1118
+ # resp.next_token #=> String
1119
+ #
1120
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/GetBillingGroupCostReport AWS API Documentation
1121
+ #
1122
+ # @overload get_billing_group_cost_report(params = {})
1123
+ # @param [Hash] params ({})
1124
+ def get_billing_group_cost_report(params = {}, options = {})
1125
+ req = build_request(:get_billing_group_cost_report, params)
1126
+ req.send_request(options)
1127
+ end
1128
+
1059
1129
  # This is a paginated call to list linked accounts that are linked to
1060
1130
  # the payer account for the specified time period. If no information is
1061
1131
  # provided, the current billing period is used. The response will
@@ -1297,6 +1367,7 @@ module Aws::BillingConductor
1297
1367
  # resp.custom_line_item_versions[0].end_billing_period #=> String
1298
1368
  # resp.custom_line_item_versions[0].arn #=> String
1299
1369
  # resp.custom_line_item_versions[0].start_time #=> Integer
1370
+ # resp.custom_line_item_versions[0].account_id #=> String
1300
1371
  # resp.next_token #=> String
1301
1372
  #
1302
1373
  # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListCustomLineItemVersions AWS API Documentation
@@ -1344,6 +1415,7 @@ module Aws::BillingConductor
1344
1415
  # names: ["CustomLineItemName"],
1345
1416
  # billing_groups: ["BillingGroupArn"],
1346
1417
  # arns: ["CustomLineItemArn"],
1418
+ # account_ids: ["AccountId"],
1347
1419
  # },
1348
1420
  # })
1349
1421
  #
@@ -1367,6 +1439,7 @@ module Aws::BillingConductor
1367
1439
  # resp.custom_line_items[0].creation_time #=> Integer
1368
1440
  # resp.custom_line_items[0].last_modified_time #=> Integer
1369
1441
  # resp.custom_line_items[0].association_size #=> Integer
1442
+ # resp.custom_line_items[0].account_id #=> String
1370
1443
  # resp.next_token #=> String
1371
1444
  #
1372
1445
  # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListCustomLineItems AWS API Documentation
@@ -2041,7 +2114,7 @@ module Aws::BillingConductor
2041
2114
  params: params,
2042
2115
  config: config)
2043
2116
  context[:gem_name] = 'aws-sdk-billingconductor'
2044
- context[:gem_version] = '1.17.0'
2117
+ context[:gem_version] = '1.19.0'
2045
2118
  Seahorse::Client::Request.new(handlers, context)
2046
2119
  end
2047
2120
 
@@ -33,6 +33,8 @@ module Aws::BillingConductor
33
33
  AssociateResourceResponseElement = Shapes::StructureShape.new(name: 'AssociateResourceResponseElement')
34
34
  AssociateResourcesResponseList = Shapes::ListShape.new(name: 'AssociateResourcesResponseList')
35
35
  Association = Shapes::StringShape.new(name: 'Association')
36
+ Attribute = Shapes::StructureShape.new(name: 'Attribute')
37
+ AttributesList = Shapes::ListShape.new(name: 'AttributesList')
36
38
  BatchAssociateResourcesToCustomLineItemInput = Shapes::StructureShape.new(name: 'BatchAssociateResourcesToCustomLineItemInput')
37
39
  BatchAssociateResourcesToCustomLineItemOutput = Shapes::StructureShape.new(name: 'BatchAssociateResourcesToCustomLineItemOutput')
38
40
  BatchDisassociateResourcesFromCustomLineItemInput = Shapes::StructureShape.new(name: 'BatchDisassociateResourcesFromCustomLineItemInput')
@@ -42,6 +44,8 @@ module Aws::BillingConductor
42
44
  BillingGroupArnList = Shapes::ListShape.new(name: 'BillingGroupArnList')
43
45
  BillingGroupCostReportElement = Shapes::StructureShape.new(name: 'BillingGroupCostReportElement')
44
46
  BillingGroupCostReportList = Shapes::ListShape.new(name: 'BillingGroupCostReportList')
47
+ BillingGroupCostReportResultElement = Shapes::StructureShape.new(name: 'BillingGroupCostReportResultElement')
48
+ BillingGroupCostReportResultsList = Shapes::ListShape.new(name: 'BillingGroupCostReportResultsList')
45
49
  BillingGroupDescription = Shapes::StringShape.new(name: 'BillingGroupDescription')
46
50
  BillingGroupFullArn = Shapes::StringShape.new(name: 'BillingGroupFullArn')
47
51
  BillingGroupList = Shapes::ListShape.new(name: 'BillingGroupList')
@@ -51,6 +55,7 @@ module Aws::BillingConductor
51
55
  BillingGroupStatusList = Shapes::ListShape.new(name: 'BillingGroupStatusList')
52
56
  BillingGroupStatusReason = Shapes::StringShape.new(name: 'BillingGroupStatusReason')
53
57
  BillingPeriod = Shapes::StringShape.new(name: 'BillingPeriod')
58
+ BillingPeriodRange = Shapes::StructureShape.new(name: 'BillingPeriodRange')
54
59
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
55
60
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
56
61
  ComputationPreference = Shapes::StructureShape.new(name: 'ComputationPreference')
@@ -105,6 +110,10 @@ module Aws::BillingConductor
105
110
  DisassociateResourceResponseElement = Shapes::StructureShape.new(name: 'DisassociateResourceResponseElement')
106
111
  DisassociateResourcesResponseList = Shapes::ListShape.new(name: 'DisassociateResourcesResponseList')
107
112
  FreeTierConfig = Shapes::StructureShape.new(name: 'FreeTierConfig')
113
+ GetBillingGroupCostReportInput = Shapes::StructureShape.new(name: 'GetBillingGroupCostReportInput')
114
+ GetBillingGroupCostReportOutput = Shapes::StructureShape.new(name: 'GetBillingGroupCostReportOutput')
115
+ GroupByAttributeName = Shapes::StringShape.new(name: 'GroupByAttributeName')
116
+ GroupByAttributesList = Shapes::ListShape.new(name: 'GroupByAttributesList')
108
117
  Instant = Shapes::IntegerShape.new(name: 'Instant')
109
118
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
110
119
  LineItemFilter = Shapes::StructureShape.new(name: 'LineItemFilter')
@@ -152,6 +161,7 @@ module Aws::BillingConductor
152
161
  Margin = Shapes::StringShape.new(name: 'Margin')
153
162
  MarginPercentage = Shapes::StringShape.new(name: 'MarginPercentage')
154
163
  MatchOption = Shapes::StringShape.new(name: 'MatchOption')
164
+ MaxBillingGroupCostReportResults = Shapes::IntegerShape.new(name: 'MaxBillingGroupCostReportResults')
155
165
  MaxBillingGroupResults = Shapes::IntegerShape.new(name: 'MaxBillingGroupResults')
156
166
  MaxCustomLineItemResults = Shapes::IntegerShape.new(name: 'MaxCustomLineItemResults')
157
167
  MaxPricingPlanResults = Shapes::IntegerShape.new(name: 'MaxPricingPlanResults')
@@ -260,6 +270,12 @@ module Aws::BillingConductor
260
270
 
261
271
  AssociateResourcesResponseList.member = Shapes::ShapeRef.new(shape: AssociateResourceResponseElement)
262
272
 
273
+ Attribute.add_member(:key, Shapes::ShapeRef.new(shape: String, location_name: "Key"))
274
+ Attribute.add_member(:value, Shapes::ShapeRef.new(shape: String, location_name: "Value"))
275
+ Attribute.struct_class = Types::Attribute
276
+
277
+ AttributesList.member = Shapes::ShapeRef.new(shape: Attribute)
278
+
263
279
  BatchAssociateResourcesToCustomLineItemInput.add_member(:target_arn, Shapes::ShapeRef.new(shape: CustomLineItemArn, required: true, location_name: "TargetArn"))
264
280
  BatchAssociateResourcesToCustomLineItemInput.add_member(:resource_arns, Shapes::ShapeRef.new(shape: CustomLineItemBatchAssociationsList, required: true, location_name: "ResourceArns"))
265
281
  BatchAssociateResourcesToCustomLineItemInput.add_member(:billing_period_range, Shapes::ShapeRef.new(shape: CustomLineItemBillingPeriodRange, location_name: "BillingPeriodRange"))
@@ -290,6 +306,17 @@ module Aws::BillingConductor
290
306
 
291
307
  BillingGroupCostReportList.member = Shapes::ShapeRef.new(shape: BillingGroupCostReportElement)
292
308
 
309
+ BillingGroupCostReportResultElement.add_member(:arn, Shapes::ShapeRef.new(shape: BillingGroupArn, location_name: "Arn"))
310
+ BillingGroupCostReportResultElement.add_member(:aws_cost, Shapes::ShapeRef.new(shape: AWSCost, location_name: "AWSCost"))
311
+ BillingGroupCostReportResultElement.add_member(:proforma_cost, Shapes::ShapeRef.new(shape: ProformaCost, location_name: "ProformaCost"))
312
+ BillingGroupCostReportResultElement.add_member(:margin, Shapes::ShapeRef.new(shape: Margin, location_name: "Margin"))
313
+ BillingGroupCostReportResultElement.add_member(:margin_percentage, Shapes::ShapeRef.new(shape: MarginPercentage, location_name: "MarginPercentage"))
314
+ BillingGroupCostReportResultElement.add_member(:currency, Shapes::ShapeRef.new(shape: Currency, location_name: "Currency"))
315
+ BillingGroupCostReportResultElement.add_member(:attributes, Shapes::ShapeRef.new(shape: AttributesList, location_name: "Attributes"))
316
+ BillingGroupCostReportResultElement.struct_class = Types::BillingGroupCostReportResultElement
317
+
318
+ BillingGroupCostReportResultsList.member = Shapes::ShapeRef.new(shape: BillingGroupCostReportResultElement)
319
+
293
320
  BillingGroupList.member = Shapes::ShapeRef.new(shape: BillingGroupListElement)
294
321
 
295
322
  BillingGroupListElement.add_member(:name, Shapes::ShapeRef.new(shape: BillingGroupName, location_name: "Name"))
@@ -307,6 +334,10 @@ module Aws::BillingConductor
307
334
 
308
335
  BillingGroupStatusList.member = Shapes::ShapeRef.new(shape: BillingGroupStatus)
309
336
 
337
+ BillingPeriodRange.add_member(:inclusive_start_billing_period, Shapes::ShapeRef.new(shape: BillingPeriod, required: true, location_name: "InclusiveStartBillingPeriod"))
338
+ BillingPeriodRange.add_member(:exclusive_end_billing_period, Shapes::ShapeRef.new(shape: BillingPeriod, required: true, location_name: "ExclusiveEndBillingPeriod"))
339
+ BillingPeriodRange.struct_class = Types::BillingPeriodRange
340
+
310
341
  ComputationPreference.add_member(:pricing_plan_arn, Shapes::ShapeRef.new(shape: PricingPlanFullArn, required: true, location_name: "PricingPlanArn"))
311
342
  ComputationPreference.struct_class = Types::ComputationPreference
312
343
 
@@ -335,6 +366,7 @@ module Aws::BillingConductor
335
366
  CreateCustomLineItemInput.add_member(:billing_period_range, Shapes::ShapeRef.new(shape: CustomLineItemBillingPeriodRange, location_name: "BillingPeriodRange"))
336
367
  CreateCustomLineItemInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
337
368
  CreateCustomLineItemInput.add_member(:charge_details, Shapes::ShapeRef.new(shape: CustomLineItemChargeDetails, required: true, location_name: "ChargeDetails"))
369
+ CreateCustomLineItemInput.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "AccountId"))
338
370
  CreateCustomLineItemInput.struct_class = Types::CreateCustomLineItemInput
339
371
 
340
372
  CreateCustomLineItemOutput.add_member(:arn, Shapes::ShapeRef.new(shape: CustomLineItemArn, location_name: "Arn"))
@@ -406,6 +438,7 @@ module Aws::BillingConductor
406
438
  CustomLineItemListElement.add_member(:creation_time, Shapes::ShapeRef.new(shape: Instant, location_name: "CreationTime"))
407
439
  CustomLineItemListElement.add_member(:last_modified_time, Shapes::ShapeRef.new(shape: Instant, location_name: "LastModifiedTime"))
408
440
  CustomLineItemListElement.add_member(:association_size, Shapes::ShapeRef.new(shape: NumberOfAssociations, location_name: "AssociationSize"))
441
+ CustomLineItemListElement.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "AccountId"))
409
442
  CustomLineItemListElement.struct_class = Types::CustomLineItemListElement
410
443
 
411
444
  CustomLineItemNameList.member = Shapes::ShapeRef.new(shape: CustomLineItemName)
@@ -429,6 +462,7 @@ module Aws::BillingConductor
429
462
  CustomLineItemVersionListElement.add_member(:end_billing_period, Shapes::ShapeRef.new(shape: BillingPeriod, location_name: "EndBillingPeriod"))
430
463
  CustomLineItemVersionListElement.add_member(:arn, Shapes::ShapeRef.new(shape: CustomLineItemArn, location_name: "Arn"))
431
464
  CustomLineItemVersionListElement.add_member(:start_time, Shapes::ShapeRef.new(shape: Instant, location_name: "StartTime"))
465
+ CustomLineItemVersionListElement.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "AccountId"))
432
466
  CustomLineItemVersionListElement.struct_class = Types::CustomLineItemVersionListElement
433
467
 
434
468
  DeleteBillingGroupInput.add_member(:arn, Shapes::ShapeRef.new(shape: BillingGroupArn, required: true, location_name: "Arn"))
@@ -479,6 +513,19 @@ module Aws::BillingConductor
479
513
  FreeTierConfig.add_member(:activated, Shapes::ShapeRef.new(shape: TieringActivated, required: true, location_name: "Activated"))
480
514
  FreeTierConfig.struct_class = Types::FreeTierConfig
481
515
 
516
+ GetBillingGroupCostReportInput.add_member(:arn, Shapes::ShapeRef.new(shape: BillingGroupArn, required: true, location_name: "Arn"))
517
+ GetBillingGroupCostReportInput.add_member(:billing_period_range, Shapes::ShapeRef.new(shape: BillingPeriodRange, location_name: "BillingPeriodRange"))
518
+ GetBillingGroupCostReportInput.add_member(:group_by, Shapes::ShapeRef.new(shape: GroupByAttributesList, location_name: "GroupBy"))
519
+ GetBillingGroupCostReportInput.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxBillingGroupCostReportResults, location_name: "MaxResults"))
520
+ GetBillingGroupCostReportInput.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
521
+ GetBillingGroupCostReportInput.struct_class = Types::GetBillingGroupCostReportInput
522
+
523
+ GetBillingGroupCostReportOutput.add_member(:billing_group_cost_report_results, Shapes::ShapeRef.new(shape: BillingGroupCostReportResultsList, location_name: "BillingGroupCostReportResults"))
524
+ GetBillingGroupCostReportOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
525
+ GetBillingGroupCostReportOutput.struct_class = Types::GetBillingGroupCostReportOutput
526
+
527
+ GroupByAttributesList.member = Shapes::ShapeRef.new(shape: GroupByAttributeName)
528
+
482
529
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Message"))
483
530
  InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: RetryAfterSeconds, location: "header", location_name: "Retry-After"))
484
531
  InternalServerException.struct_class = Types::InternalServerException
@@ -570,6 +617,7 @@ module Aws::BillingConductor
570
617
  ListCustomLineItemsFilter.add_member(:names, Shapes::ShapeRef.new(shape: CustomLineItemNameList, location_name: "Names"))
571
618
  ListCustomLineItemsFilter.add_member(:billing_groups, Shapes::ShapeRef.new(shape: BillingGroupArnList, location_name: "BillingGroups"))
572
619
  ListCustomLineItemsFilter.add_member(:arns, Shapes::ShapeRef.new(shape: CustomLineItemArns, location_name: "Arns"))
620
+ ListCustomLineItemsFilter.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIdList, location_name: "AccountIds"))
573
621
  ListCustomLineItemsFilter.struct_class = Types::ListCustomLineItemsFilter
574
622
 
575
623
  ListCustomLineItemsInput.add_member(:billing_period, Shapes::ShapeRef.new(shape: BillingPeriod, location_name: "BillingPeriod"))
@@ -1049,6 +1097,19 @@ module Aws::BillingConductor
1049
1097
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1050
1098
  end)
1051
1099
 
1100
+ api.add_operation(:get_billing_group_cost_report, Seahorse::Model::Operation.new.tap do |o|
1101
+ o.name = "GetBillingGroupCostReport"
1102
+ o.http_method = "POST"
1103
+ o.http_request_uri = "/get-billing-group-cost-report"
1104
+ o.input = Shapes::ShapeRef.new(shape: GetBillingGroupCostReportInput)
1105
+ o.output = Shapes::ShapeRef.new(shape: GetBillingGroupCostReportOutput)
1106
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1107
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1108
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1109
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1110
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1111
+ end)
1112
+
1052
1113
  api.add_operation(:list_account_associations, Seahorse::Model::Operation.new.tap do |o|
1053
1114
  o.name = "ListAccountAssociations"
1054
1115
  o.http_method = "POST"
@@ -35,7 +35,7 @@ module Aws::BillingConductor
35
35
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
36
36
  end
37
37
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
38
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
38
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
39
39
  return Aws::Endpoints::Endpoint.new(url: "https://billingconductor-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
40
40
  end
41
41
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
@@ -208,6 +208,20 @@ module Aws::BillingConductor
208
208
  end
209
209
  end
210
210
 
211
+ class GetBillingGroupCostReport
212
+ def self.build(context)
213
+ unless context.config.regional_endpoint
214
+ endpoint = context.config.endpoint.to_s
215
+ end
216
+ Aws::BillingConductor::EndpointParameters.new(
217
+ region: context.config.region,
218
+ use_dual_stack: context.config.use_dualstack_endpoint,
219
+ use_fips: context.config.use_fips_endpoint,
220
+ endpoint: endpoint,
221
+ )
222
+ end
223
+ end
224
+
211
225
  class ListAccountAssociations
212
226
  def self.build(context)
213
227
  unless context.config.regional_endpoint
@@ -85,6 +85,8 @@ module Aws::BillingConductor
85
85
  Aws::BillingConductor::Endpoints::DisassociateAccounts.build(context)
86
86
  when :disassociate_pricing_rules
87
87
  Aws::BillingConductor::Endpoints::DisassociatePricingRules.build(context)
88
+ when :get_billing_group_cost_report
89
+ Aws::BillingConductor::Endpoints::GetBillingGroupCostReport.build(context)
88
90
  when :list_account_associations
89
91
  Aws::BillingConductor::Endpoints::ListAccountAssociations.build(context)
90
92
  when :list_billing_group_cost_reports
@@ -176,6 +176,29 @@ module Aws::BillingConductor
176
176
  include Aws::Structure
177
177
  end
178
178
 
179
+ # The key-value pair that represents the attribute by which the
180
+ # `BillingGroupCostReportResults` are grouped. For example, if you want
181
+ # a service-level breakdown for Amazon Simple Storage Service (Amazon
182
+ # S3) of the billing group, the attribute will be a key-value pair of
183
+ # `"PRODUCT_NAME"` and `"S3"`.
184
+ #
185
+ # @!attribute [rw] key
186
+ # The key in a key-value pair that describes the margin summary.
187
+ # @return [String]
188
+ #
189
+ # @!attribute [rw] value
190
+ # The value in a key-value pair that describes the margin summary.
191
+ # @return [String]
192
+ #
193
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/Attribute AWS API Documentation
194
+ #
195
+ class Attribute < Struct.new(
196
+ :key,
197
+ :value)
198
+ SENSITIVE = []
199
+ include Aws::Structure
200
+ end
201
+
179
202
  # @!attribute [rw] target_arn
180
203
  # A percentage custom line item ARN to associate the resources to.
181
204
  # @return [String]
@@ -305,6 +328,59 @@ module Aws::BillingConductor
305
328
  include Aws::Structure
306
329
  end
307
330
 
331
+ # A paginated call to retrieve a list of summary reports of actual
332
+ # Amazon Web Services charges and the calculated Amazon Web Services
333
+ # charges, broken down by attributes.
334
+ #
335
+ # @!attribute [rw] arn
336
+ # The Amazon Resource Number (ARN) that uniquely identifies the
337
+ # billing group.
338
+ # @return [String]
339
+ #
340
+ # @!attribute [rw] aws_cost
341
+ # The actual Amazon Web Services charges for the billing group.
342
+ # @return [String]
343
+ #
344
+ # @!attribute [rw] proforma_cost
345
+ # The hypothetical Amazon Web Services charges based on the associated
346
+ # pricing plan of a billing group.
347
+ # @return [String]
348
+ #
349
+ # @!attribute [rw] margin
350
+ # The billing group margin.
351
+ # @return [String]
352
+ #
353
+ # @!attribute [rw] margin_percentage
354
+ # The percentage of the billing group margin.
355
+ # @return [String]
356
+ #
357
+ # @!attribute [rw] currency
358
+ # The displayed currency.
359
+ # @return [String]
360
+ #
361
+ # @!attribute [rw] attributes
362
+ # The list of key-value pairs that represent the attributes by which
363
+ # the `BillingGroupCostReportResults` are grouped. For example, if you
364
+ # want the Amazon S3 service-level breakdown of a billing group for
365
+ # November 2023, the attributes list will contain a key-value pair of
366
+ # `"PRODUCT_NAME"` and `"S3"` and a key-value pair of
367
+ # `"BILLING_PERIOD"` and `"Nov 2023"`.
368
+ # @return [Array<Types::Attribute>]
369
+ #
370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/BillingGroupCostReportResultElement AWS API Documentation
371
+ #
372
+ class BillingGroupCostReportResultElement < Struct.new(
373
+ :arn,
374
+ :aws_cost,
375
+ :proforma_cost,
376
+ :margin,
377
+ :margin_percentage,
378
+ :currency,
379
+ :attributes)
380
+ SENSITIVE = []
381
+ include Aws::Structure
382
+ end
383
+
308
384
  # A representation of a billing group.
309
385
  #
310
386
  # @!attribute [rw] name
@@ -372,6 +448,30 @@ module Aws::BillingConductor
372
448
  include Aws::Structure
373
449
  end
374
450
 
451
+ # A time range for which the margin summary is effective. The time range
452
+ # can be up to 12 months.
453
+ #
454
+ # @!attribute [rw] inclusive_start_billing_period
455
+ # The inclusive start billing period that defines a billing period
456
+ # range for the margin summary.
457
+ # @return [String]
458
+ #
459
+ # @!attribute [rw] exclusive_end_billing_period
460
+ # The exclusive end billing period that defines a billing period range
461
+ # for the margin summary. For example, if you choose a billing period
462
+ # that starts in October 2023 and ends in December 2023, the margin
463
+ # summary will only include data from October 2023 and November 2023.
464
+ # @return [String]
465
+ #
466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/BillingPeriodRange AWS API Documentation
467
+ #
468
+ class BillingPeriodRange < Struct.new(
469
+ :inclusive_start_billing_period,
470
+ :exclusive_end_billing_period)
471
+ SENSITIVE = []
472
+ include Aws::Structure
473
+ end
474
+
375
475
  # The preferences and settings that will be used to compute the Amazon
376
476
  # Web Services charges for a billing group.
377
477
  #
@@ -515,6 +615,11 @@ module Aws::BillingConductor
515
615
  # for a custom line item.
516
616
  # @return [Types::CustomLineItemChargeDetails]
517
617
  #
618
+ # @!attribute [rw] account_id
619
+ # The Amazon Web Services account in which this custom line item will
620
+ # be applied to.
621
+ # @return [String]
622
+ #
518
623
  # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CreateCustomLineItemInput AWS API Documentation
519
624
  #
520
625
  class CreateCustomLineItemInput < Struct.new(
@@ -524,7 +629,8 @@ module Aws::BillingConductor
524
629
  :billing_group_arn,
525
630
  :billing_period_range,
526
631
  :tags,
527
- :charge_details)
632
+ :charge_details,
633
+ :account_id)
528
634
  SENSITIVE = [:name, :description]
529
635
  include Aws::Structure
530
636
  end
@@ -837,6 +943,11 @@ module Aws::BillingConductor
837
943
  # The number of resources that are associated to the custom line item.
838
944
  # @return [Integer]
839
945
  #
946
+ # @!attribute [rw] account_id
947
+ # The Amazon Web Services account in which this custom line item will
948
+ # be applied to.
949
+ # @return [String]
950
+ #
840
951
  # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CustomLineItemListElement AWS API Documentation
841
952
  #
842
953
  class CustomLineItemListElement < Struct.new(
@@ -849,7 +960,8 @@ module Aws::BillingConductor
849
960
  :billing_group_arn,
850
961
  :creation_time,
851
962
  :last_modified_time,
852
- :association_size)
963
+ :association_size,
964
+ :account_id)
853
965
  SENSITIVE = [:name, :description]
854
966
  include Aws::Structure
855
967
  end
@@ -934,6 +1046,11 @@ module Aws::BillingConductor
934
1046
  # The inclusive start time.
935
1047
  # @return [Integer]
936
1048
  #
1049
+ # @!attribute [rw] account_id
1050
+ # The Amazon Web Services account in which this custom line item will
1051
+ # be applied to.
1052
+ # @return [String]
1053
+ #
937
1054
  # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/CustomLineItemVersionListElement AWS API Documentation
938
1055
  #
939
1056
  class CustomLineItemVersionListElement < Struct.new(
@@ -949,7 +1066,8 @@ module Aws::BillingConductor
949
1066
  :start_billing_period,
950
1067
  :end_billing_period,
951
1068
  :arn,
952
- :start_time)
1069
+ :start_time,
1070
+ :account_id)
953
1071
  SENSITIVE = [:name, :description]
954
1072
  include Aws::Structure
955
1073
  end
@@ -998,7 +1116,7 @@ module Aws::BillingConductor
998
1116
  end
999
1117
 
1000
1118
  # @!attribute [rw] arn
1001
- # Then ARN of the deleted custom line item.
1119
+ # The ARN of the deleted custom line item.
1002
1120
  # @return [String]
1003
1121
  #
1004
1122
  # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/DeleteCustomLineItemOutput AWS API Documentation
@@ -1156,6 +1274,60 @@ module Aws::BillingConductor
1156
1274
  include Aws::Structure
1157
1275
  end
1158
1276
 
1277
+ # @!attribute [rw] arn
1278
+ # The Amazon Resource Number (ARN) that uniquely identifies the
1279
+ # billing group.
1280
+ # @return [String]
1281
+ #
1282
+ # @!attribute [rw] billing_period_range
1283
+ # A time range for which the margin summary is effective. You can
1284
+ # specify up to 12 months.
1285
+ # @return [Types::BillingPeriodRange]
1286
+ #
1287
+ # @!attribute [rw] group_by
1288
+ # A list of strings that specify the attributes that are used to break
1289
+ # down costs in the margin summary reports for the billing group. For
1290
+ # example, you can view your costs by the Amazon Web Service name or
1291
+ # the billing period.
1292
+ # @return [Array<String>]
1293
+ #
1294
+ # @!attribute [rw] max_results
1295
+ # The maximum number of margin summary reports to retrieve.
1296
+ # @return [Integer]
1297
+ #
1298
+ # @!attribute [rw] next_token
1299
+ # The pagination token used on subsequent calls to get reports.
1300
+ # @return [String]
1301
+ #
1302
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/GetBillingGroupCostReportInput AWS API Documentation
1303
+ #
1304
+ class GetBillingGroupCostReportInput < Struct.new(
1305
+ :arn,
1306
+ :billing_period_range,
1307
+ :group_by,
1308
+ :max_results,
1309
+ :next_token)
1310
+ SENSITIVE = []
1311
+ include Aws::Structure
1312
+ end
1313
+
1314
+ # @!attribute [rw] billing_group_cost_report_results
1315
+ # The list of margin summary reports.
1316
+ # @return [Array<Types::BillingGroupCostReportResultElement>]
1317
+ #
1318
+ # @!attribute [rw] next_token
1319
+ # The pagination token used on subsequent calls to get reports.
1320
+ # @return [String]
1321
+ #
1322
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/GetBillingGroupCostReportOutput AWS API Documentation
1323
+ #
1324
+ class GetBillingGroupCostReportOutput < Struct.new(
1325
+ :billing_group_cost_report_results,
1326
+ :next_token)
1327
+ SENSITIVE = []
1328
+ include Aws::Structure
1329
+ end
1330
+
1159
1331
  # An unexpected error occurred while processing a request.
1160
1332
  #
1161
1333
  # @!attribute [rw] message
@@ -1621,12 +1793,18 @@ module Aws::BillingConductor
1621
1793
  # A list of custom line item ARNs to retrieve information.
1622
1794
  # @return [Array<String>]
1623
1795
  #
1796
+ # @!attribute [rw] account_ids
1797
+ # The Amazon Web Services accounts in which this custom line item will
1798
+ # be applied to.
1799
+ # @return [Array<String>]
1800
+ #
1624
1801
  # @see http://docs.aws.amazon.com/goto/WebAPI/billingconductor-2021-07-30/ListCustomLineItemsFilter AWS API Documentation
1625
1802
  #
1626
1803
  class ListCustomLineItemsFilter < Struct.new(
1627
1804
  :names,
1628
1805
  :billing_groups,
1629
- :arns)
1806
+ :arns,
1807
+ :account_ids)
1630
1808
  SENSITIVE = []
1631
1809
  include Aws::Structure
1632
1810
  end
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-billingconductor/customizations'
53
53
  # @!group service
54
54
  module Aws::BillingConductor
55
55
 
56
- GEM_VERSION = '1.17.0'
56
+ GEM_VERSION = '1.19.0'
57
57
 
58
58
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-billingconductor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.17.0
4
+ version: 1.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-28 00:00:00.000000000 Z
11
+ date: 2023-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core