aws-sdk-braket 1.61.0 → 1.64.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: 95f2d75322f3de3d58dfadf4c09e761454658596c5d34ae620119b31841d9edd
4
- data.tar.gz: 4dadd97d2d3ac2210279f90e0cc39e8e346a428f6c89319213bdb445b06691f4
3
+ metadata.gz: 5c1149201f68865da9672ab4cfc5da5e9fe5c43aa0367de8d975846f758ac509
4
+ data.tar.gz: dae616ba82a5116232d6b33dc637ccb781699801d013a38f326af43395d9639d
5
5
  SHA512:
6
- metadata.gz: de7a5ac99025d50069453f239995c7119d72c801c029c85e5818649d6e48324ca80d5bb7e7742093423cfdeba150c31abd19046fadd65988f734b0acedb91a1a
7
- data.tar.gz: 951a6f803bf753e867291ad904268d7ea2f67a66037e9ffc896f957317097133b4ce7041c53ee28a50b26b3a2f22d805d7d3581382458c7946ff03feb4a42b80
6
+ metadata.gz: e774657fb205d3ae3933e502a6d8e56fe046c7381eaa7ecda958785ca5cfe0fbaaf676b1bcc5da9c982e73d9bea0bea2b0c3854dc2aeea342529e4a2b3d5ebf8
7
+ data.tar.gz: 20dc90f8c28434e8b651ef9e9f55eb628b726eb2e61f013567520846876a4a776fe918f928bcb546b46b92c4c8f8d636fb36da755a4c3a44b23807f78e63f6fa
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.64.0 (2025-11-21)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.63.0 (2025-11-20)
10
+ ------------------
11
+
12
+ * Feature - Add support for Braket spending limits.
13
+
14
+ 1.62.0 (2025-11-10)
15
+ ------------------
16
+
17
+ * Feature - Adds ExperimentalCapabilities field to CreateQuantumTask request and GetQuantumTask response objects. Enables use of experimental software capabilities when creating quantum tasks.
18
+
4
19
  1.61.0 (2025-10-27)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.61.0
1
+ 1.64.0
@@ -730,6 +730,9 @@ module Aws::Braket
730
730
  # @option params [Array<Types::Association>] :associations
731
731
  # The list of Amazon Braket resources associated with the quantum task.
732
732
  #
733
+ # @option params [Types::ExperimentalCapabilities] :experimental_capabilities
734
+ # Enable experimental capabilities for the quantum task.
735
+ #
733
736
  # @return [Types::CreateQuantumTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
734
737
  #
735
738
  # * {Types::CreateQuantumTaskResponse#quantum_task_arn #quantum_task_arn} => String
@@ -754,6 +757,9 @@ module Aws::Braket
754
757
  # type: "RESERVATION_TIME_WINDOW_ARN", # required, accepts RESERVATION_TIME_WINDOW_ARN
755
758
  # },
756
759
  # ],
760
+ # experimental_capabilities: {
761
+ # enabled: "ALL", # accepts ALL, NONE
762
+ # },
757
763
  # })
758
764
  #
759
765
  # @example Response structure
@@ -769,6 +775,91 @@ module Aws::Braket
769
775
  req.send_request(options)
770
776
  end
771
777
 
778
+ # Creates a spending limit for a specified quantum device. Spending
779
+ # limits help you control costs by setting maximum amounts that can be
780
+ # spent on quantum computing tasks within a specified time period.
781
+ # Simulators do not support spending limits.
782
+ #
783
+ # @option params [required, String] :client_token
784
+ # A unique, case-sensitive identifier to ensure that the operation
785
+ # completes no more than one time. If this token matches a previous
786
+ # request, Amazon Braket ignores the request, but does not return an
787
+ # error.
788
+ #
789
+ # **A suitable default value is auto-generated.** You should normally
790
+ # not need to pass this option.**
791
+ #
792
+ # @option params [required, String] :device_arn
793
+ # The Amazon Resource Name (ARN) of the quantum device to apply the
794
+ # spending limit to.
795
+ #
796
+ # @option params [required, String] :spending_limit
797
+ # The maximum amount that can be spent on the specified device, in USD.
798
+ #
799
+ # @option params [Types::TimePeriod] :time_period
800
+ # The time period during which the spending limit is active, including
801
+ # start and end dates.
802
+ #
803
+ # @option params [Hash<String,String>] :tags
804
+ # The tags to apply to the spending limit. Each tag consists of a key
805
+ # and an optional value.
806
+ #
807
+ # @return [Types::CreateSpendingLimitResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
808
+ #
809
+ # * {Types::CreateSpendingLimitResponse#spending_limit_arn #spending_limit_arn} => String
810
+ #
811
+ # @example Request syntax with placeholder values
812
+ #
813
+ # resp = client.create_spending_limit({
814
+ # client_token: "String64", # required
815
+ # device_arn: "DeviceArn", # required
816
+ # spending_limit: "CreateSpendingLimitRequestSpendingLimitString", # required
817
+ # time_period: {
818
+ # start_at: Time.now, # required
819
+ # end_at: Time.now, # required
820
+ # },
821
+ # tags: {
822
+ # "String" => "String",
823
+ # },
824
+ # })
825
+ #
826
+ # @example Response structure
827
+ #
828
+ # resp.spending_limit_arn #=> String
829
+ #
830
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/CreateSpendingLimit AWS API Documentation
831
+ #
832
+ # @overload create_spending_limit(params = {})
833
+ # @param [Hash] params ({})
834
+ def create_spending_limit(params = {}, options = {})
835
+ req = build_request(:create_spending_limit, params)
836
+ req.send_request(options)
837
+ end
838
+
839
+ # Deletes an existing spending limit. This operation permanently removes
840
+ # the spending limit and cannot be undone. After deletion, the
841
+ # associated device becomes unrestricted for spending.
842
+ #
843
+ # @option params [required, String] :spending_limit_arn
844
+ # The Amazon Resource Name (ARN) of the spending limit to delete.
845
+ #
846
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
847
+ #
848
+ # @example Request syntax with placeholder values
849
+ #
850
+ # resp = client.delete_spending_limit({
851
+ # spending_limit_arn: "SpendingLimitArn", # required
852
+ # })
853
+ #
854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/DeleteSpendingLimit AWS API Documentation
855
+ #
856
+ # @overload delete_spending_limit(params = {})
857
+ # @param [Hash] params ({})
858
+ def delete_spending_limit(params = {}, options = {})
859
+ req = build_request(:delete_spending_limit, params)
860
+ req.send_request(options)
861
+ end
862
+
772
863
  # Retrieves the devices available in Amazon Braket.
773
864
  #
774
865
  # <note markdown="1"> For backwards compatibility with older versions of BraketSchemas,
@@ -943,6 +1034,7 @@ module Aws::Braket
943
1034
  # * {Types::GetQuantumTaskResponse#associations #associations} => Array&lt;Types::Association&gt;
944
1035
  # * {Types::GetQuantumTaskResponse#num_successful_shots #num_successful_shots} => Integer
945
1036
  # * {Types::GetQuantumTaskResponse#action_metadata #action_metadata} => Types::ActionMetadata
1037
+ # * {Types::GetQuantumTaskResponse#experimental_capabilities #experimental_capabilities} => Types::ExperimentalCapabilities
946
1038
  #
947
1039
  # @example Request syntax with placeholder values
948
1040
  #
@@ -977,6 +1069,7 @@ module Aws::Braket
977
1069
  # resp.action_metadata.action_type #=> String
978
1070
  # resp.action_metadata.program_count #=> Integer
979
1071
  # resp.action_metadata.executable_count #=> Integer
1072
+ # resp.experimental_capabilities.enabled #=> String, one of "ALL", "NONE"
980
1073
  #
981
1074
  # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/GetQuantumTask AWS API Documentation
982
1075
  #
@@ -1187,6 +1280,70 @@ module Aws::Braket
1187
1280
  req.send_request(options)
1188
1281
  end
1189
1282
 
1283
+ # Searches and lists spending limits based on specified filters. This
1284
+ # operation supports pagination and allows filtering by various criteria
1285
+ # to find specific spending limits. We recommend using pagination to
1286
+ # ensure that the operation returns quickly and successfully.
1287
+ #
1288
+ # @option params [String] :next_token
1289
+ # The token to retrieve the next page of results. This value is returned
1290
+ # from a previous call to SearchSpendingLimits when there are more
1291
+ # results available.
1292
+ #
1293
+ # @option params [Integer] :max_results
1294
+ # The maximum number of results to return in a single call. Minimum
1295
+ # value of 1, maximum value of 100. Default is 20.
1296
+ #
1297
+ # @option params [Array<Types::SearchSpendingLimitsFilter>] :filters
1298
+ # The filters to apply when searching for spending limits. Use filters
1299
+ # to narrow down the results based on specific criteria.
1300
+ #
1301
+ # @return [Types::SearchSpendingLimitsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1302
+ #
1303
+ # * {Types::SearchSpendingLimitsResponse#spending_limits #spending_limits} => Array&lt;Types::SpendingLimitSummary&gt;
1304
+ # * {Types::SearchSpendingLimitsResponse#next_token #next_token} => String
1305
+ #
1306
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1307
+ #
1308
+ # @example Request syntax with placeholder values
1309
+ #
1310
+ # resp = client.search_spending_limits({
1311
+ # next_token: "String",
1312
+ # max_results: 1,
1313
+ # filters: [
1314
+ # {
1315
+ # name: "String64", # required
1316
+ # values: ["String256"], # required
1317
+ # operator: "EQUAL", # required, accepts EQUAL
1318
+ # },
1319
+ # ],
1320
+ # })
1321
+ #
1322
+ # @example Response structure
1323
+ #
1324
+ # resp.spending_limits #=> Array
1325
+ # resp.spending_limits[0].spending_limit_arn #=> String
1326
+ # resp.spending_limits[0].device_arn #=> String
1327
+ # resp.spending_limits[0].time_period.start_at #=> Time
1328
+ # resp.spending_limits[0].time_period.end_at #=> Time
1329
+ # resp.spending_limits[0].spending_limit #=> String
1330
+ # resp.spending_limits[0].queued_spend #=> String
1331
+ # resp.spending_limits[0].total_spend #=> String
1332
+ # resp.spending_limits[0].created_at #=> Time
1333
+ # resp.spending_limits[0].updated_at #=> Time
1334
+ # resp.spending_limits[0].tags #=> Hash
1335
+ # resp.spending_limits[0].tags["String"] #=> String
1336
+ # resp.next_token #=> String
1337
+ #
1338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/SearchSpendingLimits AWS API Documentation
1339
+ #
1340
+ # @overload search_spending_limits(params = {})
1341
+ # @param [Hash] params ({})
1342
+ def search_spending_limits(params = {}, options = {})
1343
+ req = build_request(:search_spending_limits, params)
1344
+ req.send_request(options)
1345
+ end
1346
+
1190
1347
  # Add a tag to the specified resource.
1191
1348
  #
1192
1349
  # @option params [required, String] :resource_arn
@@ -1244,6 +1401,52 @@ module Aws::Braket
1244
1401
  req.send_request(options)
1245
1402
  end
1246
1403
 
1404
+ # Updates an existing spending limit. You can modify the spending amount
1405
+ # or time period. Changes take effect immediately.
1406
+ #
1407
+ # @option params [required, String] :spending_limit_arn
1408
+ # The Amazon Resource Name (ARN) of the spending limit to update.
1409
+ #
1410
+ # @option params [required, String] :client_token
1411
+ # A unique, case-sensitive identifier to ensure that the operation
1412
+ # completes no more than one time. If this token matches a previous
1413
+ # request, Amazon Braket ignores the request, but does not return an
1414
+ # error.
1415
+ #
1416
+ # **A suitable default value is auto-generated.** You should normally
1417
+ # not need to pass this option.**
1418
+ #
1419
+ # @option params [String] :spending_limit
1420
+ # The new maximum amount that can be spent on the specified device, in
1421
+ # USD.
1422
+ #
1423
+ # @option params [Types::TimePeriod] :time_period
1424
+ # The new time period during which the spending limit is active,
1425
+ # including start and end dates.
1426
+ #
1427
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1428
+ #
1429
+ # @example Request syntax with placeholder values
1430
+ #
1431
+ # resp = client.update_spending_limit({
1432
+ # spending_limit_arn: "SpendingLimitArn", # required
1433
+ # client_token: "String64", # required
1434
+ # spending_limit: "UpdateSpendingLimitRequestSpendingLimitString",
1435
+ # time_period: {
1436
+ # start_at: Time.now, # required
1437
+ # end_at: Time.now, # required
1438
+ # },
1439
+ # })
1440
+ #
1441
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/UpdateSpendingLimit AWS API Documentation
1442
+ #
1443
+ # @overload update_spending_limit(params = {})
1444
+ # @param [Hash] params ({})
1445
+ def update_spending_limit(params = {}, options = {})
1446
+ req = build_request(:update_spending_limit, params)
1447
+ req.send_request(options)
1448
+ end
1449
+
1247
1450
  # @!endgroup
1248
1451
 
1249
1452
  # @param params ({})
@@ -1262,7 +1465,7 @@ module Aws::Braket
1262
1465
  tracer: tracer
1263
1466
  )
1264
1467
  context[:gem_name] = 'aws-sdk-braket'
1265
- context[:gem_version] = '1.61.0'
1468
+ context[:gem_version] = '1.64.0'
1266
1469
  Seahorse::Client::Request.new(handlers, context)
1267
1470
  end
1268
1471
 
@@ -41,7 +41,12 @@ module Aws::Braket
41
41
  CreateQuantumTaskRequestOutputS3KeyPrefixString = Shapes::StringShape.new(name: 'CreateQuantumTaskRequestOutputS3KeyPrefixString')
42
42
  CreateQuantumTaskRequestShotsLong = Shapes::IntegerShape.new(name: 'CreateQuantumTaskRequestShotsLong')
43
43
  CreateQuantumTaskResponse = Shapes::StructureShape.new(name: 'CreateQuantumTaskResponse')
44
+ CreateSpendingLimitRequest = Shapes::StructureShape.new(name: 'CreateSpendingLimitRequest')
45
+ CreateSpendingLimitRequestSpendingLimitString = Shapes::StringShape.new(name: 'CreateSpendingLimitRequestSpendingLimitString')
46
+ CreateSpendingLimitResponse = Shapes::StructureShape.new(name: 'CreateSpendingLimitResponse')
44
47
  DataSource = Shapes::StructureShape.new(name: 'DataSource')
48
+ DeleteSpendingLimitRequest = Shapes::StructureShape.new(name: 'DeleteSpendingLimitRequest')
49
+ DeleteSpendingLimitResponse = Shapes::StructureShape.new(name: 'DeleteSpendingLimitResponse')
45
50
  DeviceArn = Shapes::StringShape.new(name: 'DeviceArn')
46
51
  DeviceConfig = Shapes::StructureShape.new(name: 'DeviceConfig')
47
52
  DeviceOfflineException = Shapes::StructureShape.new(name: 'DeviceOfflineException')
@@ -52,6 +57,8 @@ module Aws::Braket
52
57
  DeviceSummary = Shapes::StructureShape.new(name: 'DeviceSummary')
53
58
  DeviceSummaryList = Shapes::ListShape.new(name: 'DeviceSummaryList')
54
59
  DeviceType = Shapes::StringShape.new(name: 'DeviceType')
60
+ ExperimentalCapabilities = Shapes::UnionShape.new(name: 'ExperimentalCapabilities')
61
+ ExperimentalCapabilitiesEnablementType = Shapes::StringShape.new(name: 'ExperimentalCapabilitiesEnablementType')
55
62
  GetDeviceRequest = Shapes::StructureShape.new(name: 'GetDeviceRequest')
56
63
  GetDeviceResponse = Shapes::StructureShape.new(name: 'GetDeviceResponse')
57
64
  GetJobRequest = Shapes::StructureShape.new(name: 'GetJobRequest')
@@ -128,7 +135,17 @@ module Aws::Braket
128
135
  SearchQuantumTasksRequestFiltersList = Shapes::ListShape.new(name: 'SearchQuantumTasksRequestFiltersList')
129
136
  SearchQuantumTasksRequestMaxResultsInteger = Shapes::IntegerShape.new(name: 'SearchQuantumTasksRequestMaxResultsInteger')
130
137
  SearchQuantumTasksResponse = Shapes::StructureShape.new(name: 'SearchQuantumTasksResponse')
138
+ SearchSpendingLimitsFilter = Shapes::StructureShape.new(name: 'SearchSpendingLimitsFilter')
139
+ SearchSpendingLimitsFilterOperator = Shapes::StringShape.new(name: 'SearchSpendingLimitsFilterOperator')
140
+ SearchSpendingLimitsFilterValuesList = Shapes::ListShape.new(name: 'SearchSpendingLimitsFilterValuesList')
141
+ SearchSpendingLimitsRequest = Shapes::StructureShape.new(name: 'SearchSpendingLimitsRequest')
142
+ SearchSpendingLimitsRequestFiltersList = Shapes::ListShape.new(name: 'SearchSpendingLimitsRequestFiltersList')
143
+ SearchSpendingLimitsRequestMaxResultsInteger = Shapes::IntegerShape.new(name: 'SearchSpendingLimitsRequestMaxResultsInteger')
144
+ SearchSpendingLimitsResponse = Shapes::StructureShape.new(name: 'SearchSpendingLimitsResponse')
131
145
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
146
+ SpendingLimitArn = Shapes::StringShape.new(name: 'SpendingLimitArn')
147
+ SpendingLimitSummary = Shapes::StructureShape.new(name: 'SpendingLimitSummary')
148
+ SpendingLimitSummaryList = Shapes::ListShape.new(name: 'SpendingLimitSummaryList')
132
149
  String = Shapes::StringShape.new(name: 'String')
133
150
  String1024 = Shapes::StringShape.new(name: 'String1024')
134
151
  String2048 = Shapes::StringShape.new(name: 'String2048')
@@ -136,13 +153,18 @@ module Aws::Braket
136
153
  String4096 = Shapes::StringShape.new(name: 'String4096')
137
154
  String64 = Shapes::StringShape.new(name: 'String64')
138
155
  SyntheticTimestamp_date_time = Shapes::TimestampShape.new(name: 'SyntheticTimestamp_date_time', timestampFormat: "iso8601")
156
+ SyntheticTimestamp_epoch_seconds = Shapes::TimestampShape.new(name: 'SyntheticTimestamp_epoch_seconds', timestampFormat: "unixTimestamp")
139
157
  TagKeys = Shapes::ListShape.new(name: 'TagKeys')
140
158
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
141
159
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
142
160
  TagsMap = Shapes::MapShape.new(name: 'TagsMap')
143
161
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
162
+ TimePeriod = Shapes::StructureShape.new(name: 'TimePeriod')
144
163
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
145
164
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
165
+ UpdateSpendingLimitRequest = Shapes::StructureShape.new(name: 'UpdateSpendingLimitRequest')
166
+ UpdateSpendingLimitRequestSpendingLimitString = Shapes::StringShape.new(name: 'UpdateSpendingLimitRequestSpendingLimitString')
167
+ UpdateSpendingLimitResponse = Shapes::StructureShape.new(name: 'UpdateSpendingLimitResponse')
146
168
  Uri = Shapes::StringShape.new(name: 'Uri')
147
169
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
148
170
  ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
@@ -218,6 +240,7 @@ module Aws::Braket
218
240
  CreateQuantumTaskRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
219
241
  CreateQuantumTaskRequest.add_member(:job_token, Shapes::ShapeRef.new(shape: JobToken, location_name: "jobToken"))
220
242
  CreateQuantumTaskRequest.add_member(:associations, Shapes::ShapeRef.new(shape: CreateQuantumTaskRequestAssociationsList, location_name: "associations"))
243
+ CreateQuantumTaskRequest.add_member(:experimental_capabilities, Shapes::ShapeRef.new(shape: ExperimentalCapabilities, location_name: "experimentalCapabilities"))
221
244
  CreateQuantumTaskRequest.struct_class = Types::CreateQuantumTaskRequest
222
245
 
223
246
  CreateQuantumTaskRequestAssociationsList.member = Shapes::ShapeRef.new(shape: Association)
@@ -225,9 +248,24 @@ module Aws::Braket
225
248
  CreateQuantumTaskResponse.add_member(:quantum_task_arn, Shapes::ShapeRef.new(shape: QuantumTaskArn, required: true, location_name: "quantumTaskArn"))
226
249
  CreateQuantumTaskResponse.struct_class = Types::CreateQuantumTaskResponse
227
250
 
251
+ CreateSpendingLimitRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String64, required: true, location_name: "clientToken", metadata: {"idempotencyToken" => true}))
252
+ CreateSpendingLimitRequest.add_member(:device_arn, Shapes::ShapeRef.new(shape: DeviceArn, required: true, location_name: "deviceArn"))
253
+ CreateSpendingLimitRequest.add_member(:spending_limit, Shapes::ShapeRef.new(shape: CreateSpendingLimitRequestSpendingLimitString, required: true, location_name: "spendingLimit"))
254
+ CreateSpendingLimitRequest.add_member(:time_period, Shapes::ShapeRef.new(shape: TimePeriod, location_name: "timePeriod"))
255
+ CreateSpendingLimitRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
256
+ CreateSpendingLimitRequest.struct_class = Types::CreateSpendingLimitRequest
257
+
258
+ CreateSpendingLimitResponse.add_member(:spending_limit_arn, Shapes::ShapeRef.new(shape: SpendingLimitArn, required: true, location_name: "spendingLimitArn"))
259
+ CreateSpendingLimitResponse.struct_class = Types::CreateSpendingLimitResponse
260
+
228
261
  DataSource.add_member(:s3_data_source, Shapes::ShapeRef.new(shape: S3DataSource, required: true, location_name: "s3DataSource"))
229
262
  DataSource.struct_class = Types::DataSource
230
263
 
264
+ DeleteSpendingLimitRequest.add_member(:spending_limit_arn, Shapes::ShapeRef.new(shape: SpendingLimitArn, required: true, location: "uri", location_name: "spendingLimitArn"))
265
+ DeleteSpendingLimitRequest.struct_class = Types::DeleteSpendingLimitRequest
266
+
267
+ DeleteSpendingLimitResponse.struct_class = Types::DeleteSpendingLimitResponse
268
+
231
269
  DeviceConfig.add_member(:device, Shapes::ShapeRef.new(shape: String256, required: true, location_name: "device"))
232
270
  DeviceConfig.struct_class = Types::DeviceConfig
233
271
 
@@ -253,6 +291,12 @@ module Aws::Braket
253
291
 
254
292
  DeviceSummaryList.member = Shapes::ShapeRef.new(shape: DeviceSummary)
255
293
 
294
+ ExperimentalCapabilities.add_member(:enabled, Shapes::ShapeRef.new(shape: ExperimentalCapabilitiesEnablementType, location_name: "enabled"))
295
+ ExperimentalCapabilities.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
296
+ ExperimentalCapabilities.add_member_subclass(:enabled, Types::ExperimentalCapabilities::Enabled)
297
+ ExperimentalCapabilities.add_member_subclass(:unknown, Types::ExperimentalCapabilities::Unknown)
298
+ ExperimentalCapabilities.struct_class = Types::ExperimentalCapabilities
299
+
256
300
  GetDeviceRequest.add_member(:device_arn, Shapes::ShapeRef.new(shape: DeviceArn, required: true, location: "uri", location_name: "deviceArn"))
257
301
  GetDeviceRequest.struct_class = Types::GetDeviceRequest
258
302
 
@@ -312,6 +356,7 @@ module Aws::Braket
312
356
  GetQuantumTaskResponse.add_member(:associations, Shapes::ShapeRef.new(shape: Associations, location_name: "associations"))
313
357
  GetQuantumTaskResponse.add_member(:num_successful_shots, Shapes::ShapeRef.new(shape: Long, location_name: "numSuccessfulShots"))
314
358
  GetQuantumTaskResponse.add_member(:action_metadata, Shapes::ShapeRef.new(shape: ActionMetadata, location_name: "actionMetadata"))
359
+ GetQuantumTaskResponse.add_member(:experimental_capabilities, Shapes::ShapeRef.new(shape: ExperimentalCapabilities, location_name: "experimentalCapabilities"))
315
360
  GetQuantumTaskResponse.struct_class = Types::GetQuantumTaskResponse
316
361
 
317
362
  HybridJobAdditionalAttributeNamesList.member = Shapes::ShapeRef.new(shape: HybridJobAdditionalAttributeName)
@@ -469,9 +514,40 @@ module Aws::Braket
469
514
  SearchQuantumTasksResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
470
515
  SearchQuantumTasksResponse.struct_class = Types::SearchQuantumTasksResponse
471
516
 
517
+ SearchSpendingLimitsFilter.add_member(:name, Shapes::ShapeRef.new(shape: String64, required: true, location_name: "name"))
518
+ SearchSpendingLimitsFilter.add_member(:values, Shapes::ShapeRef.new(shape: SearchSpendingLimitsFilterValuesList, required: true, location_name: "values"))
519
+ SearchSpendingLimitsFilter.add_member(:operator, Shapes::ShapeRef.new(shape: SearchSpendingLimitsFilterOperator, required: true, location_name: "operator"))
520
+ SearchSpendingLimitsFilter.struct_class = Types::SearchSpendingLimitsFilter
521
+
522
+ SearchSpendingLimitsFilterValuesList.member = Shapes::ShapeRef.new(shape: String256)
523
+
524
+ SearchSpendingLimitsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
525
+ SearchSpendingLimitsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: SearchSpendingLimitsRequestMaxResultsInteger, location_name: "maxResults"))
526
+ SearchSpendingLimitsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: SearchSpendingLimitsRequestFiltersList, location_name: "filters"))
527
+ SearchSpendingLimitsRequest.struct_class = Types::SearchSpendingLimitsRequest
528
+
529
+ SearchSpendingLimitsRequestFiltersList.member = Shapes::ShapeRef.new(shape: SearchSpendingLimitsFilter)
530
+
531
+ SearchSpendingLimitsResponse.add_member(:spending_limits, Shapes::ShapeRef.new(shape: SpendingLimitSummaryList, required: true, location_name: "spendingLimits"))
532
+ SearchSpendingLimitsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
533
+ SearchSpendingLimitsResponse.struct_class = Types::SearchSpendingLimitsResponse
534
+
472
535
  ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
473
536
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
474
537
 
538
+ SpendingLimitSummary.add_member(:spending_limit_arn, Shapes::ShapeRef.new(shape: SpendingLimitArn, required: true, location_name: "spendingLimitArn"))
539
+ SpendingLimitSummary.add_member(:device_arn, Shapes::ShapeRef.new(shape: DeviceArn, required: true, location_name: "deviceArn"))
540
+ SpendingLimitSummary.add_member(:time_period, Shapes::ShapeRef.new(shape: TimePeriod, required: true, location_name: "timePeriod"))
541
+ SpendingLimitSummary.add_member(:spending_limit, Shapes::ShapeRef.new(shape: String, required: true, location_name: "spendingLimit"))
542
+ SpendingLimitSummary.add_member(:queued_spend, Shapes::ShapeRef.new(shape: String, required: true, location_name: "queuedSpend"))
543
+ SpendingLimitSummary.add_member(:total_spend, Shapes::ShapeRef.new(shape: String, required: true, location_name: "totalSpend"))
544
+ SpendingLimitSummary.add_member(:created_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, required: true, location_name: "createdAt"))
545
+ SpendingLimitSummary.add_member(:updated_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, required: true, location_name: "updatedAt"))
546
+ SpendingLimitSummary.add_member(:tags, Shapes::ShapeRef.new(shape: TagsMap, location_name: "tags"))
547
+ SpendingLimitSummary.struct_class = Types::SpendingLimitSummary
548
+
549
+ SpendingLimitSummaryList.member = Shapes::ShapeRef.new(shape: SpendingLimitSummary)
550
+
475
551
  TagKeys.member = Shapes::ShapeRef.new(shape: String)
476
552
 
477
553
  TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "resourceArn"))
@@ -486,12 +562,24 @@ module Aws::Braket
486
562
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
487
563
  ThrottlingException.struct_class = Types::ThrottlingException
488
564
 
565
+ TimePeriod.add_member(:start_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_epoch_seconds, required: true, location_name: "startAt"))
566
+ TimePeriod.add_member(:end_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_epoch_seconds, required: true, location_name: "endAt"))
567
+ TimePeriod.struct_class = Types::TimePeriod
568
+
489
569
  UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: String, required: true, location: "uri", location_name: "resourceArn"))
490
570
  UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location: "querystring", location_name: "tagKeys"))
491
571
  UntagResourceRequest.struct_class = Types::UntagResourceRequest
492
572
 
493
573
  UntagResourceResponse.struct_class = Types::UntagResourceResponse
494
574
 
575
+ UpdateSpendingLimitRequest.add_member(:spending_limit_arn, Shapes::ShapeRef.new(shape: SpendingLimitArn, required: true, location: "uri", location_name: "spendingLimitArn"))
576
+ UpdateSpendingLimitRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String64, required: true, location_name: "clientToken", metadata: {"idempotencyToken" => true}))
577
+ UpdateSpendingLimitRequest.add_member(:spending_limit, Shapes::ShapeRef.new(shape: UpdateSpendingLimitRequestSpendingLimitString, location_name: "spendingLimit"))
578
+ UpdateSpendingLimitRequest.add_member(:time_period, Shapes::ShapeRef.new(shape: TimePeriod, location_name: "timePeriod"))
579
+ UpdateSpendingLimitRequest.struct_class = Types::UpdateSpendingLimitRequest
580
+
581
+ UpdateSpendingLimitResponse.struct_class = Types::UpdateSpendingLimitResponse
582
+
495
583
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
496
584
  ValidationException.add_member(:reason, Shapes::ShapeRef.new(shape: ValidationExceptionReason, location_name: "reason"))
497
585
  ValidationException.add_member(:program_set_validation_failures, Shapes::ShapeRef.new(shape: ProgramSetValidationFailuresList, location_name: "programSetValidationFailures"))
@@ -575,6 +663,32 @@ module Aws::Braket
575
663
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
576
664
  end)
577
665
 
666
+ api.add_operation(:create_spending_limit, Seahorse::Model::Operation.new.tap do |o|
667
+ o.name = "CreateSpendingLimit"
668
+ o.http_method = "POST"
669
+ o.http_request_uri = "/spending-limit"
670
+ o.input = Shapes::ShapeRef.new(shape: CreateSpendingLimitRequest)
671
+ o.output = Shapes::ShapeRef.new(shape: CreateSpendingLimitResponse)
672
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
673
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
674
+ o.errors << Shapes::ShapeRef.new(shape: DeviceRetiredException)
675
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
676
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
677
+ end)
678
+
679
+ api.add_operation(:delete_spending_limit, Seahorse::Model::Operation.new.tap do |o|
680
+ o.name = "DeleteSpendingLimit"
681
+ o.http_method = "DELETE"
682
+ o.http_request_uri = "/spending-limit/{spendingLimitArn}/delete"
683
+ o.input = Shapes::ShapeRef.new(shape: DeleteSpendingLimitRequest)
684
+ o.output = Shapes::ShapeRef.new(shape: DeleteSpendingLimitResponse)
685
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
686
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
687
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
688
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
689
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
690
+ end)
691
+
578
692
  api.add_operation(:get_device, Seahorse::Model::Operation.new.tap do |o|
579
693
  o.name = "GetDevice"
580
694
  o.http_method = "GET"
@@ -679,6 +793,24 @@ module Aws::Braket
679
793
  )
680
794
  end)
681
795
 
796
+ api.add_operation(:search_spending_limits, Seahorse::Model::Operation.new.tap do |o|
797
+ o.name = "SearchSpendingLimits"
798
+ o.http_method = "POST"
799
+ o.http_request_uri = "/spending-limits"
800
+ o.input = Shapes::ShapeRef.new(shape: SearchSpendingLimitsRequest)
801
+ o.output = Shapes::ShapeRef.new(shape: SearchSpendingLimitsResponse)
802
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
803
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
804
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
805
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
806
+ o[:pager] = Aws::Pager.new(
807
+ limit_key: "max_results",
808
+ tokens: {
809
+ "next_token" => "next_token"
810
+ }
811
+ )
812
+ end)
813
+
682
814
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
683
815
  o.name = "TagResource"
684
816
  o.http_method = "POST"
@@ -700,6 +832,19 @@ module Aws::Braket
700
832
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
701
833
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
702
834
  end)
835
+
836
+ api.add_operation(:update_spending_limit, Seahorse::Model::Operation.new.tap do |o|
837
+ o.name = "UpdateSpendingLimit"
838
+ o.http_method = "PATCH"
839
+ o.http_request_uri = "/spending-limit/{spendingLimitArn}/update"
840
+ o.input = Shapes::ShapeRef.new(shape: UpdateSpendingLimitRequest)
841
+ o.output = Shapes::ShapeRef.new(shape: UpdateSpendingLimitResponse)
842
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
843
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
844
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
845
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
846
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
847
+ end)
703
848
  end
704
849
 
705
850
  end
@@ -32,12 +32,12 @@ module Aws::Braket
32
32
  #
33
33
  # @!attribute [rw] program_count
34
34
  # The number of programs in a program set. This is only available for
35
- # a Program Set.
35
+ # a program set.
36
36
  # @return [Integer]
37
37
  #
38
38
  # @!attribute [rw] executable_count
39
39
  # The number of executables in a program set. This is only available
40
- # for a Program Set.
40
+ # for a program set.
41
41
  # @return [Integer]
42
42
  #
43
43
  # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/ActionMetadata AWS API Documentation
@@ -339,6 +339,10 @@ module Aws::Braket
339
339
  # task.
340
340
  # @return [Array<Types::Association>]
341
341
  #
342
+ # @!attribute [rw] experimental_capabilities
343
+ # Enable experimental capabilities for the quantum task.
344
+ # @return [Types::ExperimentalCapabilities]
345
+ #
342
346
  # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/CreateQuantumTaskRequest AWS API Documentation
343
347
  #
344
348
  class CreateQuantumTaskRequest < Struct.new(
@@ -351,7 +355,8 @@ module Aws::Braket
351
355
  :action,
352
356
  :tags,
353
357
  :job_token,
354
- :associations)
358
+ :associations,
359
+ :experimental_capabilities)
355
360
  SENSITIVE = []
356
361
  include Aws::Structure
357
362
  end
@@ -368,6 +373,60 @@ module Aws::Braket
368
373
  include Aws::Structure
369
374
  end
370
375
 
376
+ # @!attribute [rw] client_token
377
+ # A unique, case-sensitive identifier to ensure that the operation
378
+ # completes no more than one time. If this token matches a previous
379
+ # request, Amazon Braket ignores the request, but does not return an
380
+ # error.
381
+ #
382
+ # **A suitable default value is auto-generated.** You should normally
383
+ # not need to pass this option.
384
+ # @return [String]
385
+ #
386
+ # @!attribute [rw] device_arn
387
+ # The Amazon Resource Name (ARN) of the quantum device to apply the
388
+ # spending limit to.
389
+ # @return [String]
390
+ #
391
+ # @!attribute [rw] spending_limit
392
+ # The maximum amount that can be spent on the specified device, in
393
+ # USD.
394
+ # @return [String]
395
+ #
396
+ # @!attribute [rw] time_period
397
+ # The time period during which the spending limit is active, including
398
+ # start and end dates.
399
+ # @return [Types::TimePeriod]
400
+ #
401
+ # @!attribute [rw] tags
402
+ # The tags to apply to the spending limit. Each tag consists of a key
403
+ # and an optional value.
404
+ # @return [Hash<String,String>]
405
+ #
406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/CreateSpendingLimitRequest AWS API Documentation
407
+ #
408
+ class CreateSpendingLimitRequest < Struct.new(
409
+ :client_token,
410
+ :device_arn,
411
+ :spending_limit,
412
+ :time_period,
413
+ :tags)
414
+ SENSITIVE = []
415
+ include Aws::Structure
416
+ end
417
+
418
+ # @!attribute [rw] spending_limit_arn
419
+ # The Amazon Resource Name (ARN) of the created spending limit.
420
+ # @return [String]
421
+ #
422
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/CreateSpendingLimitResponse AWS API Documentation
423
+ #
424
+ class CreateSpendingLimitResponse < Struct.new(
425
+ :spending_limit_arn)
426
+ SENSITIVE = []
427
+ include Aws::Structure
428
+ end
429
+
371
430
  # Information about the source of the input data used by the Amazon
372
431
  # Braket hybrid job.
373
432
  #
@@ -383,6 +442,22 @@ module Aws::Braket
383
442
  include Aws::Structure
384
443
  end
385
444
 
445
+ # @!attribute [rw] spending_limit_arn
446
+ # The Amazon Resource Name (ARN) of the spending limit to delete.
447
+ # @return [String]
448
+ #
449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/DeleteSpendingLimitRequest AWS API Documentation
450
+ #
451
+ class DeleteSpendingLimitRequest < Struct.new(
452
+ :spending_limit_arn)
453
+ SENSITIVE = []
454
+ include Aws::Structure
455
+ end
456
+
457
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/DeleteSpendingLimitResponse AWS API Documentation
458
+ #
459
+ class DeleteSpendingLimitResponse < Aws::EmptyStructure; end
460
+
386
461
  # Configures the primary device used to create and run an Amazon Braket
387
462
  # hybrid job.
388
463
  #
@@ -486,6 +561,31 @@ module Aws::Braket
486
561
  include Aws::Structure
487
562
  end
488
563
 
564
+ # Enabled experimental capabilities for quantum hardware. Note that the
565
+ # use of these features may impact device capabilities and performance
566
+ # beyond its standard specifications.
567
+ #
568
+ # @note ExperimentalCapabilities is a union - when making an API calls you must set exactly one of the members.
569
+ #
570
+ # @note ExperimentalCapabilities is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ExperimentalCapabilities corresponding to the set member.
571
+ #
572
+ # @!attribute [rw] enabled
573
+ # Enabled experimental capabilities.
574
+ # @return [String]
575
+ #
576
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/ExperimentalCapabilities AWS API Documentation
577
+ #
578
+ class ExperimentalCapabilities < Struct.new(
579
+ :enabled,
580
+ :unknown)
581
+ SENSITIVE = []
582
+ include Aws::Structure
583
+ include Aws::Structure::Union
584
+
585
+ class Enabled < ExperimentalCapabilities; end
586
+ class Unknown < ExperimentalCapabilities; end
587
+ end
588
+
489
589
  # @!attribute [rw] device_arn
490
590
  # The ARN of the device to retrieve.
491
591
  # @return [String]
@@ -777,6 +877,10 @@ module Aws::Braket
777
877
  # information about the type of action and program counts.
778
878
  # @return [Types::ActionMetadata]
779
879
  #
880
+ # @!attribute [rw] experimental_capabilities
881
+ # Enabled experimental capabilities for the quantum task, if any.
882
+ # @return [Types::ExperimentalCapabilities]
883
+ #
780
884
  # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/GetQuantumTaskResponse AWS API Documentation
781
885
  #
782
886
  class GetQuantumTaskResponse < Struct.new(
@@ -795,7 +899,8 @@ module Aws::Braket
795
899
  :queue_info,
796
900
  :associations,
797
901
  :num_successful_shots,
798
- :action_metadata)
902
+ :action_metadata,
903
+ :experimental_capabilities)
799
904
  SENSITIVE = []
800
905
  include Aws::Structure
801
906
  end
@@ -1437,6 +1542,77 @@ module Aws::Braket
1437
1542
  include Aws::Structure
1438
1543
  end
1439
1544
 
1545
+ # Specifies filter criteria for searching spending limits. Use filters
1546
+ # to narrow down results based on specific attributes.
1547
+ #
1548
+ # @!attribute [rw] name
1549
+ # The name of the field to filter on. Currently only supports
1550
+ # `deviceArn`.
1551
+ # @return [String]
1552
+ #
1553
+ # @!attribute [rw] values
1554
+ # An array of values to match against the specified field.
1555
+ # @return [Array<String>]
1556
+ #
1557
+ # @!attribute [rw] operator
1558
+ # The comparison operator to use when filtering.
1559
+ # @return [String]
1560
+ #
1561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/SearchSpendingLimitsFilter AWS API Documentation
1562
+ #
1563
+ class SearchSpendingLimitsFilter < Struct.new(
1564
+ :name,
1565
+ :values,
1566
+ :operator)
1567
+ SENSITIVE = []
1568
+ include Aws::Structure
1569
+ end
1570
+
1571
+ # @!attribute [rw] next_token
1572
+ # The token to retrieve the next page of results. This value is
1573
+ # returned from a previous call to SearchSpendingLimits when there are
1574
+ # more results available.
1575
+ # @return [String]
1576
+ #
1577
+ # @!attribute [rw] max_results
1578
+ # The maximum number of results to return in a single call. Minimum
1579
+ # value of 1, maximum value of 100. Default is 20.
1580
+ # @return [Integer]
1581
+ #
1582
+ # @!attribute [rw] filters
1583
+ # The filters to apply when searching for spending limits. Use filters
1584
+ # to narrow down the results based on specific criteria.
1585
+ # @return [Array<Types::SearchSpendingLimitsFilter>]
1586
+ #
1587
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/SearchSpendingLimitsRequest AWS API Documentation
1588
+ #
1589
+ class SearchSpendingLimitsRequest < Struct.new(
1590
+ :next_token,
1591
+ :max_results,
1592
+ :filters)
1593
+ SENSITIVE = []
1594
+ include Aws::Structure
1595
+ end
1596
+
1597
+ # @!attribute [rw] spending_limits
1598
+ # An array of spending limit summaries that match the specified
1599
+ # filters.
1600
+ # @return [Array<Types::SpendingLimitSummary>]
1601
+ #
1602
+ # @!attribute [rw] next_token
1603
+ # The token to retrieve the next page of results. This value is null
1604
+ # when there are no more results to return.
1605
+ # @return [String]
1606
+ #
1607
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/SearchSpendingLimitsResponse AWS API Documentation
1608
+ #
1609
+ class SearchSpendingLimitsResponse < Struct.new(
1610
+ :spending_limits,
1611
+ :next_token)
1612
+ SENSITIVE = []
1613
+ include Aws::Structure
1614
+ end
1615
+
1440
1616
  # The request failed because a service quota is exceeded.
1441
1617
  #
1442
1618
  # @!attribute [rw] message
@@ -1450,6 +1626,68 @@ module Aws::Braket
1450
1626
  include Aws::Structure
1451
1627
  end
1452
1628
 
1629
+ # Contains summary information about a spending limit, including current
1630
+ # spending status and configuration details.
1631
+ #
1632
+ # @!attribute [rw] spending_limit_arn
1633
+ # The Amazon Resource Name (ARN) that uniquely identifies the spending
1634
+ # limit.
1635
+ # @return [String]
1636
+ #
1637
+ # @!attribute [rw] device_arn
1638
+ # The Amazon Resource Name (ARN) of the quantum device associated with
1639
+ # this spending limit.
1640
+ # @return [String]
1641
+ #
1642
+ # @!attribute [rw] time_period
1643
+ # The time period during which the spending limit is active.
1644
+ # @return [Types::TimePeriod]
1645
+ #
1646
+ # @!attribute [rw] spending_limit
1647
+ # The maximum spending amount allowed for the device during the
1648
+ # specified time period, in USD.
1649
+ # @return [String]
1650
+ #
1651
+ # @!attribute [rw] queued_spend
1652
+ # The amount currently queued for spending on the device, in USD.
1653
+ # @return [String]
1654
+ #
1655
+ # @!attribute [rw] total_spend
1656
+ # The total amount spent on the device so far during the current time
1657
+ # period, in USD.
1658
+ # @return [String]
1659
+ #
1660
+ # @!attribute [rw] created_at
1661
+ # The date and time when the spending limit was created, in epoch
1662
+ # seconds.
1663
+ # @return [Time]
1664
+ #
1665
+ # @!attribute [rw] updated_at
1666
+ # The date and time when the spending limit was last modified, in
1667
+ # epoch seconds.
1668
+ # @return [Time]
1669
+ #
1670
+ # @!attribute [rw] tags
1671
+ # The tags associated with the spending limit. Each tag consists of a
1672
+ # key and an optional value.
1673
+ # @return [Hash<String,String>]
1674
+ #
1675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/SpendingLimitSummary AWS API Documentation
1676
+ #
1677
+ class SpendingLimitSummary < Struct.new(
1678
+ :spending_limit_arn,
1679
+ :device_arn,
1680
+ :time_period,
1681
+ :spending_limit,
1682
+ :queued_spend,
1683
+ :total_spend,
1684
+ :created_at,
1685
+ :updated_at,
1686
+ :tags)
1687
+ SENSITIVE = []
1688
+ include Aws::Structure
1689
+ end
1690
+
1453
1691
  # @!attribute [rw] resource_arn
1454
1692
  # Specify the `resourceArn` of the resource to which a tag will be
1455
1693
  # added.
@@ -1486,6 +1724,28 @@ module Aws::Braket
1486
1724
  include Aws::Structure
1487
1725
  end
1488
1726
 
1727
+ # Defines a time range for spending limits, specifying when the limit is
1728
+ # active.
1729
+ #
1730
+ # @!attribute [rw] start_at
1731
+ # The start date and time for the spending limit period, in epoch
1732
+ # seconds.
1733
+ # @return [Time]
1734
+ #
1735
+ # @!attribute [rw] end_at
1736
+ # The end date and time for the spending limit period, in epoch
1737
+ # seconds.
1738
+ # @return [Time]
1739
+ #
1740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/TimePeriod AWS API Documentation
1741
+ #
1742
+ class TimePeriod < Struct.new(
1743
+ :start_at,
1744
+ :end_at)
1745
+ SENSITIVE = []
1746
+ include Aws::Structure
1747
+ end
1748
+
1489
1749
  # @!attribute [rw] resource_arn
1490
1750
  # Specify the `resourceArn` for the resource from which to remove the
1491
1751
  # tags.
@@ -1508,6 +1768,45 @@ module Aws::Braket
1508
1768
  #
1509
1769
  class UntagResourceResponse < Aws::EmptyStructure; end
1510
1770
 
1771
+ # @!attribute [rw] spending_limit_arn
1772
+ # The Amazon Resource Name (ARN) of the spending limit to update.
1773
+ # @return [String]
1774
+ #
1775
+ # @!attribute [rw] client_token
1776
+ # A unique, case-sensitive identifier to ensure that the operation
1777
+ # completes no more than one time. If this token matches a previous
1778
+ # request, Amazon Braket ignores the request, but does not return an
1779
+ # error.
1780
+ #
1781
+ # **A suitable default value is auto-generated.** You should normally
1782
+ # not need to pass this option.
1783
+ # @return [String]
1784
+ #
1785
+ # @!attribute [rw] spending_limit
1786
+ # The new maximum amount that can be spent on the specified device, in
1787
+ # USD.
1788
+ # @return [String]
1789
+ #
1790
+ # @!attribute [rw] time_period
1791
+ # The new time period during which the spending limit is active,
1792
+ # including start and end dates.
1793
+ # @return [Types::TimePeriod]
1794
+ #
1795
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/UpdateSpendingLimitRequest AWS API Documentation
1796
+ #
1797
+ class UpdateSpendingLimitRequest < Struct.new(
1798
+ :spending_limit_arn,
1799
+ :client_token,
1800
+ :spending_limit,
1801
+ :time_period)
1802
+ SENSITIVE = []
1803
+ include Aws::Structure
1804
+ end
1805
+
1806
+ # @see http://docs.aws.amazon.com/goto/WebAPI/braket-2019-09-01/UpdateSpendingLimitResponse AWS API Documentation
1807
+ #
1808
+ class UpdateSpendingLimitResponse < Aws::EmptyStructure; end
1809
+
1511
1810
  # The input request failed to satisfy constraints expected by Amazon
1512
1811
  # Braket.
1513
1812
  #
@@ -54,7 +54,7 @@ module Aws::Braket
54
54
  autoload :EndpointProvider, 'aws-sdk-braket/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-braket/endpoints'
56
56
 
57
- GEM_VERSION = '1.61.0'
57
+ GEM_VERSION = '1.64.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -181,10 +181,39 @@ module Aws
181
181
  arn: ::String,
182
182
  type: ("RESERVATION_TIME_WINDOW_ARN")
183
183
  },
184
- ]
184
+ ],
185
+ ?experimental_capabilities: {
186
+ enabled: ("ALL" | "NONE")?
187
+ }
185
188
  ) -> _CreateQuantumTaskResponseSuccess
186
189
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateQuantumTaskResponseSuccess
187
190
 
191
+ interface _CreateSpendingLimitResponseSuccess
192
+ include ::Seahorse::Client::_ResponseSuccess[Types::CreateSpendingLimitResponse]
193
+ def spending_limit_arn: () -> ::String
194
+ end
195
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Braket/Client.html#create_spending_limit-instance_method
196
+ def create_spending_limit: (
197
+ client_token: ::String,
198
+ device_arn: ::String,
199
+ spending_limit: ::String,
200
+ ?time_period: {
201
+ start_at: ::Time,
202
+ end_at: ::Time
203
+ },
204
+ ?tags: Hash[::String, ::String]
205
+ ) -> _CreateSpendingLimitResponseSuccess
206
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateSpendingLimitResponseSuccess
207
+
208
+ interface _DeleteSpendingLimitResponseSuccess
209
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteSpendingLimitResponse]
210
+ end
211
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Braket/Client.html#delete_spending_limit-instance_method
212
+ def delete_spending_limit: (
213
+ spending_limit_arn: ::String
214
+ ) -> _DeleteSpendingLimitResponseSuccess
215
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteSpendingLimitResponseSuccess
216
+
188
217
  interface _GetDeviceResponseSuccess
189
218
  include ::Seahorse::Client::_ResponseSuccess[Types::GetDeviceResponse]
190
219
  def device_arn: () -> ::String
@@ -250,6 +279,7 @@ module Aws
250
279
  def associations: () -> ::Array[Types::Association]
251
280
  def num_successful_shots: () -> ::Integer
252
281
  def action_metadata: () -> Types::ActionMetadata
282
+ def experimental_capabilities: () -> Types::ExperimentalCapabilities
253
283
  end
254
284
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Braket/Client.html#get_quantum_task-instance_method
255
285
  def get_quantum_task: (
@@ -324,6 +354,25 @@ module Aws
324
354
  ) -> _SearchQuantumTasksResponseSuccess
325
355
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _SearchQuantumTasksResponseSuccess
326
356
 
357
+ interface _SearchSpendingLimitsResponseSuccess
358
+ include ::Seahorse::Client::_ResponseSuccess[Types::SearchSpendingLimitsResponse]
359
+ def spending_limits: () -> ::Array[Types::SpendingLimitSummary]
360
+ def next_token: () -> ::String
361
+ end
362
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Braket/Client.html#search_spending_limits-instance_method
363
+ def search_spending_limits: (
364
+ ?next_token: ::String,
365
+ ?max_results: ::Integer,
366
+ ?filters: Array[
367
+ {
368
+ name: ::String,
369
+ values: Array[::String],
370
+ operator: ("EQUAL")
371
+ },
372
+ ]
373
+ ) -> _SearchSpendingLimitsResponseSuccess
374
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _SearchSpendingLimitsResponseSuccess
375
+
327
376
  interface _TagResourceResponseSuccess
328
377
  include ::Seahorse::Client::_ResponseSuccess[Types::TagResourceResponse]
329
378
  end
@@ -343,6 +392,21 @@ module Aws
343
392
  tag_keys: Array[::String]
344
393
  ) -> _UntagResourceResponseSuccess
345
394
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UntagResourceResponseSuccess
395
+
396
+ interface _UpdateSpendingLimitResponseSuccess
397
+ include ::Seahorse::Client::_ResponseSuccess[Types::UpdateSpendingLimitResponse]
398
+ end
399
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Braket/Client.html#update_spending_limit-instance_method
400
+ def update_spending_limit: (
401
+ spending_limit_arn: ::String,
402
+ client_token: ::String,
403
+ ?spending_limit: ::String,
404
+ ?time_period: {
405
+ start_at: ::Time,
406
+ end_at: ::Time
407
+ }
408
+ ) -> _UpdateSpendingLimitResponseSuccess
409
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateSpendingLimitResponseSuccess
346
410
  end
347
411
  end
348
412
  end
data/sig/types.rbs CHANGED
@@ -98,6 +98,7 @@ module Aws::Braket
98
98
  attr_accessor tags: ::Hash[::String, ::String]
99
99
  attr_accessor job_token: ::String
100
100
  attr_accessor associations: ::Array[Types::Association]
101
+ attr_accessor experimental_capabilities: Types::ExperimentalCapabilities
101
102
  SENSITIVE: []
102
103
  end
103
104
 
@@ -106,11 +107,33 @@ module Aws::Braket
106
107
  SENSITIVE: []
107
108
  end
108
109
 
110
+ class CreateSpendingLimitRequest
111
+ attr_accessor client_token: ::String
112
+ attr_accessor device_arn: ::String
113
+ attr_accessor spending_limit: ::String
114
+ attr_accessor time_period: Types::TimePeriod
115
+ attr_accessor tags: ::Hash[::String, ::String]
116
+ SENSITIVE: []
117
+ end
118
+
119
+ class CreateSpendingLimitResponse
120
+ attr_accessor spending_limit_arn: ::String
121
+ SENSITIVE: []
122
+ end
123
+
109
124
  class DataSource
110
125
  attr_accessor s3_data_source: Types::S3DataSource
111
126
  SENSITIVE: []
112
127
  end
113
128
 
129
+ class DeleteSpendingLimitRequest
130
+ attr_accessor spending_limit_arn: ::String
131
+ SENSITIVE: []
132
+ end
133
+
134
+ class DeleteSpendingLimitResponse < Aws::EmptyStructure
135
+ end
136
+
114
137
  class DeviceConfig
115
138
  attr_accessor device: ::String
116
139
  SENSITIVE: []
@@ -142,6 +165,17 @@ module Aws::Braket
142
165
  SENSITIVE: []
143
166
  end
144
167
 
168
+ class ExperimentalCapabilities
169
+ attr_accessor enabled: ("ALL" | "NONE")
170
+ attr_accessor unknown: untyped
171
+ SENSITIVE: []
172
+
173
+ class Enabled < ExperimentalCapabilities
174
+ end
175
+ class Unknown < ExperimentalCapabilities
176
+ end
177
+ end
178
+
145
179
  class GetDeviceRequest
146
180
  attr_accessor device_arn: ::String
147
181
  SENSITIVE: []
@@ -212,6 +246,7 @@ module Aws::Braket
212
246
  attr_accessor associations: ::Array[Types::Association]
213
247
  attr_accessor num_successful_shots: ::Integer
214
248
  attr_accessor action_metadata: Types::ActionMetadata
249
+ attr_accessor experimental_capabilities: Types::ExperimentalCapabilities
215
250
  SENSITIVE: []
216
251
  end
217
252
 
@@ -391,11 +426,44 @@ module Aws::Braket
391
426
  SENSITIVE: []
392
427
  end
393
428
 
429
+ class SearchSpendingLimitsFilter
430
+ attr_accessor name: ::String
431
+ attr_accessor values: ::Array[::String]
432
+ attr_accessor operator: ("EQUAL")
433
+ SENSITIVE: []
434
+ end
435
+
436
+ class SearchSpendingLimitsRequest
437
+ attr_accessor next_token: ::String
438
+ attr_accessor max_results: ::Integer
439
+ attr_accessor filters: ::Array[Types::SearchSpendingLimitsFilter]
440
+ SENSITIVE: []
441
+ end
442
+
443
+ class SearchSpendingLimitsResponse
444
+ attr_accessor spending_limits: ::Array[Types::SpendingLimitSummary]
445
+ attr_accessor next_token: ::String
446
+ SENSITIVE: []
447
+ end
448
+
394
449
  class ServiceQuotaExceededException
395
450
  attr_accessor message: ::String
396
451
  SENSITIVE: []
397
452
  end
398
453
 
454
+ class SpendingLimitSummary
455
+ attr_accessor spending_limit_arn: ::String
456
+ attr_accessor device_arn: ::String
457
+ attr_accessor time_period: Types::TimePeriod
458
+ attr_accessor spending_limit: ::String
459
+ attr_accessor queued_spend: ::String
460
+ attr_accessor total_spend: ::String
461
+ attr_accessor created_at: ::Time
462
+ attr_accessor updated_at: ::Time
463
+ attr_accessor tags: ::Hash[::String, ::String]
464
+ SENSITIVE: []
465
+ end
466
+
399
467
  class TagResourceRequest
400
468
  attr_accessor resource_arn: ::String
401
469
  attr_accessor tags: ::Hash[::String, ::String]
@@ -410,6 +478,12 @@ module Aws::Braket
410
478
  SENSITIVE: []
411
479
  end
412
480
 
481
+ class TimePeriod
482
+ attr_accessor start_at: ::Time
483
+ attr_accessor end_at: ::Time
484
+ SENSITIVE: []
485
+ end
486
+
413
487
  class UntagResourceRequest
414
488
  attr_accessor resource_arn: ::String
415
489
  attr_accessor tag_keys: ::Array[::String]
@@ -419,6 +493,17 @@ module Aws::Braket
419
493
  class UntagResourceResponse < Aws::EmptyStructure
420
494
  end
421
495
 
496
+ class UpdateSpendingLimitRequest
497
+ attr_accessor spending_limit_arn: ::String
498
+ attr_accessor client_token: ::String
499
+ attr_accessor spending_limit: ::String
500
+ attr_accessor time_period: Types::TimePeriod
501
+ SENSITIVE: []
502
+ end
503
+
504
+ class UpdateSpendingLimitResponse < Aws::EmptyStructure
505
+ end
506
+
422
507
  class ValidationException
423
508
  attr_accessor message: ::String
424
509
  attr_accessor reason: ("ProgramSetValidationFailed")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-braket
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.61.0
4
+ version: 1.64.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
@@ -18,7 +18,7 @@ dependencies:
18
18
  version: '3'
19
19
  - - ">="
20
20
  - !ruby/object:Gem::Version
21
- version: 3.234.0
21
+ version: 3.239.1
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -28,7 +28,7 @@ dependencies:
28
28
  version: '3'
29
29
  - - ">="
30
30
  - !ruby/object:Gem::Version
31
- version: 3.234.0
31
+ version: 3.239.1
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: aws-sigv4
34
34
  requirement: !ruby/object:Gem::Requirement