aws-sdk-bcmdashboards 1.9.0 → 1.10.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: 1bb4e185d8279b36193795e18a5655a31162bfd50557c27c3be44898ed0185ea
4
- data.tar.gz: 118d011050efc63816846407957bb306a543406081588057e1f1cd39117e0071
3
+ metadata.gz: 500100878eac87894b9c42ef6e8c9857cd0ca9ecdd0b35367cb2ff087a8057f3
4
+ data.tar.gz: 014641e09af2eac4ef7cfc84a950646cfd0bfe7d9d485fb3a56b8b5adcf3ba4f
5
5
  SHA512:
6
- metadata.gz: 61010c3378f1e9febad78f626961d1821c5fff032d8e42eb877d03cda8686544406afe6d50c338bda437f881c9cb086b10e3557815b981d0675085b6e4ccc6e2
7
- data.tar.gz: 15590e8a772179988f0f2c885a16afa81968d5b3566709cb1ea0f289d36a2a56003b6d1c2258ac39746649979f0c74729bcc79302838c89944cdb31796b71e74
6
+ metadata.gz: 90bbeefb8f4e1465e267de3486f104135265e46416a2b231236e78634a152fa563263d5ca5234a451e9b573c0d0081ae7548f4a0106f2dd72c9a34d445077dba
7
+ data.tar.gz: c92cdbe7b441e8d530b9a4929a347675323ec435613a76b903bf137c923bad9da29897d0c2152ab879403601de3f457eb91ee2c2ac2eb7b010a6ad7d69ed2ddd
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.10.0 (2026-04-09)
5
+ ------------------
6
+
7
+ * Feature - Scheduled email reports of Billing and Cost Management Dashboards
8
+
4
9
  1.9.0 (2026-03-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.9.0
1
+ 1.10.0
@@ -851,6 +851,82 @@ module Aws::BCMDashboards
851
851
  req.send_request(options)
852
852
  end
853
853
 
854
+ # Creates a new scheduled report for a dashboard. A scheduled report
855
+ # automatically generates and delivers dashboard snapshots on a
856
+ # recurring schedule. Reports are delivered within 15 minutes of the
857
+ # scheduled delivery time.
858
+ #
859
+ # @option params [required, Types::ScheduledReportInput] :scheduled_report
860
+ # The configuration for the scheduled report, including the dashboard to
861
+ # report on, the schedule, and the execution role that the service will
862
+ # use to generate the dashboard snapshot.
863
+ #
864
+ # @option params [Array<Types::ResourceTag>] :resource_tags
865
+ # The tags to apply to the scheduled report resource for organization
866
+ # and management.
867
+ #
868
+ # @option params [String] :client_token
869
+ # A unique, case-sensitive identifier that you provide to ensure the
870
+ # idempotency of the request.
871
+ #
872
+ # **A suitable default value is auto-generated.** You should normally
873
+ # not need to pass this option.**
874
+ #
875
+ # @return [Types::CreateScheduledReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
876
+ #
877
+ # * {Types::CreateScheduledReportResponse#arn #arn} => String
878
+ #
879
+ # @example Request syntax with placeholder values
880
+ #
881
+ # resp = client.create_scheduled_report({
882
+ # scheduled_report: { # required
883
+ # name: "ScheduledReportName", # required
884
+ # dashboard_arn: "DashboardArn", # required
885
+ # scheduled_report_execution_role_arn: "ServiceRoleArn", # required
886
+ # schedule_config: { # required
887
+ # schedule_expression: "GenericString",
888
+ # schedule_expression_time_zone: "GenericString",
889
+ # schedule_period: {
890
+ # start_time: Time.now,
891
+ # end_time: Time.now,
892
+ # },
893
+ # state: "ENABLED", # accepts ENABLED, DISABLED
894
+ # },
895
+ # description: "Description",
896
+ # widget_ids: ["String"],
897
+ # widget_date_range_override: {
898
+ # start_time: { # required
899
+ # type: "ABSOLUTE", # required, accepts ABSOLUTE, RELATIVE
900
+ # value: "GenericString", # required
901
+ # },
902
+ # end_time: { # required
903
+ # type: "ABSOLUTE", # required, accepts ABSOLUTE, RELATIVE
904
+ # value: "GenericString", # required
905
+ # },
906
+ # },
907
+ # },
908
+ # resource_tags: [
909
+ # {
910
+ # key: "ResourceTagKey", # required
911
+ # value: "ResourceTagValue", # required
912
+ # },
913
+ # ],
914
+ # client_token: "ClientToken",
915
+ # })
916
+ #
917
+ # @example Response structure
918
+ #
919
+ # resp.arn #=> String
920
+ #
921
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bcm-dashboards-2025-08-18/CreateScheduledReport AWS API Documentation
922
+ #
923
+ # @overload create_scheduled_report(params = {})
924
+ # @param [Hash] params ({})
925
+ def create_scheduled_report(params = {}, options = {})
926
+ req = build_request(:create_scheduled_report, params)
927
+ req.send_request(options)
928
+ end
929
+
854
930
  # Deletes a specified dashboard. This action cannot be undone.
855
931
  #
856
932
  # @option params [required, String] :arn
@@ -891,6 +967,90 @@ module Aws::BCMDashboards
891
967
  req.send_request(options)
892
968
  end
893
969
 
970
+ # Deletes a specified scheduled report. This is an irreversible
971
+ # operation.
972
+ #
973
+ # @option params [required, String] :arn
974
+ # The ARN of the scheduled report to delete.
975
+ #
976
+ # @return [Types::DeleteScheduledReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
977
+ #
978
+ # * {Types::DeleteScheduledReportResponse#arn #arn} => String
979
+ #
980
+ # @example Request syntax with placeholder values
981
+ #
982
+ # resp = client.delete_scheduled_report({
983
+ # arn: "ScheduledReportArn", # required
984
+ # })
985
+ #
986
+ # @example Response structure
987
+ #
988
+ # resp.arn #=> String
989
+ #
990
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bcm-dashboards-2025-08-18/DeleteScheduledReport AWS API Documentation
991
+ #
992
+ # @overload delete_scheduled_report(params = {})
993
+ # @param [Hash] params ({})
994
+ def delete_scheduled_report(params = {}, options = {})
995
+ req = build_request(:delete_scheduled_report, params)
996
+ req.send_request(options)
997
+ end
998
+
999
+ # Triggers an immediate execution of a scheduled report, outside of its
1000
+ # regular schedule. The scheduled report must be in `ENABLED` state.
1001
+ # Calling this operation on a `DISABLED` scheduled report returns a
1002
+ # `ValidationException`.
1003
+ #
1004
+ # <note markdown="1"> If a `clientToken` is provided, the service uses it for idempotency.
1005
+ # Requests with the same client token will not trigger a new execution
1006
+ # within the same minute.
1007
+ #
1008
+ # </note>
1009
+ #
1010
+ # @option params [required, String] :arn
1011
+ # The ARN of the scheduled report to execute.
1012
+ #
1013
+ # @option params [String] :client_token
1014
+ # A unique, case-sensitive identifier that you provide to ensure the
1015
+ # idempotency of the request.
1016
+ #
1017
+ # **A suitable default value is auto-generated.** You should normally
1018
+ # not need to pass this option.**
1019
+ #
1020
+ # @option params [Boolean] :dry_run
1021
+ # When set to `true`, validates the scheduled report configuration
1022
+ # without triggering an actual execution.
1023
+ #
1024
+ # @return [Types::ExecuteScheduledReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1025
+ #
1026
+ # * {Types::ExecuteScheduledReportResponse#health_status #health_status} => Types::HealthStatus
1027
+ # * {Types::ExecuteScheduledReportResponse#execution_triggered #execution_triggered} => Boolean
1028
+ #
1029
+ # @example Request syntax with placeholder values
1030
+ #
1031
+ # resp = client.execute_scheduled_report({
1032
+ # arn: "ScheduledReportArn", # required
1033
+ # client_token: "ClientToken",
1034
+ # dry_run: false,
1035
+ # })
1036
+ #
1037
+ # @example Response structure
1038
+ #
1039
+ # resp.health_status.status_code #=> String, one of "HEALTHY", "UNHEALTHY"
1040
+ # resp.health_status.last_refreshed_at #=> Time
1041
+ # resp.health_status.status_reasons #=> Array
1042
+ # resp.health_status.status_reasons[0] #=> String, one of "DATA_SOURCE_ACCESS_DENIED", "EXECUTION_ROLE_ASSUME_FAILED", "EXECUTION_ROLE_INSUFFICIENT_PERMISSIONS", "DASHBOARD_NOT_FOUND", "DASHBOARD_ACCESS_DENIED", "INTERNAL_FAILURE", "WIDGET_ID_NOT_FOUND"
1043
+ # resp.execution_triggered #=> Boolean
1044
+ #
1045
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bcm-dashboards-2025-08-18/ExecuteScheduledReport AWS API Documentation
1046
+ #
1047
+ # @overload execute_scheduled_report(params = {})
1048
+ # @param [Hash] params ({})
1049
+ def execute_scheduled_report(params = {}, options = {})
1050
+ req = build_request(:execute_scheduled_report, params)
1051
+ req.send_request(options)
1052
+ end
1053
+
894
1054
  # Retrieves the configuration and metadata of a specified dashboard,
895
1055
  # including its widgets and layout settings.
896
1056
  #
@@ -1190,6 +1350,57 @@ module Aws::BCMDashboards
1190
1350
  req.send_request(options)
1191
1351
  end
1192
1352
 
1353
+ # Retrieves the configuration and metadata of a specified scheduled
1354
+ # report.
1355
+ #
1356
+ # @option params [required, String] :arn
1357
+ # The ARN of the scheduled report to retrieve.
1358
+ #
1359
+ # @return [Types::GetScheduledReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1360
+ #
1361
+ # * {Types::GetScheduledReportResponse#scheduled_report #scheduled_report} => Types::ScheduledReport
1362
+ #
1363
+ # @example Request syntax with placeholder values
1364
+ #
1365
+ # resp = client.get_scheduled_report({
1366
+ # arn: "ScheduledReportArn", # required
1367
+ # })
1368
+ #
1369
+ # @example Response structure
1370
+ #
1371
+ # resp.scheduled_report.arn #=> String
1372
+ # resp.scheduled_report.name #=> String
1373
+ # resp.scheduled_report.dashboard_arn #=> String
1374
+ # resp.scheduled_report.scheduled_report_execution_role_arn #=> String
1375
+ # resp.scheduled_report.schedule_config.schedule_expression #=> String
1376
+ # resp.scheduled_report.schedule_config.schedule_expression_time_zone #=> String
1377
+ # resp.scheduled_report.schedule_config.schedule_period.start_time #=> Time
1378
+ # resp.scheduled_report.schedule_config.schedule_period.end_time #=> Time
1379
+ # resp.scheduled_report.schedule_config.state #=> String, one of "ENABLED", "DISABLED"
1380
+ # resp.scheduled_report.description #=> String
1381
+ # resp.scheduled_report.widget_ids #=> Array
1382
+ # resp.scheduled_report.widget_ids[0] #=> String
1383
+ # resp.scheduled_report.widget_date_range_override.start_time.type #=> String, one of "ABSOLUTE", "RELATIVE"
1384
+ # resp.scheduled_report.widget_date_range_override.start_time.value #=> String
1385
+ # resp.scheduled_report.widget_date_range_override.end_time.type #=> String, one of "ABSOLUTE", "RELATIVE"
1386
+ # resp.scheduled_report.widget_date_range_override.end_time.value #=> String
1387
+ # resp.scheduled_report.created_at #=> Time
1388
+ # resp.scheduled_report.updated_at #=> Time
1389
+ # resp.scheduled_report.last_execution_at #=> Time
1390
+ # resp.scheduled_report.health_status.status_code #=> String, one of "HEALTHY", "UNHEALTHY"
1391
+ # resp.scheduled_report.health_status.last_refreshed_at #=> Time
1392
+ # resp.scheduled_report.health_status.status_reasons #=> Array
1393
+ # resp.scheduled_report.health_status.status_reasons[0] #=> String, one of "DATA_SOURCE_ACCESS_DENIED", "EXECUTION_ROLE_ASSUME_FAILED", "EXECUTION_ROLE_INSUFFICIENT_PERMISSIONS", "DASHBOARD_NOT_FOUND", "DASHBOARD_ACCESS_DENIED", "INTERNAL_FAILURE", "WIDGET_ID_NOT_FOUND"
1394
+ #
1395
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bcm-dashboards-2025-08-18/GetScheduledReport AWS API Documentation
1396
+ #
1397
+ # @overload get_scheduled_report(params = {})
1398
+ # @param [Hash] params ({})
1399
+ def get_scheduled_report(params = {}, options = {})
1400
+ req = build_request(:get_scheduled_report, params)
1401
+ req.send_request(options)
1402
+ end
1403
+
1193
1404
  # Returns a list of all dashboards in your account.
1194
1405
  #
1195
1406
  # @option params [Integer] :max_results
@@ -1254,6 +1465,56 @@ module Aws::BCMDashboards
1254
1465
  req.send_request(options)
1255
1466
  end
1256
1467
 
1468
+ # Returns a list of scheduled reports in your account.
1469
+ #
1470
+ # @option params [String] :next_token
1471
+ # The token for the next page of results. Use the value returned in the
1472
+ # previous response.
1473
+ #
1474
+ # @option params [Integer] :max_results
1475
+ # The maximum number of results to return in a single call. Valid range
1476
+ # is 1 to 100. The default value is 50.
1477
+ #
1478
+ # @return [Types::ListScheduledReportsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1479
+ #
1480
+ # * {Types::ListScheduledReportsResponse#scheduled_reports #scheduled_reports} => Array&lt;Types::ScheduledReportSummary&gt;
1481
+ # * {Types::ListScheduledReportsResponse#next_token #next_token} => String
1482
+ #
1483
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1484
+ #
1485
+ # @example Request syntax with placeholder values
1486
+ #
1487
+ # resp = client.list_scheduled_reports({
1488
+ # next_token: "NextPageToken",
1489
+ # max_results: 1,
1490
+ # })
1491
+ #
1492
+ # @example Response structure
1493
+ #
1494
+ # resp.scheduled_reports #=> Array
1495
+ # resp.scheduled_reports[0].arn #=> String
1496
+ # resp.scheduled_reports[0].name #=> String
1497
+ # resp.scheduled_reports[0].dashboard_arn #=> String
1498
+ # resp.scheduled_reports[0].schedule_expression #=> String
1499
+ # resp.scheduled_reports[0].state #=> String, one of "ENABLED", "DISABLED"
1500
+ # resp.scheduled_reports[0].health_status.status_code #=> String, one of "HEALTHY", "UNHEALTHY"
1501
+ # resp.scheduled_reports[0].health_status.last_refreshed_at #=> Time
1502
+ # resp.scheduled_reports[0].health_status.status_reasons #=> Array
1503
+ # resp.scheduled_reports[0].health_status.status_reasons[0] #=> String, one of "DATA_SOURCE_ACCESS_DENIED", "EXECUTION_ROLE_ASSUME_FAILED", "EXECUTION_ROLE_INSUFFICIENT_PERMISSIONS", "DASHBOARD_NOT_FOUND", "DASHBOARD_ACCESS_DENIED", "INTERNAL_FAILURE", "WIDGET_ID_NOT_FOUND"
1504
+ # resp.scheduled_reports[0].schedule_expression_time_zone #=> String
1505
+ # resp.scheduled_reports[0].widget_ids #=> Array
1506
+ # resp.scheduled_reports[0].widget_ids[0] #=> String
1507
+ # resp.next_token #=> String
1508
+ #
1509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bcm-dashboards-2025-08-18/ListScheduledReports AWS API Documentation
1510
+ #
1511
+ # @overload list_scheduled_reports(params = {})
1512
+ # @param [Hash] params ({})
1513
+ def list_scheduled_reports(params = {}, options = {})
1514
+ req = build_request(:list_scheduled_reports, params)
1515
+ req.send_request(options)
1516
+ end
1517
+
1257
1518
  # Returns a list of all tags associated with a specified dashboard
1258
1519
  # resource.
1259
1520
  #
@@ -1288,7 +1549,7 @@ module Aws::BCMDashboards
1288
1549
  # @example Request syntax with placeholder values
1289
1550
  #
1290
1551
  # resp = client.list_tags_for_resource({
1291
- # resource_arn: "DashboardArn", # required
1552
+ # resource_arn: "ResourceArn", # required
1292
1553
  # })
1293
1554
  #
1294
1555
  # @example Response structure
@@ -1332,7 +1593,7 @@ module Aws::BCMDashboards
1332
1593
  # @example Request syntax with placeholder values
1333
1594
  #
1334
1595
  # resp = client.tag_resource({
1335
- # resource_arn: "DashboardArn", # required
1596
+ # resource_arn: "ResourceArn", # required
1336
1597
  # resource_tags: [ # required
1337
1598
  # {
1338
1599
  # key: "ResourceTagKey", # required
@@ -1373,7 +1634,7 @@ module Aws::BCMDashboards
1373
1634
  # @example Request syntax with placeholder values
1374
1635
  #
1375
1636
  # resp = client.untag_resource({
1376
- # resource_arn: "DashboardArn", # required
1637
+ # resource_arn: "ResourceArn", # required
1377
1638
  # resource_tag_keys: ["ResourceTagKey"], # required
1378
1639
  # })
1379
1640
  #
@@ -1392,13 +1653,11 @@ module Aws::BCMDashboards
1392
1653
  # @option params [required, String] :arn
1393
1654
  # The ARN of the dashboard to update.
1394
1655
  #
1395
- # @option params [String] :name
1396
- # The new name for the dashboard. If not specified, the existing name is
1397
- # retained.
1656
+ # @option params [required, String] :name
1657
+ # The new name for the dashboard.
1398
1658
  #
1399
1659
  # @option params [String] :description
1400
- # The new description for the dashboard. If not specified, the existing
1401
- # description is retained.
1660
+ # The new description for the dashboard.
1402
1661
  #
1403
1662
  # @option params [Array<Types::Widget>] :widgets
1404
1663
  # The updated array of widget configurations for the dashboard. Replaces
@@ -1464,7 +1723,7 @@ module Aws::BCMDashboards
1464
1723
  #
1465
1724
  # resp = client.update_dashboard({
1466
1725
  # arn: "DashboardArn", # required
1467
- # name: "DashboardName",
1726
+ # name: "DashboardName", # required
1468
1727
  # description: "Description",
1469
1728
  # widgets: [
1470
1729
  # {
@@ -1748,6 +2007,93 @@ module Aws::BCMDashboards
1748
2007
  req.send_request(options)
1749
2008
  end
1750
2009
 
2010
+ # Updates an existing scheduled report's properties, including its
2011
+ # name, description, schedule configuration, and widget settings. Only
2012
+ # the parameters included in the request are updated; all other
2013
+ # properties remain unchanged.
2014
+ #
2015
+ # @option params [required, String] :arn
2016
+ # The ARN of the scheduled report to update.
2017
+ #
2018
+ # @option params [String] :name
2019
+ # The new name for the scheduled report.
2020
+ #
2021
+ # @option params [String] :description
2022
+ # The new description for the scheduled report.
2023
+ #
2024
+ # @option params [String] :dashboard_arn
2025
+ # The ARN of the dashboard to associate with the scheduled report.
2026
+ #
2027
+ # @option params [String] :scheduled_report_execution_role_arn
2028
+ # The ARN of the IAM role that the scheduled report uses to execute.
2029
+ # Amazon Web Services Billing and Cost Management Dashboards will assume
2030
+ # this IAM role while executing the scheduled report.
2031
+ #
2032
+ # @option params [Types::ScheduleConfig] :schedule_config
2033
+ # The updated schedule configuration for the report.
2034
+ #
2035
+ # @option params [Array<String>] :widget_ids
2036
+ # The list of widget identifiers to include in the scheduled report. If
2037
+ # not specified, all widgets in the dashboard are included.
2038
+ #
2039
+ # @option params [Types::DateTimeRange] :widget_date_range_override
2040
+ # The date range override to apply to widgets in the scheduled report.
2041
+ #
2042
+ # @option params [Boolean] :clear_widget_ids
2043
+ # Set to true to clear existing widgetIds.
2044
+ #
2045
+ # @option params [Boolean] :clear_widget_date_range_override
2046
+ # Set to true to clear existing widgetDateRangeOverride.
2047
+ #
2048
+ # @return [Types::UpdateScheduledReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2049
+ #
2050
+ # * {Types::UpdateScheduledReportResponse#arn #arn} => String
2051
+ #
2052
+ # @example Request syntax with placeholder values
2053
+ #
2054
+ # resp = client.update_scheduled_report({
2055
+ # arn: "ScheduledReportArn", # required
2056
+ # name: "ScheduledReportName",
2057
+ # description: "Description",
2058
+ # dashboard_arn: "DashboardArn",
2059
+ # scheduled_report_execution_role_arn: "ServiceRoleArn",
2060
+ # schedule_config: {
2061
+ # schedule_expression: "GenericString",
2062
+ # schedule_expression_time_zone: "GenericString",
2063
+ # schedule_period: {
2064
+ # start_time: Time.now,
2065
+ # end_time: Time.now,
2066
+ # },
2067
+ # state: "ENABLED", # accepts ENABLED, DISABLED
2068
+ # },
2069
+ # widget_ids: ["String"],
2070
+ # widget_date_range_override: {
2071
+ # start_time: { # required
2072
+ # type: "ABSOLUTE", # required, accepts ABSOLUTE, RELATIVE
2073
+ # value: "GenericString", # required
2074
+ # },
2075
+ # end_time: { # required
2076
+ # type: "ABSOLUTE", # required, accepts ABSOLUTE, RELATIVE
2077
+ # value: "GenericString", # required
2078
+ # },
2079
+ # },
2080
+ # clear_widget_ids: false,
2081
+ # clear_widget_date_range_override: false,
2082
+ # })
2083
+ #
2084
+ # @example Response structure
2085
+ #
2086
+ # resp.arn #=> String
2087
+ #
2088
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bcm-dashboards-2025-08-18/UpdateScheduledReport AWS API Documentation
2089
+ #
2090
+ # @overload update_scheduled_report(params = {})
2091
+ # @param [Hash] params ({})
2092
+ def update_scheduled_report(params = {}, options = {})
2093
+ req = build_request(:update_scheduled_report, params)
2094
+ req.send_request(options)
2095
+ end
2096
+
1751
2097
  # @!endgroup
1752
2098
 
1753
2099
  # @param params ({})
@@ -1766,7 +2112,7 @@ module Aws::BCMDashboards
1766
2112
  tracer: tracer
1767
2113
  )
1768
2114
  context[:gem_name] = 'aws-sdk-bcmdashboards'
1769
- context[:gem_version] = '1.9.0'
2115
+ context[:gem_version] = '1.10.0'
1770
2116
  Seahorse::Client::Request.new(handlers, context)
1771
2117
  end
1772
2118