aws-sdk-billing 1.13.0 → 1.14.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc7ef46cb52259ef4ca21be32f4e6a1c43e622354efdf9d55dce5175e464619b
4
- data.tar.gz: ab9065dd804bb95a31f4cbb178948a5828ea05ded13364b235f0baa87490ac1e
3
+ metadata.gz: d2bc93a502bd0e0302d15168198648a4606b4a62d625fe0bc96cced5993a5bc3
4
+ data.tar.gz: 87c78d11b9e8605ccec50061af8fc804c4ba8af0b2418d093a510f1927429d0b
5
5
  SHA512:
6
- metadata.gz: caf36fff967b91ed70c3f81db68e56cb430729ae256e782e7a659eda43118c750a65bd05849d69eb37a2048dff32796b9e9d43fc7d74b4607db2bcaf80d46e66
7
- data.tar.gz: b14de3e1400176b7db2f16e67f56a92e0198548950cfda7dd4913d74641a7db6b3cbc2353b67791830c1cf824956841af8138376b832f40570f2bfab25ab98b3
6
+ metadata.gz: 5fe643ec2ae6a32933f2c80750f5d0dccd5b512c7079feb3fc9fb19a3b24c04680ae8d26dea3ef3c284a9f25a05543e27279a679af0b7e216403e5f7e86dc1ac
7
+ data.tar.gz: 6f012d463f1ab17ca1b7e965b724422e230b10d5caa881ef29207ece3b10bdb00be00860a860987a94a1b47caace3f8a79ac422d7f9bbcc18bec0ed4659c7a40
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.14.0 (2025-09-26)
5
+ ------------------
6
+
7
+ * Feature - Add ability to combine custom billing views to create new consolidated views.
8
+
4
9
  1.13.0 (2025-08-26)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.13.0
1
+ 1.14.0
@@ -483,6 +483,57 @@ module Aws::Billing
483
483
 
484
484
  # @!group API Operations
485
485
 
486
+ # Associates one or more source billing views with an existing billing
487
+ # view. This allows creating aggregate billing views that combine data
488
+ # from multiple sources.
489
+ #
490
+ # @option params [required, String] :arn
491
+ # The Amazon Resource Name (ARN) of the billing view to associate source
492
+ # views with.
493
+ #
494
+ # @option params [required, Array<String>] :source_views
495
+ # A list of ARNs of the source billing views to associate.
496
+ #
497
+ # @return [Types::AssociateSourceViewsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
498
+ #
499
+ # * {Types::AssociateSourceViewsResponse#arn #arn} => String
500
+ #
501
+ #
502
+ # @example Example: Invoke AssociateSourceViews
503
+ #
504
+ # resp = client.associate_source_views({
505
+ # arn: "arn:aws:billing::123456789012:billingview/custom-46f47cb2-a11d-43f3-983d-470b5708a899",
506
+ # source_views: [
507
+ # "arn:aws:billing::123456789012:billingview/primary",
508
+ # "arn:aws:billing::123456789012:billingview/custom-d3f9c7e4-8b2f-4a6e-9d3b-2f7c8a1e5f6d",
509
+ # ],
510
+ # })
511
+ #
512
+ # resp.to_h outputs the following:
513
+ # {
514
+ # arn: "arn:aws:billing::123456789012:billingview/custom-46f47cb2-a11d-43f3-983d-470b5708a899",
515
+ # }
516
+ #
517
+ # @example Request syntax with placeholder values
518
+ #
519
+ # resp = client.associate_source_views({
520
+ # arn: "BillingViewArn", # required
521
+ # source_views: ["BillingViewArn"], # required
522
+ # })
523
+ #
524
+ # @example Response structure
525
+ #
526
+ # resp.arn #=> String
527
+ #
528
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/AssociateSourceViews AWS API Documentation
529
+ #
530
+ # @overload associate_source_views(params = {})
531
+ # @param [Hash] params ({})
532
+ def associate_source_views(params = {}, options = {})
533
+ req = build_request(:associate_source_views, params)
534
+ req.send_request(options)
535
+ end
536
+
486
537
  # Creates a billing view with the specified billing view attributes.
487
538
  #
488
539
  # @option params [required, String] :name
@@ -562,6 +613,10 @@ module Aws::Billing
562
613
  # key: "TagKey", # required
563
614
  # values: ["Value"], # required
564
615
  # },
616
+ # time_range: {
617
+ # begin_date_inclusive: Time.now,
618
+ # end_date_inclusive: Time.now,
619
+ # },
565
620
  # },
566
621
  # client_token: "ClientToken",
567
622
  # resource_tags: [
@@ -592,6 +647,11 @@ module Aws::Billing
592
647
  # The Amazon Resource Name (ARN) that can be used to uniquely identify
593
648
  # the billing view.
594
649
  #
650
+ # @option params [Boolean] :force
651
+ # If set to true, forces deletion of the billing view even if it has
652
+ # derived resources (e.g. other billing views or budgets). Use with
653
+ # caution as this may break dependent resources.
654
+ #
595
655
  # @return [Types::DeleteBillingViewResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
596
656
  #
597
657
  # * {Types::DeleteBillingViewResponse#arn #arn} => String
@@ -612,6 +672,7 @@ module Aws::Billing
612
672
  #
613
673
  # resp = client.delete_billing_view({
614
674
  # arn: "BillingViewArn", # required
675
+ # force: false,
615
676
  # })
616
677
  #
617
678
  # @example Response structure
@@ -627,6 +688,57 @@ module Aws::Billing
627
688
  req.send_request(options)
628
689
  end
629
690
 
691
+ # Removes the association between one or more source billing views and
692
+ # an existing billing view. This allows modifying the composition of
693
+ # aggregate billing views.
694
+ #
695
+ # @option params [required, String] :arn
696
+ # The Amazon Resource Name (ARN) of the billing view to disassociate
697
+ # source views from.
698
+ #
699
+ # @option params [required, Array<String>] :source_views
700
+ # A list of ARNs of the source billing views to disassociate.
701
+ #
702
+ # @return [Types::DisassociateSourceViewsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
703
+ #
704
+ # * {Types::DisassociateSourceViewsResponse#arn #arn} => String
705
+ #
706
+ #
707
+ # @example Example: Invoke DisassociateSourceViews
708
+ #
709
+ # resp = client.disassociate_source_views({
710
+ # arn: "arn:aws:billing::123456789012:billingview/custom-46f47cb2-a11d-43f3-983d-470b5708a899",
711
+ # source_views: [
712
+ # "arn:aws:billing::123456789012:billingview/primary",
713
+ # "arn:aws:billing::123456789012:billingview/custom-d3f9c7e4-8b2f-4a6e-9d3b-2f7c8a1e5f6d",
714
+ # ],
715
+ # })
716
+ #
717
+ # resp.to_h outputs the following:
718
+ # {
719
+ # arn: "arn:aws:billing::123456789012:billingview/custom-46f47cb2-a11d-43f3-983d-470b5708a899",
720
+ # }
721
+ #
722
+ # @example Request syntax with placeholder values
723
+ #
724
+ # resp = client.disassociate_source_views({
725
+ # arn: "BillingViewArn", # required
726
+ # source_views: ["BillingViewArn"], # required
727
+ # })
728
+ #
729
+ # @example Response structure
730
+ #
731
+ # resp.arn #=> String
732
+ #
733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/DisassociateSourceViews AWS API Documentation
734
+ #
735
+ # @overload disassociate_source_views(params = {})
736
+ # @param [Hash] params ({})
737
+ def disassociate_source_views(params = {}, options = {})
738
+ req = build_request(:disassociate_source_views, params)
739
+ req.send_request(options)
740
+ end
741
+
630
742
  # Returns the metadata associated to the specified billing view ARN.
631
743
  #
632
744
  # @option params [required, String] :arn
@@ -676,14 +788,23 @@ module Aws::Billing
676
788
  # resp.billing_view.description #=> String
677
789
  # resp.billing_view.billing_view_type #=> String, one of "PRIMARY", "BILLING_GROUP", "CUSTOM"
678
790
  # resp.billing_view.owner_account_id #=> String
791
+ # resp.billing_view.source_account_id #=> String
679
792
  # resp.billing_view.data_filter_expression.dimensions.key #=> String, one of "LINKED_ACCOUNT"
680
793
  # resp.billing_view.data_filter_expression.dimensions.values #=> Array
681
794
  # resp.billing_view.data_filter_expression.dimensions.values[0] #=> String
682
795
  # resp.billing_view.data_filter_expression.tags.key #=> String
683
796
  # resp.billing_view.data_filter_expression.tags.values #=> Array
684
797
  # resp.billing_view.data_filter_expression.tags.values[0] #=> String
798
+ # resp.billing_view.data_filter_expression.time_range.begin_date_inclusive #=> Time
799
+ # resp.billing_view.data_filter_expression.time_range.end_date_inclusive #=> Time
685
800
  # resp.billing_view.created_at #=> Time
686
801
  # resp.billing_view.updated_at #=> Time
802
+ # resp.billing_view.derived_view_count #=> Integer
803
+ # resp.billing_view.source_view_count #=> Integer
804
+ # resp.billing_view.view_definition_last_updated_at #=> Time
805
+ # resp.billing_view.health_status.status_code #=> String, one of "HEALTHY", "UNHEALTHY", "CREATING", "UPDATING"
806
+ # resp.billing_view.health_status.status_reasons #=> Array
807
+ # resp.billing_view.health_status.status_reasons[0] #=> String, one of "SOURCE_VIEW_UNHEALTHY", "SOURCE_VIEW_UPDATING", "SOURCE_VIEW_ACCESS_DENIED", "SOURCE_VIEW_NOT_FOUND", "CYCLIC_DEPENDENCY", "SOURCE_VIEW_DEPTH_EXCEEDED", "AGGREGATE_SOURCE", "VIEW_OWNER_NOT_MANAGEMENT_ACCOUNT"
687
808
  #
688
809
  # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/GetBillingView AWS API Documentation
689
810
  #
@@ -763,6 +884,10 @@ module Aws::Billing
763
884
  # @option params [String] :owner_account_id
764
885
  # The list of owners of the billing view.
765
886
  #
887
+ # @option params [String] :source_account_id
888
+ # Filters the results to include only billing views that use the
889
+ # specified account as a source.
890
+ #
766
891
  # @option params [Integer] :max_results
767
892
  # The maximum number of billing views to retrieve. Default is 100.
768
893
  #
@@ -818,6 +943,7 @@ module Aws::Billing
818
943
  # arns: ["BillingViewArn"],
819
944
  # billing_view_types: ["PRIMARY"], # accepts PRIMARY, BILLING_GROUP, CUSTOM
820
945
  # owner_account_id: "AccountId",
946
+ # source_account_id: "AccountId",
821
947
  # max_results: 1,
822
948
  # next_token: "PageToken",
823
949
  # })
@@ -829,7 +955,11 @@ module Aws::Billing
829
955
  # resp.billing_views[0].name #=> String
830
956
  # resp.billing_views[0].description #=> String
831
957
  # resp.billing_views[0].owner_account_id #=> String
958
+ # resp.billing_views[0].source_account_id #=> String
832
959
  # resp.billing_views[0].billing_view_type #=> String, one of "PRIMARY", "BILLING_GROUP", "CUSTOM"
960
+ # resp.billing_views[0].health_status.status_code #=> String, one of "HEALTHY", "UNHEALTHY", "CREATING", "UPDATING"
961
+ # resp.billing_views[0].health_status.status_reasons #=> Array
962
+ # resp.billing_views[0].health_status.status_reasons[0] #=> String, one of "SOURCE_VIEW_UNHEALTHY", "SOURCE_VIEW_UPDATING", "SOURCE_VIEW_ACCESS_DENIED", "SOURCE_VIEW_NOT_FOUND", "CYCLIC_DEPENDENCY", "SOURCE_VIEW_DEPTH_EXCEEDED", "AGGREGATE_SOURCE", "VIEW_OWNER_NOT_MANAGEMENT_ACCOUNT"
833
963
  # resp.next_token #=> String
834
964
  #
835
965
  # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/ListBillingViews AWS API Documentation
@@ -1099,6 +1229,10 @@ module Aws::Billing
1099
1229
  # key: "TagKey", # required
1100
1230
  # values: ["Value"], # required
1101
1231
  # },
1232
+ # time_range: {
1233
+ # begin_date_inclusive: Time.now,
1234
+ # end_date_inclusive: Time.now,
1235
+ # },
1102
1236
  # },
1103
1237
  # })
1104
1238
  #
@@ -1134,7 +1268,7 @@ module Aws::Billing
1134
1268
  tracer: tracer
1135
1269
  )
1136
1270
  context[:gem_name] = 'aws-sdk-billing'
1137
- context[:gem_version] = '1.13.0'
1271
+ context[:gem_version] = '1.14.0'
1138
1272
  Seahorse::Client::Request.new(handlers, context)
1139
1273
  end
1140
1274
 
@@ -17,17 +17,25 @@ module Aws::Billing
17
17
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
18
18
  AccountId = Shapes::StringShape.new(name: 'AccountId')
19
19
  ActiveTimeRange = Shapes::StructureShape.new(name: 'ActiveTimeRange')
20
+ AssociateSourceViewsRequest = Shapes::StructureShape.new(name: 'AssociateSourceViewsRequest')
21
+ AssociateSourceViewsResponse = Shapes::StructureShape.new(name: 'AssociateSourceViewsResponse')
20
22
  BillingViewArn = Shapes::StringShape.new(name: 'BillingViewArn')
21
23
  BillingViewArnList = Shapes::ListShape.new(name: 'BillingViewArnList')
22
24
  BillingViewDescription = Shapes::StringShape.new(name: 'BillingViewDescription')
23
25
  BillingViewElement = Shapes::StructureShape.new(name: 'BillingViewElement')
26
+ BillingViewHealthStatus = Shapes::StructureShape.new(name: 'BillingViewHealthStatus')
27
+ BillingViewHealthStatusException = Shapes::StructureShape.new(name: 'BillingViewHealthStatusException')
24
28
  BillingViewList = Shapes::ListShape.new(name: 'BillingViewList')
25
29
  BillingViewListElement = Shapes::StructureShape.new(name: 'BillingViewListElement')
26
30
  BillingViewName = Shapes::StringShape.new(name: 'BillingViewName')
27
31
  BillingViewSourceViewsList = Shapes::ListShape.new(name: 'BillingViewSourceViewsList')
32
+ BillingViewStatus = Shapes::StringShape.new(name: 'BillingViewStatus')
33
+ BillingViewStatusReason = Shapes::StringShape.new(name: 'BillingViewStatusReason')
34
+ BillingViewStatusReasons = Shapes::ListShape.new(name: 'BillingViewStatusReasons')
28
35
  BillingViewType = Shapes::StringShape.new(name: 'BillingViewType')
29
36
  BillingViewTypeList = Shapes::ListShape.new(name: 'BillingViewTypeList')
30
37
  BillingViewsMaxResults = Shapes::IntegerShape.new(name: 'BillingViewsMaxResults')
38
+ Boolean = Shapes::BooleanShape.new(name: 'Boolean')
31
39
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
32
40
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
33
41
  CreateBillingViewRequest = Shapes::StructureShape.new(name: 'CreateBillingViewRequest')
@@ -36,6 +44,8 @@ module Aws::Billing
36
44
  DeleteBillingViewResponse = Shapes::StructureShape.new(name: 'DeleteBillingViewResponse')
37
45
  Dimension = Shapes::StringShape.new(name: 'Dimension')
38
46
  DimensionValues = Shapes::StructureShape.new(name: 'DimensionValues')
47
+ DisassociateSourceViewsRequest = Shapes::StructureShape.new(name: 'DisassociateSourceViewsRequest')
48
+ DisassociateSourceViewsResponse = Shapes::StructureShape.new(name: 'DisassociateSourceViewsResponse')
39
49
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
40
50
  Expression = Shapes::StructureShape.new(name: 'Expression')
41
51
  FieldName = Shapes::StringShape.new(name: 'FieldName')
@@ -43,6 +53,7 @@ module Aws::Billing
43
53
  GetBillingViewResponse = Shapes::StructureShape.new(name: 'GetBillingViewResponse')
44
54
  GetResourcePolicyRequest = Shapes::StructureShape.new(name: 'GetResourcePolicyRequest')
45
55
  GetResourcePolicyResponse = Shapes::StructureShape.new(name: 'GetResourcePolicyResponse')
56
+ Integer = Shapes::IntegerShape.new(name: 'Integer')
46
57
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
47
58
  ListBillingViewsRequest = Shapes::StructureShape.new(name: 'ListBillingViewsRequest')
48
59
  ListBillingViewsResponse = Shapes::StructureShape.new(name: 'ListBillingViewsResponse')
@@ -69,6 +80,7 @@ module Aws::Billing
69
80
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
70
81
  TagValues = Shapes::StructureShape.new(name: 'TagValues')
71
82
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
83
+ TimeRange = Shapes::StructureShape.new(name: 'TimeRange')
72
84
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
73
85
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
74
86
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
@@ -88,6 +100,13 @@ module Aws::Billing
88
100
  ActiveTimeRange.add_member(:active_before_inclusive, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "activeBeforeInclusive"))
89
101
  ActiveTimeRange.struct_class = Types::ActiveTimeRange
90
102
 
103
+ AssociateSourceViewsRequest.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, required: true, location_name: "arn"))
104
+ AssociateSourceViewsRequest.add_member(:source_views, Shapes::ShapeRef.new(shape: BillingViewSourceViewsList, required: true, location_name: "sourceViews"))
105
+ AssociateSourceViewsRequest.struct_class = Types::AssociateSourceViewsRequest
106
+
107
+ AssociateSourceViewsResponse.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, required: true, location_name: "arn"))
108
+ AssociateSourceViewsResponse.struct_class = Types::AssociateSourceViewsResponse
109
+
91
110
  BillingViewArnList.member = Shapes::ShapeRef.new(shape: BillingViewArn)
92
111
 
93
112
  BillingViewElement.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, location_name: "arn"))
@@ -95,22 +114,38 @@ module Aws::Billing
95
114
  BillingViewElement.add_member(:description, Shapes::ShapeRef.new(shape: BillingViewDescription, location_name: "description"))
96
115
  BillingViewElement.add_member(:billing_view_type, Shapes::ShapeRef.new(shape: BillingViewType, location_name: "billingViewType"))
97
116
  BillingViewElement.add_member(:owner_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "ownerAccountId"))
117
+ BillingViewElement.add_member(:source_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "sourceAccountId"))
98
118
  BillingViewElement.add_member(:data_filter_expression, Shapes::ShapeRef.new(shape: Expression, location_name: "dataFilterExpression"))
99
119
  BillingViewElement.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdAt"))
100
120
  BillingViewElement.add_member(:updated_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "updatedAt"))
121
+ BillingViewElement.add_member(:derived_view_count, Shapes::ShapeRef.new(shape: Integer, location_name: "derivedViewCount"))
122
+ BillingViewElement.add_member(:source_view_count, Shapes::ShapeRef.new(shape: Integer, location_name: "sourceViewCount"))
123
+ BillingViewElement.add_member(:view_definition_last_updated_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "viewDefinitionLastUpdatedAt"))
124
+ BillingViewElement.add_member(:health_status, Shapes::ShapeRef.new(shape: BillingViewHealthStatus, location_name: "healthStatus"))
101
125
  BillingViewElement.struct_class = Types::BillingViewElement
102
126
 
127
+ BillingViewHealthStatus.add_member(:status_code, Shapes::ShapeRef.new(shape: BillingViewStatus, location_name: "statusCode"))
128
+ BillingViewHealthStatus.add_member(:status_reasons, Shapes::ShapeRef.new(shape: BillingViewStatusReasons, location_name: "statusReasons"))
129
+ BillingViewHealthStatus.struct_class = Types::BillingViewHealthStatus
130
+
131
+ BillingViewHealthStatusException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
132
+ BillingViewHealthStatusException.struct_class = Types::BillingViewHealthStatusException
133
+
103
134
  BillingViewList.member = Shapes::ShapeRef.new(shape: BillingViewListElement)
104
135
 
105
136
  BillingViewListElement.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, location_name: "arn"))
106
137
  BillingViewListElement.add_member(:name, Shapes::ShapeRef.new(shape: BillingViewName, location_name: "name"))
107
138
  BillingViewListElement.add_member(:description, Shapes::ShapeRef.new(shape: BillingViewDescription, location_name: "description"))
108
139
  BillingViewListElement.add_member(:owner_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "ownerAccountId"))
140
+ BillingViewListElement.add_member(:source_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "sourceAccountId"))
109
141
  BillingViewListElement.add_member(:billing_view_type, Shapes::ShapeRef.new(shape: BillingViewType, location_name: "billingViewType"))
142
+ BillingViewListElement.add_member(:health_status, Shapes::ShapeRef.new(shape: BillingViewHealthStatus, location_name: "healthStatus"))
110
143
  BillingViewListElement.struct_class = Types::BillingViewListElement
111
144
 
112
145
  BillingViewSourceViewsList.member = Shapes::ShapeRef.new(shape: BillingViewArn)
113
146
 
147
+ BillingViewStatusReasons.member = Shapes::ShapeRef.new(shape: BillingViewStatusReason)
148
+
114
149
  BillingViewTypeList.member = Shapes::ShapeRef.new(shape: BillingViewType)
115
150
 
116
151
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
@@ -131,6 +166,7 @@ module Aws::Billing
131
166
  CreateBillingViewResponse.struct_class = Types::CreateBillingViewResponse
132
167
 
133
168
  DeleteBillingViewRequest.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, required: true, location_name: "arn"))
169
+ DeleteBillingViewRequest.add_member(:force, Shapes::ShapeRef.new(shape: Boolean, location_name: "force"))
134
170
  DeleteBillingViewRequest.struct_class = Types::DeleteBillingViewRequest
135
171
 
136
172
  DeleteBillingViewResponse.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, required: true, location_name: "arn"))
@@ -140,8 +176,16 @@ module Aws::Billing
140
176
  DimensionValues.add_member(:values, Shapes::ShapeRef.new(shape: Values, required: true, location_name: "values"))
141
177
  DimensionValues.struct_class = Types::DimensionValues
142
178
 
179
+ DisassociateSourceViewsRequest.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, required: true, location_name: "arn"))
180
+ DisassociateSourceViewsRequest.add_member(:source_views, Shapes::ShapeRef.new(shape: BillingViewSourceViewsList, required: true, location_name: "sourceViews"))
181
+ DisassociateSourceViewsRequest.struct_class = Types::DisassociateSourceViewsRequest
182
+
183
+ DisassociateSourceViewsResponse.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, required: true, location_name: "arn"))
184
+ DisassociateSourceViewsResponse.struct_class = Types::DisassociateSourceViewsResponse
185
+
143
186
  Expression.add_member(:dimensions, Shapes::ShapeRef.new(shape: DimensionValues, location_name: "dimensions"))
144
187
  Expression.add_member(:tags, Shapes::ShapeRef.new(shape: TagValues, location_name: "tags"))
188
+ Expression.add_member(:time_range, Shapes::ShapeRef.new(shape: TimeRange, location_name: "timeRange"))
145
189
  Expression.struct_class = Types::Expression
146
190
 
147
191
  GetBillingViewRequest.add_member(:arn, Shapes::ShapeRef.new(shape: BillingViewArn, required: true, location_name: "arn"))
@@ -164,6 +208,7 @@ module Aws::Billing
164
208
  ListBillingViewsRequest.add_member(:arns, Shapes::ShapeRef.new(shape: BillingViewArnList, location_name: "arns"))
165
209
  ListBillingViewsRequest.add_member(:billing_view_types, Shapes::ShapeRef.new(shape: BillingViewTypeList, location_name: "billingViewTypes"))
166
210
  ListBillingViewsRequest.add_member(:owner_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "ownerAccountId"))
211
+ ListBillingViewsRequest.add_member(:source_account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "sourceAccountId"))
167
212
  ListBillingViewsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: BillingViewsMaxResults, location_name: "maxResults"))
168
213
  ListBillingViewsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PageToken, location_name: "nextToken"))
169
214
  ListBillingViewsRequest.struct_class = Types::ListBillingViewsRequest
@@ -220,6 +265,10 @@ module Aws::Billing
220
265
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
221
266
  ThrottlingException.struct_class = Types::ThrottlingException
222
267
 
268
+ TimeRange.add_member(:begin_date_inclusive, Shapes::ShapeRef.new(shape: Timestamp, location_name: "beginDateInclusive"))
269
+ TimeRange.add_member(:end_date_inclusive, Shapes::ShapeRef.new(shape: Timestamp, location_name: "endDateInclusive"))
270
+ TimeRange.struct_class = Types::TimeRange
271
+
223
272
  UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "resourceArn"))
224
273
  UntagResourceRequest.add_member(:resource_tag_keys, Shapes::ShapeRef.new(shape: ResourceTagKeyList, required: true, location_name: "resourceTagKeys"))
225
274
  UntagResourceRequest.struct_class = Types::UntagResourceRequest
@@ -270,14 +319,32 @@ module Aws::Billing
270
319
  "uid" => "billing-2023-09-07",
271
320
  }
272
321
 
322
+ api.add_operation(:associate_source_views, Seahorse::Model::Operation.new.tap do |o|
323
+ o.name = "AssociateSourceViews"
324
+ o.http_method = "POST"
325
+ o.http_request_uri = "/"
326
+ o.input = Shapes::ShapeRef.new(shape: AssociateSourceViewsRequest)
327
+ o.output = Shapes::ShapeRef.new(shape: AssociateSourceViewsResponse)
328
+ o.errors << Shapes::ShapeRef.new(shape: BillingViewHealthStatusException)
329
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
330
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
331
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
332
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
333
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
334
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
335
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
336
+ end)
337
+
273
338
  api.add_operation(:create_billing_view, Seahorse::Model::Operation.new.tap do |o|
274
339
  o.name = "CreateBillingView"
275
340
  o.http_method = "POST"
276
341
  o.http_request_uri = "/"
277
342
  o.input = Shapes::ShapeRef.new(shape: CreateBillingViewRequest)
278
343
  o.output = Shapes::ShapeRef.new(shape: CreateBillingViewResponse)
344
+ o.errors << Shapes::ShapeRef.new(shape: BillingViewHealthStatusException)
279
345
  o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
280
346
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
347
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
281
348
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
282
349
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
283
350
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
@@ -297,6 +364,21 @@ module Aws::Billing
297
364
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
298
365
  end)
299
366
 
367
+ api.add_operation(:disassociate_source_views, Seahorse::Model::Operation.new.tap do |o|
368
+ o.name = "DisassociateSourceViews"
369
+ o.http_method = "POST"
370
+ o.http_request_uri = "/"
371
+ o.input = Shapes::ShapeRef.new(shape: DisassociateSourceViewsRequest)
372
+ o.output = Shapes::ShapeRef.new(shape: DisassociateSourceViewsResponse)
373
+ o.errors << Shapes::ShapeRef.new(shape: BillingViewHealthStatusException)
374
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
375
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
376
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
377
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
378
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
379
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
380
+ end)
381
+
300
382
  api.add_operation(:get_billing_view, Seahorse::Model::Operation.new.tap do |o|
301
383
  o.name = "GetBillingView"
302
384
  o.http_method = "POST"
@@ -405,6 +487,7 @@ module Aws::Billing
405
487
  o.http_request_uri = "/"
406
488
  o.input = Shapes::ShapeRef.new(shape: UpdateBillingViewRequest)
407
489
  o.output = Shapes::ShapeRef.new(shape: UpdateBillingViewResponse)
490
+ o.errors << Shapes::ShapeRef.new(shape: BillingViewHealthStatusException)
408
491
  o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
409
492
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
410
493
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
@@ -28,6 +28,7 @@ module Aws::Billing
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {AccessDeniedException}
31
+ # * {BillingViewHealthStatusException}
31
32
  # * {ConflictException}
32
33
  # * {InternalServerException}
33
34
  # * {ResourceNotFoundException}
@@ -56,6 +57,21 @@ module Aws::Billing
56
57
  end
57
58
  end
58
59
 
60
+ class BillingViewHealthStatusException < ServiceError
61
+
62
+ # @param [Seahorse::Client::RequestContext] context
63
+ # @param [String] message
64
+ # @param [Aws::Billing::Types::BillingViewHealthStatusException] data
65
+ def initialize(context, message, data = Aws::EmptyStructure.new)
66
+ super(context, message, data)
67
+ end
68
+
69
+ # @return [String]
70
+ def message
71
+ @message || @data[:message]
72
+ end
73
+ end
74
+
59
75
  class ConflictException < ServiceError
60
76
 
61
77
  # @param [Seahorse::Client::RequestContext] context
@@ -42,6 +42,37 @@ module Aws::Billing
42
42
  include Aws::Structure
43
43
  end
44
44
 
45
+ # @!attribute [rw] arn
46
+ # The Amazon Resource Name (ARN) of the billing view to associate
47
+ # source views with.
48
+ # @return [String]
49
+ #
50
+ # @!attribute [rw] source_views
51
+ # A list of ARNs of the source billing views to associate.
52
+ # @return [Array<String>]
53
+ #
54
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/AssociateSourceViewsRequest AWS API Documentation
55
+ #
56
+ class AssociateSourceViewsRequest < Struct.new(
57
+ :arn,
58
+ :source_views)
59
+ SENSITIVE = []
60
+ include Aws::Structure
61
+ end
62
+
63
+ # @!attribute [rw] arn
64
+ # The ARN of the billing view that the source views were associated
65
+ # with.
66
+ # @return [String]
67
+ #
68
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/AssociateSourceViewsResponse AWS API Documentation
69
+ #
70
+ class AssociateSourceViewsResponse < Struct.new(
71
+ :arn)
72
+ SENSITIVE = []
73
+ include Aws::Structure
74
+ end
75
+
45
76
  # The metadata associated to the billing view.
46
77
  #
47
78
  # @!attribute [rw] arn
@@ -65,6 +96,11 @@ module Aws::Billing
65
96
  # The account owner of the billing view.
66
97
  # @return [String]
67
98
  #
99
+ # @!attribute [rw] source_account_id
100
+ # The Amazon Web Services account ID that owns the source billing
101
+ # view, if this is a derived billing view.
102
+ # @return [String]
103
+ #
68
104
  # @!attribute [rw] data_filter_expression
69
105
  # See [Expression][1]. Billing view only supports `LINKED_ACCOUNT` and
70
106
  # `Tags`.
@@ -82,6 +118,22 @@ module Aws::Billing
82
118
  # The time when the billing view was last updated.
83
119
  # @return [Time]
84
120
  #
121
+ # @!attribute [rw] derived_view_count
122
+ # The number of billing views that use this billing view as a source.
123
+ # @return [Integer]
124
+ #
125
+ # @!attribute [rw] source_view_count
126
+ # The number of source views associated with this billing view.
127
+ # @return [Integer]
128
+ #
129
+ # @!attribute [rw] view_definition_last_updated_at
130
+ # The timestamp of when the billing view definition was last updated.
131
+ # @return [Time]
132
+ #
133
+ # @!attribute [rw] health_status
134
+ # The current health status of the billing view.
135
+ # @return [Types::BillingViewHealthStatus]
136
+ #
85
137
  # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/BillingViewElement AWS API Documentation
86
138
  #
87
139
  class BillingViewElement < Struct.new(
@@ -90,13 +142,54 @@ module Aws::Billing
90
142
  :description,
91
143
  :billing_view_type,
92
144
  :owner_account_id,
145
+ :source_account_id,
93
146
  :data_filter_expression,
94
147
  :created_at,
95
- :updated_at)
148
+ :updated_at,
149
+ :derived_view_count,
150
+ :source_view_count,
151
+ :view_definition_last_updated_at,
152
+ :health_status)
96
153
  SENSITIVE = [:name, :description]
97
154
  include Aws::Structure
98
155
  end
99
156
 
157
+ # Represents the health status of a billing view, including a status
158
+ # code and optional reasons for the status.
159
+ #
160
+ # @!attribute [rw] status_code
161
+ # The current health status code of the billing view.
162
+ # @return [String]
163
+ #
164
+ # @!attribute [rw] status_reasons
165
+ # A list of reasons explaining the current health status, if
166
+ # applicable.
167
+ # @return [Array<String>]
168
+ #
169
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/BillingViewHealthStatus AWS API Documentation
170
+ #
171
+ class BillingViewHealthStatus < Struct.new(
172
+ :status_code,
173
+ :status_reasons)
174
+ SENSITIVE = []
175
+ include Aws::Structure
176
+ end
177
+
178
+ # Exception thrown when a billing view's health status prevents an
179
+ # operation from being performed. This may occur if the billing view is
180
+ # in a state other than `HEALTHY`.
181
+ #
182
+ # @!attribute [rw] message
183
+ # @return [String]
184
+ #
185
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/BillingViewHealthStatusException AWS API Documentation
186
+ #
187
+ class BillingViewHealthStatusException < Struct.new(
188
+ :message)
189
+ SENSITIVE = []
190
+ include Aws::Structure
191
+ end
192
+
100
193
  # A representation of a billing view.
101
194
  #
102
195
  # @!attribute [rw] arn
@@ -116,10 +209,19 @@ module Aws::Billing
116
209
  # The list of owners of the Billing view.
117
210
  # @return [String]
118
211
  #
212
+ # @!attribute [rw] source_account_id
213
+ # The Amazon Web Services account ID that owns the source billing
214
+ # view, if this is a derived billing view.
215
+ # @return [String]
216
+ #
119
217
  # @!attribute [rw] billing_view_type
120
218
  # The type of billing view.
121
219
  # @return [String]
122
220
  #
221
+ # @!attribute [rw] health_status
222
+ # The current health status of the billing view.
223
+ # @return [Types::BillingViewHealthStatus]
224
+ #
123
225
  # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/BillingViewListElement AWS API Documentation
124
226
  #
125
227
  class BillingViewListElement < Struct.new(
@@ -127,7 +229,9 @@ module Aws::Billing
127
229
  :name,
128
230
  :description,
129
231
  :owner_account_id,
130
- :billing_view_type)
232
+ :source_account_id,
233
+ :billing_view_type,
234
+ :health_status)
131
235
  SENSITIVE = [:name, :description]
132
236
  include Aws::Structure
133
237
  end
@@ -231,10 +335,17 @@ module Aws::Billing
231
335
  # the billing view.
232
336
  # @return [String]
233
337
  #
338
+ # @!attribute [rw] force
339
+ # If set to true, forces deletion of the billing view even if it has
340
+ # derived resources (e.g. other billing views or budgets). Use with
341
+ # caution as this may break dependent resources.
342
+ # @return [Boolean]
343
+ #
234
344
  # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/DeleteBillingViewRequest AWS API Documentation
235
345
  #
236
346
  class DeleteBillingViewRequest < Struct.new(
237
- :arn)
347
+ :arn,
348
+ :force)
238
349
  SENSITIVE = []
239
350
  include Aws::Structure
240
351
  end
@@ -273,6 +384,37 @@ module Aws::Billing
273
384
  include Aws::Structure
274
385
  end
275
386
 
387
+ # @!attribute [rw] arn
388
+ # The Amazon Resource Name (ARN) of the billing view to disassociate
389
+ # source views from.
390
+ # @return [String]
391
+ #
392
+ # @!attribute [rw] source_views
393
+ # A list of ARNs of the source billing views to disassociate.
394
+ # @return [Array<String>]
395
+ #
396
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/DisassociateSourceViewsRequest AWS API Documentation
397
+ #
398
+ class DisassociateSourceViewsRequest < Struct.new(
399
+ :arn,
400
+ :source_views)
401
+ SENSITIVE = []
402
+ include Aws::Structure
403
+ end
404
+
405
+ # @!attribute [rw] arn
406
+ # The ARN of the billing view that the source views were disassociated
407
+ # from.
408
+ # @return [String]
409
+ #
410
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/DisassociateSourceViewsResponse AWS API Documentation
411
+ #
412
+ class DisassociateSourceViewsResponse < Struct.new(
413
+ :arn)
414
+ SENSITIVE = []
415
+ include Aws::Structure
416
+ end
417
+
276
418
  # See [Expression][1]. Billing view only supports `LINKED_ACCOUNT` and
277
419
  # `Tags`.
278
420
  #
@@ -288,11 +430,16 @@ module Aws::Billing
288
430
  # The specific `Tag` to use for `Expression`.
289
431
  # @return [Types::TagValues]
290
432
  #
433
+ # @!attribute [rw] time_range
434
+ # Specifies a time range filter for the billing view data.
435
+ # @return [Types::TimeRange]
436
+ #
291
437
  # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/Expression AWS API Documentation
292
438
  #
293
439
  class Expression < Struct.new(
294
440
  :dimensions,
295
- :tags)
441
+ :tags,
442
+ :time_range)
296
443
  SENSITIVE = []
297
444
  include Aws::Structure
298
445
  end
@@ -389,6 +536,11 @@ module Aws::Billing
389
536
  # The list of owners of the billing view.
390
537
  # @return [String]
391
538
  #
539
+ # @!attribute [rw] source_account_id
540
+ # Filters the results to include only billing views that use the
541
+ # specified account as a source.
542
+ # @return [String]
543
+ #
392
544
  # @!attribute [rw] max_results
393
545
  # The maximum number of billing views to retrieve. Default is 100.
394
546
  # @return [Integer]
@@ -405,6 +557,7 @@ module Aws::Billing
405
557
  :arns,
406
558
  :billing_view_types,
407
559
  :owner_account_id,
560
+ :source_account_id,
408
561
  :max_results,
409
562
  :next_token)
410
563
  SENSITIVE = []
@@ -625,6 +778,25 @@ module Aws::Billing
625
778
  include Aws::Structure
626
779
  end
627
780
 
781
+ # Specifies a time range with inclusive begin and end dates.
782
+ #
783
+ # @!attribute [rw] begin_date_inclusive
784
+ # The inclusive start date of the time range.
785
+ # @return [Time]
786
+ #
787
+ # @!attribute [rw] end_date_inclusive
788
+ # The inclusive end date of the time range.
789
+ # @return [Time]
790
+ #
791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/billing-2023-09-07/TimeRange AWS API Documentation
792
+ #
793
+ class TimeRange < Struct.new(
794
+ :begin_date_inclusive,
795
+ :end_date_inclusive)
796
+ SENSITIVE = []
797
+ include Aws::Structure
798
+ end
799
+
628
800
  # @!attribute [rw] resource_arn
629
801
  # The Amazon Resource Name (ARN) of the resource.
630
802
  # @return [String]
@@ -23,7 +23,7 @@ Aws::Plugins::GlobalConfiguration.add_identifier(:billing)
23
23
  # structure.
24
24
  #
25
25
  # billing = Aws::Billing::Client.new
26
- # resp = billing.create_billing_view(params)
26
+ # resp = billing.associate_source_views(params)
27
27
  #
28
28
  # See {Client} for more information.
29
29
  #
@@ -55,7 +55,7 @@ module Aws::Billing
55
55
  autoload :EndpointProvider, 'aws-sdk-billing/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-billing/endpoints'
57
57
 
58
- GEM_VERSION = '1.13.0'
58
+ GEM_VERSION = '1.14.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -79,6 +79,17 @@ module Aws
79
79
  | (?Hash[Symbol, untyped]) -> instance
80
80
 
81
81
 
82
+ interface _AssociateSourceViewsResponseSuccess
83
+ include ::Seahorse::Client::_ResponseSuccess[Types::AssociateSourceViewsResponse]
84
+ def arn: () -> ::String
85
+ end
86
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Billing/Client.html#associate_source_views-instance_method
87
+ def associate_source_views: (
88
+ arn: ::String,
89
+ source_views: Array[::String]
90
+ ) -> _AssociateSourceViewsResponseSuccess
91
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _AssociateSourceViewsResponseSuccess
92
+
82
93
  interface _CreateBillingViewResponseSuccess
83
94
  include ::Seahorse::Client::_ResponseSuccess[Types::CreateBillingViewResponse]
84
95
  def arn: () -> ::String
@@ -97,6 +108,10 @@ module Aws
97
108
  tags: {
98
109
  key: ::String,
99
110
  values: Array[::String]
111
+ }?,
112
+ time_range: {
113
+ begin_date_inclusive: ::Time?,
114
+ end_date_inclusive: ::Time?
100
115
  }?
101
116
  },
102
117
  ?client_token: ::String,
@@ -115,10 +130,22 @@ module Aws
115
130
  end
116
131
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Billing/Client.html#delete_billing_view-instance_method
117
132
  def delete_billing_view: (
118
- arn: ::String
133
+ arn: ::String,
134
+ ?force: bool
119
135
  ) -> _DeleteBillingViewResponseSuccess
120
136
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteBillingViewResponseSuccess
121
137
 
138
+ interface _DisassociateSourceViewsResponseSuccess
139
+ include ::Seahorse::Client::_ResponseSuccess[Types::DisassociateSourceViewsResponse]
140
+ def arn: () -> ::String
141
+ end
142
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Billing/Client.html#disassociate_source_views-instance_method
143
+ def disassociate_source_views: (
144
+ arn: ::String,
145
+ source_views: Array[::String]
146
+ ) -> _DisassociateSourceViewsResponseSuccess
147
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DisassociateSourceViewsResponseSuccess
148
+
122
149
  interface _GetBillingViewResponseSuccess
123
150
  include ::Seahorse::Client::_ResponseSuccess[Types::GetBillingViewResponse]
124
151
  def billing_view: () -> Types::BillingViewElement
@@ -154,6 +181,7 @@ module Aws
154
181
  ?arns: Array[::String],
155
182
  ?billing_view_types: Array[("PRIMARY" | "BILLING_GROUP" | "CUSTOM")],
156
183
  ?owner_account_id: ::String,
184
+ ?source_account_id: ::String,
157
185
  ?max_results: ::Integer,
158
186
  ?next_token: ::String
159
187
  ) -> _ListBillingViewsResponseSuccess
@@ -225,6 +253,10 @@ module Aws
225
253
  tags: {
226
254
  key: ::String,
227
255
  values: Array[::String]
256
+ }?,
257
+ time_range: {
258
+ begin_date_inclusive: ::Time?,
259
+ end_date_inclusive: ::Time?
228
260
  }?
229
261
  }
230
262
  ) -> _UpdateBillingViewResponseSuccess
data/sig/errors.rbs CHANGED
@@ -14,6 +14,9 @@ module Aws
14
14
  class AccessDeniedException < ::Aws::Errors::ServiceError
15
15
  def message: () -> ::String
16
16
  end
17
+ class BillingViewHealthStatusException < ::Aws::Errors::ServiceError
18
+ def message: () -> ::String
19
+ end
17
20
  class ConflictException < ::Aws::Errors::ServiceError
18
21
  def message: () -> ::String
19
22
  def resource_id: () -> ::String
data/sig/types.rbs CHANGED
@@ -19,24 +19,53 @@ module Aws::Billing
19
19
  SENSITIVE: []
20
20
  end
21
21
 
22
+ class AssociateSourceViewsRequest
23
+ attr_accessor arn: ::String
24
+ attr_accessor source_views: ::Array[::String]
25
+ SENSITIVE: []
26
+ end
27
+
28
+ class AssociateSourceViewsResponse
29
+ attr_accessor arn: ::String
30
+ SENSITIVE: []
31
+ end
32
+
22
33
  class BillingViewElement
23
34
  attr_accessor arn: ::String
24
35
  attr_accessor name: ::String
25
36
  attr_accessor description: ::String
26
37
  attr_accessor billing_view_type: ("PRIMARY" | "BILLING_GROUP" | "CUSTOM")
27
38
  attr_accessor owner_account_id: ::String
39
+ attr_accessor source_account_id: ::String
28
40
  attr_accessor data_filter_expression: Types::Expression
29
41
  attr_accessor created_at: ::Time
30
42
  attr_accessor updated_at: ::Time
43
+ attr_accessor derived_view_count: ::Integer
44
+ attr_accessor source_view_count: ::Integer
45
+ attr_accessor view_definition_last_updated_at: ::Time
46
+ attr_accessor health_status: Types::BillingViewHealthStatus
31
47
  SENSITIVE: [:name, :description]
32
48
  end
33
49
 
50
+ class BillingViewHealthStatus
51
+ attr_accessor status_code: ("HEALTHY" | "UNHEALTHY" | "CREATING" | "UPDATING")
52
+ attr_accessor status_reasons: ::Array[("SOURCE_VIEW_UNHEALTHY" | "SOURCE_VIEW_UPDATING" | "SOURCE_VIEW_ACCESS_DENIED" | "SOURCE_VIEW_NOT_FOUND" | "CYCLIC_DEPENDENCY" | "SOURCE_VIEW_DEPTH_EXCEEDED" | "AGGREGATE_SOURCE" | "VIEW_OWNER_NOT_MANAGEMENT_ACCOUNT")]
53
+ SENSITIVE: []
54
+ end
55
+
56
+ class BillingViewHealthStatusException
57
+ attr_accessor message: ::String
58
+ SENSITIVE: []
59
+ end
60
+
34
61
  class BillingViewListElement
35
62
  attr_accessor arn: ::String
36
63
  attr_accessor name: ::String
37
64
  attr_accessor description: ::String
38
65
  attr_accessor owner_account_id: ::String
66
+ attr_accessor source_account_id: ::String
39
67
  attr_accessor billing_view_type: ("PRIMARY" | "BILLING_GROUP" | "CUSTOM")
68
+ attr_accessor health_status: Types::BillingViewHealthStatus
40
69
  SENSITIVE: [:name, :description]
41
70
  end
42
71
 
@@ -65,6 +94,7 @@ module Aws::Billing
65
94
 
66
95
  class DeleteBillingViewRequest
67
96
  attr_accessor arn: ::String
97
+ attr_accessor force: bool
68
98
  SENSITIVE: []
69
99
  end
70
100
 
@@ -79,9 +109,21 @@ module Aws::Billing
79
109
  SENSITIVE: []
80
110
  end
81
111
 
112
+ class DisassociateSourceViewsRequest
113
+ attr_accessor arn: ::String
114
+ attr_accessor source_views: ::Array[::String]
115
+ SENSITIVE: []
116
+ end
117
+
118
+ class DisassociateSourceViewsResponse
119
+ attr_accessor arn: ::String
120
+ SENSITIVE: []
121
+ end
122
+
82
123
  class Expression
83
124
  attr_accessor dimensions: Types::DimensionValues
84
125
  attr_accessor tags: Types::TagValues
126
+ attr_accessor time_range: Types::TimeRange
85
127
  SENSITIVE: []
86
128
  end
87
129
 
@@ -116,6 +158,7 @@ module Aws::Billing
116
158
  attr_accessor arns: ::Array[::String]
117
159
  attr_accessor billing_view_types: ::Array[("PRIMARY" | "BILLING_GROUP" | "CUSTOM")]
118
160
  attr_accessor owner_account_id: ::String
161
+ attr_accessor source_account_id: ::String
119
162
  attr_accessor max_results: ::Integer
120
163
  attr_accessor next_token: ::String
121
164
  SENSITIVE: []
@@ -192,6 +235,12 @@ module Aws::Billing
192
235
  SENSITIVE: []
193
236
  end
194
237
 
238
+ class TimeRange
239
+ attr_accessor begin_date_inclusive: ::Time
240
+ attr_accessor end_date_inclusive: ::Time
241
+ SENSITIVE: []
242
+ end
243
+
195
244
  class UntagResourceRequest
196
245
  attr_accessor resource_arn: ::String
197
246
  attr_accessor resource_tag_keys: ::Array[::String]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-billing
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.13.0
4
+ version: 1.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services