aws-sdk-bedrock 1.14.0 → 1.15.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d5404baad0ebe18b05672141134ddaf930dc4f9adad7badeba58df21273ef38
4
- data.tar.gz: 1c9027f0e5614a3f812eca473f8c93ee932954d54023f8e9a2f438613bd5c8d4
3
+ metadata.gz: 71b57b036d4bff754036e14f76bde5e12ae9164f34a9c09ec048c18908e09aca
4
+ data.tar.gz: 108f1bf0c1c775a9787fc39f254546d44ed8ec475f7768ba4aa2bbb4407bcf45
5
5
  SHA512:
6
- metadata.gz: c2d86ef82c8ebd5134769d157356124c521cf42c991e69f46b3f5b3446ed92ae1fc6a267979ddecb36d2e4e8fc24c6fcae62b9d43716ee6b92ed4d2d8751eb81
7
- data.tar.gz: 48170c89885404b9ed1fb9f7f618dc8f40880ba1a01abc97a1a8cd4ee1de21064429f767c08d66a842f3c4f26fa5f4a9cfaf964b931f71873bd2ca57f5a1d0e8
6
+ metadata.gz: def49baa91fa2eab41787c106c36432eacdf6e4ef2e12528f099f85800f1ca072f73e36d465906bdc0645ba16acce35d3d97c1add7e0a8eb6fcef81407e08d26
7
+ data.tar.gz: 0a41eb93740dcb8b82cf7fcfc33755ae38a4e6f2f53e16d7f6e9dc4b7bbb70dd46a9111ec3bc36dceb071786d8adef1aeecd0e5eadaa74ea154b9ce5a84e0a4e
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.15.0 (2024-08-19)
5
+ ------------------
6
+
7
+ * Feature - Amazon Bedrock Batch Inference/ Model Invocation is a feature which allows customers to asynchronously run inference on a large set of records/files stored in S3.
8
+
4
9
  1.14.0 (2024-08-01)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.14.0
1
+ 1.15.0
@@ -1023,6 +1023,114 @@ module Aws::Bedrock
1023
1023
  req.send_request(options)
1024
1024
  end
1025
1025
 
1026
+ # Creates a job to invoke a model on multiple prompts (batch inference).
1027
+ # Format your data according to [Format your inference data][1] and
1028
+ # upload it to an Amazon S3 bucket. For more information, see [Create a
1029
+ # batch inference job][2].
1030
+ #
1031
+ # The response returns a `jobArn` that you can use to stop or get
1032
+ # details about the job. You can check the status of the job by sending
1033
+ # a [GetModelCustomizationJob][3] request.
1034
+ #
1035
+ #
1036
+ #
1037
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-prerq.html#batch-inference-data
1038
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-create.html
1039
+ # [3]: https://docs.aws.amazon.com/bedrock/latest/APIReference/API_GetModelCustomizationJob.html
1040
+ #
1041
+ # @option params [required, String] :job_name
1042
+ # A name to give the batch inference job.
1043
+ #
1044
+ # @option params [required, String] :role_arn
1045
+ # The Amazon Resource Name (ARN) of the service role with permissions to
1046
+ # carry out and manage batch inference. You can use the console to
1047
+ # create a default service role or follow the steps at [Create a service
1048
+ # role for batch inference][1].
1049
+ #
1050
+ #
1051
+ #
1052
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-iam-sr.html
1053
+ #
1054
+ # @option params [String] :client_request_token
1055
+ # A unique, case-sensitive identifier to ensure that the API request
1056
+ # completes no more than one time. If this token matches a previous
1057
+ # request, Amazon Bedrock ignores the request, but does not return an
1058
+ # error. For more information, see [Ensuring idempotency][1].
1059
+ #
1060
+ # **A suitable default value is auto-generated.** You should normally
1061
+ # not need to pass this option.**
1062
+ #
1063
+ #
1064
+ #
1065
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1066
+ #
1067
+ # @option params [required, String] :model_id
1068
+ # The unique identifier of the foundation model to use for the batch
1069
+ # inference job.
1070
+ #
1071
+ # @option params [required, Types::ModelInvocationJobInputDataConfig] :input_data_config
1072
+ # Details about the location of the input to the batch inference job.
1073
+ #
1074
+ # @option params [required, Types::ModelInvocationJobOutputDataConfig] :output_data_config
1075
+ # Details about the location of the output of the batch inference job.
1076
+ #
1077
+ # @option params [Integer] :timeout_duration_in_hours
1078
+ # The number of hours after which to force the batch inference job to
1079
+ # time out.
1080
+ #
1081
+ # @option params [Array<Types::Tag>] :tags
1082
+ # Any tags to associate with the batch inference job. For more
1083
+ # information, see [Tagging Amazon Bedrock resources][1].
1084
+ #
1085
+ #
1086
+ #
1087
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tagging.html
1088
+ #
1089
+ # @return [Types::CreateModelInvocationJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1090
+ #
1091
+ # * {Types::CreateModelInvocationJobResponse#job_arn #job_arn} => String
1092
+ #
1093
+ # @example Request syntax with placeholder values
1094
+ #
1095
+ # resp = client.create_model_invocation_job({
1096
+ # job_name: "ModelInvocationJobName", # required
1097
+ # role_arn: "RoleArn", # required
1098
+ # client_request_token: "ModelInvocationIdempotencyToken",
1099
+ # model_id: "ModelId", # required
1100
+ # input_data_config: { # required
1101
+ # s3_input_data_config: {
1102
+ # s3_input_format: "JSONL", # accepts JSONL
1103
+ # s3_uri: "S3Uri", # required
1104
+ # },
1105
+ # },
1106
+ # output_data_config: { # required
1107
+ # s3_output_data_config: {
1108
+ # s3_uri: "S3Uri", # required
1109
+ # s3_encryption_key_id: "KmsKeyId",
1110
+ # },
1111
+ # },
1112
+ # timeout_duration_in_hours: 1,
1113
+ # tags: [
1114
+ # {
1115
+ # key: "TagKey", # required
1116
+ # value: "TagValue", # required
1117
+ # },
1118
+ # ],
1119
+ # })
1120
+ #
1121
+ # @example Response structure
1122
+ #
1123
+ # resp.job_arn #=> String
1124
+ #
1125
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/CreateModelInvocationJob AWS API Documentation
1126
+ #
1127
+ # @overload create_model_invocation_job(params = {})
1128
+ # @param [Hash] params ({})
1129
+ def create_model_invocation_job(params = {}, options = {})
1130
+ req = build_request(:create_model_invocation_job, params)
1131
+ req.send_request(options)
1132
+ end
1133
+
1026
1134
  # Creates dedicated throughput for a base or custom model with the model
1027
1135
  # units and for the duration that you specify. For pricing details, see
1028
1136
  # [Amazon Bedrock Pricing][1]. For more information, see [Provisioned
@@ -1651,6 +1759,67 @@ module Aws::Bedrock
1651
1759
  req.send_request(options)
1652
1760
  end
1653
1761
 
1762
+ # Gets details about a batch inference job. For more information, see
1763
+ # [View details about a batch inference job][1]
1764
+ #
1765
+ #
1766
+ #
1767
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-manage.html#batch-inference-view
1768
+ #
1769
+ # @option params [required, String] :job_identifier
1770
+ # The Amazon Resource Name (ARN) of the batch inference job.
1771
+ #
1772
+ # @return [Types::GetModelInvocationJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1773
+ #
1774
+ # * {Types::GetModelInvocationJobResponse#job_arn #job_arn} => String
1775
+ # * {Types::GetModelInvocationJobResponse#job_name #job_name} => String
1776
+ # * {Types::GetModelInvocationJobResponse#model_id #model_id} => String
1777
+ # * {Types::GetModelInvocationJobResponse#client_request_token #client_request_token} => String
1778
+ # * {Types::GetModelInvocationJobResponse#role_arn #role_arn} => String
1779
+ # * {Types::GetModelInvocationJobResponse#status #status} => String
1780
+ # * {Types::GetModelInvocationJobResponse#message #message} => String
1781
+ # * {Types::GetModelInvocationJobResponse#submit_time #submit_time} => Time
1782
+ # * {Types::GetModelInvocationJobResponse#last_modified_time #last_modified_time} => Time
1783
+ # * {Types::GetModelInvocationJobResponse#end_time #end_time} => Time
1784
+ # * {Types::GetModelInvocationJobResponse#input_data_config #input_data_config} => Types::ModelInvocationJobInputDataConfig
1785
+ # * {Types::GetModelInvocationJobResponse#output_data_config #output_data_config} => Types::ModelInvocationJobOutputDataConfig
1786
+ # * {Types::GetModelInvocationJobResponse#timeout_duration_in_hours #timeout_duration_in_hours} => Integer
1787
+ # * {Types::GetModelInvocationJobResponse#job_expiration_time #job_expiration_time} => Time
1788
+ #
1789
+ # @example Request syntax with placeholder values
1790
+ #
1791
+ # resp = client.get_model_invocation_job({
1792
+ # job_identifier: "ModelInvocationJobIdentifier", # required
1793
+ # })
1794
+ #
1795
+ # @example Response structure
1796
+ #
1797
+ # resp.job_arn #=> String
1798
+ # resp.job_name #=> String
1799
+ # resp.model_id #=> String
1800
+ # resp.client_request_token #=> String
1801
+ # resp.role_arn #=> String
1802
+ # resp.status #=> String, one of "Submitted", "InProgress", "Completed", "Failed", "Stopping", "Stopped", "PartiallyCompleted", "Expired", "Validating", "Scheduled"
1803
+ # resp.message #=> String
1804
+ # resp.submit_time #=> Time
1805
+ # resp.last_modified_time #=> Time
1806
+ # resp.end_time #=> Time
1807
+ # resp.input_data_config.s3_input_data_config.s3_input_format #=> String, one of "JSONL"
1808
+ # resp.input_data_config.s3_input_data_config.s3_uri #=> String
1809
+ # resp.output_data_config.s3_output_data_config.s3_uri #=> String
1810
+ # resp.output_data_config.s3_output_data_config.s3_encryption_key_id #=> String
1811
+ # resp.timeout_duration_in_hours #=> Integer
1812
+ # resp.job_expiration_time #=> Time
1813
+ #
1814
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/GetModelInvocationJob AWS API Documentation
1815
+ #
1816
+ # @overload get_model_invocation_job(params = {})
1817
+ # @param [Hash] params ({})
1818
+ def get_model_invocation_job(params = {}, options = {})
1819
+ req = build_request(:get_model_invocation_job, params)
1820
+ req.send_request(options)
1821
+ end
1822
+
1654
1823
  # Get the current configuration values for model invocation logging.
1655
1824
  #
1656
1825
  # @return [Types::GetModelInvocationLoggingConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2220,6 +2389,97 @@ module Aws::Bedrock
2220
2389
  req.send_request(options)
2221
2390
  end
2222
2391
 
2392
+ # Lists all batch inference jobs in the account. For more information,
2393
+ # see [View details about a batch inference job][1].
2394
+ #
2395
+ #
2396
+ #
2397
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-manage.html#batch-inference-view
2398
+ #
2399
+ # @option params [Time,DateTime,Date,Integer,String] :submit_time_after
2400
+ # Specify a time to filter for batch inference jobs that were submitted
2401
+ # after the time you specify.
2402
+ #
2403
+ # @option params [Time,DateTime,Date,Integer,String] :submit_time_before
2404
+ # Specify a time to filter for batch inference jobs that were submitted
2405
+ # before the time you specify.
2406
+ #
2407
+ # @option params [String] :status_equals
2408
+ # Specify a status to filter for batch inference jobs whose statuses
2409
+ # match the string you specify.
2410
+ #
2411
+ # @option params [String] :name_contains
2412
+ # Specify a string to filter for batch inference jobs whose names
2413
+ # contain the string.
2414
+ #
2415
+ # @option params [Integer] :max_results
2416
+ # The maximum number of results to return. If there are more results
2417
+ # than the number that you specify, a `nextToken` value is returned. Use
2418
+ # the `nextToken` in a request to return the next batch of results.
2419
+ #
2420
+ # @option params [String] :next_token
2421
+ # If there were more results than the value you specified in the
2422
+ # `maxResults` field in a previous `ListModelInvocationJobs` request,
2423
+ # the response would have returned a `nextToken` value. To see the next
2424
+ # batch of results, send the `nextToken` value in another request.
2425
+ #
2426
+ # @option params [String] :sort_by
2427
+ # An attribute by which to sort the results.
2428
+ #
2429
+ # @option params [String] :sort_order
2430
+ # Specifies whether to sort the results by ascending or descending
2431
+ # order.
2432
+ #
2433
+ # @return [Types::ListModelInvocationJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2434
+ #
2435
+ # * {Types::ListModelInvocationJobsResponse#next_token #next_token} => String
2436
+ # * {Types::ListModelInvocationJobsResponse#invocation_job_summaries #invocation_job_summaries} => Array&lt;Types::ModelInvocationJobSummary&gt;
2437
+ #
2438
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2439
+ #
2440
+ # @example Request syntax with placeholder values
2441
+ #
2442
+ # resp = client.list_model_invocation_jobs({
2443
+ # submit_time_after: Time.now,
2444
+ # submit_time_before: Time.now,
2445
+ # status_equals: "Submitted", # accepts Submitted, InProgress, Completed, Failed, Stopping, Stopped, PartiallyCompleted, Expired, Validating, Scheduled
2446
+ # name_contains: "ModelInvocationJobName",
2447
+ # max_results: 1,
2448
+ # next_token: "PaginationToken",
2449
+ # sort_by: "CreationTime", # accepts CreationTime
2450
+ # sort_order: "Ascending", # accepts Ascending, Descending
2451
+ # })
2452
+ #
2453
+ # @example Response structure
2454
+ #
2455
+ # resp.next_token #=> String
2456
+ # resp.invocation_job_summaries #=> Array
2457
+ # resp.invocation_job_summaries[0].job_arn #=> String
2458
+ # resp.invocation_job_summaries[0].job_name #=> String
2459
+ # resp.invocation_job_summaries[0].model_id #=> String
2460
+ # resp.invocation_job_summaries[0].client_request_token #=> String
2461
+ # resp.invocation_job_summaries[0].role_arn #=> String
2462
+ # resp.invocation_job_summaries[0].status #=> String, one of "Submitted", "InProgress", "Completed", "Failed", "Stopping", "Stopped", "PartiallyCompleted", "Expired", "Validating", "Scheduled"
2463
+ # resp.invocation_job_summaries[0].message #=> String
2464
+ # resp.invocation_job_summaries[0].submit_time #=> Time
2465
+ # resp.invocation_job_summaries[0].last_modified_time #=> Time
2466
+ # resp.invocation_job_summaries[0].end_time #=> Time
2467
+ # resp.invocation_job_summaries[0].input_data_config.s3_input_data_config.s3_input_format #=> String, one of "JSONL"
2468
+ # resp.invocation_job_summaries[0].input_data_config.s3_input_data_config.s3_uri #=> String
2469
+ # resp.invocation_job_summaries[0].output_data_config.s3_output_data_config.s3_uri #=> String
2470
+ # resp.invocation_job_summaries[0].output_data_config.s3_output_data_config.s3_encryption_key_id #=> String
2471
+ # resp.invocation_job_summaries[0].timeout_duration_in_hours #=> Integer
2472
+ # resp.invocation_job_summaries[0].job_expiration_time #=> Time
2473
+ #
2474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/ListModelInvocationJobs AWS API Documentation
2475
+ #
2476
+ # @overload list_model_invocation_jobs(params = {})
2477
+ # @param [Hash] params ({})
2478
+ def list_model_invocation_jobs(params = {}, options = {})
2479
+ req = build_request(:list_model_invocation_jobs, params)
2480
+ req.send_request(options)
2481
+ end
2482
+
2223
2483
  # Lists the Provisioned Throughputs in the account. For more
2224
2484
  # information, see [Provisioned Throughput][1] in the [Amazon Bedrock
2225
2485
  # User Guide][2].
@@ -2441,6 +2701,34 @@ module Aws::Bedrock
2441
2701
  req.send_request(options)
2442
2702
  end
2443
2703
 
2704
+ # Stops a batch inference job. You're only charged for tokens that were
2705
+ # already processed. For more information, see [Stop a batch inference
2706
+ # job][1].
2707
+ #
2708
+ #
2709
+ #
2710
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/batch-inference-manage.html#batch-inference-stop
2711
+ #
2712
+ # @option params [required, String] :job_identifier
2713
+ # The Amazon Resource Name (ARN) of the batch inference job to stop.
2714
+ #
2715
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2716
+ #
2717
+ # @example Request syntax with placeholder values
2718
+ #
2719
+ # resp = client.stop_model_invocation_job({
2720
+ # job_identifier: "ModelInvocationJobIdentifier", # required
2721
+ # })
2722
+ #
2723
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-2023-04-20/StopModelInvocationJob AWS API Documentation
2724
+ #
2725
+ # @overload stop_model_invocation_job(params = {})
2726
+ # @param [Hash] params ({})
2727
+ def stop_model_invocation_job(params = {}, options = {})
2728
+ req = build_request(:stop_model_invocation_job, params)
2729
+ req.send_request(options)
2730
+ end
2731
+
2444
2732
  # Associate tags with a resource. For more information, see [Tagging
2445
2733
  # resources][1] in the [Amazon Bedrock User Guide][2].
2446
2734
  #
@@ -2736,7 +3024,7 @@ module Aws::Bedrock
2736
3024
  params: params,
2737
3025
  config: config)
2738
3026
  context[:gem_name] = 'aws-sdk-bedrock'
2739
- context[:gem_version] = '1.14.0'
3027
+ context[:gem_version] = '1.15.0'
2740
3028
  Seahorse::Client::Request.new(handlers, context)
2741
3029
  end
2742
3030
 
@@ -34,6 +34,8 @@ module Aws::Bedrock
34
34
  CreateModelCopyJobResponse = Shapes::StructureShape.new(name: 'CreateModelCopyJobResponse')
35
35
  CreateModelCustomizationJobRequest = Shapes::StructureShape.new(name: 'CreateModelCustomizationJobRequest')
36
36
  CreateModelCustomizationJobResponse = Shapes::StructureShape.new(name: 'CreateModelCustomizationJobResponse')
37
+ CreateModelInvocationJobRequest = Shapes::StructureShape.new(name: 'CreateModelInvocationJobRequest')
38
+ CreateModelInvocationJobResponse = Shapes::StructureShape.new(name: 'CreateModelInvocationJobResponse')
37
39
  CreateProvisionedModelThroughputRequest = Shapes::StructureShape.new(name: 'CreateProvisionedModelThroughputRequest')
38
40
  CreateProvisionedModelThroughputResponse = Shapes::StructureShape.new(name: 'CreateProvisionedModelThroughputResponse')
39
41
  CustomModelArn = Shapes::StringShape.new(name: 'CustomModelArn')
@@ -98,6 +100,8 @@ module Aws::Bedrock
98
100
  GetModelCopyJobResponse = Shapes::StructureShape.new(name: 'GetModelCopyJobResponse')
99
101
  GetModelCustomizationJobRequest = Shapes::StructureShape.new(name: 'GetModelCustomizationJobRequest')
100
102
  GetModelCustomizationJobResponse = Shapes::StructureShape.new(name: 'GetModelCustomizationJobResponse')
103
+ GetModelInvocationJobRequest = Shapes::StructureShape.new(name: 'GetModelInvocationJobRequest')
104
+ GetModelInvocationJobResponse = Shapes::StructureShape.new(name: 'GetModelInvocationJobResponse')
101
105
  GetModelInvocationLoggingConfigurationRequest = Shapes::StructureShape.new(name: 'GetModelInvocationLoggingConfigurationRequest')
102
106
  GetModelInvocationLoggingConfigurationResponse = Shapes::StructureShape.new(name: 'GetModelInvocationLoggingConfigurationResponse')
103
107
  GetProvisionedModelThroughputRequest = Shapes::StructureShape.new(name: 'GetProvisionedModelThroughputRequest')
@@ -202,6 +206,8 @@ module Aws::Bedrock
202
206
  ListModelCopyJobsResponse = Shapes::StructureShape.new(name: 'ListModelCopyJobsResponse')
203
207
  ListModelCustomizationJobsRequest = Shapes::StructureShape.new(name: 'ListModelCustomizationJobsRequest')
204
208
  ListModelCustomizationJobsResponse = Shapes::StructureShape.new(name: 'ListModelCustomizationJobsResponse')
209
+ ListModelInvocationJobsRequest = Shapes::StructureShape.new(name: 'ListModelInvocationJobsRequest')
210
+ ListModelInvocationJobsResponse = Shapes::StructureShape.new(name: 'ListModelInvocationJobsResponse')
205
211
  ListProvisionedModelThroughputsRequest = Shapes::StructureShape.new(name: 'ListProvisionedModelThroughputsRequest')
206
212
  ListProvisionedModelThroughputsResponse = Shapes::StructureShape.new(name: 'ListProvisionedModelThroughputsResponse')
207
213
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
@@ -209,6 +215,7 @@ module Aws::Bedrock
209
215
  LogGroupName = Shapes::StringShape.new(name: 'LogGroupName')
210
216
  LoggingConfig = Shapes::StructureShape.new(name: 'LoggingConfig')
211
217
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
218
+ Message = Shapes::StringShape.new(name: 'Message')
212
219
  MetricFloat = Shapes::FloatShape.new(name: 'MetricFloat')
213
220
  ModelArn = Shapes::StringShape.new(name: 'ModelArn')
214
221
  ModelCopyJobArn = Shapes::StringShape.new(name: 'ModelCopyJobArn')
@@ -223,7 +230,20 @@ module Aws::Bedrock
223
230
  ModelCustomizationJobSummaries = Shapes::ListShape.new(name: 'ModelCustomizationJobSummaries')
224
231
  ModelCustomizationJobSummary = Shapes::StructureShape.new(name: 'ModelCustomizationJobSummary')
225
232
  ModelCustomizationList = Shapes::ListShape.new(name: 'ModelCustomizationList')
233
+ ModelId = Shapes::StringShape.new(name: 'ModelId')
226
234
  ModelIdentifier = Shapes::StringShape.new(name: 'ModelIdentifier')
235
+ ModelInvocationIdempotencyToken = Shapes::StringShape.new(name: 'ModelInvocationIdempotencyToken')
236
+ ModelInvocationJobArn = Shapes::StringShape.new(name: 'ModelInvocationJobArn')
237
+ ModelInvocationJobIdentifier = Shapes::StringShape.new(name: 'ModelInvocationJobIdentifier')
238
+ ModelInvocationJobInputDataConfig = Shapes::UnionShape.new(name: 'ModelInvocationJobInputDataConfig')
239
+ ModelInvocationJobName = Shapes::StringShape.new(name: 'ModelInvocationJobName')
240
+ ModelInvocationJobOutputDataConfig = Shapes::UnionShape.new(name: 'ModelInvocationJobOutputDataConfig')
241
+ ModelInvocationJobS3InputDataConfig = Shapes::StructureShape.new(name: 'ModelInvocationJobS3InputDataConfig')
242
+ ModelInvocationJobS3OutputDataConfig = Shapes::StructureShape.new(name: 'ModelInvocationJobS3OutputDataConfig')
243
+ ModelInvocationJobStatus = Shapes::StringShape.new(name: 'ModelInvocationJobStatus')
244
+ ModelInvocationJobSummaries = Shapes::ListShape.new(name: 'ModelInvocationJobSummaries')
245
+ ModelInvocationJobSummary = Shapes::StructureShape.new(name: 'ModelInvocationJobSummary')
246
+ ModelInvocationJobTimeoutDurationInHours = Shapes::IntegerShape.new(name: 'ModelInvocationJobTimeoutDurationInHours')
227
247
  ModelModality = Shapes::StringShape.new(name: 'ModelModality')
228
248
  ModelModalityList = Shapes::ListShape.new(name: 'ModelModalityList')
229
249
  ModelName = Shapes::StringShape.new(name: 'ModelName')
@@ -243,6 +263,7 @@ module Aws::Bedrock
243
263
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
244
264
  RoleArn = Shapes::StringShape.new(name: 'RoleArn')
245
265
  S3Config = Shapes::StructureShape.new(name: 'S3Config')
266
+ S3InputFormat = Shapes::StringShape.new(name: 'S3InputFormat')
246
267
  S3Uri = Shapes::StringShape.new(name: 'S3Uri')
247
268
  SageMakerFlowDefinitionArn = Shapes::StringShape.new(name: 'SageMakerFlowDefinitionArn')
248
269
  SecurityGroupId = Shapes::StringShape.new(name: 'SecurityGroupId')
@@ -256,6 +277,8 @@ module Aws::Bedrock
256
277
  StopEvaluationJobResponse = Shapes::StructureShape.new(name: 'StopEvaluationJobResponse')
257
278
  StopModelCustomizationJobRequest = Shapes::StructureShape.new(name: 'StopModelCustomizationJobRequest')
258
279
  StopModelCustomizationJobResponse = Shapes::StructureShape.new(name: 'StopModelCustomizationJobResponse')
280
+ StopModelInvocationJobRequest = Shapes::StructureShape.new(name: 'StopModelInvocationJobRequest')
281
+ StopModelInvocationJobResponse = Shapes::StructureShape.new(name: 'StopModelInvocationJobResponse')
259
282
  String = Shapes::StringShape.new(name: 'String')
260
283
  SubnetId = Shapes::StringShape.new(name: 'SubnetId')
261
284
  SubnetIds = Shapes::ListShape.new(name: 'SubnetIds')
@@ -372,6 +395,19 @@ module Aws::Bedrock
372
395
  CreateModelCustomizationJobResponse.add_member(:job_arn, Shapes::ShapeRef.new(shape: ModelCustomizationJobArn, required: true, location_name: "jobArn"))
373
396
  CreateModelCustomizationJobResponse.struct_class = Types::CreateModelCustomizationJobResponse
374
397
 
398
+ CreateModelInvocationJobRequest.add_member(:job_name, Shapes::ShapeRef.new(shape: ModelInvocationJobName, required: true, location_name: "jobName"))
399
+ CreateModelInvocationJobRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
400
+ CreateModelInvocationJobRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ModelInvocationIdempotencyToken, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
401
+ CreateModelInvocationJobRequest.add_member(:model_id, Shapes::ShapeRef.new(shape: ModelId, required: true, location_name: "modelId"))
402
+ CreateModelInvocationJobRequest.add_member(:input_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobInputDataConfig, required: true, location_name: "inputDataConfig"))
403
+ CreateModelInvocationJobRequest.add_member(:output_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobOutputDataConfig, required: true, location_name: "outputDataConfig"))
404
+ CreateModelInvocationJobRequest.add_member(:timeout_duration_in_hours, Shapes::ShapeRef.new(shape: ModelInvocationJobTimeoutDurationInHours, location_name: "timeoutDurationInHours"))
405
+ CreateModelInvocationJobRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
406
+ CreateModelInvocationJobRequest.struct_class = Types::CreateModelInvocationJobRequest
407
+
408
+ CreateModelInvocationJobResponse.add_member(:job_arn, Shapes::ShapeRef.new(shape: ModelInvocationJobArn, required: true, location_name: "jobArn"))
409
+ CreateModelInvocationJobResponse.struct_class = Types::CreateModelInvocationJobResponse
410
+
375
411
  CreateProvisionedModelThroughputRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: IdempotencyToken, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
376
412
  CreateProvisionedModelThroughputRequest.add_member(:model_units, Shapes::ShapeRef.new(shape: PositiveInteger, required: true, location_name: "modelUnits"))
377
413
  CreateProvisionedModelThroughputRequest.add_member(:provisioned_model_name, Shapes::ShapeRef.new(shape: ProvisionedModelName, required: true, location_name: "provisionedModelName"))
@@ -617,6 +653,25 @@ module Aws::Bedrock
617
653
  GetModelCustomizationJobResponse.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfig, location_name: "vpcConfig"))
618
654
  GetModelCustomizationJobResponse.struct_class = Types::GetModelCustomizationJobResponse
619
655
 
656
+ GetModelInvocationJobRequest.add_member(:job_identifier, Shapes::ShapeRef.new(shape: ModelInvocationJobIdentifier, required: true, location: "uri", location_name: "jobIdentifier"))
657
+ GetModelInvocationJobRequest.struct_class = Types::GetModelInvocationJobRequest
658
+
659
+ GetModelInvocationJobResponse.add_member(:job_arn, Shapes::ShapeRef.new(shape: ModelInvocationJobArn, required: true, location_name: "jobArn"))
660
+ GetModelInvocationJobResponse.add_member(:job_name, Shapes::ShapeRef.new(shape: ModelInvocationJobName, location_name: "jobName"))
661
+ GetModelInvocationJobResponse.add_member(:model_id, Shapes::ShapeRef.new(shape: ModelId, required: true, location_name: "modelId"))
662
+ GetModelInvocationJobResponse.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ModelInvocationIdempotencyToken, location_name: "clientRequestToken"))
663
+ GetModelInvocationJobResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
664
+ GetModelInvocationJobResponse.add_member(:status, Shapes::ShapeRef.new(shape: ModelInvocationJobStatus, location_name: "status"))
665
+ GetModelInvocationJobResponse.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "message"))
666
+ GetModelInvocationJobResponse.add_member(:submit_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "submitTime"))
667
+ GetModelInvocationJobResponse.add_member(:last_modified_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedTime"))
668
+ GetModelInvocationJobResponse.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "endTime"))
669
+ GetModelInvocationJobResponse.add_member(:input_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobInputDataConfig, required: true, location_name: "inputDataConfig"))
670
+ GetModelInvocationJobResponse.add_member(:output_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobOutputDataConfig, required: true, location_name: "outputDataConfig"))
671
+ GetModelInvocationJobResponse.add_member(:timeout_duration_in_hours, Shapes::ShapeRef.new(shape: ModelInvocationJobTimeoutDurationInHours, location_name: "timeoutDurationInHours"))
672
+ GetModelInvocationJobResponse.add_member(:job_expiration_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "jobExpirationTime"))
673
+ GetModelInvocationJobResponse.struct_class = Types::GetModelInvocationJobResponse
674
+
620
675
  GetModelInvocationLoggingConfigurationRequest.struct_class = Types::GetModelInvocationLoggingConfigurationRequest
621
676
 
622
677
  GetModelInvocationLoggingConfigurationResponse.add_member(:logging_config, Shapes::ShapeRef.new(shape: LoggingConfig, location_name: "loggingConfig"))
@@ -881,6 +936,20 @@ module Aws::Bedrock
881
936
  ListModelCustomizationJobsResponse.add_member(:model_customization_job_summaries, Shapes::ShapeRef.new(shape: ModelCustomizationJobSummaries, location_name: "modelCustomizationJobSummaries"))
882
937
  ListModelCustomizationJobsResponse.struct_class = Types::ListModelCustomizationJobsResponse
883
938
 
939
+ ListModelInvocationJobsRequest.add_member(:submit_time_after, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "submitTimeAfter"))
940
+ ListModelInvocationJobsRequest.add_member(:submit_time_before, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "submitTimeBefore"))
941
+ ListModelInvocationJobsRequest.add_member(:status_equals, Shapes::ShapeRef.new(shape: ModelInvocationJobStatus, location: "querystring", location_name: "statusEquals"))
942
+ ListModelInvocationJobsRequest.add_member(:name_contains, Shapes::ShapeRef.new(shape: ModelInvocationJobName, location: "querystring", location_name: "nameContains"))
943
+ ListModelInvocationJobsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
944
+ ListModelInvocationJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location: "querystring", location_name: "nextToken"))
945
+ ListModelInvocationJobsRequest.add_member(:sort_by, Shapes::ShapeRef.new(shape: SortJobsBy, location: "querystring", location_name: "sortBy"))
946
+ ListModelInvocationJobsRequest.add_member(:sort_order, Shapes::ShapeRef.new(shape: SortOrder, location: "querystring", location_name: "sortOrder"))
947
+ ListModelInvocationJobsRequest.struct_class = Types::ListModelInvocationJobsRequest
948
+
949
+ ListModelInvocationJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
950
+ ListModelInvocationJobsResponse.add_member(:invocation_job_summaries, Shapes::ShapeRef.new(shape: ModelInvocationJobSummaries, location_name: "invocationJobSummaries"))
951
+ ListModelInvocationJobsResponse.struct_class = Types::ListModelInvocationJobsResponse
952
+
884
953
  ListProvisionedModelThroughputsRequest.add_member(:creation_time_after, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "creationTimeAfter"))
885
954
  ListProvisionedModelThroughputsRequest.add_member(:creation_time_before, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "creationTimeBefore"))
886
955
  ListProvisionedModelThroughputsRequest.add_member(:status_equals, Shapes::ShapeRef.new(shape: ProvisionedModelStatus, location: "querystring", location_name: "statusEquals"))
@@ -943,6 +1012,44 @@ module Aws::Bedrock
943
1012
 
944
1013
  ModelCustomizationList.member = Shapes::ShapeRef.new(shape: ModelCustomization)
945
1014
 
1015
+ ModelInvocationJobInputDataConfig.add_member(:s3_input_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobS3InputDataConfig, location_name: "s3InputDataConfig"))
1016
+ ModelInvocationJobInputDataConfig.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
1017
+ ModelInvocationJobInputDataConfig.add_member_subclass(:s3_input_data_config, Types::ModelInvocationJobInputDataConfig::S3InputDataConfig)
1018
+ ModelInvocationJobInputDataConfig.add_member_subclass(:unknown, Types::ModelInvocationJobInputDataConfig::Unknown)
1019
+ ModelInvocationJobInputDataConfig.struct_class = Types::ModelInvocationJobInputDataConfig
1020
+
1021
+ ModelInvocationJobOutputDataConfig.add_member(:s3_output_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobS3OutputDataConfig, location_name: "s3OutputDataConfig"))
1022
+ ModelInvocationJobOutputDataConfig.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
1023
+ ModelInvocationJobOutputDataConfig.add_member_subclass(:s3_output_data_config, Types::ModelInvocationJobOutputDataConfig::S3OutputDataConfig)
1024
+ ModelInvocationJobOutputDataConfig.add_member_subclass(:unknown, Types::ModelInvocationJobOutputDataConfig::Unknown)
1025
+ ModelInvocationJobOutputDataConfig.struct_class = Types::ModelInvocationJobOutputDataConfig
1026
+
1027
+ ModelInvocationJobS3InputDataConfig.add_member(:s3_input_format, Shapes::ShapeRef.new(shape: S3InputFormat, location_name: "s3InputFormat"))
1028
+ ModelInvocationJobS3InputDataConfig.add_member(:s3_uri, Shapes::ShapeRef.new(shape: S3Uri, required: true, location_name: "s3Uri"))
1029
+ ModelInvocationJobS3InputDataConfig.struct_class = Types::ModelInvocationJobS3InputDataConfig
1030
+
1031
+ ModelInvocationJobS3OutputDataConfig.add_member(:s3_uri, Shapes::ShapeRef.new(shape: S3Uri, required: true, location_name: "s3Uri"))
1032
+ ModelInvocationJobS3OutputDataConfig.add_member(:s3_encryption_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "s3EncryptionKeyId"))
1033
+ ModelInvocationJobS3OutputDataConfig.struct_class = Types::ModelInvocationJobS3OutputDataConfig
1034
+
1035
+ ModelInvocationJobSummaries.member = Shapes::ShapeRef.new(shape: ModelInvocationJobSummary)
1036
+
1037
+ ModelInvocationJobSummary.add_member(:job_arn, Shapes::ShapeRef.new(shape: ModelInvocationJobArn, required: true, location_name: "jobArn"))
1038
+ ModelInvocationJobSummary.add_member(:job_name, Shapes::ShapeRef.new(shape: ModelInvocationJobName, required: true, location_name: "jobName"))
1039
+ ModelInvocationJobSummary.add_member(:model_id, Shapes::ShapeRef.new(shape: ModelId, required: true, location_name: "modelId"))
1040
+ ModelInvocationJobSummary.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ModelInvocationIdempotencyToken, location_name: "clientRequestToken"))
1041
+ ModelInvocationJobSummary.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
1042
+ ModelInvocationJobSummary.add_member(:status, Shapes::ShapeRef.new(shape: ModelInvocationJobStatus, location_name: "status"))
1043
+ ModelInvocationJobSummary.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "message"))
1044
+ ModelInvocationJobSummary.add_member(:submit_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "submitTime"))
1045
+ ModelInvocationJobSummary.add_member(:last_modified_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedTime"))
1046
+ ModelInvocationJobSummary.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "endTime"))
1047
+ ModelInvocationJobSummary.add_member(:input_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobInputDataConfig, required: true, location_name: "inputDataConfig"))
1048
+ ModelInvocationJobSummary.add_member(:output_data_config, Shapes::ShapeRef.new(shape: ModelInvocationJobOutputDataConfig, required: true, location_name: "outputDataConfig"))
1049
+ ModelInvocationJobSummary.add_member(:timeout_duration_in_hours, Shapes::ShapeRef.new(shape: ModelInvocationJobTimeoutDurationInHours, location_name: "timeoutDurationInHours"))
1050
+ ModelInvocationJobSummary.add_member(:job_expiration_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "jobExpirationTime"))
1051
+ ModelInvocationJobSummary.struct_class = Types::ModelInvocationJobSummary
1052
+
946
1053
  ModelModalityList.member = Shapes::ShapeRef.new(shape: ModelModality)
947
1054
 
948
1055
  OutputDataConfig.add_member(:s3_uri, Shapes::ShapeRef.new(shape: S3Uri, required: true, location_name: "s3Uri"))
@@ -991,6 +1098,11 @@ module Aws::Bedrock
991
1098
 
992
1099
  StopModelCustomizationJobResponse.struct_class = Types::StopModelCustomizationJobResponse
993
1100
 
1101
+ StopModelInvocationJobRequest.add_member(:job_identifier, Shapes::ShapeRef.new(shape: ModelInvocationJobIdentifier, required: true, location: "uri", location_name: "jobIdentifier"))
1102
+ StopModelInvocationJobRequest.struct_class = Types::StopModelInvocationJobRequest
1103
+
1104
+ StopModelInvocationJobResponse.struct_class = Types::StopModelInvocationJobResponse
1105
+
994
1106
  SubnetIds.member = Shapes::ShapeRef.new(shape: SubnetId)
995
1107
 
996
1108
  Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "key"))
@@ -1165,6 +1277,21 @@ module Aws::Bedrock
1165
1277
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1166
1278
  end)
1167
1279
 
1280
+ api.add_operation(:create_model_invocation_job, Seahorse::Model::Operation.new.tap do |o|
1281
+ o.name = "CreateModelInvocationJob"
1282
+ o.http_method = "POST"
1283
+ o.http_request_uri = "/model-invocation-job"
1284
+ o.input = Shapes::ShapeRef.new(shape: CreateModelInvocationJobRequest)
1285
+ o.output = Shapes::ShapeRef.new(shape: CreateModelInvocationJobResponse)
1286
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1287
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1288
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1289
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1290
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1291
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
1292
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1293
+ end)
1294
+
1168
1295
  api.add_operation(:create_provisioned_model_throughput, Seahorse::Model::Operation.new.tap do |o|
1169
1296
  o.name = "CreateProvisionedModelThroughput"
1170
1297
  o.http_method = "POST"
@@ -1311,6 +1438,19 @@ module Aws::Bedrock
1311
1438
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1312
1439
  end)
1313
1440
 
1441
+ api.add_operation(:get_model_invocation_job, Seahorse::Model::Operation.new.tap do |o|
1442
+ o.name = "GetModelInvocationJob"
1443
+ o.http_method = "GET"
1444
+ o.http_request_uri = "/model-invocation-job/{jobIdentifier}"
1445
+ o.input = Shapes::ShapeRef.new(shape: GetModelInvocationJobRequest)
1446
+ o.output = Shapes::ShapeRef.new(shape: GetModelInvocationJobResponse)
1447
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1448
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1449
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1450
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1451
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1452
+ end)
1453
+
1314
1454
  api.add_operation(:get_model_invocation_logging_configuration, Seahorse::Model::Operation.new.tap do |o|
1315
1455
  o.name = "GetModelInvocationLoggingConfiguration"
1316
1456
  o.http_method = "GET"
@@ -1439,6 +1579,24 @@ module Aws::Bedrock
1439
1579
  )
1440
1580
  end)
1441
1581
 
1582
+ api.add_operation(:list_model_invocation_jobs, Seahorse::Model::Operation.new.tap do |o|
1583
+ o.name = "ListModelInvocationJobs"
1584
+ o.http_method = "GET"
1585
+ o.http_request_uri = "/model-invocation-jobs"
1586
+ o.input = Shapes::ShapeRef.new(shape: ListModelInvocationJobsRequest)
1587
+ o.output = Shapes::ShapeRef.new(shape: ListModelInvocationJobsResponse)
1588
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1589
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1590
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1591
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1592
+ o[:pager] = Aws::Pager.new(
1593
+ limit_key: "max_results",
1594
+ tokens: {
1595
+ "next_token" => "next_token"
1596
+ }
1597
+ )
1598
+ end)
1599
+
1442
1600
  api.add_operation(:list_provisioned_model_throughputs, Seahorse::Model::Operation.new.tap do |o|
1443
1601
  o.name = "ListProvisionedModelThroughputs"
1444
1602
  o.http_method = "GET"
@@ -1510,6 +1668,20 @@ module Aws::Bedrock
1510
1668
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1511
1669
  end)
1512
1670
 
1671
+ api.add_operation(:stop_model_invocation_job, Seahorse::Model::Operation.new.tap do |o|
1672
+ o.name = "StopModelInvocationJob"
1673
+ o.http_method = "POST"
1674
+ o.http_request_uri = "/model-invocation-job/{jobIdentifier}/stop"
1675
+ o.input = Shapes::ShapeRef.new(shape: StopModelInvocationJobRequest)
1676
+ o.output = Shapes::ShapeRef.new(shape: StopModelInvocationJobResponse)
1677
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1678
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1679
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1680
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1681
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1682
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1683
+ end)
1684
+
1513
1685
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1514
1686
  o.name = "TagResource"
1515
1687
  o.http_method = "POST"