aws-sdk-bedrockagentcorecontrol 1.0.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.
@@ -0,0 +1,3844 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length'
11
+ require 'aws-sdk-core/plugins/credentials_configuration'
12
+ require 'aws-sdk-core/plugins/logging'
13
+ require 'aws-sdk-core/plugins/param_converter'
14
+ require 'aws-sdk-core/plugins/param_validator'
15
+ require 'aws-sdk-core/plugins/user_agent'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors'
17
+ require 'aws-sdk-core/plugins/retry_errors'
18
+ require 'aws-sdk-core/plugins/global_configuration'
19
+ require 'aws-sdk-core/plugins/regional_endpoint'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern'
22
+ require 'aws-sdk-core/plugins/response_paging'
23
+ require 'aws-sdk-core/plugins/stub_responses'
24
+ require 'aws-sdk-core/plugins/idempotency_token'
25
+ require 'aws-sdk-core/plugins/invocation_id'
26
+ require 'aws-sdk-core/plugins/jsonvalue_converter'
27
+ require 'aws-sdk-core/plugins/client_metrics_plugin'
28
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin'
29
+ require 'aws-sdk-core/plugins/transfer_encoding'
30
+ require 'aws-sdk-core/plugins/http_checksum'
31
+ require 'aws-sdk-core/plugins/checksum_algorithm'
32
+ require 'aws-sdk-core/plugins/request_compression'
33
+ require 'aws-sdk-core/plugins/defaults_mode'
34
+ require 'aws-sdk-core/plugins/recursion_detection'
35
+ require 'aws-sdk-core/plugins/telemetry'
36
+ require 'aws-sdk-core/plugins/sign'
37
+ require 'aws-sdk-core/plugins/protocols/rest_json'
38
+
39
+ module Aws::BedrockAgentCoreControl
40
+ # An API client for BedrockAgentCoreControl. To construct a client, you need to configure a `:region` and `:credentials`.
41
+ #
42
+ # client = Aws::BedrockAgentCoreControl::Client.new(
43
+ # region: region_name,
44
+ # credentials: credentials,
45
+ # # ...
46
+ # )
47
+ #
48
+ # For details on configuring region and credentials see
49
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
50
+ #
51
+ # See {#initialize} for a full list of supported configuration options.
52
+ class Client < Seahorse::Client::Base
53
+
54
+ include Aws::ClientStubs
55
+
56
+ @identifier = :bedrockagentcorecontrol
57
+
58
+ set_api(ClientApi::API)
59
+
60
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
61
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
62
+ add_plugin(Aws::Plugins::Logging)
63
+ add_plugin(Aws::Plugins::ParamConverter)
64
+ add_plugin(Aws::Plugins::ParamValidator)
65
+ add_plugin(Aws::Plugins::UserAgent)
66
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
67
+ add_plugin(Aws::Plugins::RetryErrors)
68
+ add_plugin(Aws::Plugins::GlobalConfiguration)
69
+ add_plugin(Aws::Plugins::RegionalEndpoint)
70
+ add_plugin(Aws::Plugins::EndpointDiscovery)
71
+ add_plugin(Aws::Plugins::EndpointPattern)
72
+ add_plugin(Aws::Plugins::ResponsePaging)
73
+ add_plugin(Aws::Plugins::StubResponses)
74
+ add_plugin(Aws::Plugins::IdempotencyToken)
75
+ add_plugin(Aws::Plugins::InvocationId)
76
+ add_plugin(Aws::Plugins::JsonvalueConverter)
77
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
78
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
79
+ add_plugin(Aws::Plugins::TransferEncoding)
80
+ add_plugin(Aws::Plugins::HttpChecksum)
81
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
82
+ add_plugin(Aws::Plugins::RequestCompression)
83
+ add_plugin(Aws::Plugins::DefaultsMode)
84
+ add_plugin(Aws::Plugins::RecursionDetection)
85
+ add_plugin(Aws::Plugins::Telemetry)
86
+ add_plugin(Aws::Plugins::Sign)
87
+ add_plugin(Aws::Plugins::Protocols::RestJson)
88
+ add_plugin(Aws::BedrockAgentCoreControl::Plugins::Endpoints)
89
+
90
+ # @overload initialize(options)
91
+ # @param [Hash] options
92
+ #
93
+ # @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
94
+ # A list of plugins to apply to the client. Each plugin is either a
95
+ # class name or an instance of a plugin class.
96
+ #
97
+ # @option options [required, Aws::CredentialProvider] :credentials
98
+ # Your AWS credentials. This can be an instance of any one of the
99
+ # following classes:
100
+ #
101
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
102
+ # credentials.
103
+ #
104
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
105
+ # shared file, such as `~/.aws/config`.
106
+ #
107
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ #
109
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
110
+ # assume a role after providing credentials via the web.
111
+ #
112
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
113
+ # access token generated from `aws login`.
114
+ #
115
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
116
+ # process that outputs to stdout.
117
+ #
118
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
119
+ # from an EC2 IMDS on an EC2 instance.
120
+ #
121
+ # * `Aws::ECSCredentials` - Used for loading credentials from
122
+ # instances running in ECS.
123
+ #
124
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
125
+ # from the Cognito Identity service.
126
+ #
127
+ # When `:credentials` are not configured directly, the following
128
+ # locations will be searched for credentials:
129
+ #
130
+ # * `Aws.config[:credentials]`
131
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
132
+ # `:account_id` options.
133
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
134
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
135
+ # * `~/.aws/credentials`
136
+ # * `~/.aws/config`
137
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
138
+ # are very aggressive. Construct and pass an instance of
139
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
140
+ # enable retries and extended timeouts. Instance profile credential
141
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
142
+ # to true.
143
+ #
144
+ # @option options [required, String] :region
145
+ # The AWS region to connect to. The configured `:region` is
146
+ # used to determine the service `:endpoint`. When not passed,
147
+ # a default `:region` is searched for in the following locations:
148
+ #
149
+ # * `Aws.config[:region]`
150
+ # * `ENV['AWS_REGION']`
151
+ # * `ENV['AMAZON_REGION']`
152
+ # * `ENV['AWS_DEFAULT_REGION']`
153
+ # * `~/.aws/credentials`
154
+ # * `~/.aws/config`
155
+ #
156
+ # @option options [String] :access_key_id
157
+ #
158
+ # @option options [String] :account_id
159
+ #
160
+ # @option options [Boolean] :active_endpoint_cache (false)
161
+ # When set to `true`, a thread polling for endpoints will be running in
162
+ # the background every 60 secs (default). Defaults to `false`.
163
+ #
164
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
165
+ # Used only in `adaptive` retry mode. When true, the request will sleep
166
+ # until there is sufficent client side capacity to retry the request.
167
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
168
+ # not retry instead of sleeping.
169
+ #
170
+ # @option options [Boolean] :client_side_monitoring (false)
171
+ # When `true`, client-side metrics will be collected for all API requests from
172
+ # this client.
173
+ #
174
+ # @option options [String] :client_side_monitoring_client_id ("")
175
+ # Allows you to provide an identifier for this client which will be attached to
176
+ # all generated client side metrics. Defaults to an empty string.
177
+ #
178
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
179
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
180
+ # side monitoring agent is running on, where client metrics will be published via UDP.
181
+ #
182
+ # @option options [Integer] :client_side_monitoring_port (31000)
183
+ # Required for publishing client metrics. The port that the client side monitoring
184
+ # agent is running on, where client metrics will be published via UDP.
185
+ #
186
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
187
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
188
+ # will use the Client Side Monitoring Agent Publisher.
189
+ #
190
+ # @option options [Boolean] :convert_params (true)
191
+ # When `true`, an attempt is made to coerce request parameters into
192
+ # the required types.
193
+ #
194
+ # @option options [Boolean] :correct_clock_skew (true)
195
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
196
+ # a clock skew correction and retry requests with skewed client clocks.
197
+ #
198
+ # @option options [String] :defaults_mode ("legacy")
199
+ # See {Aws::DefaultsModeConfiguration} for a list of the
200
+ # accepted modes and the configuration defaults that are included.
201
+ #
202
+ # @option options [Boolean] :disable_host_prefix_injection (false)
203
+ # When `true`, the SDK will not prepend the modeled host prefix to the endpoint.
204
+ #
205
+ # @option options [Boolean] :disable_request_compression (false)
206
+ # When set to 'true' the request body will not be compressed
207
+ # for supported operations.
208
+ #
209
+ # @option options [String, URI::HTTPS, URI::HTTP] :endpoint
210
+ # Normally you should not configure the `:endpoint` option
211
+ # directly. This is normally constructed from the `:region`
212
+ # option. Configuring `:endpoint` is normally reserved for
213
+ # connecting to test or custom endpoints. The endpoint should
214
+ # be a URI formatted like:
215
+ #
216
+ # 'http://example.com'
217
+ # 'https://example.com'
218
+ # 'http://example.com:123'
219
+ #
220
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
221
+ # Used for the maximum size limit of the LRU cache storing endpoints data
222
+ # for endpoint discovery enabled operations. Defaults to 1000.
223
+ #
224
+ # @option options [Integer] :endpoint_cache_max_threads (10)
225
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
226
+ #
227
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
228
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
229
+ # Use this option to config the time interval in seconds for making
230
+ # requests fetching endpoints information. Defaults to 60 sec.
231
+ #
232
+ # @option options [Boolean] :endpoint_discovery (false)
233
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
234
+ #
235
+ # @option options [Boolean] :ignore_configured_endpoint_urls
236
+ # Setting to true disables use of endpoint URLs provided via environment
237
+ # variables and the shared configuration file.
238
+ #
239
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
240
+ # The log formatter.
241
+ #
242
+ # @option options [Symbol] :log_level (:info)
243
+ # The log level to send messages to the `:logger` at.
244
+ #
245
+ # @option options [Logger] :logger
246
+ # The Logger instance to send log messages to. If this option
247
+ # is not set, logging will be disabled.
248
+ #
249
+ # @option options [Integer] :max_attempts (3)
250
+ # An integer representing the maximum number attempts that will be made for
251
+ # a single request, including the initial attempt. For example,
252
+ # setting this value to 5 will result in a request being retried up to
253
+ # 4 times. Used in `standard` and `adaptive` retry modes.
254
+ #
255
+ # @option options [String] :profile ("default")
256
+ # Used when loading credentials from the shared credentials file
257
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
258
+ #
259
+ # @option options [String] :request_checksum_calculation ("when_supported")
260
+ # Determines when a checksum will be calculated for request payloads. Values are:
261
+ #
262
+ # * `when_supported` - (default) When set, a checksum will be
263
+ # calculated for all request payloads of operations modeled with the
264
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
265
+ # `requestAlgorithmMember` is modeled.
266
+ # * `when_required` - When set, a checksum will only be calculated for
267
+ # request payloads of operations modeled with the `httpChecksum` trait where
268
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
269
+ # is modeled and supplied.
270
+ #
271
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
272
+ # The minimum size in bytes that triggers compression for request
273
+ # bodies. The value must be non-negative integer value between 0
274
+ # and 10485780 bytes inclusive.
275
+ #
276
+ # @option options [String] :response_checksum_validation ("when_supported")
277
+ # Determines when checksum validation will be performed on response payloads. Values are:
278
+ #
279
+ # * `when_supported` - (default) When set, checksum validation is performed on all
280
+ # response payloads of operations modeled with the `httpChecksum` trait where
281
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
282
+ # are supported.
283
+ # * `when_required` - When set, checksum validation is not performed on
284
+ # response payloads of operations unless the checksum algorithm is supported and
285
+ # the `requestValidationModeMember` member is set to `ENABLED`.
286
+ #
287
+ # @option options [Proc] :retry_backoff
288
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
289
+ # This option is only used in the `legacy` retry mode.
290
+ #
291
+ # @option options [Float] :retry_base_delay (0.3)
292
+ # The base delay in seconds used by the default backoff function. This option
293
+ # is only used in the `legacy` retry mode.
294
+ #
295
+ # @option options [Symbol] :retry_jitter (:none)
296
+ # A delay randomiser function used by the default backoff function.
297
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
298
+ # otherwise a Proc that takes and returns a number. This option is only used
299
+ # in the `legacy` retry mode.
300
+ #
301
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
302
+ #
303
+ # @option options [Integer] :retry_limit (3)
304
+ # The maximum number of times to retry failed requests. Only
305
+ # ~ 500 level server errors and certain ~ 400 level client errors
306
+ # are retried. Generally, these are throttling errors, data
307
+ # checksum errors, networking errors, timeout errors, auth errors,
308
+ # endpoint discovery, and errors from expired credentials.
309
+ # This option is only used in the `legacy` retry mode.
310
+ #
311
+ # @option options [Integer] :retry_max_delay (0)
312
+ # The maximum number of seconds to delay between retries (0 for no limit)
313
+ # used by the default backoff function. This option is only used in the
314
+ # `legacy` retry mode.
315
+ #
316
+ # @option options [String] :retry_mode ("legacy")
317
+ # Specifies which retry algorithm to use. Values are:
318
+ #
319
+ # * `legacy` - The pre-existing retry behavior. This is default value if
320
+ # no retry mode is provided.
321
+ #
322
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
323
+ # This includes support for retry quotas, which limit the number of
324
+ # unsuccessful retries a client can make.
325
+ #
326
+ # * `adaptive` - An experimental retry mode that includes all the
327
+ # functionality of `standard` mode along with automatic client side
328
+ # throttling. This is a provisional mode that may change behavior
329
+ # in the future.
330
+ #
331
+ # @option options [String] :sdk_ua_app_id
332
+ # A unique and opaque application ID that is appended to the
333
+ # User-Agent header as app/sdk_ua_app_id. It should have a
334
+ # maximum length of 50. This variable is sourced from environment
335
+ # variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
336
+ #
337
+ # @option options [String] :secret_access_key
338
+ #
339
+ # @option options [String] :session_token
340
+ #
341
+ # @option options [Array] :sigv4a_signing_region_set
342
+ # A list of regions that should be signed with SigV4a signing. When
343
+ # not passed, a default `:sigv4a_signing_region_set` is searched for
344
+ # in the following locations:
345
+ #
346
+ # * `Aws.config[:sigv4a_signing_region_set]`
347
+ # * `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`
348
+ # * `~/.aws/config`
349
+ #
350
+ # @option options [Boolean] :stub_responses (false)
351
+ # Causes the client to return stubbed responses. By default
352
+ # fake responses are generated and returned. You can specify
353
+ # the response data to return or errors to raise by calling
354
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
355
+ #
356
+ # ** Please note ** When response stubbing is enabled, no HTTP
357
+ # requests are made, and retries are disabled.
358
+ #
359
+ # @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
360
+ # Allows you to provide a telemetry provider, which is used to
361
+ # emit telemetry data. By default, uses `NoOpTelemetryProvider` which
362
+ # will not record or emit any telemetry data. The SDK supports the
363
+ # following telemetry providers:
364
+ #
365
+ # * OpenTelemetry (OTel) - To use the OTel provider, install and require the
366
+ # `opentelemetry-sdk` gem and then, pass in an instance of a
367
+ # `Aws::Telemetry::OTelProvider` for telemetry provider.
368
+ #
369
+ # @option options [Aws::TokenProvider] :token_provider
370
+ # A Bearer Token Provider. This can be an instance of any one of the
371
+ # following classes:
372
+ #
373
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
374
+ # tokens.
375
+ #
376
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
377
+ # access token generated from `aws login`.
378
+ #
379
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
380
+ # will be used to search for tokens configured for your profile in shared configuration files.
381
+ #
382
+ # @option options [Boolean] :use_dualstack_endpoint
383
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
384
+ # will be used if available.
385
+ #
386
+ # @option options [Boolean] :use_fips_endpoint
387
+ # When set to `true`, fips compatible endpoints will be used if available.
388
+ # When a `fips` region is used, the region is normalized and this config
389
+ # is set to `true`.
390
+ #
391
+ # @option options [Boolean] :validate_params (true)
392
+ # When `true`, request parameters are validated before
393
+ # sending the request.
394
+ #
395
+ # @option options [Aws::BedrockAgentCoreControl::EndpointProvider] :endpoint_provider
396
+ # The endpoint provider used to resolve endpoints. Any object that responds to
397
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
398
+ # `Aws::BedrockAgentCoreControl::EndpointParameters`.
399
+ #
400
+ # @option options [Float] :http_continue_timeout (1)
401
+ # The number of seconds to wait for a 100-continue response before sending the
402
+ # request body. This option has no effect unless the request has "Expect"
403
+ # header set to "100-continue". Defaults to `nil` which disables this
404
+ # behaviour. This value can safely be set per request on the session.
405
+ #
406
+ # @option options [Float] :http_idle_timeout (5)
407
+ # The number of seconds a connection is allowed to sit idle before it
408
+ # is considered stale. Stale connections are closed and removed from the
409
+ # pool before making a request.
410
+ #
411
+ # @option options [Float] :http_open_timeout (15)
412
+ # The default number of seconds to wait for response data.
413
+ # This value can safely be set per-request on the session.
414
+ #
415
+ # @option options [URI::HTTP,String] :http_proxy
416
+ # A proxy to send requests through. Formatted like 'http://proxy.com:123'.
417
+ #
418
+ # @option options [Float] :http_read_timeout (60)
419
+ # The default number of seconds to wait for response data.
420
+ # This value can safely be set per-request on the session.
421
+ #
422
+ # @option options [Boolean] :http_wire_trace (false)
423
+ # When `true`, HTTP debug output will be sent to the `:logger`.
424
+ #
425
+ # @option options [Proc] :on_chunk_received
426
+ # When a Proc object is provided, it will be used as callback when each chunk
427
+ # of the response body is received. It provides three arguments: the chunk,
428
+ # the number of bytes received, and the total number of
429
+ # bytes in the response (or nil if the server did not send a `content-length`).
430
+ #
431
+ # @option options [Proc] :on_chunk_sent
432
+ # When a Proc object is provided, it will be used as callback when each chunk
433
+ # of the request body is sent. It provides three arguments: the chunk,
434
+ # the number of bytes read from the body, and the total number of
435
+ # bytes in the body.
436
+ #
437
+ # @option options [Boolean] :raise_response_errors (true)
438
+ # When `true`, response errors are raised.
439
+ #
440
+ # @option options [String] :ssl_ca_bundle
441
+ # Full path to the SSL certificate authority bundle file that should be used when
442
+ # verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
443
+ # `:ssl_ca_directory` the the system default will be used if available.
444
+ #
445
+ # @option options [String] :ssl_ca_directory
446
+ # Full path of the directory that contains the unbundled SSL certificate
447
+ # authority files for verifying peer certificates. If you do
448
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
449
+ # default will be used if available.
450
+ #
451
+ # @option options [String] :ssl_ca_store
452
+ # Sets the X509::Store to verify peer certificate.
453
+ #
454
+ # @option options [OpenSSL::X509::Certificate] :ssl_cert
455
+ # Sets a client certificate when creating http connections.
456
+ #
457
+ # @option options [OpenSSL::PKey] :ssl_key
458
+ # Sets a client key when creating http connections.
459
+ #
460
+ # @option options [Float] :ssl_timeout
461
+ # Sets the SSL timeout in seconds
462
+ #
463
+ # @option options [Boolean] :ssl_verify_peer (true)
464
+ # When `true`, SSL peer certificates are verified when establishing a connection.
465
+ #
466
+ def initialize(*args)
467
+ super
468
+ end
469
+
470
+ # @!group API Operations
471
+
472
+ # Creates an Amazon Secure Agent.
473
+ #
474
+ # @option params [required, String] :agent_runtime_name
475
+ # The name of the secure agent.
476
+ #
477
+ # @option params [String] :description
478
+ # The description of the agent runtime.
479
+ #
480
+ # @option params [required, Types::AgentArtifact] :agent_runtime_artifact
481
+ # The artifact of the agent.
482
+ #
483
+ # @option params [required, String] :role_arn
484
+ # The IAM role ARN that provides permissions for the agent runtime.
485
+ #
486
+ # @option params [required, Types::NetworkConfiguration] :network_configuration
487
+ # The network configuration for the agent runtime.
488
+ #
489
+ # @option params [Types::ProtocolConfiguration] :protocol_configuration
490
+ # The protocol configuration for an agent runtime. This structure
491
+ # defines how the agent runtime communicates with clients.
492
+ #
493
+ # @option params [String] :client_token
494
+ # A unique, case-sensitive identifier to ensure idempotency of the
495
+ # request.
496
+ #
497
+ # **A suitable default value is auto-generated.** You should normally
498
+ # not need to pass this option.**
499
+ #
500
+ # @option params [Hash<String,String>] :environment_variables
501
+ # Environment variables to set in the agent runtime environment.
502
+ #
503
+ # @option params [Types::AuthorizerConfiguration] :authorizer_configuration
504
+ # The authorizer configuration for the agent runtime.
505
+ #
506
+ # @return [Types::CreateAgentRuntimeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
507
+ #
508
+ # * {Types::CreateAgentRuntimeResponse#agent_runtime_arn #agent_runtime_arn} => String
509
+ # * {Types::CreateAgentRuntimeResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
510
+ # * {Types::CreateAgentRuntimeResponse#agent_runtime_id #agent_runtime_id} => String
511
+ # * {Types::CreateAgentRuntimeResponse#agent_runtime_version #agent_runtime_version} => String
512
+ # * {Types::CreateAgentRuntimeResponse#created_at #created_at} => Time
513
+ # * {Types::CreateAgentRuntimeResponse#status #status} => String
514
+ #
515
+ # @example Request syntax with placeholder values
516
+ #
517
+ # resp = client.create_agent_runtime({
518
+ # agent_runtime_name: "AgentRuntimeName", # required
519
+ # description: "Description",
520
+ # agent_runtime_artifact: { # required
521
+ # container_configuration: {
522
+ # container_uri: "RuntimeContainerUri", # required
523
+ # },
524
+ # },
525
+ # role_arn: "RoleArn", # required
526
+ # network_configuration: { # required
527
+ # network_mode: "PUBLIC", # required, accepts PUBLIC
528
+ # },
529
+ # protocol_configuration: {
530
+ # server_protocol: "MCP", # required, accepts MCP, HTTP
531
+ # },
532
+ # client_token: "ClientToken",
533
+ # environment_variables: {
534
+ # "EnvironmentVariableKey" => "EnvironmentVariableValue",
535
+ # },
536
+ # authorizer_configuration: {
537
+ # custom_jwt_authorizer: {
538
+ # discovery_url: "DiscoveryUrl", # required
539
+ # allowed_audience: ["AllowedAudience"],
540
+ # allowed_clients: ["AllowedClient"],
541
+ # },
542
+ # },
543
+ # })
544
+ #
545
+ # @example Response structure
546
+ #
547
+ # resp.agent_runtime_arn #=> String
548
+ # resp.workload_identity_details.workload_identity_arn #=> String
549
+ # resp.agent_runtime_id #=> String
550
+ # resp.agent_runtime_version #=> String
551
+ # resp.created_at #=> Time
552
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
553
+ #
554
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateAgentRuntime AWS API Documentation
555
+ #
556
+ # @overload create_agent_runtime(params = {})
557
+ # @param [Hash] params ({})
558
+ def create_agent_runtime(params = {}, options = {})
559
+ req = build_request(:create_agent_runtime, params)
560
+ req.send_request(options)
561
+ end
562
+
563
+ # Creates an Amazon Secure AgentEndpoint.
564
+ #
565
+ # @option params [required, String] :agent_runtime_id
566
+ # The unique identifier of the agent runtime to create an endpoint for.
567
+ #
568
+ # @option params [required, String] :name
569
+ # The name of the agent runtime endpoint.
570
+ #
571
+ # @option params [String] :agent_runtime_version
572
+ # The version of the agent runtime to use for the endpoint.
573
+ #
574
+ # @option params [String] :description
575
+ # The description of the agent runtime endpoint.
576
+ #
577
+ # @option params [String] :client_token
578
+ # A unique, case-sensitive identifier to ensure idempotency of the
579
+ # request.
580
+ #
581
+ # **A suitable default value is auto-generated.** You should normally
582
+ # not need to pass this option.**
583
+ #
584
+ # @return [Types::CreateAgentRuntimeEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
585
+ #
586
+ # * {Types::CreateAgentRuntimeEndpointResponse#target_version #target_version} => String
587
+ # * {Types::CreateAgentRuntimeEndpointResponse#agent_runtime_endpoint_arn #agent_runtime_endpoint_arn} => String
588
+ # * {Types::CreateAgentRuntimeEndpointResponse#agent_runtime_arn #agent_runtime_arn} => String
589
+ # * {Types::CreateAgentRuntimeEndpointResponse#status #status} => String
590
+ # * {Types::CreateAgentRuntimeEndpointResponse#created_at #created_at} => Time
591
+ #
592
+ # @example Request syntax with placeholder values
593
+ #
594
+ # resp = client.create_agent_runtime_endpoint({
595
+ # agent_runtime_id: "AgentRuntimeId", # required
596
+ # name: "EndpointName", # required
597
+ # agent_runtime_version: "AgentRuntimeVersion",
598
+ # description: "AgentEndpointDescription",
599
+ # client_token: "ClientToken",
600
+ # })
601
+ #
602
+ # @example Response structure
603
+ #
604
+ # resp.target_version #=> String
605
+ # resp.agent_runtime_endpoint_arn #=> String
606
+ # resp.agent_runtime_arn #=> String
607
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
608
+ # resp.created_at #=> Time
609
+ #
610
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateAgentRuntimeEndpoint AWS API Documentation
611
+ #
612
+ # @overload create_agent_runtime_endpoint(params = {})
613
+ # @param [Hash] params ({})
614
+ def create_agent_runtime_endpoint(params = {}, options = {})
615
+ req = build_request(:create_agent_runtime_endpoint, params)
616
+ req.send_request(options)
617
+ end
618
+
619
+ # Creates a new API key credential provider.
620
+ #
621
+ # @option params [required, String] :name
622
+ # The name of the API key credential provider. The name must be unique
623
+ # within your account.
624
+ #
625
+ # @option params [required, String] :api_key
626
+ # The API key to use for authentication. This value is encrypted and
627
+ # stored securely.
628
+ #
629
+ # @return [Types::CreateApiKeyCredentialProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
630
+ #
631
+ # * {Types::CreateApiKeyCredentialProviderResponse#api_key_secret_arn #api_key_secret_arn} => Types::Secret
632
+ # * {Types::CreateApiKeyCredentialProviderResponse#name #name} => String
633
+ # * {Types::CreateApiKeyCredentialProviderResponse#credential_provider_arn #credential_provider_arn} => String
634
+ #
635
+ # @example Request syntax with placeholder values
636
+ #
637
+ # resp = client.create_api_key_credential_provider({
638
+ # name: "CredentialProviderName", # required
639
+ # api_key: "ApiKeyType", # required
640
+ # })
641
+ #
642
+ # @example Response structure
643
+ #
644
+ # resp.api_key_secret_arn.secret_arn #=> String
645
+ # resp.name #=> String
646
+ # resp.credential_provider_arn #=> String
647
+ #
648
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateApiKeyCredentialProvider AWS API Documentation
649
+ #
650
+ # @overload create_api_key_credential_provider(params = {})
651
+ # @param [Hash] params ({})
652
+ def create_api_key_credential_provider(params = {}, options = {})
653
+ req = build_request(:create_api_key_credential_provider, params)
654
+ req.send_request(options)
655
+ end
656
+
657
+ # Creates a custom browser.
658
+ #
659
+ # @option params [required, String] :name
660
+ # The name of the browser. The name must be unique within your account.
661
+ #
662
+ # @option params [String] :description
663
+ # The description of the browser.
664
+ #
665
+ # @option params [String] :execution_role_arn
666
+ # The Amazon Resource Name (ARN) of the IAM role that provides
667
+ # permissions for the browser to access Amazon Web Services services.
668
+ #
669
+ # @option params [required, Types::BrowserNetworkConfiguration] :network_configuration
670
+ # The network configuration for the browser. This configuration
671
+ # specifies the network mode for the browser.
672
+ #
673
+ # @option params [Types::RecordingConfig] :recording
674
+ # The recording configuration for the browser. When enabled, browser
675
+ # sessions are recorded and stored in the specified Amazon S3 location.
676
+ #
677
+ # @option params [String] :client_token
678
+ # A unique, case-sensitive identifier to ensure that the operation
679
+ # completes no more than one time. If this token matches a previous
680
+ # request, Amazon Bedrock ignores the request but does not return an
681
+ # error.
682
+ #
683
+ # **A suitable default value is auto-generated.** You should normally
684
+ # not need to pass this option.**
685
+ #
686
+ # @return [Types::CreateBrowserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
687
+ #
688
+ # * {Types::CreateBrowserResponse#browser_id #browser_id} => String
689
+ # * {Types::CreateBrowserResponse#browser_arn #browser_arn} => String
690
+ # * {Types::CreateBrowserResponse#created_at #created_at} => Time
691
+ # * {Types::CreateBrowserResponse#status #status} => String
692
+ #
693
+ # @example Request syntax with placeholder values
694
+ #
695
+ # resp = client.create_browser({
696
+ # name: "SandboxName", # required
697
+ # description: "Description",
698
+ # execution_role_arn: "RoleArn",
699
+ # network_configuration: { # required
700
+ # network_mode: "PUBLIC", # required, accepts PUBLIC
701
+ # },
702
+ # recording: {
703
+ # enabled: false,
704
+ # s3_location: {
705
+ # bucket: "S3LocationBucketString", # required
706
+ # prefix: "S3LocationPrefixString", # required
707
+ # },
708
+ # },
709
+ # client_token: "ClientToken",
710
+ # })
711
+ #
712
+ # @example Response structure
713
+ #
714
+ # resp.browser_id #=> String
715
+ # resp.browser_arn #=> String
716
+ # resp.created_at #=> Time
717
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
718
+ #
719
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateBrowser AWS API Documentation
720
+ #
721
+ # @overload create_browser(params = {})
722
+ # @param [Hash] params ({})
723
+ def create_browser(params = {}, options = {})
724
+ req = build_request(:create_browser, params)
725
+ req.send_request(options)
726
+ end
727
+
728
+ # Creates a custom code interpreter.
729
+ #
730
+ # @option params [required, String] :name
731
+ # The name of the code interpreter. The name must be unique within your
732
+ # account.
733
+ #
734
+ # @option params [String] :description
735
+ # The description of the code interpreter.
736
+ #
737
+ # @option params [String] :execution_role_arn
738
+ # The Amazon Resource Name (ARN) of the IAM role that provides
739
+ # permissions for the code interpreter to access Amazon Web Services
740
+ # services.
741
+ #
742
+ # @option params [required, Types::CodeInterpreterNetworkConfiguration] :network_configuration
743
+ # The network configuration for the code interpreter. This configuration
744
+ # specifies the network mode for the code interpreter.
745
+ #
746
+ # @option params [String] :client_token
747
+ # A unique, case-sensitive identifier to ensure that the operation
748
+ # completes no more than one time. If this token matches a previous
749
+ # request, Amazon Bedrock ignores the request but does not return an
750
+ # error.
751
+ #
752
+ # **A suitable default value is auto-generated.** You should normally
753
+ # not need to pass this option.**
754
+ #
755
+ # @return [Types::CreateCodeInterpreterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
756
+ #
757
+ # * {Types::CreateCodeInterpreterResponse#code_interpreter_id #code_interpreter_id} => String
758
+ # * {Types::CreateCodeInterpreterResponse#code_interpreter_arn #code_interpreter_arn} => String
759
+ # * {Types::CreateCodeInterpreterResponse#created_at #created_at} => Time
760
+ # * {Types::CreateCodeInterpreterResponse#status #status} => String
761
+ #
762
+ # @example Request syntax with placeholder values
763
+ #
764
+ # resp = client.create_code_interpreter({
765
+ # name: "SandboxName", # required
766
+ # description: "Description",
767
+ # execution_role_arn: "RoleArn",
768
+ # network_configuration: { # required
769
+ # network_mode: "PUBLIC", # required, accepts PUBLIC, SANDBOX
770
+ # },
771
+ # client_token: "ClientToken",
772
+ # })
773
+ #
774
+ # @example Response structure
775
+ #
776
+ # resp.code_interpreter_id #=> String
777
+ # resp.code_interpreter_arn #=> String
778
+ # resp.created_at #=> Time
779
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
780
+ #
781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateCodeInterpreter AWS API Documentation
782
+ #
783
+ # @overload create_code_interpreter(params = {})
784
+ # @param [Hash] params ({})
785
+ def create_code_interpreter(params = {}, options = {})
786
+ req = build_request(:create_code_interpreter, params)
787
+ req.send_request(options)
788
+ end
789
+
790
+ # Creates a gateway for Amazon Bedrock Agent. A gateway serves as an
791
+ # integration point between your agent and external services.
792
+ #
793
+ # To create a gateway, you must specify a name, protocol type, and IAM
794
+ # role. The role grants the gateway permission to access Amazon Web
795
+ # Services services and resources.
796
+ #
797
+ # @option params [required, String] :name
798
+ # The name of the gateway. The name must be unique within your account.
799
+ #
800
+ # @option params [String] :description
801
+ # The description of the gateway.
802
+ #
803
+ # @option params [String] :client_token
804
+ # A unique, case-sensitive identifier to ensure that the operation
805
+ # completes no more than one time. If this token matches a previous
806
+ # request, Amazon Bedrock ignores the request but does not return an
807
+ # error.
808
+ #
809
+ # **A suitable default value is auto-generated.** You should normally
810
+ # not need to pass this option.**
811
+ #
812
+ # @option params [required, String] :role_arn
813
+ # The Amazon Resource Name (ARN) of the IAM role that provides
814
+ # permissions for the gateway to access Amazon Web Services services.
815
+ #
816
+ # @option params [required, String] :protocol_type
817
+ # The protocol type for the gateway. Currently supports MCP (Model
818
+ # Context Protocol).
819
+ #
820
+ # @option params [Types::GatewayProtocolConfiguration] :protocol_configuration
821
+ # The configuration settings for the protocol specified in the
822
+ # protocolType parameter.
823
+ #
824
+ # @option params [required, String] :authorizer_type
825
+ # The type of authorizer to use for the gateway.
826
+ #
827
+ # @option params [required, Types::AuthorizerConfiguration] :authorizer_configuration
828
+ # The authorizer configuration for the Gateway.
829
+ #
830
+ # @option params [String] :kms_key_arn
831
+ # The Amazon Resource Name (ARN) of the KMS key used to encrypt data
832
+ # associated with the gateway.
833
+ #
834
+ # @option params [String] :exception_level
835
+ # The verbosity of exception messages. Use DEBUG mode to see granular
836
+ # exception messages from a Gateway. If this parameter is not set,
837
+ # exception messages are by default sanitized for presentation to end
838
+ # users.
839
+ #
840
+ # @return [Types::CreateGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
841
+ #
842
+ # * {Types::CreateGatewayResponse#gateway_arn #gateway_arn} => String
843
+ # * {Types::CreateGatewayResponse#gateway_id #gateway_id} => String
844
+ # * {Types::CreateGatewayResponse#gateway_url #gateway_url} => String
845
+ # * {Types::CreateGatewayResponse#created_at #created_at} => Time
846
+ # * {Types::CreateGatewayResponse#updated_at #updated_at} => Time
847
+ # * {Types::CreateGatewayResponse#status #status} => String
848
+ # * {Types::CreateGatewayResponse#status_reasons #status_reasons} => Array&lt;String&gt;
849
+ # * {Types::CreateGatewayResponse#name #name} => String
850
+ # * {Types::CreateGatewayResponse#description #description} => String
851
+ # * {Types::CreateGatewayResponse#role_arn #role_arn} => String
852
+ # * {Types::CreateGatewayResponse#protocol_type #protocol_type} => String
853
+ # * {Types::CreateGatewayResponse#protocol_configuration #protocol_configuration} => Types::GatewayProtocolConfiguration
854
+ # * {Types::CreateGatewayResponse#authorizer_type #authorizer_type} => String
855
+ # * {Types::CreateGatewayResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
856
+ # * {Types::CreateGatewayResponse#kms_key_arn #kms_key_arn} => String
857
+ # * {Types::CreateGatewayResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
858
+ # * {Types::CreateGatewayResponse#exception_level #exception_level} => String
859
+ #
860
+ # @example Request syntax with placeholder values
861
+ #
862
+ # resp = client.create_gateway({
863
+ # name: "GatewayName", # required
864
+ # description: "GatewayDescription",
865
+ # client_token: "ClientToken",
866
+ # role_arn: "RoleArn", # required
867
+ # protocol_type: "MCP", # required, accepts MCP
868
+ # protocol_configuration: {
869
+ # mcp: {
870
+ # supported_versions: ["McpVersion"],
871
+ # instructions: "McpInstructions",
872
+ # search_type: "SEMANTIC", # accepts SEMANTIC
873
+ # },
874
+ # },
875
+ # authorizer_type: "CUSTOM_JWT", # required, accepts CUSTOM_JWT
876
+ # authorizer_configuration: { # required
877
+ # custom_jwt_authorizer: {
878
+ # discovery_url: "DiscoveryUrl", # required
879
+ # allowed_audience: ["AllowedAudience"],
880
+ # allowed_clients: ["AllowedClient"],
881
+ # },
882
+ # },
883
+ # kms_key_arn: "KmsKeyArn",
884
+ # exception_level: "DEBUG", # accepts DEBUG
885
+ # })
886
+ #
887
+ # @example Response structure
888
+ #
889
+ # resp.gateway_arn #=> String
890
+ # resp.gateway_id #=> String
891
+ # resp.gateway_url #=> String
892
+ # resp.created_at #=> Time
893
+ # resp.updated_at #=> Time
894
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
895
+ # resp.status_reasons #=> Array
896
+ # resp.status_reasons[0] #=> String
897
+ # resp.name #=> String
898
+ # resp.description #=> String
899
+ # resp.role_arn #=> String
900
+ # resp.protocol_type #=> String, one of "MCP"
901
+ # resp.protocol_configuration.mcp.supported_versions #=> Array
902
+ # resp.protocol_configuration.mcp.supported_versions[0] #=> String
903
+ # resp.protocol_configuration.mcp.instructions #=> String
904
+ # resp.protocol_configuration.mcp.search_type #=> String, one of "SEMANTIC"
905
+ # resp.authorizer_type #=> String, one of "CUSTOM_JWT"
906
+ # resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
907
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
908
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
909
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
910
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
911
+ # resp.kms_key_arn #=> String
912
+ # resp.workload_identity_details.workload_identity_arn #=> String
913
+ # resp.exception_level #=> String, one of "DEBUG"
914
+ #
915
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateGateway AWS API Documentation
916
+ #
917
+ # @overload create_gateway(params = {})
918
+ # @param [Hash] params ({})
919
+ def create_gateway(params = {}, options = {})
920
+ req = build_request(:create_gateway, params)
921
+ req.send_request(options)
922
+ end
923
+
924
+ # Creates a target for a gateway. A target defines an endpoint that the
925
+ # gateway can connect to.
926
+ #
927
+ # To create a target, you must specify the gateway identifier and target
928
+ # configuration.
929
+ #
930
+ # @option params [required, String] :gateway_identifier
931
+ # The identifier of the gateway to create a target for. This can be
932
+ # either the gateway ID or the gateway ARN.
933
+ #
934
+ # @option params [required, String] :name
935
+ # The name of the gateway target. The name must be unique within the
936
+ # gateway.
937
+ #
938
+ # @option params [String] :description
939
+ # The description of the gateway target.
940
+ #
941
+ # @option params [String] :client_token
942
+ # A unique, case-sensitive identifier to ensure that the operation
943
+ # completes no more than one time. If this token matches a previous
944
+ # request, Amazon Bedrock ignores the request but does not return an
945
+ # error.
946
+ #
947
+ # **A suitable default value is auto-generated.** You should normally
948
+ # not need to pass this option.**
949
+ #
950
+ # @option params [required, Types::TargetConfiguration] :target_configuration
951
+ # The configuration settings for the target, including endpoint
952
+ # information and schema definitions.
953
+ #
954
+ # @option params [required, Array<Types::CredentialProviderConfiguration>] :credential_provider_configurations
955
+ # The credential provider configurations for the target. These
956
+ # configurations specify how the gateway authenticates with the target
957
+ # endpoint.
958
+ #
959
+ # @return [Types::CreateGatewayTargetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
960
+ #
961
+ # * {Types::CreateGatewayTargetResponse#gateway_arn #gateway_arn} => String
962
+ # * {Types::CreateGatewayTargetResponse#target_id #target_id} => String
963
+ # * {Types::CreateGatewayTargetResponse#created_at #created_at} => Time
964
+ # * {Types::CreateGatewayTargetResponse#updated_at #updated_at} => Time
965
+ # * {Types::CreateGatewayTargetResponse#status #status} => String
966
+ # * {Types::CreateGatewayTargetResponse#status_reasons #status_reasons} => Array&lt;String&gt;
967
+ # * {Types::CreateGatewayTargetResponse#name #name} => String
968
+ # * {Types::CreateGatewayTargetResponse#description #description} => String
969
+ # * {Types::CreateGatewayTargetResponse#target_configuration #target_configuration} => Types::TargetConfiguration
970
+ # * {Types::CreateGatewayTargetResponse#credential_provider_configurations #credential_provider_configurations} => Array&lt;Types::CredentialProviderConfiguration&gt;
971
+ #
972
+ # @example Request syntax with placeholder values
973
+ #
974
+ # resp = client.create_gateway_target({
975
+ # gateway_identifier: "GatewayIdentifier", # required
976
+ # name: "TargetName", # required
977
+ # description: "TargetDescription",
978
+ # client_token: "ClientToken",
979
+ # target_configuration: { # required
980
+ # mcp: {
981
+ # open_api_schema: {
982
+ # s3: {
983
+ # uri: "S3BucketUri",
984
+ # bucket_owner_account_id: "AwsAccountId",
985
+ # },
986
+ # inline_payload: "InlinePayload",
987
+ # },
988
+ # smithy_model: {
989
+ # s3: {
990
+ # uri: "S3BucketUri",
991
+ # bucket_owner_account_id: "AwsAccountId",
992
+ # },
993
+ # inline_payload: "InlinePayload",
994
+ # },
995
+ # lambda: {
996
+ # lambda_arn: "LambdaFunctionArn", # required
997
+ # tool_schema: { # required
998
+ # s3: {
999
+ # uri: "S3BucketUri",
1000
+ # bucket_owner_account_id: "AwsAccountId",
1001
+ # },
1002
+ # inline_payload: [
1003
+ # {
1004
+ # name: "String", # required
1005
+ # description: "String", # required
1006
+ # input_schema: { # required
1007
+ # type: "string", # required, accepts string, number, object, array, boolean, integer
1008
+ # properties: {
1009
+ # "String" => {
1010
+ # # recursive SchemaDefinition
1011
+ # },
1012
+ # },
1013
+ # required: ["String"],
1014
+ # items: {
1015
+ # # recursive SchemaDefinition
1016
+ # },
1017
+ # description: "String",
1018
+ # },
1019
+ # output_schema: {
1020
+ # type: "string", # required, accepts string, number, object, array, boolean, integer
1021
+ # properties: {
1022
+ # "String" => {
1023
+ # # recursive SchemaDefinition
1024
+ # },
1025
+ # },
1026
+ # required: ["String"],
1027
+ # items: {
1028
+ # # recursive SchemaDefinition
1029
+ # },
1030
+ # description: "String",
1031
+ # },
1032
+ # },
1033
+ # ],
1034
+ # },
1035
+ # },
1036
+ # },
1037
+ # },
1038
+ # credential_provider_configurations: [ # required
1039
+ # {
1040
+ # credential_provider_type: "GATEWAY_IAM_ROLE", # required, accepts GATEWAY_IAM_ROLE, OAUTH, API_KEY
1041
+ # credential_provider: {
1042
+ # oauth_credential_provider: {
1043
+ # provider_arn: "OAuthCredentialProviderArn", # required
1044
+ # scopes: ["OAuthScope"], # required
1045
+ # custom_parameters: {
1046
+ # "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
1047
+ # },
1048
+ # },
1049
+ # api_key_credential_provider: {
1050
+ # provider_arn: "ApiKeyCredentialProviderArn", # required
1051
+ # credential_parameter_name: "ApiKeyCredentialParameterName",
1052
+ # credential_prefix: "ApiKeyCredentialPrefix",
1053
+ # credential_location: "HEADER", # accepts HEADER, QUERY_PARAMETER
1054
+ # },
1055
+ # },
1056
+ # },
1057
+ # ],
1058
+ # })
1059
+ #
1060
+ # @example Response structure
1061
+ #
1062
+ # resp.gateway_arn #=> String
1063
+ # resp.target_id #=> String
1064
+ # resp.created_at #=> Time
1065
+ # resp.updated_at #=> Time
1066
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
1067
+ # resp.status_reasons #=> Array
1068
+ # resp.status_reasons[0] #=> String
1069
+ # resp.name #=> String
1070
+ # resp.description #=> String
1071
+ # resp.target_configuration.mcp.open_api_schema.s3.uri #=> String
1072
+ # resp.target_configuration.mcp.open_api_schema.s3.bucket_owner_account_id #=> String
1073
+ # resp.target_configuration.mcp.open_api_schema.inline_payload #=> String
1074
+ # resp.target_configuration.mcp.smithy_model.s3.uri #=> String
1075
+ # resp.target_configuration.mcp.smithy_model.s3.bucket_owner_account_id #=> String
1076
+ # resp.target_configuration.mcp.smithy_model.inline_payload #=> String
1077
+ # resp.target_configuration.mcp.lambda.lambda_arn #=> String
1078
+ # resp.target_configuration.mcp.lambda.tool_schema.s3.uri #=> String
1079
+ # resp.target_configuration.mcp.lambda.tool_schema.s3.bucket_owner_account_id #=> String
1080
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload #=> Array
1081
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].name #=> String
1082
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].description #=> String
1083
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
1084
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties #=> Hash
1085
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties["String"] #=> Types::SchemaDefinition
1086
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required #=> Array
1087
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required[0] #=> String
1088
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.items #=> Types::SchemaDefinition
1089
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.description #=> String
1090
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
1091
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties #=> Hash
1092
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties["String"] #=> Types::SchemaDefinition
1093
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required #=> Array
1094
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required[0] #=> String
1095
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
1096
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
1097
+ # resp.credential_provider_configurations #=> Array
1098
+ # resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY"
1099
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
1100
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
1101
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
1102
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
1103
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
1104
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
1105
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
1106
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
1107
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_location #=> String, one of "HEADER", "QUERY_PARAMETER"
1108
+ #
1109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateGatewayTarget AWS API Documentation
1110
+ #
1111
+ # @overload create_gateway_target(params = {})
1112
+ # @param [Hash] params ({})
1113
+ def create_gateway_target(params = {}, options = {})
1114
+ req = build_request(:create_gateway_target, params)
1115
+ req.send_request(options)
1116
+ end
1117
+
1118
+ # Creates a new memory.
1119
+ #
1120
+ # @option params [String] :client_token
1121
+ # A unique, case-sensitive identifier to ensure that the operation
1122
+ # completes no more than one time. If this token matches a previous
1123
+ # request, Amazon Bedrock ignores the request but does not return an
1124
+ # error.
1125
+ #
1126
+ # **A suitable default value is auto-generated.** You should normally
1127
+ # not need to pass this option.**
1128
+ #
1129
+ # @option params [required, String] :name
1130
+ # The name of the memory. The name must be unique within your account.
1131
+ #
1132
+ # @option params [String] :description
1133
+ # The description of the memory.
1134
+ #
1135
+ # @option params [String] :encryption_key_arn
1136
+ # The Amazon Resource Name (ARN) of the KMS key used to encrypt the
1137
+ # memory data.
1138
+ #
1139
+ # @option params [String] :memory_execution_role_arn
1140
+ # The Amazon Resource Name (ARN) of the IAM role that provides
1141
+ # permissions for the memory to access Amazon Web Services services.
1142
+ #
1143
+ # @option params [required, Integer] :event_expiry_duration
1144
+ # The duration after which memory events expire. Specified as an ISO
1145
+ # 8601 duration.
1146
+ #
1147
+ # @option params [Array<Types::MemoryStrategyInput>] :memory_strategies
1148
+ # The memory strategies to use for this memory. Strategies define how
1149
+ # information is extracted, processed, and consolidated.
1150
+ #
1151
+ # @return [Types::CreateMemoryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1152
+ #
1153
+ # * {Types::CreateMemoryOutput#memory #memory} => Types::Memory
1154
+ #
1155
+ # @example Request syntax with placeholder values
1156
+ #
1157
+ # resp = client.create_memory({
1158
+ # client_token: "CreateMemoryInputClientTokenString",
1159
+ # name: "Name", # required
1160
+ # description: "Description",
1161
+ # encryption_key_arn: "Arn",
1162
+ # memory_execution_role_arn: "Arn",
1163
+ # event_expiry_duration: 1, # required
1164
+ # memory_strategies: [
1165
+ # {
1166
+ # semantic_memory_strategy: {
1167
+ # name: "Name", # required
1168
+ # description: "Description",
1169
+ # namespaces: ["Namespace"],
1170
+ # },
1171
+ # summary_memory_strategy: {
1172
+ # name: "Name", # required
1173
+ # description: "Description",
1174
+ # namespaces: ["Namespace"],
1175
+ # },
1176
+ # user_preference_memory_strategy: {
1177
+ # name: "Name", # required
1178
+ # description: "Description",
1179
+ # namespaces: ["Namespace"],
1180
+ # },
1181
+ # custom_memory_strategy: {
1182
+ # name: "Name", # required
1183
+ # description: "Description",
1184
+ # namespaces: ["Namespace"],
1185
+ # configuration: {
1186
+ # semantic_override: {
1187
+ # extraction: {
1188
+ # append_to_prompt: "Prompt", # required
1189
+ # model_id: "String", # required
1190
+ # },
1191
+ # consolidation: {
1192
+ # append_to_prompt: "Prompt", # required
1193
+ # model_id: "String", # required
1194
+ # },
1195
+ # },
1196
+ # summary_override: {
1197
+ # consolidation: {
1198
+ # append_to_prompt: "Prompt", # required
1199
+ # model_id: "String", # required
1200
+ # },
1201
+ # },
1202
+ # user_preference_override: {
1203
+ # extraction: {
1204
+ # append_to_prompt: "Prompt", # required
1205
+ # model_id: "String", # required
1206
+ # },
1207
+ # consolidation: {
1208
+ # append_to_prompt: "Prompt", # required
1209
+ # model_id: "String", # required
1210
+ # },
1211
+ # },
1212
+ # },
1213
+ # },
1214
+ # },
1215
+ # ],
1216
+ # })
1217
+ #
1218
+ # @example Response structure
1219
+ #
1220
+ # resp.memory.arn #=> String
1221
+ # resp.memory.id #=> String
1222
+ # resp.memory.name #=> String
1223
+ # resp.memory.description #=> String
1224
+ # resp.memory.encryption_key_arn #=> String
1225
+ # resp.memory.memory_execution_role_arn #=> String
1226
+ # resp.memory.event_expiry_duration #=> Integer
1227
+ # resp.memory.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
1228
+ # resp.memory.failure_reason #=> String
1229
+ # resp.memory.created_at #=> Time
1230
+ # resp.memory.updated_at #=> Time
1231
+ # resp.memory.strategies #=> Array
1232
+ # resp.memory.strategies[0].strategy_id #=> String
1233
+ # resp.memory.strategies[0].name #=> String
1234
+ # resp.memory.strategies[0].description #=> String
1235
+ # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE"
1236
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
1237
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
1238
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
1239
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
1240
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
1241
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
1242
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
1243
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
1244
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
1245
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
1246
+ # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM"
1247
+ # resp.memory.strategies[0].namespaces #=> Array
1248
+ # resp.memory.strategies[0].namespaces[0] #=> String
1249
+ # resp.memory.strategies[0].created_at #=> Time
1250
+ # resp.memory.strategies[0].updated_at #=> Time
1251
+ # resp.memory.strategies[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
1252
+ #
1253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateMemory AWS API Documentation
1254
+ #
1255
+ # @overload create_memory(params = {})
1256
+ # @param [Hash] params ({})
1257
+ def create_memory(params = {}, options = {})
1258
+ req = build_request(:create_memory, params)
1259
+ req.send_request(options)
1260
+ end
1261
+
1262
+ # Creates a new OAuth2 credential provider.
1263
+ #
1264
+ # @option params [required, String] :name
1265
+ # The name of the OAuth2 credential provider. The name must be unique
1266
+ # within your account.
1267
+ #
1268
+ # @option params [required, String] :credential_provider_vendor
1269
+ # The vendor of the OAuth2 credential provider. This specifies which
1270
+ # OAuth2 implementation to use.
1271
+ #
1272
+ # @option params [required, Types::Oauth2ProviderConfigInput] :oauth2_provider_config_input
1273
+ # The configuration settings for the OAuth2 provider, including client
1274
+ # ID, client secret, and other vendor-specific settings.
1275
+ #
1276
+ # @return [Types::CreateOauth2CredentialProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1277
+ #
1278
+ # * {Types::CreateOauth2CredentialProviderResponse#client_secret_arn #client_secret_arn} => Types::Secret
1279
+ # * {Types::CreateOauth2CredentialProviderResponse#name #name} => String
1280
+ # * {Types::CreateOauth2CredentialProviderResponse#credential_provider_arn #credential_provider_arn} => String
1281
+ #
1282
+ # @example Request syntax with placeholder values
1283
+ #
1284
+ # resp = client.create_oauth_2_credential_provider({
1285
+ # name: "CredentialProviderName", # required
1286
+ # credential_provider_vendor: "GoogleOauth2", # required, accepts GoogleOauth2, GithubOauth2, SlackOauth2, SalesforceOauth2, MicrosoftOauth2, CustomOauth2
1287
+ # oauth2_provider_config_input: { # required
1288
+ # custom_oauth_2_provider_config: {
1289
+ # oauth_discovery: { # required
1290
+ # discovery_url: "DiscoveryUrlType",
1291
+ # authorization_server_metadata: {
1292
+ # issuer: "IssuerUrlType", # required
1293
+ # authorization_endpoint: "AuthorizationEndpointType", # required
1294
+ # token_endpoint: "TokenEndpointType", # required
1295
+ # response_types: ["ResponseType"],
1296
+ # },
1297
+ # },
1298
+ # client_id: "ClientIdType", # required
1299
+ # client_secret: "ClientSecretType", # required
1300
+ # },
1301
+ # google_oauth_2_provider_config: {
1302
+ # client_id: "ClientIdType", # required
1303
+ # client_secret: "ClientSecretType", # required
1304
+ # },
1305
+ # github_oauth_2_provider_config: {
1306
+ # client_id: "ClientIdType", # required
1307
+ # client_secret: "ClientSecretType", # required
1308
+ # },
1309
+ # slack_oauth_2_provider_config: {
1310
+ # client_id: "ClientIdType", # required
1311
+ # client_secret: "ClientSecretType", # required
1312
+ # },
1313
+ # salesforce_oauth_2_provider_config: {
1314
+ # client_id: "ClientIdType", # required
1315
+ # client_secret: "ClientSecretType", # required
1316
+ # },
1317
+ # microsoft_oauth_2_provider_config: {
1318
+ # client_id: "ClientIdType", # required
1319
+ # client_secret: "ClientSecretType", # required
1320
+ # },
1321
+ # },
1322
+ # })
1323
+ #
1324
+ # @example Response structure
1325
+ #
1326
+ # resp.client_secret_arn.secret_arn #=> String
1327
+ # resp.name #=> String
1328
+ # resp.credential_provider_arn #=> String
1329
+ #
1330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateOauth2CredentialProvider AWS API Documentation
1331
+ #
1332
+ # @overload create_oauth_2_credential_provider(params = {})
1333
+ # @param [Hash] params ({})
1334
+ def create_oauth_2_credential_provider(params = {}, options = {})
1335
+ req = build_request(:create_oauth_2_credential_provider, params)
1336
+ req.send_request(options)
1337
+ end
1338
+
1339
+ # Creates a new workload identity.
1340
+ #
1341
+ # @option params [required, String] :name
1342
+ # The name of the workload identity. The name must be unique within your
1343
+ # account.
1344
+ #
1345
+ # @option params [Array<String>] :allowed_resource_oauth_2_return_urls
1346
+ # The list of allowed OAuth2 return URLs for resources associated with
1347
+ # this workload identity.
1348
+ #
1349
+ # @return [Types::CreateWorkloadIdentityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1350
+ #
1351
+ # * {Types::CreateWorkloadIdentityResponse#name #name} => String
1352
+ # * {Types::CreateWorkloadIdentityResponse#workload_identity_arn #workload_identity_arn} => String
1353
+ # * {Types::CreateWorkloadIdentityResponse#allowed_resource_oauth_2_return_urls #allowed_resource_oauth_2_return_urls} => Array&lt;String&gt;
1354
+ #
1355
+ # @example Request syntax with placeholder values
1356
+ #
1357
+ # resp = client.create_workload_identity({
1358
+ # name: "WorkloadIdentityNameType", # required
1359
+ # allowed_resource_oauth_2_return_urls: ["ResourceOauth2ReturnUrlType"],
1360
+ # })
1361
+ #
1362
+ # @example Response structure
1363
+ #
1364
+ # resp.name #=> String
1365
+ # resp.workload_identity_arn #=> String
1366
+ # resp.allowed_resource_oauth_2_return_urls #=> Array
1367
+ # resp.allowed_resource_oauth_2_return_urls[0] #=> String
1368
+ #
1369
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateWorkloadIdentity AWS API Documentation
1370
+ #
1371
+ # @overload create_workload_identity(params = {})
1372
+ # @param [Hash] params ({})
1373
+ def create_workload_identity(params = {}, options = {})
1374
+ req = build_request(:create_workload_identity, params)
1375
+ req.send_request(options)
1376
+ end
1377
+
1378
+ # Deletes an Amazon Secure Agent.
1379
+ #
1380
+ # @option params [required, String] :agent_runtime_id
1381
+ # The unique identifier of the agent runtime to delete.
1382
+ #
1383
+ # @return [Types::DeleteAgentRuntimeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1384
+ #
1385
+ # * {Types::DeleteAgentRuntimeResponse#status #status} => String
1386
+ #
1387
+ # @example Request syntax with placeholder values
1388
+ #
1389
+ # resp = client.delete_agent_runtime({
1390
+ # agent_runtime_id: "AgentRuntimeId", # required
1391
+ # })
1392
+ #
1393
+ # @example Response structure
1394
+ #
1395
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
1396
+ #
1397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteAgentRuntime AWS API Documentation
1398
+ #
1399
+ # @overload delete_agent_runtime(params = {})
1400
+ # @param [Hash] params ({})
1401
+ def delete_agent_runtime(params = {}, options = {})
1402
+ req = build_request(:delete_agent_runtime, params)
1403
+ req.send_request(options)
1404
+ end
1405
+
1406
+ # Deletes an Amazon Secure AgentEndpoint.
1407
+ #
1408
+ # @option params [required, String] :agent_runtime_id
1409
+ # The unique identifier of the agent runtime associated with the
1410
+ # endpoint.
1411
+ #
1412
+ # @option params [required, String] :endpoint_name
1413
+ # The name of the agent runtime endpoint to delete.
1414
+ #
1415
+ # @option params [String] :client_token
1416
+ # A unique, case-sensitive identifier to ensure idempotency of the
1417
+ # request.
1418
+ #
1419
+ # **A suitable default value is auto-generated.** You should normally
1420
+ # not need to pass this option.**
1421
+ #
1422
+ # @return [Types::DeleteAgentRuntimeEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1423
+ #
1424
+ # * {Types::DeleteAgentRuntimeEndpointResponse#status #status} => String
1425
+ #
1426
+ # @example Request syntax with placeholder values
1427
+ #
1428
+ # resp = client.delete_agent_runtime_endpoint({
1429
+ # agent_runtime_id: "AgentRuntimeId", # required
1430
+ # endpoint_name: "EndpointName", # required
1431
+ # client_token: "ClientToken",
1432
+ # })
1433
+ #
1434
+ # @example Response structure
1435
+ #
1436
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
1437
+ #
1438
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteAgentRuntimeEndpoint AWS API Documentation
1439
+ #
1440
+ # @overload delete_agent_runtime_endpoint(params = {})
1441
+ # @param [Hash] params ({})
1442
+ def delete_agent_runtime_endpoint(params = {}, options = {})
1443
+ req = build_request(:delete_agent_runtime_endpoint, params)
1444
+ req.send_request(options)
1445
+ end
1446
+
1447
+ # Deletes an API key credential provider.
1448
+ #
1449
+ # @option params [required, String] :name
1450
+ # The name of the API key credential provider to delete.
1451
+ #
1452
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1453
+ #
1454
+ # @example Request syntax with placeholder values
1455
+ #
1456
+ # resp = client.delete_api_key_credential_provider({
1457
+ # name: "CredentialProviderName", # required
1458
+ # })
1459
+ #
1460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteApiKeyCredentialProvider AWS API Documentation
1461
+ #
1462
+ # @overload delete_api_key_credential_provider(params = {})
1463
+ # @param [Hash] params ({})
1464
+ def delete_api_key_credential_provider(params = {}, options = {})
1465
+ req = build_request(:delete_api_key_credential_provider, params)
1466
+ req.send_request(options)
1467
+ end
1468
+
1469
+ # Deletes a custom browser.
1470
+ #
1471
+ # @option params [required, String] :browser_id
1472
+ # The unique identifier of the browser to delete.
1473
+ #
1474
+ # @option params [String] :client_token
1475
+ # A unique, case-sensitive identifier to ensure idempotency of the
1476
+ # request.
1477
+ #
1478
+ # **A suitable default value is auto-generated.** You should normally
1479
+ # not need to pass this option.**
1480
+ #
1481
+ # @return [Types::DeleteBrowserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1482
+ #
1483
+ # * {Types::DeleteBrowserResponse#browser_id #browser_id} => String
1484
+ # * {Types::DeleteBrowserResponse#status #status} => String
1485
+ # * {Types::DeleteBrowserResponse#last_updated_at #last_updated_at} => Time
1486
+ #
1487
+ # @example Request syntax with placeholder values
1488
+ #
1489
+ # resp = client.delete_browser({
1490
+ # browser_id: "BrowserId", # required
1491
+ # client_token: "ClientToken",
1492
+ # })
1493
+ #
1494
+ # @example Response structure
1495
+ #
1496
+ # resp.browser_id #=> String
1497
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
1498
+ # resp.last_updated_at #=> Time
1499
+ #
1500
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteBrowser AWS API Documentation
1501
+ #
1502
+ # @overload delete_browser(params = {})
1503
+ # @param [Hash] params ({})
1504
+ def delete_browser(params = {}, options = {})
1505
+ req = build_request(:delete_browser, params)
1506
+ req.send_request(options)
1507
+ end
1508
+
1509
+ # Deletes a custom code interpreter.
1510
+ #
1511
+ # @option params [required, String] :code_interpreter_id
1512
+ # The unique identifier of the code interpreter to delete.
1513
+ #
1514
+ # @option params [String] :client_token
1515
+ # A unique, case-sensitive identifier to ensure idempotency of the
1516
+ # request.
1517
+ #
1518
+ # **A suitable default value is auto-generated.** You should normally
1519
+ # not need to pass this option.**
1520
+ #
1521
+ # @return [Types::DeleteCodeInterpreterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1522
+ #
1523
+ # * {Types::DeleteCodeInterpreterResponse#code_interpreter_id #code_interpreter_id} => String
1524
+ # * {Types::DeleteCodeInterpreterResponse#status #status} => String
1525
+ # * {Types::DeleteCodeInterpreterResponse#last_updated_at #last_updated_at} => Time
1526
+ #
1527
+ # @example Request syntax with placeholder values
1528
+ #
1529
+ # resp = client.delete_code_interpreter({
1530
+ # code_interpreter_id: "CodeInterpreterId", # required
1531
+ # client_token: "ClientToken",
1532
+ # })
1533
+ #
1534
+ # @example Response structure
1535
+ #
1536
+ # resp.code_interpreter_id #=> String
1537
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
1538
+ # resp.last_updated_at #=> Time
1539
+ #
1540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteCodeInterpreter AWS API Documentation
1541
+ #
1542
+ # @overload delete_code_interpreter(params = {})
1543
+ # @param [Hash] params ({})
1544
+ def delete_code_interpreter(params = {}, options = {})
1545
+ req = build_request(:delete_code_interpreter, params)
1546
+ req.send_request(options)
1547
+ end
1548
+
1549
+ # Deletes a Gateway.
1550
+ #
1551
+ # @option params [required, String] :gateway_identifier
1552
+ # The identifier of the gateway to delete. This can be either the
1553
+ # gateway ID or the gateway ARN.
1554
+ #
1555
+ # @return [Types::DeleteGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1556
+ #
1557
+ # * {Types::DeleteGatewayResponse#gateway_id #gateway_id} => String
1558
+ # * {Types::DeleteGatewayResponse#status #status} => String
1559
+ # * {Types::DeleteGatewayResponse#status_reasons #status_reasons} => Array&lt;String&gt;
1560
+ #
1561
+ # @example Request syntax with placeholder values
1562
+ #
1563
+ # resp = client.delete_gateway({
1564
+ # gateway_identifier: "GatewayIdentifier", # required
1565
+ # })
1566
+ #
1567
+ # @example Response structure
1568
+ #
1569
+ # resp.gateway_id #=> String
1570
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
1571
+ # resp.status_reasons #=> Array
1572
+ # resp.status_reasons[0] #=> String
1573
+ #
1574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteGateway AWS API Documentation
1575
+ #
1576
+ # @overload delete_gateway(params = {})
1577
+ # @param [Hash] params ({})
1578
+ def delete_gateway(params = {}, options = {})
1579
+ req = build_request(:delete_gateway, params)
1580
+ req.send_request(options)
1581
+ end
1582
+
1583
+ # Deletes a Gateway Target.
1584
+ #
1585
+ # @option params [required, String] :gateway_identifier
1586
+ # The unique identifier of the Gateway associated with the target.
1587
+ #
1588
+ # @option params [required, String] :target_id
1589
+ # The unique identifier of the Gateway Target to delete.
1590
+ #
1591
+ # @return [Types::DeleteGatewayTargetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1592
+ #
1593
+ # * {Types::DeleteGatewayTargetResponse#gateway_arn #gateway_arn} => String
1594
+ # * {Types::DeleteGatewayTargetResponse#target_id #target_id} => String
1595
+ # * {Types::DeleteGatewayTargetResponse#status #status} => String
1596
+ # * {Types::DeleteGatewayTargetResponse#status_reasons #status_reasons} => Array&lt;String&gt;
1597
+ #
1598
+ # @example Request syntax with placeholder values
1599
+ #
1600
+ # resp = client.delete_gateway_target({
1601
+ # gateway_identifier: "GatewayIdentifier", # required
1602
+ # target_id: "TargetId", # required
1603
+ # })
1604
+ #
1605
+ # @example Response structure
1606
+ #
1607
+ # resp.gateway_arn #=> String
1608
+ # resp.target_id #=> String
1609
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
1610
+ # resp.status_reasons #=> Array
1611
+ # resp.status_reasons[0] #=> String
1612
+ #
1613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteGatewayTarget AWS API Documentation
1614
+ #
1615
+ # @overload delete_gateway_target(params = {})
1616
+ # @param [Hash] params ({})
1617
+ def delete_gateway_target(params = {}, options = {})
1618
+ req = build_request(:delete_gateway_target, params)
1619
+ req.send_request(options)
1620
+ end
1621
+
1622
+ # Deletes a memory.
1623
+ #
1624
+ # @option params [String] :client_token
1625
+ # A client token is used for keeping track of idempotent requests. It
1626
+ # can contain a session id which can be around 250 chars, combined with
1627
+ # a unique AWS identifier.
1628
+ #
1629
+ # **A suitable default value is auto-generated.** You should normally
1630
+ # not need to pass this option.**
1631
+ #
1632
+ # @option params [required, String] :memory_id
1633
+ # The unique identifier of the memory to delete.
1634
+ #
1635
+ # @return [Types::DeleteMemoryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1636
+ #
1637
+ # * {Types::DeleteMemoryOutput#memory_id #memory_id} => String
1638
+ # * {Types::DeleteMemoryOutput#status #status} => String
1639
+ #
1640
+ # @example Request syntax with placeholder values
1641
+ #
1642
+ # resp = client.delete_memory({
1643
+ # client_token: "DeleteMemoryInputClientTokenString",
1644
+ # memory_id: "MemoryId", # required
1645
+ # })
1646
+ #
1647
+ # @example Response structure
1648
+ #
1649
+ # resp.memory_id #=> String
1650
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
1651
+ #
1652
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteMemory AWS API Documentation
1653
+ #
1654
+ # @overload delete_memory(params = {})
1655
+ # @param [Hash] params ({})
1656
+ def delete_memory(params = {}, options = {})
1657
+ req = build_request(:delete_memory, params)
1658
+ req.send_request(options)
1659
+ end
1660
+
1661
+ # Deletes an OAuth2 credential provider.
1662
+ #
1663
+ # @option params [required, String] :name
1664
+ # The name of the OAuth2 credential provider to delete.
1665
+ #
1666
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1667
+ #
1668
+ # @example Request syntax with placeholder values
1669
+ #
1670
+ # resp = client.delete_oauth_2_credential_provider({
1671
+ # name: "CredentialProviderName", # required
1672
+ # })
1673
+ #
1674
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteOauth2CredentialProvider AWS API Documentation
1675
+ #
1676
+ # @overload delete_oauth_2_credential_provider(params = {})
1677
+ # @param [Hash] params ({})
1678
+ def delete_oauth_2_credential_provider(params = {}, options = {})
1679
+ req = build_request(:delete_oauth_2_credential_provider, params)
1680
+ req.send_request(options)
1681
+ end
1682
+
1683
+ # Deletes a workload identity.
1684
+ #
1685
+ # @option params [required, String] :name
1686
+ # The name of the workload identity to delete.
1687
+ #
1688
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1689
+ #
1690
+ # @example Request syntax with placeholder values
1691
+ #
1692
+ # resp = client.delete_workload_identity({
1693
+ # name: "WorkloadIdentityNameType", # required
1694
+ # })
1695
+ #
1696
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteWorkloadIdentity AWS API Documentation
1697
+ #
1698
+ # @overload delete_workload_identity(params = {})
1699
+ # @param [Hash] params ({})
1700
+ def delete_workload_identity(params = {}, options = {})
1701
+ req = build_request(:delete_workload_identity, params)
1702
+ req.send_request(options)
1703
+ end
1704
+
1705
+ # Gets an Amazon Secure Agent.
1706
+ #
1707
+ # @option params [required, String] :agent_runtime_id
1708
+ # The unique identifier of the agent runtime to retrieve.
1709
+ #
1710
+ # @option params [String] :agent_runtime_version
1711
+ # The version of the agent runtime to retrieve.
1712
+ #
1713
+ # @return [Types::GetAgentRuntimeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1714
+ #
1715
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_arn #agent_runtime_arn} => String
1716
+ # * {Types::GetAgentRuntimeResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
1717
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_name #agent_runtime_name} => String
1718
+ # * {Types::GetAgentRuntimeResponse#description #description} => String
1719
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_id #agent_runtime_id} => String
1720
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_version #agent_runtime_version} => String
1721
+ # * {Types::GetAgentRuntimeResponse#created_at #created_at} => Time
1722
+ # * {Types::GetAgentRuntimeResponse#last_updated_at #last_updated_at} => Time
1723
+ # * {Types::GetAgentRuntimeResponse#role_arn #role_arn} => String
1724
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_artifact #agent_runtime_artifact} => Types::AgentArtifact
1725
+ # * {Types::GetAgentRuntimeResponse#network_configuration #network_configuration} => Types::NetworkConfiguration
1726
+ # * {Types::GetAgentRuntimeResponse#protocol_configuration #protocol_configuration} => Types::ProtocolConfiguration
1727
+ # * {Types::GetAgentRuntimeResponse#environment_variables #environment_variables} => Hash&lt;String,String&gt;
1728
+ # * {Types::GetAgentRuntimeResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
1729
+ # * {Types::GetAgentRuntimeResponse#status #status} => String
1730
+ #
1731
+ # @example Request syntax with placeholder values
1732
+ #
1733
+ # resp = client.get_agent_runtime({
1734
+ # agent_runtime_id: "AgentRuntimeId", # required
1735
+ # agent_runtime_version: "AgentRuntimeVersion",
1736
+ # })
1737
+ #
1738
+ # @example Response structure
1739
+ #
1740
+ # resp.agent_runtime_arn #=> String
1741
+ # resp.workload_identity_details.workload_identity_arn #=> String
1742
+ # resp.agent_runtime_name #=> String
1743
+ # resp.description #=> String
1744
+ # resp.agent_runtime_id #=> String
1745
+ # resp.agent_runtime_version #=> String
1746
+ # resp.created_at #=> Time
1747
+ # resp.last_updated_at #=> Time
1748
+ # resp.role_arn #=> String
1749
+ # resp.agent_runtime_artifact.container_configuration.container_uri #=> String
1750
+ # resp.network_configuration.network_mode #=> String, one of "PUBLIC"
1751
+ # resp.protocol_configuration.server_protocol #=> String, one of "MCP", "HTTP"
1752
+ # resp.environment_variables #=> Hash
1753
+ # resp.environment_variables["EnvironmentVariableKey"] #=> String
1754
+ # resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
1755
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
1756
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
1757
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
1758
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
1759
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
1760
+ #
1761
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetAgentRuntime AWS API Documentation
1762
+ #
1763
+ # @overload get_agent_runtime(params = {})
1764
+ # @param [Hash] params ({})
1765
+ def get_agent_runtime(params = {}, options = {})
1766
+ req = build_request(:get_agent_runtime, params)
1767
+ req.send_request(options)
1768
+ end
1769
+
1770
+ # Gets information about an Amazon Secure AgentEndpoint.
1771
+ #
1772
+ # @option params [required, String] :agent_runtime_id
1773
+ # The unique identifier of the agent runtime associated with the
1774
+ # endpoint.
1775
+ #
1776
+ # @option params [required, String] :endpoint_name
1777
+ # The name of the agent runtime endpoint to retrieve.
1778
+ #
1779
+ # @return [Types::GetAgentRuntimeEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1780
+ #
1781
+ # * {Types::GetAgentRuntimeEndpointResponse#live_version #live_version} => String
1782
+ # * {Types::GetAgentRuntimeEndpointResponse#target_version #target_version} => String
1783
+ # * {Types::GetAgentRuntimeEndpointResponse#agent_runtime_endpoint_arn #agent_runtime_endpoint_arn} => String
1784
+ # * {Types::GetAgentRuntimeEndpointResponse#agent_runtime_arn #agent_runtime_arn} => String
1785
+ # * {Types::GetAgentRuntimeEndpointResponse#description #description} => String
1786
+ # * {Types::GetAgentRuntimeEndpointResponse#status #status} => String
1787
+ # * {Types::GetAgentRuntimeEndpointResponse#created_at #created_at} => Time
1788
+ # * {Types::GetAgentRuntimeEndpointResponse#last_updated_at #last_updated_at} => Time
1789
+ # * {Types::GetAgentRuntimeEndpointResponse#failure_reason #failure_reason} => String
1790
+ # * {Types::GetAgentRuntimeEndpointResponse#name #name} => String
1791
+ # * {Types::GetAgentRuntimeEndpointResponse#id #id} => String
1792
+ #
1793
+ # @example Request syntax with placeholder values
1794
+ #
1795
+ # resp = client.get_agent_runtime_endpoint({
1796
+ # agent_runtime_id: "AgentRuntimeId", # required
1797
+ # endpoint_name: "EndpointName", # required
1798
+ # })
1799
+ #
1800
+ # @example Response structure
1801
+ #
1802
+ # resp.live_version #=> String
1803
+ # resp.target_version #=> String
1804
+ # resp.agent_runtime_endpoint_arn #=> String
1805
+ # resp.agent_runtime_arn #=> String
1806
+ # resp.description #=> String
1807
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
1808
+ # resp.created_at #=> Time
1809
+ # resp.last_updated_at #=> Time
1810
+ # resp.failure_reason #=> String
1811
+ # resp.name #=> String
1812
+ # resp.id #=> String
1813
+ #
1814
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetAgentRuntimeEndpoint AWS API Documentation
1815
+ #
1816
+ # @overload get_agent_runtime_endpoint(params = {})
1817
+ # @param [Hash] params ({})
1818
+ def get_agent_runtime_endpoint(params = {}, options = {})
1819
+ req = build_request(:get_agent_runtime_endpoint, params)
1820
+ req.send_request(options)
1821
+ end
1822
+
1823
+ # Retrieves information about an API key credential provider.
1824
+ #
1825
+ # @option params [required, String] :name
1826
+ # The name of the API key credential provider to retrieve.
1827
+ #
1828
+ # @return [Types::GetApiKeyCredentialProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1829
+ #
1830
+ # * {Types::GetApiKeyCredentialProviderResponse#api_key_secret_arn #api_key_secret_arn} => Types::Secret
1831
+ # * {Types::GetApiKeyCredentialProviderResponse#name #name} => String
1832
+ # * {Types::GetApiKeyCredentialProviderResponse#credential_provider_arn #credential_provider_arn} => String
1833
+ # * {Types::GetApiKeyCredentialProviderResponse#created_time #created_time} => Time
1834
+ # * {Types::GetApiKeyCredentialProviderResponse#last_updated_time #last_updated_time} => Time
1835
+ #
1836
+ # @example Request syntax with placeholder values
1837
+ #
1838
+ # resp = client.get_api_key_credential_provider({
1839
+ # name: "CredentialProviderName", # required
1840
+ # })
1841
+ #
1842
+ # @example Response structure
1843
+ #
1844
+ # resp.api_key_secret_arn.secret_arn #=> String
1845
+ # resp.name #=> String
1846
+ # resp.credential_provider_arn #=> String
1847
+ # resp.created_time #=> Time
1848
+ # resp.last_updated_time #=> Time
1849
+ #
1850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetApiKeyCredentialProvider AWS API Documentation
1851
+ #
1852
+ # @overload get_api_key_credential_provider(params = {})
1853
+ # @param [Hash] params ({})
1854
+ def get_api_key_credential_provider(params = {}, options = {})
1855
+ req = build_request(:get_api_key_credential_provider, params)
1856
+ req.send_request(options)
1857
+ end
1858
+
1859
+ # Gets information about a custom browser.
1860
+ #
1861
+ # @option params [required, String] :browser_id
1862
+ # The unique identifier of the browser to retrieve.
1863
+ #
1864
+ # @return [Types::GetBrowserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1865
+ #
1866
+ # * {Types::GetBrowserResponse#browser_id #browser_id} => String
1867
+ # * {Types::GetBrowserResponse#browser_arn #browser_arn} => String
1868
+ # * {Types::GetBrowserResponse#name #name} => String
1869
+ # * {Types::GetBrowserResponse#description #description} => String
1870
+ # * {Types::GetBrowserResponse#execution_role_arn #execution_role_arn} => String
1871
+ # * {Types::GetBrowserResponse#network_configuration #network_configuration} => Types::BrowserNetworkConfiguration
1872
+ # * {Types::GetBrowserResponse#recording #recording} => Types::RecordingConfig
1873
+ # * {Types::GetBrowserResponse#status #status} => String
1874
+ # * {Types::GetBrowserResponse#created_at #created_at} => Time
1875
+ # * {Types::GetBrowserResponse#last_updated_at #last_updated_at} => Time
1876
+ #
1877
+ # @example Request syntax with placeholder values
1878
+ #
1879
+ # resp = client.get_browser({
1880
+ # browser_id: "BrowserId", # required
1881
+ # })
1882
+ #
1883
+ # @example Response structure
1884
+ #
1885
+ # resp.browser_id #=> String
1886
+ # resp.browser_arn #=> String
1887
+ # resp.name #=> String
1888
+ # resp.description #=> String
1889
+ # resp.execution_role_arn #=> String
1890
+ # resp.network_configuration.network_mode #=> String, one of "PUBLIC"
1891
+ # resp.recording.enabled #=> Boolean
1892
+ # resp.recording.s3_location.bucket #=> String
1893
+ # resp.recording.s3_location.prefix #=> String
1894
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
1895
+ # resp.created_at #=> Time
1896
+ # resp.last_updated_at #=> Time
1897
+ #
1898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetBrowser AWS API Documentation
1899
+ #
1900
+ # @overload get_browser(params = {})
1901
+ # @param [Hash] params ({})
1902
+ def get_browser(params = {}, options = {})
1903
+ req = build_request(:get_browser, params)
1904
+ req.send_request(options)
1905
+ end
1906
+
1907
+ # Gets information about a custom code interpreter.
1908
+ #
1909
+ # @option params [required, String] :code_interpreter_id
1910
+ # The unique identifier of the code interpreter to retrieve.
1911
+ #
1912
+ # @return [Types::GetCodeInterpreterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1913
+ #
1914
+ # * {Types::GetCodeInterpreterResponse#code_interpreter_id #code_interpreter_id} => String
1915
+ # * {Types::GetCodeInterpreterResponse#code_interpreter_arn #code_interpreter_arn} => String
1916
+ # * {Types::GetCodeInterpreterResponse#name #name} => String
1917
+ # * {Types::GetCodeInterpreterResponse#description #description} => String
1918
+ # * {Types::GetCodeInterpreterResponse#execution_role_arn #execution_role_arn} => String
1919
+ # * {Types::GetCodeInterpreterResponse#network_configuration #network_configuration} => Types::CodeInterpreterNetworkConfiguration
1920
+ # * {Types::GetCodeInterpreterResponse#status #status} => String
1921
+ # * {Types::GetCodeInterpreterResponse#created_at #created_at} => Time
1922
+ # * {Types::GetCodeInterpreterResponse#last_updated_at #last_updated_at} => Time
1923
+ #
1924
+ # @example Request syntax with placeholder values
1925
+ #
1926
+ # resp = client.get_code_interpreter({
1927
+ # code_interpreter_id: "CodeInterpreterId", # required
1928
+ # })
1929
+ #
1930
+ # @example Response structure
1931
+ #
1932
+ # resp.code_interpreter_id #=> String
1933
+ # resp.code_interpreter_arn #=> String
1934
+ # resp.name #=> String
1935
+ # resp.description #=> String
1936
+ # resp.execution_role_arn #=> String
1937
+ # resp.network_configuration.network_mode #=> String, one of "PUBLIC", "SANDBOX"
1938
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
1939
+ # resp.created_at #=> Time
1940
+ # resp.last_updated_at #=> Time
1941
+ #
1942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetCodeInterpreter AWS API Documentation
1943
+ #
1944
+ # @overload get_code_interpreter(params = {})
1945
+ # @param [Hash] params ({})
1946
+ def get_code_interpreter(params = {}, options = {})
1947
+ req = build_request(:get_code_interpreter, params)
1948
+ req.send_request(options)
1949
+ end
1950
+
1951
+ # Retrieves information about a specific Gateway.
1952
+ #
1953
+ # @option params [required, String] :gateway_identifier
1954
+ # The identifier of the gateway to retrieve. This can be either the
1955
+ # gateway ID or the gateway ARN.
1956
+ #
1957
+ # @return [Types::GetGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1958
+ #
1959
+ # * {Types::GetGatewayResponse#gateway_arn #gateway_arn} => String
1960
+ # * {Types::GetGatewayResponse#gateway_id #gateway_id} => String
1961
+ # * {Types::GetGatewayResponse#gateway_url #gateway_url} => String
1962
+ # * {Types::GetGatewayResponse#created_at #created_at} => Time
1963
+ # * {Types::GetGatewayResponse#updated_at #updated_at} => Time
1964
+ # * {Types::GetGatewayResponse#status #status} => String
1965
+ # * {Types::GetGatewayResponse#status_reasons #status_reasons} => Array&lt;String&gt;
1966
+ # * {Types::GetGatewayResponse#name #name} => String
1967
+ # * {Types::GetGatewayResponse#description #description} => String
1968
+ # * {Types::GetGatewayResponse#role_arn #role_arn} => String
1969
+ # * {Types::GetGatewayResponse#protocol_type #protocol_type} => String
1970
+ # * {Types::GetGatewayResponse#protocol_configuration #protocol_configuration} => Types::GatewayProtocolConfiguration
1971
+ # * {Types::GetGatewayResponse#authorizer_type #authorizer_type} => String
1972
+ # * {Types::GetGatewayResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
1973
+ # * {Types::GetGatewayResponse#kms_key_arn #kms_key_arn} => String
1974
+ # * {Types::GetGatewayResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
1975
+ # * {Types::GetGatewayResponse#exception_level #exception_level} => String
1976
+ #
1977
+ # @example Request syntax with placeholder values
1978
+ #
1979
+ # resp = client.get_gateway({
1980
+ # gateway_identifier: "GatewayIdentifier", # required
1981
+ # })
1982
+ #
1983
+ # @example Response structure
1984
+ #
1985
+ # resp.gateway_arn #=> String
1986
+ # resp.gateway_id #=> String
1987
+ # resp.gateway_url #=> String
1988
+ # resp.created_at #=> Time
1989
+ # resp.updated_at #=> Time
1990
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
1991
+ # resp.status_reasons #=> Array
1992
+ # resp.status_reasons[0] #=> String
1993
+ # resp.name #=> String
1994
+ # resp.description #=> String
1995
+ # resp.role_arn #=> String
1996
+ # resp.protocol_type #=> String, one of "MCP"
1997
+ # resp.protocol_configuration.mcp.supported_versions #=> Array
1998
+ # resp.protocol_configuration.mcp.supported_versions[0] #=> String
1999
+ # resp.protocol_configuration.mcp.instructions #=> String
2000
+ # resp.protocol_configuration.mcp.search_type #=> String, one of "SEMANTIC"
2001
+ # resp.authorizer_type #=> String, one of "CUSTOM_JWT"
2002
+ # resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
2003
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
2004
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
2005
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
2006
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
2007
+ # resp.kms_key_arn #=> String
2008
+ # resp.workload_identity_details.workload_identity_arn #=> String
2009
+ # resp.exception_level #=> String, one of "DEBUG"
2010
+ #
2011
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetGateway AWS API Documentation
2012
+ #
2013
+ # @overload get_gateway(params = {})
2014
+ # @param [Hash] params ({})
2015
+ def get_gateway(params = {}, options = {})
2016
+ req = build_request(:get_gateway, params)
2017
+ req.send_request(options)
2018
+ end
2019
+
2020
+ # Retrieves information about a specific Gateway Target.
2021
+ #
2022
+ # @option params [required, String] :gateway_identifier
2023
+ # The identifier of the gateway that contains the target. This can be
2024
+ # either the gateway ID or the gateway ARN.
2025
+ #
2026
+ # @option params [required, String] :target_id
2027
+ # The unique identifier of the target to retrieve.
2028
+ #
2029
+ # @return [Types::GetGatewayTargetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2030
+ #
2031
+ # * {Types::GetGatewayTargetResponse#gateway_arn #gateway_arn} => String
2032
+ # * {Types::GetGatewayTargetResponse#target_id #target_id} => String
2033
+ # * {Types::GetGatewayTargetResponse#created_at #created_at} => Time
2034
+ # * {Types::GetGatewayTargetResponse#updated_at #updated_at} => Time
2035
+ # * {Types::GetGatewayTargetResponse#status #status} => String
2036
+ # * {Types::GetGatewayTargetResponse#status_reasons #status_reasons} => Array&lt;String&gt;
2037
+ # * {Types::GetGatewayTargetResponse#name #name} => String
2038
+ # * {Types::GetGatewayTargetResponse#description #description} => String
2039
+ # * {Types::GetGatewayTargetResponse#target_configuration #target_configuration} => Types::TargetConfiguration
2040
+ # * {Types::GetGatewayTargetResponse#credential_provider_configurations #credential_provider_configurations} => Array&lt;Types::CredentialProviderConfiguration&gt;
2041
+ #
2042
+ # @example Request syntax with placeholder values
2043
+ #
2044
+ # resp = client.get_gateway_target({
2045
+ # gateway_identifier: "GatewayIdentifier", # required
2046
+ # target_id: "TargetId", # required
2047
+ # })
2048
+ #
2049
+ # @example Response structure
2050
+ #
2051
+ # resp.gateway_arn #=> String
2052
+ # resp.target_id #=> String
2053
+ # resp.created_at #=> Time
2054
+ # resp.updated_at #=> Time
2055
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
2056
+ # resp.status_reasons #=> Array
2057
+ # resp.status_reasons[0] #=> String
2058
+ # resp.name #=> String
2059
+ # resp.description #=> String
2060
+ # resp.target_configuration.mcp.open_api_schema.s3.uri #=> String
2061
+ # resp.target_configuration.mcp.open_api_schema.s3.bucket_owner_account_id #=> String
2062
+ # resp.target_configuration.mcp.open_api_schema.inline_payload #=> String
2063
+ # resp.target_configuration.mcp.smithy_model.s3.uri #=> String
2064
+ # resp.target_configuration.mcp.smithy_model.s3.bucket_owner_account_id #=> String
2065
+ # resp.target_configuration.mcp.smithy_model.inline_payload #=> String
2066
+ # resp.target_configuration.mcp.lambda.lambda_arn #=> String
2067
+ # resp.target_configuration.mcp.lambda.tool_schema.s3.uri #=> String
2068
+ # resp.target_configuration.mcp.lambda.tool_schema.s3.bucket_owner_account_id #=> String
2069
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload #=> Array
2070
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].name #=> String
2071
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].description #=> String
2072
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
2073
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties #=> Hash
2074
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties["String"] #=> Types::SchemaDefinition
2075
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required #=> Array
2076
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required[0] #=> String
2077
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.items #=> Types::SchemaDefinition
2078
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.description #=> String
2079
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
2080
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties #=> Hash
2081
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties["String"] #=> Types::SchemaDefinition
2082
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required #=> Array
2083
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required[0] #=> String
2084
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
2085
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
2086
+ # resp.credential_provider_configurations #=> Array
2087
+ # resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY"
2088
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
2089
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
2090
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
2091
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
2092
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
2093
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
2094
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
2095
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
2096
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_location #=> String, one of "HEADER", "QUERY_PARAMETER"
2097
+ #
2098
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetGatewayTarget AWS API Documentation
2099
+ #
2100
+ # @overload get_gateway_target(params = {})
2101
+ # @param [Hash] params ({})
2102
+ def get_gateway_target(params = {}, options = {})
2103
+ req = build_request(:get_gateway_target, params)
2104
+ req.send_request(options)
2105
+ end
2106
+
2107
+ # Retrieve an existing memory.
2108
+ #
2109
+ # @option params [required, String] :memory_id
2110
+ # The unique identifier of the memory to retrieve.
2111
+ #
2112
+ # @return [Types::GetMemoryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2113
+ #
2114
+ # * {Types::GetMemoryOutput#memory #memory} => Types::Memory
2115
+ #
2116
+ # @example Request syntax with placeholder values
2117
+ #
2118
+ # resp = client.get_memory({
2119
+ # memory_id: "MemoryId", # required
2120
+ # })
2121
+ #
2122
+ # @example Response structure
2123
+ #
2124
+ # resp.memory.arn #=> String
2125
+ # resp.memory.id #=> String
2126
+ # resp.memory.name #=> String
2127
+ # resp.memory.description #=> String
2128
+ # resp.memory.encryption_key_arn #=> String
2129
+ # resp.memory.memory_execution_role_arn #=> String
2130
+ # resp.memory.event_expiry_duration #=> Integer
2131
+ # resp.memory.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
2132
+ # resp.memory.failure_reason #=> String
2133
+ # resp.memory.created_at #=> Time
2134
+ # resp.memory.updated_at #=> Time
2135
+ # resp.memory.strategies #=> Array
2136
+ # resp.memory.strategies[0].strategy_id #=> String
2137
+ # resp.memory.strategies[0].name #=> String
2138
+ # resp.memory.strategies[0].description #=> String
2139
+ # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE"
2140
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
2141
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
2142
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
2143
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
2144
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
2145
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
2146
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
2147
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
2148
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
2149
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
2150
+ # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM"
2151
+ # resp.memory.strategies[0].namespaces #=> Array
2152
+ # resp.memory.strategies[0].namespaces[0] #=> String
2153
+ # resp.memory.strategies[0].created_at #=> Time
2154
+ # resp.memory.strategies[0].updated_at #=> Time
2155
+ # resp.memory.strategies[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
2156
+ #
2157
+ #
2158
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
2159
+ #
2160
+ # * memory_created
2161
+ #
2162
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetMemory AWS API Documentation
2163
+ #
2164
+ # @overload get_memory(params = {})
2165
+ # @param [Hash] params ({})
2166
+ def get_memory(params = {}, options = {})
2167
+ req = build_request(:get_memory, params)
2168
+ req.send_request(options)
2169
+ end
2170
+
2171
+ # Retrieves information about an OAuth2 credential provider.
2172
+ #
2173
+ # @option params [required, String] :name
2174
+ # The name of the OAuth2 credential provider to retrieve.
2175
+ #
2176
+ # @return [Types::GetOauth2CredentialProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2177
+ #
2178
+ # * {Types::GetOauth2CredentialProviderResponse#client_secret_arn #client_secret_arn} => Types::Secret
2179
+ # * {Types::GetOauth2CredentialProviderResponse#name #name} => String
2180
+ # * {Types::GetOauth2CredentialProviderResponse#credential_provider_arn #credential_provider_arn} => String
2181
+ # * {Types::GetOauth2CredentialProviderResponse#credential_provider_vendor #credential_provider_vendor} => String
2182
+ # * {Types::GetOauth2CredentialProviderResponse#oauth2_provider_config_output #oauth2_provider_config_output} => Types::Oauth2ProviderConfigOutput
2183
+ # * {Types::GetOauth2CredentialProviderResponse#created_time #created_time} => Time
2184
+ # * {Types::GetOauth2CredentialProviderResponse#last_updated_time #last_updated_time} => Time
2185
+ #
2186
+ # @example Request syntax with placeholder values
2187
+ #
2188
+ # resp = client.get_oauth_2_credential_provider({
2189
+ # name: "CredentialProviderName", # required
2190
+ # })
2191
+ #
2192
+ # @example Response structure
2193
+ #
2194
+ # resp.client_secret_arn.secret_arn #=> String
2195
+ # resp.name #=> String
2196
+ # resp.credential_provider_arn #=> String
2197
+ # resp.credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2"
2198
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
2199
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
2200
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
2201
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
2202
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
2203
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
2204
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
2205
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
2206
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
2207
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
2208
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
2209
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
2210
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
2211
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
2212
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
2213
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
2214
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
2215
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
2216
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
2217
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
2218
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
2219
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
2220
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
2221
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
2222
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
2223
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
2224
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
2225
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
2226
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
2227
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
2228
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
2229
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
2230
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
2231
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
2232
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
2233
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
2234
+ # resp.created_time #=> Time
2235
+ # resp.last_updated_time #=> Time
2236
+ #
2237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetOauth2CredentialProvider AWS API Documentation
2238
+ #
2239
+ # @overload get_oauth_2_credential_provider(params = {})
2240
+ # @param [Hash] params ({})
2241
+ def get_oauth_2_credential_provider(params = {}, options = {})
2242
+ req = build_request(:get_oauth_2_credential_provider, params)
2243
+ req.send_request(options)
2244
+ end
2245
+
2246
+ # Retrieves information about a token vault.
2247
+ #
2248
+ # @option params [String] :token_vault_id
2249
+ # The unique identifier of the token vault to retrieve.
2250
+ #
2251
+ # @return [Types::GetTokenVaultResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2252
+ #
2253
+ # * {Types::GetTokenVaultResponse#token_vault_id #token_vault_id} => String
2254
+ # * {Types::GetTokenVaultResponse#kms_configuration #kms_configuration} => Types::KmsConfiguration
2255
+ # * {Types::GetTokenVaultResponse#last_modified_date #last_modified_date} => Time
2256
+ #
2257
+ # @example Request syntax with placeholder values
2258
+ #
2259
+ # resp = client.get_token_vault({
2260
+ # token_vault_id: "TokenVaultIdType",
2261
+ # })
2262
+ #
2263
+ # @example Response structure
2264
+ #
2265
+ # resp.token_vault_id #=> String
2266
+ # resp.kms_configuration.key_type #=> String, one of "CustomerManagedKey", "ServiceManagedKey"
2267
+ # resp.kms_configuration.kms_key_arn #=> String
2268
+ # resp.last_modified_date #=> Time
2269
+ #
2270
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetTokenVault AWS API Documentation
2271
+ #
2272
+ # @overload get_token_vault(params = {})
2273
+ # @param [Hash] params ({})
2274
+ def get_token_vault(params = {}, options = {})
2275
+ req = build_request(:get_token_vault, params)
2276
+ req.send_request(options)
2277
+ end
2278
+
2279
+ # Retrieves information about a workload identity.
2280
+ #
2281
+ # @option params [required, String] :name
2282
+ # The name of the workload identity to retrieve.
2283
+ #
2284
+ # @return [Types::GetWorkloadIdentityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2285
+ #
2286
+ # * {Types::GetWorkloadIdentityResponse#name #name} => String
2287
+ # * {Types::GetWorkloadIdentityResponse#workload_identity_arn #workload_identity_arn} => String
2288
+ # * {Types::GetWorkloadIdentityResponse#allowed_resource_oauth_2_return_urls #allowed_resource_oauth_2_return_urls} => Array&lt;String&gt;
2289
+ # * {Types::GetWorkloadIdentityResponse#created_time #created_time} => Time
2290
+ # * {Types::GetWorkloadIdentityResponse#last_updated_time #last_updated_time} => Time
2291
+ #
2292
+ # @example Request syntax with placeholder values
2293
+ #
2294
+ # resp = client.get_workload_identity({
2295
+ # name: "WorkloadIdentityNameType", # required
2296
+ # })
2297
+ #
2298
+ # @example Response structure
2299
+ #
2300
+ # resp.name #=> String
2301
+ # resp.workload_identity_arn #=> String
2302
+ # resp.allowed_resource_oauth_2_return_urls #=> Array
2303
+ # resp.allowed_resource_oauth_2_return_urls[0] #=> String
2304
+ # resp.created_time #=> Time
2305
+ # resp.last_updated_time #=> Time
2306
+ #
2307
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetWorkloadIdentity AWS API Documentation
2308
+ #
2309
+ # @overload get_workload_identity(params = {})
2310
+ # @param [Hash] params ({})
2311
+ def get_workload_identity(params = {}, options = {})
2312
+ req = build_request(:get_workload_identity, params)
2313
+ req.send_request(options)
2314
+ end
2315
+
2316
+ # Lists all endpoints for a specific Amazon Secure Agent.
2317
+ #
2318
+ # @option params [required, String] :agent_runtime_id
2319
+ # The unique identifier of the agent runtime to list endpoints for.
2320
+ #
2321
+ # @option params [Integer] :max_results
2322
+ # The maximum number of results to return in the response.
2323
+ #
2324
+ # @option params [String] :next_token
2325
+ # A token to retrieve the next page of results.
2326
+ #
2327
+ # @return [Types::ListAgentRuntimeEndpointsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2328
+ #
2329
+ # * {Types::ListAgentRuntimeEndpointsResponse#runtime_endpoints #runtime_endpoints} => Array&lt;Types::AgentEndpoint&gt;
2330
+ # * {Types::ListAgentRuntimeEndpointsResponse#next_token #next_token} => String
2331
+ #
2332
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2333
+ #
2334
+ # @example Request syntax with placeholder values
2335
+ #
2336
+ # resp = client.list_agent_runtime_endpoints({
2337
+ # agent_runtime_id: "AgentRuntimeId", # required
2338
+ # max_results: 1,
2339
+ # next_token: "NextToken",
2340
+ # })
2341
+ #
2342
+ # @example Response structure
2343
+ #
2344
+ # resp.runtime_endpoints #=> Array
2345
+ # resp.runtime_endpoints[0].name #=> String
2346
+ # resp.runtime_endpoints[0].live_version #=> String
2347
+ # resp.runtime_endpoints[0].target_version #=> String
2348
+ # resp.runtime_endpoints[0].agent_runtime_endpoint_arn #=> String
2349
+ # resp.runtime_endpoints[0].agent_runtime_arn #=> String
2350
+ # resp.runtime_endpoints[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
2351
+ # resp.runtime_endpoints[0].id #=> String
2352
+ # resp.runtime_endpoints[0].description #=> String
2353
+ # resp.runtime_endpoints[0].created_at #=> Time
2354
+ # resp.runtime_endpoints[0].last_updated_at #=> Time
2355
+ # resp.next_token #=> String
2356
+ #
2357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListAgentRuntimeEndpoints AWS API Documentation
2358
+ #
2359
+ # @overload list_agent_runtime_endpoints(params = {})
2360
+ # @param [Hash] params ({})
2361
+ def list_agent_runtime_endpoints(params = {}, options = {})
2362
+ req = build_request(:list_agent_runtime_endpoints, params)
2363
+ req.send_request(options)
2364
+ end
2365
+
2366
+ # Lists all versions of a specific Amazon Secure Agent.
2367
+ #
2368
+ # @option params [required, String] :agent_runtime_id
2369
+ # The unique identifier of the agent runtime to list versions for.
2370
+ #
2371
+ # @option params [Integer] :max_results
2372
+ # The maximum number of results to return in the response.
2373
+ #
2374
+ # @option params [String] :next_token
2375
+ # A token to retrieve the next page of results.
2376
+ #
2377
+ # @return [Types::ListAgentRuntimeVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2378
+ #
2379
+ # * {Types::ListAgentRuntimeVersionsResponse#agent_runtimes #agent_runtimes} => Array&lt;Types::Agent&gt;
2380
+ # * {Types::ListAgentRuntimeVersionsResponse#next_token #next_token} => String
2381
+ #
2382
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2383
+ #
2384
+ # @example Request syntax with placeholder values
2385
+ #
2386
+ # resp = client.list_agent_runtime_versions({
2387
+ # agent_runtime_id: "AgentRuntimeId", # required
2388
+ # max_results: 1,
2389
+ # next_token: "NextToken",
2390
+ # })
2391
+ #
2392
+ # @example Response structure
2393
+ #
2394
+ # resp.agent_runtimes #=> Array
2395
+ # resp.agent_runtimes[0].agent_runtime_arn #=> String
2396
+ # resp.agent_runtimes[0].agent_runtime_id #=> String
2397
+ # resp.agent_runtimes[0].agent_runtime_version #=> String
2398
+ # resp.agent_runtimes[0].agent_runtime_name #=> String
2399
+ # resp.agent_runtimes[0].description #=> String
2400
+ # resp.agent_runtimes[0].last_updated_at #=> Time
2401
+ # resp.agent_runtimes[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
2402
+ # resp.next_token #=> String
2403
+ #
2404
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListAgentRuntimeVersions AWS API Documentation
2405
+ #
2406
+ # @overload list_agent_runtime_versions(params = {})
2407
+ # @param [Hash] params ({})
2408
+ def list_agent_runtime_versions(params = {}, options = {})
2409
+ req = build_request(:list_agent_runtime_versions, params)
2410
+ req.send_request(options)
2411
+ end
2412
+
2413
+ # Lists all Amazon Secure Agents in your account.
2414
+ #
2415
+ # @option params [Integer] :max_results
2416
+ # The maximum number of results to return in the response.
2417
+ #
2418
+ # @option params [String] :next_token
2419
+ # A token to retrieve the next page of results.
2420
+ #
2421
+ # @return [Types::ListAgentRuntimesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2422
+ #
2423
+ # * {Types::ListAgentRuntimesResponse#agent_runtimes #agent_runtimes} => Array&lt;Types::Agent&gt;
2424
+ # * {Types::ListAgentRuntimesResponse#next_token #next_token} => String
2425
+ #
2426
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2427
+ #
2428
+ # @example Request syntax with placeholder values
2429
+ #
2430
+ # resp = client.list_agent_runtimes({
2431
+ # max_results: 1,
2432
+ # next_token: "NextToken",
2433
+ # })
2434
+ #
2435
+ # @example Response structure
2436
+ #
2437
+ # resp.agent_runtimes #=> Array
2438
+ # resp.agent_runtimes[0].agent_runtime_arn #=> String
2439
+ # resp.agent_runtimes[0].agent_runtime_id #=> String
2440
+ # resp.agent_runtimes[0].agent_runtime_version #=> String
2441
+ # resp.agent_runtimes[0].agent_runtime_name #=> String
2442
+ # resp.agent_runtimes[0].description #=> String
2443
+ # resp.agent_runtimes[0].last_updated_at #=> Time
2444
+ # resp.agent_runtimes[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
2445
+ # resp.next_token #=> String
2446
+ #
2447
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListAgentRuntimes AWS API Documentation
2448
+ #
2449
+ # @overload list_agent_runtimes(params = {})
2450
+ # @param [Hash] params ({})
2451
+ def list_agent_runtimes(params = {}, options = {})
2452
+ req = build_request(:list_agent_runtimes, params)
2453
+ req.send_request(options)
2454
+ end
2455
+
2456
+ # Lists all API key credential providers in your account.
2457
+ #
2458
+ # @option params [String] :next_token
2459
+ # Pagination token.
2460
+ #
2461
+ # @option params [Integer] :max_results
2462
+ # Maximum number of results to return.
2463
+ #
2464
+ # @return [Types::ListApiKeyCredentialProvidersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2465
+ #
2466
+ # * {Types::ListApiKeyCredentialProvidersResponse#credential_providers #credential_providers} => Array&lt;Types::ApiKeyCredentialProviderItem&gt;
2467
+ # * {Types::ListApiKeyCredentialProvidersResponse#next_token #next_token} => String
2468
+ #
2469
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2470
+ #
2471
+ # @example Request syntax with placeholder values
2472
+ #
2473
+ # resp = client.list_api_key_credential_providers({
2474
+ # next_token: "String",
2475
+ # max_results: 1,
2476
+ # })
2477
+ #
2478
+ # @example Response structure
2479
+ #
2480
+ # resp.credential_providers #=> Array
2481
+ # resp.credential_providers[0].name #=> String
2482
+ # resp.credential_providers[0].credential_provider_arn #=> String
2483
+ # resp.credential_providers[0].created_time #=> Time
2484
+ # resp.credential_providers[0].last_updated_time #=> Time
2485
+ # resp.next_token #=> String
2486
+ #
2487
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListApiKeyCredentialProviders AWS API Documentation
2488
+ #
2489
+ # @overload list_api_key_credential_providers(params = {})
2490
+ # @param [Hash] params ({})
2491
+ def list_api_key_credential_providers(params = {}, options = {})
2492
+ req = build_request(:list_api_key_credential_providers, params)
2493
+ req.send_request(options)
2494
+ end
2495
+
2496
+ # Lists all custom browsers in your account.
2497
+ #
2498
+ # @option params [Integer] :max_results
2499
+ # The maximum number of results to return in a single call. The default
2500
+ # value is 10. The maximum value is 50.
2501
+ #
2502
+ # @option params [String] :next_token
2503
+ # The token for the next set of results. Use the value returned in the
2504
+ # previous response in the next request to retrieve the next set of
2505
+ # results.
2506
+ #
2507
+ # @option params [String] :type
2508
+ # The type of browsers to list. If not specified, all browser types are
2509
+ # returned.
2510
+ #
2511
+ # @return [Types::ListBrowsersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2512
+ #
2513
+ # * {Types::ListBrowsersResponse#browser_summaries #browser_summaries} => Array&lt;Types::BrowserSummary&gt;
2514
+ # * {Types::ListBrowsersResponse#next_token #next_token} => String
2515
+ #
2516
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2517
+ #
2518
+ # @example Request syntax with placeholder values
2519
+ #
2520
+ # resp = client.list_browsers({
2521
+ # max_results: 1,
2522
+ # next_token: "NextToken",
2523
+ # type: "SYSTEM", # accepts SYSTEM, CUSTOM
2524
+ # })
2525
+ #
2526
+ # @example Response structure
2527
+ #
2528
+ # resp.browser_summaries #=> Array
2529
+ # resp.browser_summaries[0].browser_id #=> String
2530
+ # resp.browser_summaries[0].browser_arn #=> String
2531
+ # resp.browser_summaries[0].name #=> String
2532
+ # resp.browser_summaries[0].description #=> String
2533
+ # resp.browser_summaries[0].status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
2534
+ # resp.browser_summaries[0].created_at #=> Time
2535
+ # resp.browser_summaries[0].last_updated_at #=> Time
2536
+ # resp.next_token #=> String
2537
+ #
2538
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListBrowsers AWS API Documentation
2539
+ #
2540
+ # @overload list_browsers(params = {})
2541
+ # @param [Hash] params ({})
2542
+ def list_browsers(params = {}, options = {})
2543
+ req = build_request(:list_browsers, params)
2544
+ req.send_request(options)
2545
+ end
2546
+
2547
+ # Lists all custom code interpreters in your account.
2548
+ #
2549
+ # @option params [Integer] :max_results
2550
+ # The maximum number of results to return in the response.
2551
+ #
2552
+ # @option params [String] :next_token
2553
+ # A token to retrieve the next page of results.
2554
+ #
2555
+ # @option params [String] :type
2556
+ # The type of code interpreters to list.
2557
+ #
2558
+ # @return [Types::ListCodeInterpretersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2559
+ #
2560
+ # * {Types::ListCodeInterpretersResponse#code_interpreter_summaries #code_interpreter_summaries} => Array&lt;Types::CodeInterpreterSummary&gt;
2561
+ # * {Types::ListCodeInterpretersResponse#next_token #next_token} => String
2562
+ #
2563
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2564
+ #
2565
+ # @example Request syntax with placeholder values
2566
+ #
2567
+ # resp = client.list_code_interpreters({
2568
+ # max_results: 1,
2569
+ # next_token: "NextToken",
2570
+ # type: "SYSTEM", # accepts SYSTEM, CUSTOM
2571
+ # })
2572
+ #
2573
+ # @example Response structure
2574
+ #
2575
+ # resp.code_interpreter_summaries #=> Array
2576
+ # resp.code_interpreter_summaries[0].code_interpreter_id #=> String
2577
+ # resp.code_interpreter_summaries[0].code_interpreter_arn #=> String
2578
+ # resp.code_interpreter_summaries[0].name #=> String
2579
+ # resp.code_interpreter_summaries[0].description #=> String
2580
+ # resp.code_interpreter_summaries[0].status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
2581
+ # resp.code_interpreter_summaries[0].created_at #=> Time
2582
+ # resp.code_interpreter_summaries[0].last_updated_at #=> Time
2583
+ # resp.next_token #=> String
2584
+ #
2585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListCodeInterpreters AWS API Documentation
2586
+ #
2587
+ # @overload list_code_interpreters(params = {})
2588
+ # @param [Hash] params ({})
2589
+ def list_code_interpreters(params = {}, options = {})
2590
+ req = build_request(:list_code_interpreters, params)
2591
+ req.send_request(options)
2592
+ end
2593
+
2594
+ # Lists all targets for a specific Gateway.
2595
+ #
2596
+ # @option params [required, String] :gateway_identifier
2597
+ # The identifier of the gateway to list targets for. This can be either
2598
+ # the gateway ID or the gateway ARN.
2599
+ #
2600
+ # @option params [Integer] :max_results
2601
+ # The maximum number of results to return in a single call. The default
2602
+ # value is 10. The maximum value is 50.
2603
+ #
2604
+ # @option params [String] :next_token
2605
+ # The token for the next set of results. Use the value returned in the
2606
+ # previous response in the next request to retrieve the next set of
2607
+ # results.
2608
+ #
2609
+ # @return [Types::ListGatewayTargetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2610
+ #
2611
+ # * {Types::ListGatewayTargetsResponse#items #items} => Array&lt;Types::TargetSummary&gt;
2612
+ # * {Types::ListGatewayTargetsResponse#next_token #next_token} => String
2613
+ #
2614
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2615
+ #
2616
+ # @example Request syntax with placeholder values
2617
+ #
2618
+ # resp = client.list_gateway_targets({
2619
+ # gateway_identifier: "GatewayIdentifier", # required
2620
+ # max_results: 1,
2621
+ # next_token: "TargetNextToken",
2622
+ # })
2623
+ #
2624
+ # @example Response structure
2625
+ #
2626
+ # resp.items #=> Array
2627
+ # resp.items[0].target_id #=> String
2628
+ # resp.items[0].name #=> String
2629
+ # resp.items[0].status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
2630
+ # resp.items[0].description #=> String
2631
+ # resp.items[0].created_at #=> Time
2632
+ # resp.items[0].updated_at #=> Time
2633
+ # resp.next_token #=> String
2634
+ #
2635
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListGatewayTargets AWS API Documentation
2636
+ #
2637
+ # @overload list_gateway_targets(params = {})
2638
+ # @param [Hash] params ({})
2639
+ def list_gateway_targets(params = {}, options = {})
2640
+ req = build_request(:list_gateway_targets, params)
2641
+ req.send_request(options)
2642
+ end
2643
+
2644
+ # Lists all Gateways in the account.
2645
+ #
2646
+ # @option params [Integer] :max_results
2647
+ # The maximum number of results to return in a single call. The default
2648
+ # value is 10. The maximum value is 50.
2649
+ #
2650
+ # @option params [String] :next_token
2651
+ # The token for the next set of results. Use the value returned in the
2652
+ # previous response in the next request to retrieve the next set of
2653
+ # results.
2654
+ #
2655
+ # @return [Types::ListGatewaysResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2656
+ #
2657
+ # * {Types::ListGatewaysResponse#items #items} => Array&lt;Types::GatewaySummary&gt;
2658
+ # * {Types::ListGatewaysResponse#next_token #next_token} => String
2659
+ #
2660
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2661
+ #
2662
+ # @example Request syntax with placeholder values
2663
+ #
2664
+ # resp = client.list_gateways({
2665
+ # max_results: 1,
2666
+ # next_token: "GatewayNextToken",
2667
+ # })
2668
+ #
2669
+ # @example Response structure
2670
+ #
2671
+ # resp.items #=> Array
2672
+ # resp.items[0].gateway_id #=> String
2673
+ # resp.items[0].name #=> String
2674
+ # resp.items[0].status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
2675
+ # resp.items[0].description #=> String
2676
+ # resp.items[0].created_at #=> Time
2677
+ # resp.items[0].updated_at #=> Time
2678
+ # resp.items[0].authorizer_type #=> String, one of "CUSTOM_JWT"
2679
+ # resp.items[0].protocol_type #=> String, one of "MCP"
2680
+ # resp.next_token #=> String
2681
+ #
2682
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListGateways AWS API Documentation
2683
+ #
2684
+ # @overload list_gateways(params = {})
2685
+ # @param [Hash] params ({})
2686
+ def list_gateways(params = {}, options = {})
2687
+ req = build_request(:list_gateways, params)
2688
+ req.send_request(options)
2689
+ end
2690
+
2691
+ # Lists the memory present.
2692
+ #
2693
+ # @option params [Integer] :max_results
2694
+ # The maximum number of results to return in a single call. The default
2695
+ # value is 10. The maximum value is 50.
2696
+ #
2697
+ # @option params [String] :next_token
2698
+ # The token for the next set of results. Use the value returned in the
2699
+ # previous response in the next request to retrieve the next set of
2700
+ # results.
2701
+ #
2702
+ # @return [Types::ListMemoriesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2703
+ #
2704
+ # * {Types::ListMemoriesOutput#memories #memories} => Array&lt;Types::MemorySummary&gt;
2705
+ # * {Types::ListMemoriesOutput#next_token #next_token} => String
2706
+ #
2707
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2708
+ #
2709
+ # @example Request syntax with placeholder values
2710
+ #
2711
+ # resp = client.list_memories({
2712
+ # max_results: 1,
2713
+ # next_token: "String",
2714
+ # })
2715
+ #
2716
+ # @example Response structure
2717
+ #
2718
+ # resp.memories #=> Array
2719
+ # resp.memories[0].arn #=> String
2720
+ # resp.memories[0].id #=> String
2721
+ # resp.memories[0].status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
2722
+ # resp.memories[0].created_at #=> Time
2723
+ # resp.memories[0].updated_at #=> Time
2724
+ # resp.next_token #=> String
2725
+ #
2726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListMemories AWS API Documentation
2727
+ #
2728
+ # @overload list_memories(params = {})
2729
+ # @param [Hash] params ({})
2730
+ def list_memories(params = {}, options = {})
2731
+ req = build_request(:list_memories, params)
2732
+ req.send_request(options)
2733
+ end
2734
+
2735
+ # Lists all OAuth2 credential providers in your account.
2736
+ #
2737
+ # @option params [String] :next_token
2738
+ # Pagination token.
2739
+ #
2740
+ # @option params [Integer] :max_results
2741
+ # Maximum number of results to return.
2742
+ #
2743
+ # @return [Types::ListOauth2CredentialProvidersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2744
+ #
2745
+ # * {Types::ListOauth2CredentialProvidersResponse#credential_providers #credential_providers} => Array&lt;Types::Oauth2CredentialProviderItem&gt;
2746
+ # * {Types::ListOauth2CredentialProvidersResponse#next_token #next_token} => String
2747
+ #
2748
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2749
+ #
2750
+ # @example Request syntax with placeholder values
2751
+ #
2752
+ # resp = client.list_oauth_2_credential_providers({
2753
+ # next_token: "String",
2754
+ # max_results: 1,
2755
+ # })
2756
+ #
2757
+ # @example Response structure
2758
+ #
2759
+ # resp.credential_providers #=> Array
2760
+ # resp.credential_providers[0].name #=> String
2761
+ # resp.credential_providers[0].credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2"
2762
+ # resp.credential_providers[0].credential_provider_arn #=> String
2763
+ # resp.credential_providers[0].created_time #=> Time
2764
+ # resp.credential_providers[0].last_updated_time #=> Time
2765
+ # resp.next_token #=> String
2766
+ #
2767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListOauth2CredentialProviders AWS API Documentation
2768
+ #
2769
+ # @overload list_oauth_2_credential_providers(params = {})
2770
+ # @param [Hash] params ({})
2771
+ def list_oauth_2_credential_providers(params = {}, options = {})
2772
+ req = build_request(:list_oauth_2_credential_providers, params)
2773
+ req.send_request(options)
2774
+ end
2775
+
2776
+ # Lists all workload identities in your account.
2777
+ #
2778
+ # @option params [String] :next_token
2779
+ # Pagination token.
2780
+ #
2781
+ # @option params [Integer] :max_results
2782
+ # Maximum number of results to return.
2783
+ #
2784
+ # @return [Types::ListWorkloadIdentitiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2785
+ #
2786
+ # * {Types::ListWorkloadIdentitiesResponse#workload_identities #workload_identities} => Array&lt;Types::WorkloadIdentityType&gt;
2787
+ # * {Types::ListWorkloadIdentitiesResponse#next_token #next_token} => String
2788
+ #
2789
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2790
+ #
2791
+ # @example Request syntax with placeholder values
2792
+ #
2793
+ # resp = client.list_workload_identities({
2794
+ # next_token: "String",
2795
+ # max_results: 1,
2796
+ # })
2797
+ #
2798
+ # @example Response structure
2799
+ #
2800
+ # resp.workload_identities #=> Array
2801
+ # resp.workload_identities[0].name #=> String
2802
+ # resp.workload_identities[0].workload_identity_arn #=> String
2803
+ # resp.next_token #=> String
2804
+ #
2805
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListWorkloadIdentities AWS API Documentation
2806
+ #
2807
+ # @overload list_workload_identities(params = {})
2808
+ # @param [Hash] params ({})
2809
+ def list_workload_identities(params = {}, options = {})
2810
+ req = build_request(:list_workload_identities, params)
2811
+ req.send_request(options)
2812
+ end
2813
+
2814
+ # Sets the customer master key (CMK) for a token vault.
2815
+ #
2816
+ # @option params [String] :token_vault_id
2817
+ # The unique identifier of the token vault to update.
2818
+ #
2819
+ # @option params [required, Types::KmsConfiguration] :kms_configuration
2820
+ # The KMS configuration for the token vault, including the key type and
2821
+ # KMS key ARN.
2822
+ #
2823
+ # @return [Types::SetTokenVaultCMKResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2824
+ #
2825
+ # * {Types::SetTokenVaultCMKResponse#token_vault_id #token_vault_id} => String
2826
+ # * {Types::SetTokenVaultCMKResponse#kms_configuration #kms_configuration} => Types::KmsConfiguration
2827
+ # * {Types::SetTokenVaultCMKResponse#last_modified_date #last_modified_date} => Time
2828
+ #
2829
+ # @example Request syntax with placeholder values
2830
+ #
2831
+ # resp = client.set_token_vault_cmk({
2832
+ # token_vault_id: "TokenVaultIdType",
2833
+ # kms_configuration: { # required
2834
+ # key_type: "CustomerManagedKey", # required, accepts CustomerManagedKey, ServiceManagedKey
2835
+ # kms_key_arn: "KmsKeyArn",
2836
+ # },
2837
+ # })
2838
+ #
2839
+ # @example Response structure
2840
+ #
2841
+ # resp.token_vault_id #=> String
2842
+ # resp.kms_configuration.key_type #=> String, one of "CustomerManagedKey", "ServiceManagedKey"
2843
+ # resp.kms_configuration.kms_key_arn #=> String
2844
+ # resp.last_modified_date #=> Time
2845
+ #
2846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/SetTokenVaultCMK AWS API Documentation
2847
+ #
2848
+ # @overload set_token_vault_cmk(params = {})
2849
+ # @param [Hash] params ({})
2850
+ def set_token_vault_cmk(params = {}, options = {})
2851
+ req = build_request(:set_token_vault_cmk, params)
2852
+ req.send_request(options)
2853
+ end
2854
+
2855
+ # Updates an existing Amazon Secure Agent.
2856
+ #
2857
+ # @option params [required, String] :agent_runtime_id
2858
+ # The unique identifier of the agent runtime to update.
2859
+ #
2860
+ # @option params [String] :description
2861
+ # The updated description of the agent runtime.
2862
+ #
2863
+ # @option params [required, Types::AgentArtifact] :agent_runtime_artifact
2864
+ # The updated artifact of the agent runtime.
2865
+ #
2866
+ # @option params [required, String] :role_arn
2867
+ # The updated IAM role ARN that provides permissions for the agent
2868
+ # runtime.
2869
+ #
2870
+ # @option params [required, Types::NetworkConfiguration] :network_configuration
2871
+ # The updated network configuration for the agent runtime.
2872
+ #
2873
+ # @option params [Types::ProtocolConfiguration] :protocol_configuration
2874
+ # The protocol configuration for an agent runtime. This structure
2875
+ # defines how the agent runtime communicates with clients.
2876
+ #
2877
+ # @option params [String] :client_token
2878
+ # A unique, case-sensitive identifier to ensure idempotency of the
2879
+ # request.
2880
+ #
2881
+ # **A suitable default value is auto-generated.** You should normally
2882
+ # not need to pass this option.**
2883
+ #
2884
+ # @option params [Hash<String,String>] :environment_variables
2885
+ # Updated environment variables to set in the agent runtime environment.
2886
+ #
2887
+ # @option params [Types::AuthorizerConfiguration] :authorizer_configuration
2888
+ # The updated authorizer configuration for the agent runtime.
2889
+ #
2890
+ # @return [Types::UpdateAgentRuntimeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2891
+ #
2892
+ # * {Types::UpdateAgentRuntimeResponse#agent_runtime_arn #agent_runtime_arn} => String
2893
+ # * {Types::UpdateAgentRuntimeResponse#agent_runtime_id #agent_runtime_id} => String
2894
+ # * {Types::UpdateAgentRuntimeResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
2895
+ # * {Types::UpdateAgentRuntimeResponse#agent_runtime_version #agent_runtime_version} => String
2896
+ # * {Types::UpdateAgentRuntimeResponse#created_at #created_at} => Time
2897
+ # * {Types::UpdateAgentRuntimeResponse#last_updated_at #last_updated_at} => Time
2898
+ # * {Types::UpdateAgentRuntimeResponse#status #status} => String
2899
+ #
2900
+ # @example Request syntax with placeholder values
2901
+ #
2902
+ # resp = client.update_agent_runtime({
2903
+ # agent_runtime_id: "AgentRuntimeId", # required
2904
+ # description: "Description",
2905
+ # agent_runtime_artifact: { # required
2906
+ # container_configuration: {
2907
+ # container_uri: "RuntimeContainerUri", # required
2908
+ # },
2909
+ # },
2910
+ # role_arn: "RoleArn", # required
2911
+ # network_configuration: { # required
2912
+ # network_mode: "PUBLIC", # required, accepts PUBLIC
2913
+ # },
2914
+ # protocol_configuration: {
2915
+ # server_protocol: "MCP", # required, accepts MCP, HTTP
2916
+ # },
2917
+ # client_token: "ClientToken",
2918
+ # environment_variables: {
2919
+ # "EnvironmentVariableKey" => "EnvironmentVariableValue",
2920
+ # },
2921
+ # authorizer_configuration: {
2922
+ # custom_jwt_authorizer: {
2923
+ # discovery_url: "DiscoveryUrl", # required
2924
+ # allowed_audience: ["AllowedAudience"],
2925
+ # allowed_clients: ["AllowedClient"],
2926
+ # },
2927
+ # },
2928
+ # })
2929
+ #
2930
+ # @example Response structure
2931
+ #
2932
+ # resp.agent_runtime_arn #=> String
2933
+ # resp.agent_runtime_id #=> String
2934
+ # resp.workload_identity_details.workload_identity_arn #=> String
2935
+ # resp.agent_runtime_version #=> String
2936
+ # resp.created_at #=> Time
2937
+ # resp.last_updated_at #=> Time
2938
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
2939
+ #
2940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateAgentRuntime AWS API Documentation
2941
+ #
2942
+ # @overload update_agent_runtime(params = {})
2943
+ # @param [Hash] params ({})
2944
+ def update_agent_runtime(params = {}, options = {})
2945
+ req = build_request(:update_agent_runtime, params)
2946
+ req.send_request(options)
2947
+ end
2948
+
2949
+ # Updates an existing Amazon Secure AgentEndpoint.
2950
+ #
2951
+ # @option params [required, String] :agent_runtime_id
2952
+ # The unique identifier of the agent runtime associated with the
2953
+ # endpoint.
2954
+ #
2955
+ # @option params [required, String] :endpoint_name
2956
+ # The name of the agent runtime endpoint to update.
2957
+ #
2958
+ # @option params [String] :agent_runtime_version
2959
+ # The updated version of the agent runtime for the endpoint.
2960
+ #
2961
+ # @option params [String] :description
2962
+ # The updated description of the agent runtime endpoint.
2963
+ #
2964
+ # @option params [String] :client_token
2965
+ # A unique, case-sensitive identifier to ensure idempotency of the
2966
+ # request.
2967
+ #
2968
+ # **A suitable default value is auto-generated.** You should normally
2969
+ # not need to pass this option.**
2970
+ #
2971
+ # @return [Types::UpdateAgentRuntimeEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2972
+ #
2973
+ # * {Types::UpdateAgentRuntimeEndpointResponse#live_version #live_version} => String
2974
+ # * {Types::UpdateAgentRuntimeEndpointResponse#target_version #target_version} => String
2975
+ # * {Types::UpdateAgentRuntimeEndpointResponse#agent_runtime_endpoint_arn #agent_runtime_endpoint_arn} => String
2976
+ # * {Types::UpdateAgentRuntimeEndpointResponse#agent_runtime_arn #agent_runtime_arn} => String
2977
+ # * {Types::UpdateAgentRuntimeEndpointResponse#status #status} => String
2978
+ # * {Types::UpdateAgentRuntimeEndpointResponse#created_at #created_at} => Time
2979
+ # * {Types::UpdateAgentRuntimeEndpointResponse#last_updated_at #last_updated_at} => Time
2980
+ #
2981
+ # @example Request syntax with placeholder values
2982
+ #
2983
+ # resp = client.update_agent_runtime_endpoint({
2984
+ # agent_runtime_id: "AgentRuntimeId", # required
2985
+ # endpoint_name: "EndpointName", # required
2986
+ # agent_runtime_version: "AgentRuntimeVersion",
2987
+ # description: "AgentEndpointDescription",
2988
+ # client_token: "ClientToken",
2989
+ # })
2990
+ #
2991
+ # @example Response structure
2992
+ #
2993
+ # resp.live_version #=> String
2994
+ # resp.target_version #=> String
2995
+ # resp.agent_runtime_endpoint_arn #=> String
2996
+ # resp.agent_runtime_arn #=> String
2997
+ # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
2998
+ # resp.created_at #=> Time
2999
+ # resp.last_updated_at #=> Time
3000
+ #
3001
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateAgentRuntimeEndpoint AWS API Documentation
3002
+ #
3003
+ # @overload update_agent_runtime_endpoint(params = {})
3004
+ # @param [Hash] params ({})
3005
+ def update_agent_runtime_endpoint(params = {}, options = {})
3006
+ req = build_request(:update_agent_runtime_endpoint, params)
3007
+ req.send_request(options)
3008
+ end
3009
+
3010
+ # Updates an existing API key credential provider.
3011
+ #
3012
+ # @option params [required, String] :name
3013
+ # The name of the API key credential provider to update.
3014
+ #
3015
+ # @option params [required, String] :api_key
3016
+ # The new API key to use for authentication. This value replaces the
3017
+ # existing API key and is encrypted and stored securely.
3018
+ #
3019
+ # @return [Types::UpdateApiKeyCredentialProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3020
+ #
3021
+ # * {Types::UpdateApiKeyCredentialProviderResponse#api_key_secret_arn #api_key_secret_arn} => Types::Secret
3022
+ # * {Types::UpdateApiKeyCredentialProviderResponse#name #name} => String
3023
+ # * {Types::UpdateApiKeyCredentialProviderResponse#credential_provider_arn #credential_provider_arn} => String
3024
+ # * {Types::UpdateApiKeyCredentialProviderResponse#created_time #created_time} => Time
3025
+ # * {Types::UpdateApiKeyCredentialProviderResponse#last_updated_time #last_updated_time} => Time
3026
+ #
3027
+ # @example Request syntax with placeholder values
3028
+ #
3029
+ # resp = client.update_api_key_credential_provider({
3030
+ # name: "CredentialProviderName", # required
3031
+ # api_key: "ApiKeyType", # required
3032
+ # })
3033
+ #
3034
+ # @example Response structure
3035
+ #
3036
+ # resp.api_key_secret_arn.secret_arn #=> String
3037
+ # resp.name #=> String
3038
+ # resp.credential_provider_arn #=> String
3039
+ # resp.created_time #=> Time
3040
+ # resp.last_updated_time #=> Time
3041
+ #
3042
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateApiKeyCredentialProvider AWS API Documentation
3043
+ #
3044
+ # @overload update_api_key_credential_provider(params = {})
3045
+ # @param [Hash] params ({})
3046
+ def update_api_key_credential_provider(params = {}, options = {})
3047
+ req = build_request(:update_api_key_credential_provider, params)
3048
+ req.send_request(options)
3049
+ end
3050
+
3051
+ # Updates an existing Gateway.
3052
+ #
3053
+ # @option params [required, String] :gateway_identifier
3054
+ # The identifier of the gateway to update. This can be either the
3055
+ # gateway ID or the gateway ARN.
3056
+ #
3057
+ # @option params [required, String] :name
3058
+ # The updated name for the Gateway.
3059
+ #
3060
+ # @option params [String] :description
3061
+ # The updated description for the Gateway.
3062
+ #
3063
+ # @option params [required, String] :role_arn
3064
+ # The updated IAM role ARN that provides permissions for the Gateway.
3065
+ #
3066
+ # @option params [required, String] :protocol_type
3067
+ # The updated protocol type for the Gateway.
3068
+ #
3069
+ # @option params [Types::GatewayProtocolConfiguration] :protocol_configuration
3070
+ # The configuration for a gateway protocol. This structure defines how
3071
+ # the gateway communicates with external services.
3072
+ #
3073
+ # @option params [required, String] :authorizer_type
3074
+ # The updated authorizer type for the Gateway.
3075
+ #
3076
+ # @option params [required, Types::AuthorizerConfiguration] :authorizer_configuration
3077
+ # The updated authorizer configuration for the Gateway.
3078
+ #
3079
+ # @option params [String] :kms_key_arn
3080
+ # The updated ARN of the KMS key used to encrypt the Gateway.
3081
+ #
3082
+ # @option params [String] :exception_level
3083
+ # The verbosity of exception messages. Use DEBUG mode to see granular
3084
+ # exception messages from a Gateway. If this parameter is not set,
3085
+ # exception messages are by default sanitized for presentation to end
3086
+ # users.
3087
+ #
3088
+ # @return [Types::UpdateGatewayResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3089
+ #
3090
+ # * {Types::UpdateGatewayResponse#gateway_arn #gateway_arn} => String
3091
+ # * {Types::UpdateGatewayResponse#gateway_id #gateway_id} => String
3092
+ # * {Types::UpdateGatewayResponse#gateway_url #gateway_url} => String
3093
+ # * {Types::UpdateGatewayResponse#created_at #created_at} => Time
3094
+ # * {Types::UpdateGatewayResponse#updated_at #updated_at} => Time
3095
+ # * {Types::UpdateGatewayResponse#status #status} => String
3096
+ # * {Types::UpdateGatewayResponse#status_reasons #status_reasons} => Array&lt;String&gt;
3097
+ # * {Types::UpdateGatewayResponse#name #name} => String
3098
+ # * {Types::UpdateGatewayResponse#description #description} => String
3099
+ # * {Types::UpdateGatewayResponse#role_arn #role_arn} => String
3100
+ # * {Types::UpdateGatewayResponse#protocol_type #protocol_type} => String
3101
+ # * {Types::UpdateGatewayResponse#protocol_configuration #protocol_configuration} => Types::GatewayProtocolConfiguration
3102
+ # * {Types::UpdateGatewayResponse#authorizer_type #authorizer_type} => String
3103
+ # * {Types::UpdateGatewayResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
3104
+ # * {Types::UpdateGatewayResponse#kms_key_arn #kms_key_arn} => String
3105
+ # * {Types::UpdateGatewayResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
3106
+ # * {Types::UpdateGatewayResponse#exception_level #exception_level} => String
3107
+ #
3108
+ # @example Request syntax with placeholder values
3109
+ #
3110
+ # resp = client.update_gateway({
3111
+ # gateway_identifier: "GatewayIdentifier", # required
3112
+ # name: "GatewayName", # required
3113
+ # description: "GatewayDescription",
3114
+ # role_arn: "RoleArn", # required
3115
+ # protocol_type: "MCP", # required, accepts MCP
3116
+ # protocol_configuration: {
3117
+ # mcp: {
3118
+ # supported_versions: ["McpVersion"],
3119
+ # instructions: "McpInstructions",
3120
+ # search_type: "SEMANTIC", # accepts SEMANTIC
3121
+ # },
3122
+ # },
3123
+ # authorizer_type: "CUSTOM_JWT", # required, accepts CUSTOM_JWT
3124
+ # authorizer_configuration: { # required
3125
+ # custom_jwt_authorizer: {
3126
+ # discovery_url: "DiscoveryUrl", # required
3127
+ # allowed_audience: ["AllowedAudience"],
3128
+ # allowed_clients: ["AllowedClient"],
3129
+ # },
3130
+ # },
3131
+ # kms_key_arn: "KmsKeyArn",
3132
+ # exception_level: "DEBUG", # accepts DEBUG
3133
+ # })
3134
+ #
3135
+ # @example Response structure
3136
+ #
3137
+ # resp.gateway_arn #=> String
3138
+ # resp.gateway_id #=> String
3139
+ # resp.gateway_url #=> String
3140
+ # resp.created_at #=> Time
3141
+ # resp.updated_at #=> Time
3142
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
3143
+ # resp.status_reasons #=> Array
3144
+ # resp.status_reasons[0] #=> String
3145
+ # resp.name #=> String
3146
+ # resp.description #=> String
3147
+ # resp.role_arn #=> String
3148
+ # resp.protocol_type #=> String, one of "MCP"
3149
+ # resp.protocol_configuration.mcp.supported_versions #=> Array
3150
+ # resp.protocol_configuration.mcp.supported_versions[0] #=> String
3151
+ # resp.protocol_configuration.mcp.instructions #=> String
3152
+ # resp.protocol_configuration.mcp.search_type #=> String, one of "SEMANTIC"
3153
+ # resp.authorizer_type #=> String, one of "CUSTOM_JWT"
3154
+ # resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
3155
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
3156
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
3157
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
3158
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
3159
+ # resp.kms_key_arn #=> String
3160
+ # resp.workload_identity_details.workload_identity_arn #=> String
3161
+ # resp.exception_level #=> String, one of "DEBUG"
3162
+ #
3163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateGateway AWS API Documentation
3164
+ #
3165
+ # @overload update_gateway(params = {})
3166
+ # @param [Hash] params ({})
3167
+ def update_gateway(params = {}, options = {})
3168
+ req = build_request(:update_gateway, params)
3169
+ req.send_request(options)
3170
+ end
3171
+
3172
+ # Updates an existing Gateway Target.
3173
+ #
3174
+ # @option params [required, String] :gateway_identifier
3175
+ # The unique identifier of the Gateway associated with the target.
3176
+ #
3177
+ # @option params [required, String] :target_id
3178
+ # The unique identifier of the Gateway Target to update.
3179
+ #
3180
+ # @option params [required, String] :name
3181
+ # The updated name for the Gateway Target.
3182
+ #
3183
+ # @option params [String] :description
3184
+ # The updated description for the Gateway Target.
3185
+ #
3186
+ # @option params [required, Types::TargetConfiguration] :target_configuration
3187
+ # The configuration for a gateway target. This structure defines how the
3188
+ # gateway connects to and interacts with the target endpoint.
3189
+ #
3190
+ # @option params [required, Array<Types::CredentialProviderConfiguration>] :credential_provider_configurations
3191
+ # The updated credential provider configurations for the Gateway Target.
3192
+ #
3193
+ # @return [Types::UpdateGatewayTargetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3194
+ #
3195
+ # * {Types::UpdateGatewayTargetResponse#gateway_arn #gateway_arn} => String
3196
+ # * {Types::UpdateGatewayTargetResponse#target_id #target_id} => String
3197
+ # * {Types::UpdateGatewayTargetResponse#created_at #created_at} => Time
3198
+ # * {Types::UpdateGatewayTargetResponse#updated_at #updated_at} => Time
3199
+ # * {Types::UpdateGatewayTargetResponse#status #status} => String
3200
+ # * {Types::UpdateGatewayTargetResponse#status_reasons #status_reasons} => Array&lt;String&gt;
3201
+ # * {Types::UpdateGatewayTargetResponse#name #name} => String
3202
+ # * {Types::UpdateGatewayTargetResponse#description #description} => String
3203
+ # * {Types::UpdateGatewayTargetResponse#target_configuration #target_configuration} => Types::TargetConfiguration
3204
+ # * {Types::UpdateGatewayTargetResponse#credential_provider_configurations #credential_provider_configurations} => Array&lt;Types::CredentialProviderConfiguration&gt;
3205
+ #
3206
+ # @example Request syntax with placeholder values
3207
+ #
3208
+ # resp = client.update_gateway_target({
3209
+ # gateway_identifier: "GatewayIdentifier", # required
3210
+ # target_id: "TargetId", # required
3211
+ # name: "TargetName", # required
3212
+ # description: "TargetDescription",
3213
+ # target_configuration: { # required
3214
+ # mcp: {
3215
+ # open_api_schema: {
3216
+ # s3: {
3217
+ # uri: "S3BucketUri",
3218
+ # bucket_owner_account_id: "AwsAccountId",
3219
+ # },
3220
+ # inline_payload: "InlinePayload",
3221
+ # },
3222
+ # smithy_model: {
3223
+ # s3: {
3224
+ # uri: "S3BucketUri",
3225
+ # bucket_owner_account_id: "AwsAccountId",
3226
+ # },
3227
+ # inline_payload: "InlinePayload",
3228
+ # },
3229
+ # lambda: {
3230
+ # lambda_arn: "LambdaFunctionArn", # required
3231
+ # tool_schema: { # required
3232
+ # s3: {
3233
+ # uri: "S3BucketUri",
3234
+ # bucket_owner_account_id: "AwsAccountId",
3235
+ # },
3236
+ # inline_payload: [
3237
+ # {
3238
+ # name: "String", # required
3239
+ # description: "String", # required
3240
+ # input_schema: { # required
3241
+ # type: "string", # required, accepts string, number, object, array, boolean, integer
3242
+ # properties: {
3243
+ # "String" => {
3244
+ # # recursive SchemaDefinition
3245
+ # },
3246
+ # },
3247
+ # required: ["String"],
3248
+ # items: {
3249
+ # # recursive SchemaDefinition
3250
+ # },
3251
+ # description: "String",
3252
+ # },
3253
+ # output_schema: {
3254
+ # type: "string", # required, accepts string, number, object, array, boolean, integer
3255
+ # properties: {
3256
+ # "String" => {
3257
+ # # recursive SchemaDefinition
3258
+ # },
3259
+ # },
3260
+ # required: ["String"],
3261
+ # items: {
3262
+ # # recursive SchemaDefinition
3263
+ # },
3264
+ # description: "String",
3265
+ # },
3266
+ # },
3267
+ # ],
3268
+ # },
3269
+ # },
3270
+ # },
3271
+ # },
3272
+ # credential_provider_configurations: [ # required
3273
+ # {
3274
+ # credential_provider_type: "GATEWAY_IAM_ROLE", # required, accepts GATEWAY_IAM_ROLE, OAUTH, API_KEY
3275
+ # credential_provider: {
3276
+ # oauth_credential_provider: {
3277
+ # provider_arn: "OAuthCredentialProviderArn", # required
3278
+ # scopes: ["OAuthScope"], # required
3279
+ # custom_parameters: {
3280
+ # "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
3281
+ # },
3282
+ # },
3283
+ # api_key_credential_provider: {
3284
+ # provider_arn: "ApiKeyCredentialProviderArn", # required
3285
+ # credential_parameter_name: "ApiKeyCredentialParameterName",
3286
+ # credential_prefix: "ApiKeyCredentialPrefix",
3287
+ # credential_location: "HEADER", # accepts HEADER, QUERY_PARAMETER
3288
+ # },
3289
+ # },
3290
+ # },
3291
+ # ],
3292
+ # })
3293
+ #
3294
+ # @example Response structure
3295
+ #
3296
+ # resp.gateway_arn #=> String
3297
+ # resp.target_id #=> String
3298
+ # resp.created_at #=> Time
3299
+ # resp.updated_at #=> Time
3300
+ # resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
3301
+ # resp.status_reasons #=> Array
3302
+ # resp.status_reasons[0] #=> String
3303
+ # resp.name #=> String
3304
+ # resp.description #=> String
3305
+ # resp.target_configuration.mcp.open_api_schema.s3.uri #=> String
3306
+ # resp.target_configuration.mcp.open_api_schema.s3.bucket_owner_account_id #=> String
3307
+ # resp.target_configuration.mcp.open_api_schema.inline_payload #=> String
3308
+ # resp.target_configuration.mcp.smithy_model.s3.uri #=> String
3309
+ # resp.target_configuration.mcp.smithy_model.s3.bucket_owner_account_id #=> String
3310
+ # resp.target_configuration.mcp.smithy_model.inline_payload #=> String
3311
+ # resp.target_configuration.mcp.lambda.lambda_arn #=> String
3312
+ # resp.target_configuration.mcp.lambda.tool_schema.s3.uri #=> String
3313
+ # resp.target_configuration.mcp.lambda.tool_schema.s3.bucket_owner_account_id #=> String
3314
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload #=> Array
3315
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].name #=> String
3316
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].description #=> String
3317
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
3318
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties #=> Hash
3319
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties["String"] #=> Types::SchemaDefinition
3320
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required #=> Array
3321
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required[0] #=> String
3322
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.items #=> Types::SchemaDefinition
3323
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.description #=> String
3324
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
3325
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties #=> Hash
3326
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties["String"] #=> Types::SchemaDefinition
3327
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required #=> Array
3328
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required[0] #=> String
3329
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
3330
+ # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
3331
+ # resp.credential_provider_configurations #=> Array
3332
+ # resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY"
3333
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
3334
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
3335
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
3336
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
3337
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
3338
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
3339
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
3340
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
3341
+ # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_location #=> String, one of "HEADER", "QUERY_PARAMETER"
3342
+ #
3343
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateGatewayTarget AWS API Documentation
3344
+ #
3345
+ # @overload update_gateway_target(params = {})
3346
+ # @param [Hash] params ({})
3347
+ def update_gateway_target(params = {}, options = {})
3348
+ req = build_request(:update_gateway_target, params)
3349
+ req.send_request(options)
3350
+ end
3351
+
3352
+ # Update memory.
3353
+ #
3354
+ # @option params [String] :client_token
3355
+ # A client token is used for keeping track of idempotent requests. It
3356
+ # can contain a session id which can be around 250 chars, combined with
3357
+ # a unique AWS identifier.
3358
+ #
3359
+ # **A suitable default value is auto-generated.** You should normally
3360
+ # not need to pass this option.**
3361
+ #
3362
+ # @option params [required, String] :memory_id
3363
+ # The unique identifier of the memory to update.
3364
+ #
3365
+ # @option params [String] :description
3366
+ # The updated description of the memory.
3367
+ #
3368
+ # @option params [Integer] :event_expiry_duration
3369
+ # The number of days after which memory events will expire, between 7
3370
+ # and 365 days.
3371
+ #
3372
+ # @option params [String] :memory_execution_role_arn
3373
+ # The ARN of the IAM role that provides permissions for the memory.
3374
+ #
3375
+ # @option params [Types::ModifyMemoryStrategies] :memory_strategies
3376
+ # The memory strategies to add, modify, or delete.
3377
+ #
3378
+ # @return [Types::UpdateMemoryOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3379
+ #
3380
+ # * {Types::UpdateMemoryOutput#memory #memory} => Types::Memory
3381
+ #
3382
+ # @example Request syntax with placeholder values
3383
+ #
3384
+ # resp = client.update_memory({
3385
+ # client_token: "UpdateMemoryInputClientTokenString",
3386
+ # memory_id: "MemoryId", # required
3387
+ # description: "Description",
3388
+ # event_expiry_duration: 1,
3389
+ # memory_execution_role_arn: "Arn",
3390
+ # memory_strategies: {
3391
+ # add_memory_strategies: [
3392
+ # {
3393
+ # semantic_memory_strategy: {
3394
+ # name: "Name", # required
3395
+ # description: "Description",
3396
+ # namespaces: ["Namespace"],
3397
+ # },
3398
+ # summary_memory_strategy: {
3399
+ # name: "Name", # required
3400
+ # description: "Description",
3401
+ # namespaces: ["Namespace"],
3402
+ # },
3403
+ # user_preference_memory_strategy: {
3404
+ # name: "Name", # required
3405
+ # description: "Description",
3406
+ # namespaces: ["Namespace"],
3407
+ # },
3408
+ # custom_memory_strategy: {
3409
+ # name: "Name", # required
3410
+ # description: "Description",
3411
+ # namespaces: ["Namespace"],
3412
+ # configuration: {
3413
+ # semantic_override: {
3414
+ # extraction: {
3415
+ # append_to_prompt: "Prompt", # required
3416
+ # model_id: "String", # required
3417
+ # },
3418
+ # consolidation: {
3419
+ # append_to_prompt: "Prompt", # required
3420
+ # model_id: "String", # required
3421
+ # },
3422
+ # },
3423
+ # summary_override: {
3424
+ # consolidation: {
3425
+ # append_to_prompt: "Prompt", # required
3426
+ # model_id: "String", # required
3427
+ # },
3428
+ # },
3429
+ # user_preference_override: {
3430
+ # extraction: {
3431
+ # append_to_prompt: "Prompt", # required
3432
+ # model_id: "String", # required
3433
+ # },
3434
+ # consolidation: {
3435
+ # append_to_prompt: "Prompt", # required
3436
+ # model_id: "String", # required
3437
+ # },
3438
+ # },
3439
+ # },
3440
+ # },
3441
+ # },
3442
+ # ],
3443
+ # modify_memory_strategies: [
3444
+ # {
3445
+ # memory_strategy_id: "String", # required
3446
+ # description: "Description",
3447
+ # namespaces: ["Namespace"],
3448
+ # configuration: {
3449
+ # extraction: {
3450
+ # custom_extraction_configuration: {
3451
+ # semantic_extraction_override: {
3452
+ # append_to_prompt: "Prompt", # required
3453
+ # model_id: "String", # required
3454
+ # },
3455
+ # user_preference_extraction_override: {
3456
+ # append_to_prompt: "Prompt", # required
3457
+ # model_id: "String", # required
3458
+ # },
3459
+ # },
3460
+ # },
3461
+ # consolidation: {
3462
+ # custom_consolidation_configuration: {
3463
+ # semantic_consolidation_override: {
3464
+ # append_to_prompt: "Prompt", # required
3465
+ # model_id: "String", # required
3466
+ # },
3467
+ # summary_consolidation_override: {
3468
+ # append_to_prompt: "Prompt", # required
3469
+ # model_id: "String", # required
3470
+ # },
3471
+ # user_preference_consolidation_override: {
3472
+ # append_to_prompt: "Prompt", # required
3473
+ # model_id: "String", # required
3474
+ # },
3475
+ # },
3476
+ # },
3477
+ # },
3478
+ # },
3479
+ # ],
3480
+ # delete_memory_strategies: [
3481
+ # {
3482
+ # memory_strategy_id: "String", # required
3483
+ # },
3484
+ # ],
3485
+ # },
3486
+ # })
3487
+ #
3488
+ # @example Response structure
3489
+ #
3490
+ # resp.memory.arn #=> String
3491
+ # resp.memory.id #=> String
3492
+ # resp.memory.name #=> String
3493
+ # resp.memory.description #=> String
3494
+ # resp.memory.encryption_key_arn #=> String
3495
+ # resp.memory.memory_execution_role_arn #=> String
3496
+ # resp.memory.event_expiry_duration #=> Integer
3497
+ # resp.memory.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
3498
+ # resp.memory.failure_reason #=> String
3499
+ # resp.memory.created_at #=> Time
3500
+ # resp.memory.updated_at #=> Time
3501
+ # resp.memory.strategies #=> Array
3502
+ # resp.memory.strategies[0].strategy_id #=> String
3503
+ # resp.memory.strategies[0].name #=> String
3504
+ # resp.memory.strategies[0].description #=> String
3505
+ # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE"
3506
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
3507
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
3508
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
3509
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
3510
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
3511
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
3512
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
3513
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
3514
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
3515
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
3516
+ # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM"
3517
+ # resp.memory.strategies[0].namespaces #=> Array
3518
+ # resp.memory.strategies[0].namespaces[0] #=> String
3519
+ # resp.memory.strategies[0].created_at #=> Time
3520
+ # resp.memory.strategies[0].updated_at #=> Time
3521
+ # resp.memory.strategies[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
3522
+ #
3523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateMemory AWS API Documentation
3524
+ #
3525
+ # @overload update_memory(params = {})
3526
+ # @param [Hash] params ({})
3527
+ def update_memory(params = {}, options = {})
3528
+ req = build_request(:update_memory, params)
3529
+ req.send_request(options)
3530
+ end
3531
+
3532
+ # Updates an existing OAuth2 credential provider.
3533
+ #
3534
+ # @option params [required, String] :name
3535
+ # The name of the OAuth2 credential provider to update.
3536
+ #
3537
+ # @option params [required, String] :credential_provider_vendor
3538
+ # The vendor of the OAuth2 credential provider.
3539
+ #
3540
+ # @option params [required, Types::Oauth2ProviderConfigInput] :oauth2_provider_config_input
3541
+ # The configuration input for the OAuth2 provider.
3542
+ #
3543
+ # @return [Types::UpdateOauth2CredentialProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3544
+ #
3545
+ # * {Types::UpdateOauth2CredentialProviderResponse#client_secret_arn #client_secret_arn} => Types::Secret
3546
+ # * {Types::UpdateOauth2CredentialProviderResponse#name #name} => String
3547
+ # * {Types::UpdateOauth2CredentialProviderResponse#credential_provider_vendor #credential_provider_vendor} => String
3548
+ # * {Types::UpdateOauth2CredentialProviderResponse#credential_provider_arn #credential_provider_arn} => String
3549
+ # * {Types::UpdateOauth2CredentialProviderResponse#oauth2_provider_config_output #oauth2_provider_config_output} => Types::Oauth2ProviderConfigOutput
3550
+ # * {Types::UpdateOauth2CredentialProviderResponse#created_time #created_time} => Time
3551
+ # * {Types::UpdateOauth2CredentialProviderResponse#last_updated_time #last_updated_time} => Time
3552
+ #
3553
+ # @example Request syntax with placeholder values
3554
+ #
3555
+ # resp = client.update_oauth_2_credential_provider({
3556
+ # name: "CredentialProviderName", # required
3557
+ # credential_provider_vendor: "GoogleOauth2", # required, accepts GoogleOauth2, GithubOauth2, SlackOauth2, SalesforceOauth2, MicrosoftOauth2, CustomOauth2
3558
+ # oauth2_provider_config_input: { # required
3559
+ # custom_oauth_2_provider_config: {
3560
+ # oauth_discovery: { # required
3561
+ # discovery_url: "DiscoveryUrlType",
3562
+ # authorization_server_metadata: {
3563
+ # issuer: "IssuerUrlType", # required
3564
+ # authorization_endpoint: "AuthorizationEndpointType", # required
3565
+ # token_endpoint: "TokenEndpointType", # required
3566
+ # response_types: ["ResponseType"],
3567
+ # },
3568
+ # },
3569
+ # client_id: "ClientIdType", # required
3570
+ # client_secret: "ClientSecretType", # required
3571
+ # },
3572
+ # google_oauth_2_provider_config: {
3573
+ # client_id: "ClientIdType", # required
3574
+ # client_secret: "ClientSecretType", # required
3575
+ # },
3576
+ # github_oauth_2_provider_config: {
3577
+ # client_id: "ClientIdType", # required
3578
+ # client_secret: "ClientSecretType", # required
3579
+ # },
3580
+ # slack_oauth_2_provider_config: {
3581
+ # client_id: "ClientIdType", # required
3582
+ # client_secret: "ClientSecretType", # required
3583
+ # },
3584
+ # salesforce_oauth_2_provider_config: {
3585
+ # client_id: "ClientIdType", # required
3586
+ # client_secret: "ClientSecretType", # required
3587
+ # },
3588
+ # microsoft_oauth_2_provider_config: {
3589
+ # client_id: "ClientIdType", # required
3590
+ # client_secret: "ClientSecretType", # required
3591
+ # },
3592
+ # },
3593
+ # })
3594
+ #
3595
+ # @example Response structure
3596
+ #
3597
+ # resp.client_secret_arn.secret_arn #=> String
3598
+ # resp.name #=> String
3599
+ # resp.credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2"
3600
+ # resp.credential_provider_arn #=> String
3601
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
3602
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
3603
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
3604
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
3605
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
3606
+ # resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
3607
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
3608
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
3609
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
3610
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
3611
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
3612
+ # resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
3613
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
3614
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
3615
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
3616
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
3617
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
3618
+ # resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
3619
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
3620
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
3621
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
3622
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
3623
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
3624
+ # resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
3625
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
3626
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
3627
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
3628
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
3629
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
3630
+ # resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
3631
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
3632
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.issuer #=> String
3633
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.authorization_endpoint #=> String
3634
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.token_endpoint #=> String
3635
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types #=> Array
3636
+ # resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.authorization_server_metadata.response_types[0] #=> String
3637
+ # resp.created_time #=> Time
3638
+ # resp.last_updated_time #=> Time
3639
+ #
3640
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateOauth2CredentialProvider AWS API Documentation
3641
+ #
3642
+ # @overload update_oauth_2_credential_provider(params = {})
3643
+ # @param [Hash] params ({})
3644
+ def update_oauth_2_credential_provider(params = {}, options = {})
3645
+ req = build_request(:update_oauth_2_credential_provider, params)
3646
+ req.send_request(options)
3647
+ end
3648
+
3649
+ # Updates an existing workload identity.
3650
+ #
3651
+ # @option params [required, String] :name
3652
+ # The name of the workload identity to update.
3653
+ #
3654
+ # @option params [Array<String>] :allowed_resource_oauth_2_return_urls
3655
+ # The new list of allowed OAuth2 return URLs for resources associated
3656
+ # with this workload identity. This list replaces the existing list.
3657
+ #
3658
+ # @return [Types::UpdateWorkloadIdentityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3659
+ #
3660
+ # * {Types::UpdateWorkloadIdentityResponse#name #name} => String
3661
+ # * {Types::UpdateWorkloadIdentityResponse#workload_identity_arn #workload_identity_arn} => String
3662
+ # * {Types::UpdateWorkloadIdentityResponse#allowed_resource_oauth_2_return_urls #allowed_resource_oauth_2_return_urls} => Array&lt;String&gt;
3663
+ # * {Types::UpdateWorkloadIdentityResponse#created_time #created_time} => Time
3664
+ # * {Types::UpdateWorkloadIdentityResponse#last_updated_time #last_updated_time} => Time
3665
+ #
3666
+ # @example Request syntax with placeholder values
3667
+ #
3668
+ # resp = client.update_workload_identity({
3669
+ # name: "WorkloadIdentityNameType", # required
3670
+ # allowed_resource_oauth_2_return_urls: ["ResourceOauth2ReturnUrlType"],
3671
+ # })
3672
+ #
3673
+ # @example Response structure
3674
+ #
3675
+ # resp.name #=> String
3676
+ # resp.workload_identity_arn #=> String
3677
+ # resp.allowed_resource_oauth_2_return_urls #=> Array
3678
+ # resp.allowed_resource_oauth_2_return_urls[0] #=> String
3679
+ # resp.created_time #=> Time
3680
+ # resp.last_updated_time #=> Time
3681
+ #
3682
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateWorkloadIdentity AWS API Documentation
3683
+ #
3684
+ # @overload update_workload_identity(params = {})
3685
+ # @param [Hash] params ({})
3686
+ def update_workload_identity(params = {}, options = {})
3687
+ req = build_request(:update_workload_identity, params)
3688
+ req.send_request(options)
3689
+ end
3690
+
3691
+ # @!endgroup
3692
+
3693
+ # @param params ({})
3694
+ # @api private
3695
+ def build_request(operation_name, params = {})
3696
+ handlers = @handlers.for(operation_name)
3697
+ tracer = config.telemetry_provider.tracer_provider.tracer(
3698
+ Aws::Telemetry.module_to_tracer_name('Aws::BedrockAgentCoreControl')
3699
+ )
3700
+ context = Seahorse::Client::RequestContext.new(
3701
+ operation_name: operation_name,
3702
+ operation: config.api.operation(operation_name),
3703
+ client: self,
3704
+ params: params,
3705
+ config: config,
3706
+ tracer: tracer
3707
+ )
3708
+ context[:gem_name] = 'aws-sdk-bedrockagentcorecontrol'
3709
+ context[:gem_version] = '1.0.0'
3710
+ Seahorse::Client::Request.new(handlers, context)
3711
+ end
3712
+
3713
+ # Polls an API operation until a resource enters a desired state.
3714
+ #
3715
+ # ## Basic Usage
3716
+ #
3717
+ # A waiter will call an API operation until:
3718
+ #
3719
+ # * It is successful
3720
+ # * It enters a terminal state
3721
+ # * It makes the maximum number of attempts
3722
+ #
3723
+ # In between attempts, the waiter will sleep.
3724
+ #
3725
+ # # polls in a loop, sleeping between attempts
3726
+ # client.wait_until(waiter_name, params)
3727
+ #
3728
+ # ## Configuration
3729
+ #
3730
+ # You can configure the maximum number of polling attempts, and the
3731
+ # delay (in seconds) between each polling attempt. You can pass
3732
+ # configuration as the final arguments hash.
3733
+ #
3734
+ # # poll for ~25 seconds
3735
+ # client.wait_until(waiter_name, params, {
3736
+ # max_attempts: 5,
3737
+ # delay: 5,
3738
+ # })
3739
+ #
3740
+ # ## Callbacks
3741
+ #
3742
+ # You can be notified before each polling attempt and before each
3743
+ # delay. If you throw `:success` or `:failure` from these callbacks,
3744
+ # it will terminate the waiter.
3745
+ #
3746
+ # started_at = Time.now
3747
+ # client.wait_until(waiter_name, params, {
3748
+ #
3749
+ # # disable max attempts
3750
+ # max_attempts: nil,
3751
+ #
3752
+ # # poll for 1 hour, instead of a number of attempts
3753
+ # before_wait: -> (attempts, response) do
3754
+ # throw :failure if Time.now - started_at > 3600
3755
+ # end
3756
+ # })
3757
+ #
3758
+ # ## Handling Errors
3759
+ #
3760
+ # When a waiter is unsuccessful, it will raise an error.
3761
+ # All of the failure errors extend from
3762
+ # {Aws::Waiters::Errors::WaiterFailed}.
3763
+ #
3764
+ # begin
3765
+ # client.wait_until(...)
3766
+ # rescue Aws::Waiters::Errors::WaiterFailed
3767
+ # # resource did not enter the desired state in time
3768
+ # end
3769
+ #
3770
+ # ## Valid Waiters
3771
+ #
3772
+ # The following table lists the valid waiter names, the operations they call,
3773
+ # and the default `:delay` and `:max_attempts` values.
3774
+ #
3775
+ # | waiter_name | params | :delay | :max_attempts |
3776
+ # | -------------- | ------------------- | -------- | ------------- |
3777
+ # | memory_created | {Client#get_memory} | 2 | 60 |
3778
+ #
3779
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
3780
+ # because the waiter has entered a state that it will not transition
3781
+ # out of, preventing success.
3782
+ #
3783
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
3784
+ # maximum number of attempts have been made, and the waiter is not
3785
+ # yet successful.
3786
+ #
3787
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
3788
+ # while polling for a resource that is not expected.
3789
+ #
3790
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
3791
+ # for an unknown state.
3792
+ #
3793
+ # @return [Boolean] Returns `true` if the waiter was successful.
3794
+ # @param [Symbol] waiter_name
3795
+ # @param [Hash] params ({})
3796
+ # @param [Hash] options ({})
3797
+ # @option options [Integer] :max_attempts
3798
+ # @option options [Integer] :delay
3799
+ # @option options [Proc] :before_attempt
3800
+ # @option options [Proc] :before_wait
3801
+ def wait_until(waiter_name, params = {}, options = {})
3802
+ w = waiter(waiter_name, options)
3803
+ yield(w.waiter) if block_given? # deprecated
3804
+ w.wait(params)
3805
+ end
3806
+
3807
+ # @api private
3808
+ # @deprecated
3809
+ def waiter_names
3810
+ waiters.keys
3811
+ end
3812
+
3813
+ private
3814
+
3815
+ # @param [Symbol] waiter_name
3816
+ # @param [Hash] options ({})
3817
+ def waiter(waiter_name, options = {})
3818
+ waiter_class = waiters[waiter_name]
3819
+ if waiter_class
3820
+ waiter_class.new(options.merge(client: self))
3821
+ else
3822
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
3823
+ end
3824
+ end
3825
+
3826
+ def waiters
3827
+ {
3828
+ memory_created: Waiters::MemoryCreated
3829
+ }
3830
+ end
3831
+
3832
+ class << self
3833
+
3834
+ # @api private
3835
+ attr_reader :identifier
3836
+
3837
+ # @api private
3838
+ def errors_module
3839
+ Errors
3840
+ end
3841
+
3842
+ end
3843
+ end
3844
+ end