Class: Aws::BedrockAgentCoreControl::Client

Inherits:
Seahorse::Client::Base
  • Object
show all
Includes:
ClientStubs
Defined in:
lib/aws-sdk-bedrockagentcorecontrol/client.rb

Overview

An API client for BedrockAgentCoreControl. To construct a client, you need to configure a ‘:region` and `:credentials`.

client = Aws::BedrockAgentCoreControl::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).

See #initialize for a full list of supported configuration options.

Class Attribute Summary collapse

API Operations collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials used for authentication. This can be any class that includes and implements ‘Aws::CredentialProvider`, or instance of any one of the following classes:

    • ‘Aws::Credentials` - Used for configuring static, non-refreshing credentials.

    • ‘Aws::SharedCredentials` - Used for loading static credentials from a shared file, such as `~/.aws/config`.

    • ‘Aws::AssumeRoleCredentials` - Used when you need to assume a role.

    • ‘Aws::AssumeRoleWebIdentityCredentials` - Used when you need to assume a role after providing credentials via the web.

    • ‘Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an access token generated from `aws login`.

    • ‘Aws::ProcessCredentials` - Used for loading credentials from a process that outputs to stdout.

    • ‘Aws::InstanceProfileCredentials` - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • ‘Aws::ECSCredentials` - Used for loading credentials from instances running in ECS.

    • ‘Aws::CognitoIdentityCredentials` - Used for loading credentials from the Cognito Identity service.

    When ‘:credentials` are not configured directly, the following locations will be searched for credentials:

    • Aws.config`

    • The ‘:access_key_id`, `:secret_access_key`, `:session_token`, and `:account_id` options.

    • ENV`, `ENV`, `ENV`, and `ENV`.

    • ‘~/.aws/credentials`

    • ‘~/.aws/config`

    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of ‘Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting `ENV` to `true`.

  • :region (required, String)

    The AWS region to connect to. The configured ‘:region` is used to determine the service `:endpoint`. When not passed, a default `:region` is searched for in the following locations:

  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to ‘true`, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to `false`.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in ‘adaptive` retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a `RetryCapacityNotAvailableError` and will not retry instead of sleeping.

  • :auth_scheme_preference (Array<String>)

    A list of preferred authentication schemes to use when making a request. Supported values are: ‘sigv4`, `sigv4a`, `httpBearerAuth`, and `noAuth`. When set using `ENV` or in shared config as `auth_scheme_preference`, the value should be a comma-separated list.

  • :client_side_monitoring (Boolean) — default: false

    When ‘true`, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When ‘true`, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in ‘standard` and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    When ‘true`, the SDK will not prepend the modeled host prefix to the endpoint.

  • :disable_request_compression (Boolean) — default: false

    When set to ‘true’ the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the ‘:endpoint` option directly. This is normally constructed from the `:region` option. Configuring `:endpoint` is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to ‘true`, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the ‘:logger` at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in ‘standard` and `adaptive` retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at ‘HOME/.aws/credentials`. When not specified, ’default’ is used.

  • :request_checksum_calculation (String) — default: "when_supported"

    Determines when a checksum will be calculated for request payloads. Values are:

    • ‘when_supported` - (default) When set, a checksum will be calculated for all request payloads of operations modeled with the `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a `requestAlgorithmMember` is modeled.

    • ‘when_required` - When set, a checksum will only be calculated for request payloads of operations modeled with the `httpChecksum` trait where `requestChecksumRequired` is `true` or where a `requestAlgorithmMember` is modeled and supplied.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :response_checksum_validation (String) — default: "when_supported"

    Determines when checksum validation will be performed on response payloads. Values are:

    • ‘when_supported` - (default) When set, checksum validation is performed on all response payloads of operations modeled with the `httpChecksum` trait where `responseAlgorithms` is modeled, except when no modeled checksum algorithms are supported.

    • ‘when_required` - When set, checksum validation is not performed on response payloads of operations unless the checksum algorithm is supported and the `requestValidationModeMember` member is set to `ENABLED`.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the ‘legacy` retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the ‘legacy` retry mode.

    @see www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the ‘legacy` retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the ‘legacy` retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • ‘legacy` - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • ‘standard` - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • ‘adaptive` - An experimental retry mode that includes all the functionality of `standard` mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default ‘:sigv4a_signing_region_set` is searched for in the following locations:

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    ** Please note ** When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses ‘NoOpTelemetryProvider` which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the

    ‘opentelemetry-sdk` gem and then, pass in an instance of a `Aws::Telemetry::OTelProvider` for telemetry provider.

  • :token_provider (Aws::TokenProvider)

    Your Bearer token used for authentication. This can be any class that includes and implements ‘Aws::TokenProvider`, or instance of any one of the following classes:

    • ‘Aws::StaticTokenProvider` - Used for configuring static, non-refreshing tokens.

    • ‘Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an access token generated from `aws login`.

    When ‘:token_provider` is not configured directly, the `Aws::TokenProviderChain` will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to ‘true`, dualstack enabled endpoints (with `.aws` TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to ‘true`, fips compatible endpoints will be used if available. When a `fips` region is used, the region is normalized and this config is set to `true`.

  • :validate_params (Boolean) — default: true

    When ‘true`, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::BedrockAgentCoreControl::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to ‘#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::BedrockAgentCoreControl::EndpointParameters`.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has “Expect” header set to “100-continue”. Defaults to ‘nil` which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like ‘proxy.com:123’.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When ‘true`, HTTP debug output will be sent to the `:logger`.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a ‘content-length`).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When ‘true`, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass ‘:ssl_ca_bundle` or `:ssl_ca_directory` the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When ‘true`, SSL peer certificates are verified when establishing a connection.



473
474
475
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 473

def initialize(*args)
  super
end

Class Attribute Details

.identifierObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



12819
12820
12821
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12819

def identifier
  @identifier
end

Class Method Details

.errors_moduleObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



12822
12823
12824
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12822

def errors_module
  Errors
end

Instance Method Details

#build_request(operation_name, params = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

  • params ({}) (defaults to: {})


12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12669

def build_request(operation_name, params = {})
  handlers = @handlers.for(operation_name)
  tracer = config.telemetry_provider.tracer_provider.tracer(
    Aws::Telemetry.module_to_tracer_name('Aws::BedrockAgentCoreControl')
  )
  context = Seahorse::Client::RequestContext.new(
    operation_name: operation_name,
    operation: config.api.operation(operation_name),
    client: self,
    params: params,
    config: config,
    tracer: tracer
  )
  context[:gem_name] = 'aws-sdk-bedrockagentcorecontrol'
  context[:gem_version] = '1.45.0'
  Seahorse::Client::Request.new(handlers, context)
end

#create_agent_runtime(params = {}) ⇒ Types::CreateAgentRuntimeResponse

Creates an Amazon Bedrock AgentCore Runtime.

Examples:

Request syntax with placeholder values


resp = client.create_agent_runtime({
  agent_runtime_name: "AgentRuntimeName", # required
  agent_runtime_artifact: { # required
    container_configuration: {
      container_uri: "RuntimeContainerUri", # required
    },
    code_configuration: {
      code: { # required
        s3: {
          bucket: "S3LocationBucketString", # required
          prefix: "S3LocationPrefixString", # required
          version_id: "S3LocationVersionIdString",
        },
      },
      runtime: "PYTHON_3_10", # required, accepts PYTHON_3_10, PYTHON_3_11, PYTHON_3_12, PYTHON_3_13, PYTHON_3_14, NODE_22
      entry_point: ["entryPoint"], # required
    },
  },
  role_arn: "RoleArn", # required
  network_configuration: { # required
    network_mode: "PUBLIC", # required, accepts PUBLIC, VPC
    network_mode_config: {
      security_groups: ["SecurityGroupId"], # required
      subnets: ["SubnetId"], # required
    },
  },
  client_token: "ClientToken",
  description: "Description",
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  request_header_configuration: {
    request_header_allowlist: ["HeaderName"],
  },
  protocol_configuration: {
    server_protocol: "MCP", # required, accepts MCP, HTTP, A2A, AGUI
  },
  lifecycle_configuration: {
    idle_runtime_session_timeout: 1,
    max_lifetime: 1,
  },
  environment_variables: {
    "EnvironmentVariableKey" => "EnvironmentVariableValue",
  },
  filesystem_configurations: [
    {
      session_storage: {
        mount_path: "MountPath", # required
      },
      s3_files_access_point: {
        access_point_arn: "S3FilesAccessPointArn", # required
        mount_path: "MountPath", # required
      },
      efs_access_point: {
        access_point_arn: "EfsAccessPointArn", # required
        mount_path: "MountPath", # required
      },
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.agent_runtime_arn #=> String
resp.workload_identity_details.workload_identity_arn #=> String
resp.agent_runtime_id #=> String
resp.agent_runtime_version #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_name (required, String)

    The name of the AgentCore Runtime.

  • :agent_runtime_artifact (required, Types::AgentRuntimeArtifact)

    The artifact of the AgentCore Runtime.

  • :role_arn (required, String)

    The IAM role ARN that provides permissions for the AgentCore Runtime.

  • :network_configuration (required, Types::NetworkConfiguration)

    The network configuration for the AgentCore Runtime.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :description (String)

    The description of the AgentCore Runtime.

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    The authorizer configuration for the AgentCore Runtime.

  • :request_header_configuration (Types::RequestHeaderConfiguration)

    Configuration for HTTP request headers that will be passed through to the runtime.

  • :protocol_configuration (Types::ProtocolConfiguration)

    The protocol configuration for an agent runtime. This structure defines how the agent runtime communicates with clients.

  • :lifecycle_configuration (Types::LifecycleConfiguration)

    The life cycle configuration for the AgentCore Runtime.

  • :environment_variables (Hash<String,String>)

    Environment variables to set in the AgentCore Runtime environment.

  • :filesystem_configurations (Array<Types::FilesystemConfiguration>)

    The filesystem configurations to mount into the AgentCore Runtime. Use filesystem configurations to provide persistent storage to your AgentCore Runtime sessions.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the agent runtime. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



671
672
673
674
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 671

def create_agent_runtime(params = {}, options = {})
  req = build_request(:create_agent_runtime, params)
  req.send_request(options)
end

#create_agent_runtime_endpoint(params = {}) ⇒ Types::CreateAgentRuntimeEndpointResponse

Creates an AgentCore Runtime endpoint.

Examples:

Request syntax with placeholder values


resp = client.create_agent_runtime_endpoint({
  agent_runtime_id: "AgentRuntimeId", # required
  name: "EndpointName", # required
  agent_runtime_version: "AgentRuntimeVersion",
  description: "AgentEndpointDescription",
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.target_version #=> String
resp.agent_runtime_endpoint_arn #=> String
resp.agent_runtime_arn #=> String
resp.agent_runtime_id #=> String
resp.endpoint_name #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.created_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime to create an endpoint for.

  • :name (required, String)

    The name of the AgentCore Runtime endpoint.

  • :agent_runtime_version (String)

    The version of the AgentCore Runtime to use for the endpoint.

  • :description (String)

    The description of the AgentCore Runtime endpoint.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the agent runtime endpoint. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



740
741
742
743
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 740

def create_agent_runtime_endpoint(params = {}, options = {})
  req = build_request(:create_agent_runtime_endpoint, params)
  req.send_request(options)
end

#create_api_key_credential_provider(params = {}) ⇒ Types::CreateApiKeyCredentialProviderResponse

Creates a new API key credential provider.

Examples:

Request syntax with placeholder values


resp = client.create_api_key_credential_provider({
  name: "CredentialProviderName", # required
  api_key: "ApiKeyType", # required
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.api_key_secret_arn.secret_arn #=> String
resp.name #=> String
resp.credential_provider_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the API key credential provider. The name must be unique within your account.

  • :api_key (required, String)

    The API key to use for authentication. This value is encrypted and stored securely.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the API key credential provider. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



786
787
788
789
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 786

def create_api_key_credential_provider(params = {}, options = {})
  req = build_request(:create_api_key_credential_provider, params)
  req.send_request(options)
end

#create_browser(params = {}) ⇒ Types::CreateBrowserResponse

Creates a custom browser.

Examples:

Request syntax with placeholder values


resp = client.create_browser({
  name: "SandboxName", # required
  description: "Description",
  execution_role_arn: "RoleArn",
  network_configuration: { # required
    network_mode: "PUBLIC", # required, accepts PUBLIC, VPC
    vpc_config: {
      security_groups: ["SecurityGroupId"], # required
      subnets: ["SubnetId"], # required
    },
  },
  recording: {
    enabled: false,
    s3_location: {
      bucket: "S3LocationBucketString", # required
      prefix: "S3LocationPrefixString", # required
      version_id: "S3LocationVersionIdString",
    },
  },
  browser_signing: {
    enabled: false, # required
  },
  enterprise_policies: [
    {
      location: { # required
        s3: {
          bucket: "S3LocationBucketString", # required
          prefix: "S3LocationPrefixString", # required
          version_id: "S3LocationVersionIdString",
        },
      },
      type: "MANAGED", # accepts MANAGED, RECOMMENDED
    },
  ],
  certificates: [
    {
      location: { # required
        secrets_manager: {
          secret_arn: "ToolSecretArn", # required
        },
      },
    },
  ],
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.browser_id #=> String
resp.browser_arn #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the browser. The name must be unique within your account.

  • :description (String)

    The description of the browser.

  • :execution_role_arn (String)

    The Amazon Resource Name (ARN) of the IAM role that provides permissions for the browser to access Amazon Web Services services.

  • :network_configuration (required, Types::BrowserNetworkConfiguration)

    The network configuration for the browser. This configuration specifies the network mode for the browser.

  • :recording (Types::RecordingConfig)

    The recording configuration for the browser. When enabled, browser sessions are recorded and stored in the specified Amazon S3 location.

  • :browser_signing (Types::BrowserSigningConfigInput)

    The browser signing configuration that enables cryptographic agent identification using HTTP message signatures for web bot authentication.

  • :enterprise_policies (Array<Types::BrowserEnterprisePolicy>)

    A list of enterprise policy files for the browser.

  • :certificates (Array<Types::Certificate>)

    A list of certificates to install in the browser.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, Amazon Bedrock AgentCore ignores the request but does not return an error.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the browser. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



905
906
907
908
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 905

def create_browser(params = {}, options = {})
  req = build_request(:create_browser, params)
  req.send_request(options)
end

#create_browser_profile(params = {}) ⇒ Types::CreateBrowserProfileResponse

Creates a browser profile in Amazon Bedrock AgentCore. A browser profile stores persistent browser data such as cookies, local storage, session storage, and browsing history that can be saved from browser sessions and reused in subsequent sessions.

Examples:

Request syntax with placeholder values


resp = client.create_browser_profile({
  name: "BrowserProfileName", # required
  description: "Description",
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.profile_id #=> String
resp.profile_arn #=> String
resp.created_at #=> Time
resp.status #=> String, one of "READY", "DELETING", "DELETED", "SAVING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the browser profile. The name must be unique within your account and can contain alphanumeric characters and underscores.

  • :description (String)

    A description of the browser profile. Use this field to describe the purpose or contents of the profile.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, Amazon Bedrock AgentCore ignores the request but does not return an error.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the browser profile. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



966
967
968
969
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 966

def create_browser_profile(params = {}, options = {})
  req = build_request(:create_browser_profile, params)
  req.send_request(options)
end

#create_code_interpreter(params = {}) ⇒ Types::CreateCodeInterpreterResponse

Creates a custom code interpreter.

Examples:

Request syntax with placeholder values


resp = client.create_code_interpreter({
  name: "SandboxName", # required
  description: "Description",
  execution_role_arn: "RoleArn",
  network_configuration: { # required
    network_mode: "PUBLIC", # required, accepts PUBLIC, SANDBOX, VPC
    vpc_config: {
      security_groups: ["SecurityGroupId"], # required
      subnets: ["SubnetId"], # required
    },
  },
  certificates: [
    {
      location: { # required
        secrets_manager: {
          secret_arn: "ToolSecretArn", # required
        },
      },
    },
  ],
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.code_interpreter_id #=> String
resp.code_interpreter_arn #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the code interpreter. The name must be unique within your account.

  • :description (String)

    The description of the code interpreter.

  • :execution_role_arn (String)

    The Amazon Resource Name (ARN) of the IAM role that provides permissions for the code interpreter to access Amazon Web Services services.

  • :network_configuration (required, Types::CodeInterpreterNetworkConfiguration)

    The network configuration for the code interpreter. This configuration specifies the network mode for the code interpreter.

  • :certificates (Array<Types::Certificate>)

    A list of certificates to install in the code interpreter.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, Amazon Bedrock AgentCore ignores the request but does not return an error.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the code interpreter. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



1052
1053
1054
1055
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1052

def create_code_interpreter(params = {}, options = {})
  req = build_request(:create_code_interpreter, params)
  req.send_request(options)
end

#create_configuration_bundle(params = {}) ⇒ Types::CreateConfigurationBundleResponse

Creates a new configuration bundle resource. A configuration bundle stores versioned component configurations for agent evaluation workflows.

Examples:

Request syntax with placeholder values


resp = client.create_configuration_bundle({
  client_token: "ClientToken",
  bundle_name: "ConfigurationBundleName", # required
  description: "ConfigurationBundleDescription",
  components: { # required
    "ComponentIdentifier" => {
      configuration: { # required
      },
    },
  },
  branch_name: "BranchName",
  commit_message: "CreateConfigurationBundleRequestCommitMessageString",
  created_by: {
    name: "String", # required
    arn: "String",
  },
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.bundle_arn #=> String
resp.bundle_id #=> String
resp.version_id #=> String
resp.created_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :bundle_name (required, String)

    The name for the configuration bundle. Names must be unique within your account.

  • :description (String)

    The description for the configuration bundle.

  • :components (required, Hash<String,Types::ComponentConfiguration>)

    A map of component identifiers to their configurations. Each component represents a configurable element within the bundle.

  • :branch_name (String)

    The branch name for version tracking. Defaults to ‘mainline` if not specified.

  • :commit_message (String)

    A commit message describing the initial version of the configuration bundle.

  • :created_by (Types::VersionCreatedBySource)

    The source that created this version, including the source name and optional ARN.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the configuration bundle. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



1144
1145
1146
1147
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1144

def create_configuration_bundle(params = {}, options = {})
  req = build_request(:create_configuration_bundle, params)
  req.send_request(options)
end

#create_evaluator(params = {}) ⇒ Types::CreateEvaluatorResponse

Creates a custom evaluator for agent quality assessment. Custom evaluators can use either LLM-as-a-Judge configurations with user-defined prompts, rating scales, and model settings, or code-based configurations with customer-managed Lambda functions to evaluate agent performance at tool call, trace, or session levels.

Examples:

Request syntax with placeholder values


resp = client.create_evaluator({
  client_token: "ClientToken",
  evaluator_name: "CustomEvaluatorName", # required
  description: "EvaluatorDescription",
  evaluator_config: { # required
    llm_as_a_judge: {
      instructions: "EvaluatorInstructions", # required
      rating_scale: { # required
        numerical: [
          {
            definition: "String", # required
            value: 1.0, # required
            label: "NumericalScaleDefinitionLabelString", # required
          },
        ],
        categorical: [
          {
            definition: "String", # required
            label: "CategoricalScaleDefinitionLabelString", # required
          },
        ],
      },
      model_config: { # required
        bedrock_evaluator_model_config: {
          model_id: "ModelId", # required
          inference_config: {
            max_tokens: 1,
            temperature: 1.0,
            top_p: 1.0,
            stop_sequences: ["NonEmptyString"],
          },
          additional_model_request_fields: {
          },
        },
      },
    },
    code_based: {
      lambda_config: {
        lambda_arn: "LambdaArn", # required
        lambda_timeout_in_seconds: 1,
      },
    },
  },
  level: "TOOL_CALL", # required, accepts TOOL_CALL, TRACE, SESSION
  kms_key_arn: "KmsKeyArn",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.evaluator_arn #=> String
resp.evaluator_id #=> String
resp.created_at #=> Time
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :evaluator_name (required, String)

    The name of the evaluator. Must be unique within your account.

  • :description (String)

    The description of the evaluator that explains its purpose and evaluation criteria.

  • :evaluator_config (required, Types::EvaluatorConfig)

    The configuration for the evaluator. Specify either LLM-as-a-Judge settings with instructions, rating scale, and model configuration, or code-based settings with a customer-managed Lambda function.

  • :level (required, String)

    The evaluation level that determines the scope of evaluation. Valid values are ‘TOOL_CALL` for individual tool invocations, `TRACE` for single request-response interactions, or `SESSION` for entire conversation sessions.

  • :kms_key_arn (String)

    The Amazon Resource Name (ARN) of a customer managed KMS key to use for encrypting sensitive evaluator data, including instructions and rating scale. If you don’t specify a KMS key, the evaluator data is encrypted with an Amazon Web Services owned key. Only symmetric encryption KMS keys are supported. For more information, see [Encryption at rest for AgentCore Evaluations].

    [1]: docs.aws.amazon.com/bedrock-agentcore/latest/devguide/evaluations-encryption.html

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to an AgentCore Evaluator. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



1274
1275
1276
1277
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1274

def create_evaluator(params = {}, options = {})
  req = build_request(:create_evaluator, params)
  req.send_request(options)
end

#create_gateway(params = {}) ⇒ Types::CreateGatewayResponse

Creates a gateway for Amazon Bedrock Agent. A gateway serves as an integration point between your agent and external services.

If you specify ‘CUSTOM_JWT` as the `authorizerType`, you must provide an `authorizerConfiguration`.

Examples:

Request syntax with placeholder values


resp = client.create_gateway({
  name: "GatewayName", # required
  description: "GatewayDescription",
  client_token: "ClientToken",
  role_arn: "RoleArn", # required
  protocol_type: "MCP", # accepts MCP
  protocol_configuration: {
    mcp: {
      supported_versions: ["McpVersion"],
      instructions: "McpInstructions",
      search_type: "SEMANTIC", # accepts SEMANTIC
      session_configuration: {
        session_timeout_in_seconds: 1,
      },
      streaming_configuration: {
        enable_response_streaming: false,
      },
    },
  },
  authorizer_type: "CUSTOM_JWT", # required, accepts CUSTOM_JWT, AWS_IAM, NONE, AUTHENTICATE_ONLY
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  kms_key_arn: "KmsKeyArn",
  interceptor_configurations: [
    {
      interceptor: { # required
        lambda: {
          arn: "LambdaFunctionArn", # required
        },
      },
      interception_points: ["REQUEST"], # required, accepts REQUEST, RESPONSE
      input_configuration: {
        pass_request_headers: false, # required
      },
    },
  ],
  policy_engine_configuration: {
    arn: "GatewayPolicyEngineArn", # required
    mode: "LOG_ONLY", # required, accepts LOG_ONLY, ENFORCE
  },
  exception_level: "DEBUG", # accepts DEBUG
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.gateway_arn #=> String
resp.gateway_id #=> String
resp.gateway_url #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.name #=> String
resp.description #=> String
resp.role_arn #=> String
resp.protocol_type #=> String, one of "MCP"
resp.protocol_configuration.mcp.supported_versions #=> Array
resp.protocol_configuration.mcp.supported_versions[0] #=> String
resp.protocol_configuration.mcp.instructions #=> String
resp.protocol_configuration.mcp.search_type #=> String, one of "SEMANTIC"
resp.protocol_configuration.mcp.session_configuration.session_timeout_in_seconds #=> Integer
resp.protocol_configuration.mcp.streaming_configuration.enable_response_streaming #=> Boolean
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM", "NONE", "AUTHENTICATE_ONLY"
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.kms_key_arn #=> String
resp.interceptor_configurations #=> Array
resp.interceptor_configurations[0].interceptor.lambda.arn #=> String
resp.interceptor_configurations[0].interception_points #=> Array
resp.interceptor_configurations[0].interception_points[0] #=> String, one of "REQUEST", "RESPONSE"
resp.interceptor_configurations[0].input_configuration.pass_request_headers #=> Boolean
resp.policy_engine_configuration.arn #=> String
resp.policy_engine_configuration.mode #=> String, one of "LOG_ONLY", "ENFORCE"
resp.workload_identity_details.workload_identity_arn #=> String
resp.exception_level #=> String, one of "DEBUG"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the gateway. The name must be unique within your account.

  • :description (String)

    The description of the gateway.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role that provides permissions for the gateway to access Amazon Web Services services.

  • :protocol_type (String)

    The protocol type for the gateway.

  • :protocol_configuration (Types::GatewayProtocolConfiguration)

    The configuration settings for the protocol specified in the ‘protocolType` parameter.

  • :authorizer_type (required, String)

    The type of authorizer to use for the gateway.

    • ‘CUSTOM_JWT` - Authorize with a bearer token.

    • ‘AWS_IAM` - Authorize with your Amazon Web Services IAM credentials.

    • ‘NONE` - No authorization

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    The authorizer configuration for the gateway. Required if ‘authorizerType` is `CUSTOM_JWT`.

  • :kms_key_arn (String)

    The Amazon Resource Name (ARN) of the KMS key used to encrypt data associated with the gateway.

  • :interceptor_configurations (Array<Types::GatewayInterceptorConfiguration>)

    A list of configuration settings for a gateway interceptor. Gateway interceptors allow custom code to be invoked during gateway invocations.

  • :policy_engine_configuration (Types::GatewayPolicyEngineConfiguration)

    The policy engine configuration for the gateway. A policy engine is a collection of policies that evaluates and authorizes agent tool calls. When associated with a gateway, the policy engine intercepts all agent requests and determines whether to allow or deny each action based on the defined policies.

  • :exception_level (String)

    The level of detail in error messages returned when invoking the gateway.

    • If the value is ‘DEBUG`, granular exception messages are returned to help a user debug the gateway.

    • If the value is omitted, a generic error message is returned to the end user.

  • :tags (Hash<String,String>)

    A map of key-value pairs to associate with the gateway as metadata tags.

Returns:

See Also:



1555
1556
1557
1558
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1555

def create_gateway(params = {}, options = {})
  req = build_request(:create_gateway, params)
  req.send_request(options)
end

#create_gateway_rule(params = {}) ⇒ Types::CreateGatewayRuleResponse

Creates a rule for a gateway. Rules define conditions and actions that control how requests are routed and processed through the gateway, including principal-based access control and path-based routing.

Examples:

Request syntax with placeholder values


resp = client.create_gateway_rule({
  gateway_identifier: "GatewayIdentifier", # required
  client_token: "ClientToken",
  priority: 1, # required
  conditions: [
    {
      match_principals: {
        any_of: [ # required
          {
            iam_principal: {
              arn: "IamPrincipalArn", # required
              operator: "StringEquals", # accepts StringEquals, StringLike
            },
          },
        ],
      },
      match_paths: {
        any_of: ["MatchPathPattern"], # required
      },
    },
  ],
  actions: [ # required
    {
      configuration_bundle: {
        static_override: {
          bundle_arn: "GatewayConfigurationBundleArn", # required
          bundle_version: "StaticOverrideBundleVersionString", # required
        },
        weighted_override: {
          traffic_split: [ # required
            {
              name: "TrafficSplitEntryNameString", # required
              weight: 1, # required
              configuration_bundle: { # required
                bundle_arn: "GatewayConfigurationBundleArn", # required
                bundle_version: "ConfigurationBundleReferenceBundleVersionString", # required
              },
              description: "TrafficSplitEntryDescriptionString",
              metadata: {
                "TrafficSplitMetadataKey" => "TrafficSplitMetadataValue",
              },
            },
          ],
        },
      },
      route_to_target: {
        static_route: {
          target_name: "TargetName", # required
        },
        weighted_route: {
          traffic_split: [ # required
            {
              name: "TargetTrafficSplitEntryNameString", # required
              weight: 1, # required
              target_name: "TargetName", # required
              description: "TargetTrafficSplitEntryDescriptionString",
              metadata: {
                "TrafficSplitMetadataKey" => "TrafficSplitMetadataValue",
              },
            },
          ],
        },
      },
    },
  ],
  description: "GatewayRuleDescription",
})

Response structure


resp.rule_id #=> String
resp.gateway_arn #=> String
resp.priority #=> Integer
resp.conditions #=> Array
resp.conditions[0].match_principals.any_of #=> Array
resp.conditions[0].match_principals.any_of[0].iam_principal.arn #=> String
resp.conditions[0].match_principals.any_of[0].iam_principal.operator #=> String, one of "StringEquals", "StringLike"
resp.conditions[0].match_paths.any_of #=> Array
resp.conditions[0].match_paths.any_of[0] #=> String
resp.actions #=> Array
resp.actions[0].configuration_bundle.static_override.bundle_arn #=> String
resp.actions[0].configuration_bundle.static_override.bundle_version #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split #=> Array
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].name #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].weight #=> Integer
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_arn #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_version #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].description #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0]. #=> Hash
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.actions[0].route_to_target.static_route.target_name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split #=> Array
resp.actions[0].route_to_target.weighted_route.traffic_split[0].name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0].weight #=> Integer
resp.actions[0].route_to_target.weighted_route.traffic_split[0].target_name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0].description #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0]. #=> Hash
resp.actions[0].route_to_target.weighted_route.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.description #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING"
resp.system.managed_by #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to create a rule for.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :priority (required, Integer)

    The priority of the rule. Rules are evaluated in order of priority, with lower numbers evaluated first. Must be between 1 and 1,000,000.

  • :conditions (Array<Types::Condition>)

    The conditions that must be met for the rule to apply. Conditions can match on principals (IAM ARNs) or request paths.

  • :actions (required, Array<Types::Action>)

    The actions to take when the rule conditions are met. Actions can route to a specific target or apply a configuration bundle override.

  • :description (String)

    The description of the gateway rule.

Returns:

See Also:



1717
1718
1719
1720
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1717

def create_gateway_rule(params = {}, options = {})
  req = build_request(:create_gateway_rule, params)
  req.send_request(options)
end

#create_gateway_target(params = {}) ⇒ Types::CreateGatewayTargetResponse

Creates a target for a gateway. A target defines an endpoint that the gateway can connect to.

Examples:

Request syntax with placeholder values


resp = client.create_gateway_target({
  gateway_identifier: "GatewayIdentifier", # required
  name: "TargetName", # required
  description: "TargetDescription",
  client_token: "ClientToken",
  target_configuration: { # required
    mcp: {
      open_api_schema: {
        s3: {
          uri: "S3BucketUri",
          bucket_owner_account_id: "AwsAccountId",
        },
        inline_payload: "InlinePayload",
      },
      smithy_model: {
        s3: {
          uri: "S3BucketUri",
          bucket_owner_account_id: "AwsAccountId",
        },
        inline_payload: "InlinePayload",
      },
      lambda: {
        lambda_arn: "LambdaFunctionArn", # required
        tool_schema: { # required
          s3: {
            uri: "S3BucketUri",
            bucket_owner_account_id: "AwsAccountId",
          },
          inline_payload: [
            {
              name: "String", # required
              description: "String", # required
              input_schema: { # required
                type: "string", # required, accepts string, number, object, array, boolean, integer
                properties: {
                  "String" => {
                    # recursive SchemaDefinition
                  },
                },
                required: ["String"],
                items: {
                  # recursive SchemaDefinition
                },
                description: "String",
              },
              output_schema: {
                type: "string", # required, accepts string, number, object, array, boolean, integer
                properties: {
                  "String" => {
                    # recursive SchemaDefinition
                  },
                },
                required: ["String"],
                items: {
                  # recursive SchemaDefinition
                },
                description: "String",
              },
            },
          ],
        },
      },
      mcp_server: {
        endpoint: "McpServerTargetConfigurationEndpointString", # required
        mcp_tool_schema: {
          s3: {
            uri: "S3BucketUri",
            bucket_owner_account_id: "AwsAccountId",
          },
          inline_payload: "InlinePayload",
        },
        listing_mode: "DEFAULT", # accepts DEFAULT, DYNAMIC
        resource_priority: 1,
      },
      api_gateway: {
        rest_api_id: "String", # required
        stage: "String", # required
        api_gateway_tool_configuration: { # required
          tool_overrides: [
            {
              name: "String", # required
              description: "String",
              path: "String", # required
              method: "GET", # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
            },
          ],
          tool_filters: [ # required
            {
              filter_path: "String", # required
              methods: ["GET"], # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
            },
          ],
        },
      },
    },
    http: {
      agentcore_runtime: {
        arn: "RuntimeArn", # required
        qualifier: "RuntimeQualifier",
      },
    },
  },
  credential_provider_configurations: [
    {
      credential_provider_type: "GATEWAY_IAM_ROLE", # required, accepts GATEWAY_IAM_ROLE, OAUTH, API_KEY, CALLER_IAM_CREDENTIALS, JWT_PASSTHROUGH
      credential_provider: {
        oauth_credential_provider: {
          provider_arn: "OAuthCredentialProviderArn", # required
          scopes: ["OAuthScope"], # required
          custom_parameters: {
            "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
          },
          grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, TOKEN_EXCHANGE
          default_return_url: "OAuthDefaultReturnUrl",
        },
        api_key_credential_provider: {
          provider_arn: "ApiKeyCredentialProviderArn", # required
          credential_parameter_name: "ApiKeyCredentialParameterName",
          credential_prefix: "ApiKeyCredentialPrefix",
          credential_location: "HEADER", # accepts HEADER, QUERY_PARAMETER
        },
        iam_credential_provider: {
          service: "IamCredentialProviderServiceString", # required
          region: "IamCredentialProviderRegionString",
        },
      },
    },
  ],
  metadata_configuration: {
    allowed_request_headers: ["HttpHeaderName"],
    allowed_query_parameters: ["HttpQueryParameterName"],
    allowed_response_headers: ["HttpHeaderName"],
  },
  private_endpoint: {
    self_managed_lattice_resource: {
      resource_configuration_identifier: "ResourceConfigurationIdentifier",
    },
    managed_vpc_resource: {
      vpc_identifier: "VpcIdentifier", # required
      subnet_ids: ["SubnetId"], # required
      endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
      security_group_ids: ["SecurityGroupIdentifier"],
      tags: {
        "TagKey" => "TagValue",
      },
      routing_domain: "RoutingDomain",
    },
  },
})

Response structure


resp.gateway_arn #=> String
resp.target_id #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED", "SYNCHRONIZING", "SYNCHRONIZE_UNSUCCESSFUL", "CREATE_PENDING_AUTH", "UPDATE_PENDING_AUTH", "SYNCHRONIZE_PENDING_AUTH"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.name #=> String
resp.description #=> String
resp.target_configuration.mcp.open_api_schema.s3.uri #=> String
resp.target_configuration.mcp.open_api_schema.s3. #=> String
resp.target_configuration.mcp.open_api_schema.inline_payload #=> String
resp.target_configuration.mcp.smithy_model.s3.uri #=> String
resp.target_configuration.mcp.smithy_model.s3. #=> String
resp.target_configuration.mcp.smithy_model.inline_payload #=> String
resp.target_configuration.mcp.lambda.lambda_arn #=> String
resp.target_configuration.mcp.lambda.tool_schema.s3.uri #=> String
resp.target_configuration.mcp.lambda.tool_schema.s3. #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].name #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].description #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties #=> Hash
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties["String"] #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required[0] #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.items #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.description #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties #=> Hash
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties["String"] #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required[0] #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
resp.target_configuration.mcp.mcp_server.endpoint #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3. #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
resp.target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
resp.target_configuration.mcp.mcp_server.resource_priority #=> Integer
resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
resp.target_configuration.mcp.api_gateway.stage #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.target_configuration.http.agentcore_runtime.arn #=> String
resp.target_configuration.http.agentcore_runtime.qualifier #=> String
resp.credential_provider_configurations #=> Array
resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY", "CALLER_IAM_CREDENTIALS", "JWT_PASSTHROUGH"
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_location #=> String, one of "HEADER", "QUERY_PARAMETER"
resp.credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
resp.credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String
resp.last_synchronized_at #=> Time
resp..allowed_request_headers #=> Array
resp..allowed_request_headers[0] #=> String
resp..allowed_query_parameters #=> Array
resp..allowed_query_parameters[0] #=> String
resp..allowed_response_headers #=> Array
resp..allowed_response_headers[0] #=> String
resp.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.private_endpoint_managed_resources #=> Array
resp.private_endpoint_managed_resources[0].domain #=> String
resp.private_endpoint_managed_resources[0].resource_gateway_arn #=> String
resp.private_endpoint_managed_resources[0].resource_association_arn #=> String
resp.authorization_data.oauth2.authorization_url #=> String
resp.authorization_data.oauth2.user_id #=> String
resp.protocol_type #=> String, one of "MCP", "HTTP"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to create a target for.

  • :name (required, String)

    The name of the gateway target. The name must be unique within the gateway.

  • :description (String)

    The description of the gateway target.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :target_configuration (required, Types::TargetConfiguration)

    The configuration settings for the target, including endpoint information and schema definitions.

  • :credential_provider_configurations (Array<Types::CredentialProviderConfiguration>)

    The credential provider configurations for the target. These configurations specify how the gateway authenticates with the target endpoint.

  • :metadata_configuration (Types::MetadataConfiguration)

    Optional configuration for HTTP header and query parameter propagation to and from the gateway target.

  • :private_endpoint (Types::PrivateEndpoint)

    The private endpoint configuration for the gateway target. Use this to connect the gateway to private resources in your VPC.

Returns:

See Also:



2037
2038
2039
2040
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2037

def create_gateway_target(params = {}, options = {})
  req = build_request(:create_gateway_target, params)
  req.send_request(options)
end

#create_harness(params = {}) ⇒ Types::CreateHarnessResponse

Operation to create a Harness.

Examples:

Request syntax with placeholder values


resp = client.create_harness({
  harness_name: "HarnessName", # required
  client_token: "ClientToken",
  execution_role_arn: "RoleArn", # required
  environment: {
    agent_core_runtime_environment: {
      lifecycle_configuration: {
        idle_runtime_session_timeout: 1,
        max_lifetime: 1,
      },
      network_configuration: {
        network_mode: "PUBLIC", # required, accepts PUBLIC, VPC
        network_mode_config: {
          security_groups: ["SecurityGroupId"], # required
          subnets: ["SubnetId"], # required
        },
      },
      filesystem_configurations: [
        {
          session_storage: {
            mount_path: "MountPath", # required
          },
          s3_files_access_point: {
            access_point_arn: "S3FilesAccessPointArn", # required
            mount_path: "MountPath", # required
          },
          efs_access_point: {
            access_point_arn: "EfsAccessPointArn", # required
            mount_path: "MountPath", # required
          },
        },
      ],
    },
  },
  environment_artifact: {
    container_configuration: {
      container_uri: "RuntimeContainerUri", # required
    },
  },
  environment_variables: {
    "EnvironmentVariableKey" => "EnvironmentVariableValue",
  },
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  model: {
    bedrock_model_config: {
      model_id: "ModelId", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
    },
    open_ai_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
    },
    gemini_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
      top_k: 1,
    },
  },
  system_prompt: [
    {
      text: "SensitiveText",
    },
  ],
  tools: [
    {
      type: "remote_mcp", # required, accepts remote_mcp, agentcore_browser, agentcore_gateway, inline_function, agentcore_code_interpreter
      name: "HarnessToolName",
      config: {
        remote_mcp: {
          url: "HarnessRemoteMcpUrl", # required
          headers: {
            "HttpHeaderKey" => "HttpHeaderValue",
          },
        },
        agent_core_browser: {
          browser_arn: "BrowserArn",
        },
        agent_core_gateway: {
          gateway_arn: "GatewayArn", # required
          outbound_auth: {
            aws_iam: {
            },
            none: {
            },
            oauth: {
              provider_arn: "OAuthCredentialProviderArn", # required
              scopes: ["OAuthScope"], # required
              custom_parameters: {
                "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
              },
              grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, TOKEN_EXCHANGE
              default_return_url: "OAuthDefaultReturnUrl",
            },
          },
        },
        inline_function: {
          description: "HarnessInlineFunctionDescription", # required
          input_schema: { # required
          },
        },
        agent_core_code_interpreter: {
          code_interpreter_arn: "CodeInterpreterArn",
        },
      },
    },
  ],
  skills: [
    {
      path: "HarnessSkillPath",
    },
  ],
  allowed_tools: ["HarnessAllowedTool"],
  memory: {
    agent_core_memory_configuration: {
      arn: "MemoryArn", # required
      actor_id: "String",
      messages_count: 1,
      retrieval_config: {
        "String" => {
          top_k: 1,
          relevance_score: 1.0,
          strategy_id: "String",
        },
      },
    },
  },
  truncation: {
    strategy: "sliding_window", # required, accepts sliding_window, summarization, none
    config: {
      sliding_window: {
        messages_count: 1,
      },
      summarization: {
        summary_ratio: 1.0,
        preserve_recent_messages: 1,
        summarization_system_prompt: "String",
      },
    },
  },
  max_iterations: 1,
  max_tokens: 1,
  timeout_seconds: 1,
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.harness.harness_id #=> String
resp.harness.harness_name #=> String
resp.harness.arn #=> String
resp.harness.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.harness.execution_role_arn #=> String
resp.harness.created_at #=> Time
resp.harness.updated_at #=> Time
resp.harness.model.bedrock_model_config.model_id #=> String
resp.harness.model.bedrock_model_config.max_tokens #=> Integer
resp.harness.model.bedrock_model_config.temperature #=> Float
resp.harness.model.bedrock_model_config.top_p #=> Float
resp.harness.model.open_ai_model_config.model_id #=> String
resp.harness.model.open_ai_model_config.api_key_arn #=> String
resp.harness.model.open_ai_model_config.max_tokens #=> Integer
resp.harness.model.open_ai_model_config.temperature #=> Float
resp.harness.model.open_ai_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.model_id #=> String
resp.harness.model.gemini_model_config.api_key_arn #=> String
resp.harness.model.gemini_model_config.max_tokens #=> Integer
resp.harness.model.gemini_model_config.temperature #=> Float
resp.harness.model.gemini_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.top_k #=> Integer
resp.harness.system_prompt #=> Array
resp.harness.system_prompt[0].text #=> String
resp.harness.tools #=> Array
resp.harness.tools[0].type #=> String, one of "remote_mcp", "agentcore_browser", "agentcore_gateway", "inline_function", "agentcore_code_interpreter"
resp.harness.tools[0].name #=> String
resp.harness.tools[0].config.remote_mcp.url #=> String
resp.harness.tools[0].config.remote_mcp.headers #=> Hash
resp.harness.tools[0].config.remote_mcp.headers["HttpHeaderKey"] #=> String
resp.harness.tools[0].config.agent_core_browser.browser_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.gateway_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.provider_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes #=> Array
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes[0] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters #=> Hash
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.default_return_url #=> String
resp.harness.tools[0].config.inline_function.description #=> String
resp.harness.tools[0].config.agent_core_code_interpreter.code_interpreter_arn #=> String
resp.harness.skills #=> Array
resp.harness.skills[0].path #=> String
resp.harness.allowed_tools #=> Array
resp.harness.allowed_tools[0] #=> String
resp.harness.truncation.strategy #=> String, one of "sliding_window", "summarization", "none"
resp.harness.truncation.config.sliding_window.messages_count #=> Integer
resp.harness.truncation.config.summarization.summary_ratio #=> Float
resp.harness.truncation.config.summarization.preserve_recent_messages #=> Integer
resp.harness.truncation.config.summarization.summarization_system_prompt #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_arn #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_name #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_id #=> String
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.idle_runtime_session_timeout #=> Integer
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.max_lifetime #=> Integer
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode #=> String, one of "PUBLIC", "VPC"
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups[0] #=> String
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets[0] #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations #=> Array
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].session_storage.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.mount_path #=> String
resp.harness.environment_artifact.container_configuration.container_uri #=> String
resp.harness.environment_variables #=> Hash
resp.harness.environment_variables["EnvironmentVariableKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.memory.agent_core_memory_configuration.arn #=> String
resp.harness.memory.agent_core_memory_configuration.actor_id #=> String
resp.harness.memory.agent_core_memory_configuration.messages_count #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config #=> Hash
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].top_k #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].relevance_score #=> Float
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].strategy_id #=> String
resp.harness.max_iterations #=> Integer
resp.harness.max_tokens #=> Integer
resp.harness.timeout_seconds #=> Integer
resp.harness.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :harness_name (required, String)

    The name of the harness. Must start with a letter and contain only alphanumeric characters and underscores.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :execution_role_arn (required, String)

    The ARN of the IAM role that the harness assumes when running. This role must have permissions for the services the agent needs to access, such as Amazon Bedrock for model invocation.

  • :environment (Types::HarnessEnvironmentProviderRequest)

    The compute environment configuration for the harness, including network and lifecycle settings.

  • :environment_artifact (Types::HarnessEnvironmentArtifact)

    The environment artifact for the harness, such as a custom container image containing additional dependencies.

  • :environment_variables (Hash<String,String>)

    Environment variables to set in the harness runtime environment.

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    Represents inbound authorization configuration options used to authenticate incoming requests.

  • :model (Types::HarnessModelConfiguration)

    The model configuration for the harness. Supports Amazon Bedrock, OpenAI, and Google Gemini model providers.

  • :system_prompt (Array<Types::HarnessSystemContentBlock>)

    The system prompt that defines the agent’s behavior and instructions.

  • :tools (Array<Types::HarnessTool>)

    The tools available to the agent, such as remote MCP servers, AgentCore Gateway, AgentCore Browser, Code Interpreter, or inline functions.

  • :skills (Array<Types::HarnessSkill>)

    The skills available to the agent. Skills are bundles of files that the agent can pull into its context on demand.

  • :allowed_tools (Array<String>)

    The tools that the agent is allowed to use. Supports glob patterns such as * for all tools, @builtin for all built-in tools, or @serverName/toolName for specific MCP server tools.

  • :memory (Types::HarnessMemoryConfiguration)

    The AgentCore Memory configuration for persisting conversation context across sessions.

  • :truncation (Types::HarnessTruncationConfiguration)

    The truncation configuration for managing conversation context when it exceeds model limits.

  • :max_iterations (Integer)

    The maximum number of iterations the agent loop can execute per invocation.

  • :max_tokens (Integer)

    The maximum total number of output tokens the agent can generate across all model calls within a single invocation.

  • :timeout_seconds (Integer)

    The maximum duration in seconds for the agent loop execution per invocation.

  • :tags (Hash<String,String>)

    Tags to apply to the harness resource.

Returns:

See Also:



2458
2459
2460
2461
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2458

def create_harness(params = {}, options = {})
  req = build_request(:create_harness, params)
  req.send_request(options)
end

#create_memory(params = {}) ⇒ Types::CreateMemoryOutput

Creates a new Amazon Bedrock AgentCore Memory resource.

Examples:

Request syntax with placeholder values


resp = client.create_memory({
  client_token: "CreateMemoryInputClientTokenString",
  name: "Name", # required
  description: "Description",
  encryption_key_arn: "Arn",
  memory_execution_role_arn: "Arn",
  event_expiry_duration: 1, # required
  memory_strategies: [
    {
      semantic_memory_strategy: {
        name: "Name", # required
        description: "Description",
        namespaces: ["Namespace"],
        namespace_templates: ["Namespace"],
        memory_record_schema: {
          metadata_schema: [
            {
              key: "MetadataKey", # required
              type: "STRING", # accepts STRING, STRINGLIST, NUMBER
              extraction_config: {
                llm_extraction_config: {
                  llm_extraction_instruction: "LlmExtractionInstruction",
                  definition: "Definition", # required
                  validation: {
                    string_validation: {
                      allowed_values: ["AllowedStringValue"], # required
                    },
                    string_list_validation: {
                      allowed_values: ["AllowedStringListValue"],
                      max_items: 1,
                    },
                    number_validation: {
                      min_value: 1.0,
                      max_value: 1.0,
                    },
                  },
                },
              },
            },
          ],
        },
      },
      summary_memory_strategy: {
        name: "Name", # required
        description: "Description",
        namespaces: ["Namespace"],
        namespace_templates: ["Namespace"],
        memory_record_schema: {
          metadata_schema: [
            {
              key: "MetadataKey", # required
              type: "STRING", # accepts STRING, STRINGLIST, NUMBER
              extraction_config: {
                llm_extraction_config: {
                  llm_extraction_instruction: "LlmExtractionInstruction",
                  definition: "Definition", # required
                  validation: {
                    string_validation: {
                      allowed_values: ["AllowedStringValue"], # required
                    },
                    string_list_validation: {
                      allowed_values: ["AllowedStringListValue"],
                      max_items: 1,
                    },
                    number_validation: {
                      min_value: 1.0,
                      max_value: 1.0,
                    },
                  },
                },
              },
            },
          ],
        },
      },
      user_preference_memory_strategy: {
        name: "Name", # required
        description: "Description",
        namespaces: ["Namespace"],
        namespace_templates: ["Namespace"],
        memory_record_schema: {
          metadata_schema: [
            {
              key: "MetadataKey", # required
              type: "STRING", # accepts STRING, STRINGLIST, NUMBER
              extraction_config: {
                llm_extraction_config: {
                  llm_extraction_instruction: "LlmExtractionInstruction",
                  definition: "Definition", # required
                  validation: {
                    string_validation: {
                      allowed_values: ["AllowedStringValue"], # required
                    },
                    string_list_validation: {
                      allowed_values: ["AllowedStringListValue"],
                      max_items: 1,
                    },
                    number_validation: {
                      min_value: 1.0,
                      max_value: 1.0,
                    },
                  },
                },
              },
            },
          ],
        },
      },
      custom_memory_strategy: {
        name: "Name", # required
        description: "Description",
        namespaces: ["Namespace"],
        namespace_templates: ["Namespace"],
        configuration: {
          semantic_override: {
            extraction: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
            },
            consolidation: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
            },
          },
          summary_override: {
            consolidation: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
            },
          },
          user_preference_override: {
            extraction: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
            },
            consolidation: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
            },
          },
          episodic_override: {
            extraction: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
            },
            consolidation: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
            },
            reflection: {
              append_to_prompt: "Prompt", # required
              model_id: "String", # required
              namespaces: ["Namespace"],
              namespace_templates: ["Namespace"],
              memory_record_schema: {
                metadata_schema: [
                  {
                    key: "MetadataKey", # required
                    type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                    extraction_config: {
                      llm_extraction_config: {
                        llm_extraction_instruction: "LlmExtractionInstruction",
                        definition: "Definition", # required
                        validation: {
                          string_validation: {
                            allowed_values: ["AllowedStringValue"], # required
                          },
                          string_list_validation: {
                            allowed_values: ["AllowedStringListValue"],
                            max_items: 1,
                          },
                          number_validation: {
                            min_value: 1.0,
                            max_value: 1.0,
                          },
                        },
                      },
                    },
                  },
                ],
              },
            },
          },
          self_managed_configuration: {
            trigger_conditions: [
              {
                message_based_trigger: {
                  message_count: 1,
                },
                token_based_trigger: {
                  token_count: 1,
                },
                time_based_trigger: {
                  idle_session_timeout: 1,
                },
              },
            ],
            invocation_configuration: { # required
              topic_arn: "Arn", # required
              payload_delivery_bucket_name: "InvocationConfigurationInputPayloadDeliveryBucketNameString", # required
            },
            historical_context_window_size: 1,
          },
        },
        memory_record_schema: {
          metadata_schema: [
            {
              key: "MetadataKey", # required
              type: "STRING", # accepts STRING, STRINGLIST, NUMBER
              extraction_config: {
                llm_extraction_config: {
                  llm_extraction_instruction: "LlmExtractionInstruction",
                  definition: "Definition", # required
                  validation: {
                    string_validation: {
                      allowed_values: ["AllowedStringValue"], # required
                    },
                    string_list_validation: {
                      allowed_values: ["AllowedStringListValue"],
                      max_items: 1,
                    },
                    number_validation: {
                      min_value: 1.0,
                      max_value: 1.0,
                    },
                  },
                },
              },
            },
          ],
        },
      },
      episodic_memory_strategy: {
        name: "Name", # required
        description: "Description",
        namespaces: ["Namespace"],
        namespace_templates: ["Namespace"],
        reflection_configuration: {
          namespaces: ["Namespace"],
          namespace_templates: ["Namespace"],
          memory_record_schema: {
            metadata_schema: [
              {
                key: "MetadataKey", # required
                type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                extraction_config: {
                  llm_extraction_config: {
                    llm_extraction_instruction: "LlmExtractionInstruction",
                    definition: "Definition", # required
                    validation: {
                      string_validation: {
                        allowed_values: ["AllowedStringValue"], # required
                      },
                      string_list_validation: {
                        allowed_values: ["AllowedStringListValue"],
                        max_items: 1,
                      },
                      number_validation: {
                        min_value: 1.0,
                        max_value: 1.0,
                      },
                    },
                  },
                },
              },
            ],
          },
        },
        memory_record_schema: {
          metadata_schema: [
            {
              key: "MetadataKey", # required
              type: "STRING", # accepts STRING, STRINGLIST, NUMBER
              extraction_config: {
                llm_extraction_config: {
                  llm_extraction_instruction: "LlmExtractionInstruction",
                  definition: "Definition", # required
                  validation: {
                    string_validation: {
                      allowed_values: ["AllowedStringValue"], # required
                    },
                    string_list_validation: {
                      allowed_values: ["AllowedStringListValue"],
                      max_items: 1,
                    },
                    number_validation: {
                      min_value: 1.0,
                      max_value: 1.0,
                    },
                  },
                },
              },
            },
          ],
        },
      },
    },
  ],
  indexed_keys: [
    {
      key: "MetadataKey", # required
      type: "STRING", # required, accepts STRING, STRINGLIST, NUMBER
    },
  ],
  stream_delivery_resources: {
    resources: [ # required
      {
        kinesis: {
          data_stream_arn: "Arn", # required
          content_configurations: [ # required
            {
              type: "MEMORY_RECORDS", # required, accepts MEMORY_RECORDS
              level: "METADATA_ONLY", # accepts METADATA_ONLY, FULL_CONTENT
            },
          ],
        },
      },
    ],
  },
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.memory.arn #=> String
resp.memory.id #=> String
resp.memory.name #=> String
resp.memory.description #=> String
resp.memory.encryption_key_arn #=> String
resp.memory.memory_execution_role_arn #=> String
resp.memory.event_expiry_duration #=> Integer
resp.memory.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
resp.memory.failure_reason #=> String
resp.memory.created_at #=> Time
resp.memory.updated_at #=> Time
resp.memory.strategies #=> Array
resp.memory.strategies[0].strategy_id #=> String
resp.memory.strategies[0].name #=> String
resp.memory.strategies[0].description #=> String
resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED", "EPISODIC_OVERRIDE"
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.model_id #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespace_templates #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespace_templates[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema. #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].key #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespace_templates #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespace_templates[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema. #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].key #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions #=> Array
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].message_based_trigger.message_count #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].token_based_trigger.token_count #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].time_based_trigger.idle_session_timeout #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.topic_arn #=> String
resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.payload_delivery_bucket_name #=> String
resp.memory.strategies[0].configuration.self_managed_configuration.historical_context_window_size #=> Integer
resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM", "EPISODIC"
resp.memory.strategies[0].namespaces #=> Array
resp.memory.strategies[0].namespaces[0] #=> String
resp.memory.strategies[0].namespace_templates #=> Array
resp.memory.strategies[0].namespace_templates[0] #=> String
resp.memory.strategies[0].created_at #=> Time
resp.memory.strategies[0].updated_at #=> Time
resp.memory.strategies[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
resp.memory.strategies[0].memory_record_schema. #=> Array
resp.memory.strategies[0].memory_record_schema.[0].key #=> String
resp.memory.strategies[0].memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.indexed_keys #=> Array
resp.memory.indexed_keys[0].key #=> String
resp.memory.indexed_keys[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.stream_delivery_resources.resources #=> Array
resp.memory.stream_delivery_resources.resources[0].kinesis.data_stream_arn #=> String
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations #=> Array
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations[0].type #=> String, one of "MEMORY_RECORDS"
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations[0].level #=> String, one of "METADATA_ONLY", "FULL_CONTENT"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, Amazon Bedrock ignores the request but does not return an error.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :name (required, String)

    The name of the memory. The name must be unique within your account.

  • :description (String)

    The description of the memory.

  • :encryption_key_arn (String)

    The Amazon Resource Name (ARN) of the KMS key used to encrypt the memory data.

  • :memory_execution_role_arn (String)

    The Amazon Resource Name (ARN) of the IAM role that provides permissions for the memory to access Amazon Web Services services.

  • :event_expiry_duration (required, Integer)

    The duration after which memory events expire. Specified as an ISO 8601 duration.

  • :memory_strategies (Array<Types::MemoryStrategyInput>)

    The memory strategies to use for this memory. Strategies define how information is extracted, processed, and consolidated.

  • :indexed_keys (Array<Types::IndexedKey>)

    Metadata keys to index for filtering. Once declared, indexed keys cannot be removed.

  • :stream_delivery_resources (Types::StreamDeliveryResources)

    Configuration for streaming memory record data to external resources.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to an AgentCore Memory. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



2944
2945
2946
2947
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2944

def create_memory(params = {}, options = {})
  req = build_request(:create_memory, params)
  req.send_request(options)
end

#create_oauth_2_credential_provider(params = {}) ⇒ Types::CreateOauth2CredentialProviderResponse

Creates a new OAuth2 credential provider.

Examples:

Request syntax with placeholder values


resp = client.create_oauth_2_credential_provider({
  name: "CredentialProviderName", # required
  credential_provider_vendor: "GoogleOauth2", # required, accepts GoogleOauth2, GithubOauth2, SlackOauth2, SalesforceOauth2, MicrosoftOauth2, CustomOauth2, AtlassianOauth2, LinkedinOauth2, XOauth2, OktaOauth2, OneLoginOauth2, PingOneOauth2, FacebookOauth2, YandexOauth2, RedditOauth2, ZoomOauth2, TwitchOauth2, SpotifyOauth2, DropboxOauth2, NotionOauth2, HubspotOauth2, CyberArkOauth2, FusionAuthOauth2, Auth0Oauth2, CognitoOauth2
  oauth2_provider_config_input: { # required
    custom_oauth_2_provider_config: {
      oauth_discovery: { # required
        discovery_url: "DiscoveryUrlType",
        authorization_server_metadata: {
          issuer: "IssuerUrlType", # required
          authorization_endpoint: "AuthorizationEndpointType", # required
          token_endpoint: "TokenEndpointType", # required
          response_types: ["ResponseType"],
          token_endpoint_auth_methods: ["TokenAuthMethod"],
        },
      },
      client_id: "DefaultClientIdType",
      client_secret: "DefaultClientSecretType",
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
      on_behalf_of_token_exchange_config: {
        grant_type: "TOKEN_EXCHANGE", # required, accepts TOKEN_EXCHANGE, JWT_AUTHORIZATION_GRANT
        token_exchange_grant_type_config: {
          actor_token_content: "NONE", # required, accepts NONE, M2M, AWS_IAM_ID_TOKEN_JWT
          actor_token_scopes: ["ScopeType"],
        },
      },
      client_authentication_method: "CLIENT_SECRET_BASIC", # accepts CLIENT_SECRET_BASIC, CLIENT_SECRET_POST, AWS_IAM_ID_TOKEN_JWT
    },
    google_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    github_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    slack_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    salesforce_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    microsoft_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
      tenant_id: "TenantIdType",
    },
    atlassian_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    linkedin_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    included_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
      issuer: "IssuerUrlType",
      authorization_endpoint: "AuthorizationEndpointType",
      token_endpoint: "TokenEndpointType",
    },
  },
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.client_secret_arn.secret_arn #=> String
resp.name #=> String
resp.credential_provider_arn #=> String
resp.callback_url #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.grant_type #=> String, one of "TOKEN_EXCHANGE", "JWT_AUTHORIZATION_GRANT"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_content #=> String, one of "NONE", "M2M", "AWS_IAM_ID_TOKEN_JWT"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_scopes #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_scopes[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.client_authentication_method #=> String, one of "CLIENT_SECRET_BASIC", "CLIENT_SECRET_POST", "AWS_IAM_ID_TOKEN_JWT"
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.client_id #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the OAuth2 credential provider. The name must be unique within your account.

  • :credential_provider_vendor (required, String)

    The vendor of the OAuth2 credential provider. This specifies which OAuth2 implementation to use.

  • :oauth2_provider_config_input (required, Types::Oauth2ProviderConfigInput)

    The configuration settings for the OAuth2 provider, including client ID, client secret, and other vendor-specific settings.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the OAuth2 credential provider. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



3202
3203
3204
3205
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3202

def create_oauth_2_credential_provider(params = {}, options = {})
  req = build_request(:create_oauth_2_credential_provider, params)
  req.send_request(options)
end

#create_online_evaluation_config(params = {}) ⇒ Types::CreateOnlineEvaluationConfigResponse

Creates an online evaluation configuration for continuous monitoring of agent performance. Online evaluation automatically samples live traffic from CloudWatch logs at specified rates and applies evaluators to assess agent quality in production.

Examples:

Request syntax with placeholder values


resp = client.create_online_evaluation_config({
  client_token: "ClientToken",
  online_evaluation_config_name: "EvaluationConfigName", # required
  description: "EvaluationConfigDescription",
  rule: { # required
    sampling_config: { # required
      sampling_percentage: 1.0, # required
    },
    filters: [
      {
        key: "FilterKeyString", # required
        operator: "Equals", # required, accepts Equals, NotEquals, GreaterThan, LessThan, GreaterThanOrEqual, LessThanOrEqual, Contains, NotContains
        value: { # required
          string_value: "FilterValueStringValueString",
          double_value: 1.0,
          boolean_value: false,
        },
      },
    ],
    session_config: {
      session_timeout_minutes: 1, # required
    },
  },
  data_source_config: { # required
    cloud_watch_logs: {
      log_group_names: ["LogGroupName"], # required
      service_names: ["ServiceName"], # required
    },
  },
  evaluators: [ # required
    {
      evaluator_id: "EvaluatorId",
    },
  ],
  evaluation_execution_role_arn: "RoleArn", # required
  enable_on_create: false, # required
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.online_evaluation_config_arn #=> String
resp.online_evaluation_config_id #=> String
resp.created_at #=> Time
resp.output_config.cloud_watch_config.log_group_name #=> String
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING", "ERROR"
resp.execution_status #=> String, one of "ENABLED", "DISABLED"
resp.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :online_evaluation_config_name (required, String)

    The name of the online evaluation configuration. Must be unique within your account.

  • :description (String)

    The description of the online evaluation configuration that explains its monitoring purpose and scope.

  • :rule (required, Types::Rule)

    The evaluation rule that defines sampling configuration, filters, and session detection settings for the online evaluation.

  • :data_source_config (required, Types::DataSourceConfig)

    The data source configuration that specifies CloudWatch log groups and service names to monitor for agent traces.

  • :evaluators (required, Array<Types::EvaluatorReference>)

    The list of evaluators to apply during online evaluation. Can include both built-in evaluators and custom evaluators created with ‘CreateEvaluator`.

  • :evaluation_execution_role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role that grants permissions to read from CloudWatch logs, write evaluation results, and invoke Amazon Bedrock models for evaluation. If the configuration references evaluators encrypted with a customer managed KMS key, this role must also have ‘kms:Decrypt` permission on the KMS key. The service validates this permission at configuration creation time. For more information, see [Encryption at rest for AgentCore Evaluations].

    [1]: docs.aws.amazon.com/bedrock-agentcore/latest/devguide/evaluations-encryption.html

  • :enable_on_create (required, Boolean)

    Whether to enable the online evaluation configuration immediately upon creation. If true, evaluation begins automatically.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to an AgentCore Online Evaluation Config. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



3336
3337
3338
3339
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3336

def create_online_evaluation_config(params = {}, options = {})
  req = build_request(:create_online_evaluation_config, params)
  req.send_request(options)
end

#create_payment_connector(params = {}) ⇒ Types::CreatePaymentConnectorResponse

Creates a new payment connector for a payment manager. A payment connector integrates with a supported payment provider to enable payment processing capabilities.

Examples:

Request syntax with placeholder values


resp = client.create_payment_connector({
  payment_manager_id: "PaymentManagerId", # required
  name: "PaymentConnectorName", # required
  description: "PaymentsDescription",
  type: "CoinbaseCDP", # required, accepts CoinbaseCDP, StripePrivy
  credential_provider_configurations: [ # required
    {
      coinbase_cdp: {
        credential_provider_arn: "PaymentCredentialProviderArn", # required
      },
      stripe_privy: {
        credential_provider_arn: "PaymentCredentialProviderArn", # required
      },
    },
  ],
  client_token: "ClientToken",
})

Response structure


resp.payment_connector_id #=> String
resp.payment_manager_id #=> String
resp.name #=> String
resp.type #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.credential_provider_configurations #=> Array
resp.credential_provider_configurations[0].coinbase_cdp.credential_provider_arn #=> String
resp.credential_provider_configurations[0].stripe_privy.credential_provider_arn #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the payment manager to create the connector for.

  • :name (required, String)

    The name of the payment connector.

  • :description (String)

    A description of the payment connector.

  • :type (required, String)

    The type of payment connector, which determines the payment provider integration.

  • :credential_provider_configurations (required, Array<Types::CredentialsProviderConfiguration>)

    The credential provider configurations for the payment connector. These configurations specify how the connector authenticates with the payment provider.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

Returns:

See Also:



3424
3425
3426
3427
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3424

def create_payment_connector(params = {}, options = {})
  req = build_request(:create_payment_connector, params)
  req.send_request(options)
end

#create_payment_credential_provider(params = {}) ⇒ Types::CreatePaymentCredentialProviderResponse

Creates a new payment credential provider for storing authentication credentials used by payment connectors to communicate with external payment providers.

Examples:

Request syntax with placeholder values


resp = client.create_payment_credential_provider({
  name: "CredentialProviderName", # required
  credential_provider_vendor: "CoinbaseCDP", # required, accepts CoinbaseCDP, StripePrivy
  provider_configuration_input: { # required
    coinbase_cdp_configuration: {
      api_key_id: "CoinbaseCdpApiKeyIdType", # required
      api_key_secret: "CoinbaseCdpApiKeySecretType", # required
      wallet_secret: "CoinbaseCdpWalletSecretType", # required
    },
    stripe_privy_configuration: {
      app_id: "StripePrivyAppIdType", # required
      app_secret: "StripePrivyAppSecretType", # required
      authorization_private_key: "StripePrivyAuthorizationPrivateKeyType", # required
      authorization_id: "StripePrivyAuthorizationIdType", # required
    },
  },
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.name #=> String
resp.credential_provider_vendor #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.credential_provider_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_id #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_secret_arn.secret_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_id #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_secret_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    Unique name for the payment credential provider

  • :credential_provider_vendor (required, String)

    The vendor type (e.g., CoinbaseCDP)

  • :provider_configuration_input (required, Types::PaymentProviderConfigurationInput)

    Configuration specific to the vendor, including API credentials

  • :tags (Hash<String,String>)

    Optional tags for resource organization

Returns:

See Also:



3492
3493
3494
3495
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3492

def create_payment_credential_provider(params = {}, options = {})
  req = build_request(:create_payment_credential_provider, params)
  req.send_request(options)
end

#create_payment_manager(params = {}) ⇒ Types::CreatePaymentManagerResponse

Creates a new payment manager in your Amazon Web Services account. A payment manager serves as the top-level resource for managing payment processing capabilities, including payment connectors that integrate with supported payment providers.

If you specify ‘CUSTOM_JWT` as the `authorizerType`, you must provide an `authorizerConfiguration`.

Examples:

Request syntax with placeholder values


resp = client.create_payment_manager({
  name: "PaymentManagerName", # required
  description: "PaymentsDescription",
  authorizer_type: "CUSTOM_JWT", # required, accepts CUSTOM_JWT, AWS_IAM
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  role_arn: "RoleArn", # required
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.payment_manager_arn #=> String
resp.payment_manager_id #=> String
resp.name #=> String
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.role_arn #=> String
resp.workload_identity_details.workload_identity_arn #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the payment manager.

  • :description (String)

    A description of the payment manager.

  • :authorizer_type (required, String)

    The type of authorizer to use for the payment manager.

    • ‘CUSTOM_JWT` - Authorize with a bearer token.

    • ‘AWS_IAM` - Authorize with your Amazon Web Services IAM credentials.

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    The authorizer configuration for the payment manager.

  • :role_arn (required, String)

    The Amazon Resource Name (ARN) of the IAM role that the payment manager assumes to access resources on your behalf.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the payment manager.

Returns:

See Also:



3677
3678
3679
3680
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3677

def create_payment_manager(params = {}, options = {})
  req = build_request(:create_payment_manager, params)
  req.send_request(options)
end

#create_policy(params = {}) ⇒ Types::CreatePolicyResponse

Creates a policy within the AgentCore Policy system. Policies provide real-time, deterministic control over agentic interactions with AgentCore Gateway. Using the Cedar policy language, you can define fine-grained policies that specify which interactions with Gateway tools are permitted based on input parameters and OAuth claims, ensuring agents operate within defined boundaries and business rules. The policy is validated during creation against the Cedar schema generated from the Gateway’s tools’ input schemas, which defines the available tools, their parameters, and expected data types. This is an asynchronous operation. Use the [GetPolicy] operation to poll the ‘status` field to track completion.

[1]: docs.aws.amazon.com/bedrock-agentcore-control/latest/APIReference/API_GetPolicy.html

Examples:

Request syntax with placeholder values


resp = client.create_policy({
  name: "PolicyName", # required
  definition: { # required
    cedar: {
      statement: "Statement", # required
    },
    policy_generation: {
      policy_generation_id: "ResourceId", # required
      policy_generation_asset_id: "ResourceId", # required
    },
  },
  description: "Description",
  validation_mode: "FAIL_ON_ANY_FINDINGS", # accepts FAIL_ON_ANY_FINDINGS, IGNORE_ALL_FINDINGS
  policy_engine_id: "ResourceId", # required
  client_token: "ClientToken",
})

Response structure


resp.policy_id #=> String
resp.name #=> String
resp.policy_engine_id #=> String
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The customer-assigned immutable name for the policy. Must be unique within the account. This name is used for policy identification and cannot be changed after creation.

  • :definition (required, Types::PolicyDefinition)

    The Cedar policy statement that defines the access control rules. This contains the actual policy logic written in Cedar policy language, specifying effect (permit or forbid), principals, actions, resources, and conditions for agent behavior control.

  • :description (String)

    A human-readable description of the policy’s purpose and functionality (1-4,096 characters). This helps policy administrators understand the policy’s intent, business rules, and operational scope. Use this field to document why the policy exists, what business requirement it addresses, and any special considerations for maintenance. Clear descriptions are essential for policy governance, auditing, and troubleshooting.

  • :validation_mode (String)

    The validation mode for the policy creation. Determines how Cedar analyzer validation results are handled during policy creation. FAIL_ON_ANY_FINDINGS (default) runs the Cedar analyzer to validate the policy against the Cedar schema and tool context, failing creation if the analyzer detects any validation issues to ensure strict conformance. IGNORE_ALL_FINDINGS runs the Cedar analyzer but allows policy creation even if validation issues are detected, useful for testing or when the policy schema is evolving. Use FAIL_ON_ANY_FINDINGS for production policies to ensure correctness, and IGNORE_ALL_FINDINGS only when you understand and accept the analyzer findings.

  • :policy_engine_id (required, String)

    The identifier of the policy engine which contains this policy. Policy engines group related policies and provide the execution context for policy evaluation.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure the idempotency of the request. The AWS SDK automatically generates this token, so you don’t need to provide it in most cases. If you retry a request with the same client token, the service returns the same response without creating a duplicate policy.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



3798
3799
3800
3801
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3798

def create_policy(params = {}, options = {})
  req = build_request(:create_policy, params)
  req.send_request(options)
end

#create_policy_engine(params = {}) ⇒ Types::CreatePolicyEngineResponse

Creates a new policy engine within the AgentCore Policy system. A policy engine is a collection of policies that evaluates and authorizes agent tool calls. When associated with Gateways (each Gateway can be associated with at most one policy engine, but multiple Gateways can be associated with the same engine), the policy engine intercepts all agent requests and determines whether to allow or deny each action based on the defined policies. This is an asynchronous operation. Use the [GetPolicyEngine] operation to poll the ‘status` field to track completion.

[1]: docs.aws.amazon.com/bedrock-agentcore-control/latest/APIReference/API_GetPolicyEngine.html

Examples:

Request syntax with placeholder values


resp = client.create_policy_engine({
  name: "PolicyEngineName", # required
  description: "Description",
  client_token: "ClientToken",
  encryption_key_arn: "KmsKeyArn",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.policy_engine_id #=> String
resp.name #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_engine_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.encryption_key_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The customer-assigned immutable name for the policy engine. This name identifies the policy engine and cannot be changed after creation.

  • :description (String)

    A human-readable description of the policy engine’s purpose and scope (1-4,096 characters). This helps administrators understand the policy engine’s role in the overall governance strategy. Document which Gateway this engine will be associated with, what types of tools or workflows it governs, and the team or service responsible for maintaining it. Clear descriptions are essential when managing multiple policy engines across different services or environments.

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request with the same client token, the service returns the same response without creating a duplicate policy engine.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :encryption_key_arn (String)

    The Amazon Resource Name (ARN) of the KMS key used to encrypt the policy engine data.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to an AgentCore Policy. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



3889
3890
3891
3892
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3889

def create_policy_engine(params = {}, options = {})
  req = build_request(:create_policy_engine, params)
  req.send_request(options)
end

#create_registry(params = {}) ⇒ Types::CreateRegistryResponse

Creates a new registry in your Amazon Web Services account. A registry serves as a centralized catalog for organizing and managing registry records, including MCP servers, A2A agents, agent skills, and custom resource types.

If you specify ‘CUSTOM_JWT` as the `authorizerType`, you must provide an `authorizerConfiguration`.

Examples:

Request syntax with placeholder values


resp = client.create_registry({
  name: "RegistryName", # required
  description: "Description",
  authorizer_type: "CUSTOM_JWT", # accepts CUSTOM_JWT, AWS_IAM
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  client_token: "ClientToken",
  approval_configuration: {
    auto_approval: false,
  },
})

Response structure


resp.registry_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the registry. The name must be unique within your account and can contain alphanumeric characters and underscores.

  • :description (String)

    A description of the registry.

  • :authorizer_type (String)

    The type of authorizer to use for the registry. This controls the authorization method for the Search and Invoke APIs used by consumers, and does not affect the standard CRUDL APIs for registry and registry record management used by administrators.

    • ‘CUSTOM_JWT` - Authorize with a bearer token.

    • ‘AWS_IAM` - Authorize with your Amazon Web Services IAM credentials.

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    The authorizer configuration for the registry. Required if ‘authorizerType` is `CUSTOM_JWT`. For details, see the `AuthorizerConfiguration` data type.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :approval_configuration (Types::ApprovalConfiguration)

    The approval configuration for registry records. Controls whether records require explicit approval before becoming active. See the ‘ApprovalConfiguration` data type for supported configuration options.

Returns:

See Also:



4023
4024
4025
4026
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4023

def create_registry(params = {}, options = {})
  req = build_request(:create_registry, params)
  req.send_request(options)
end

#create_registry_record(params = {}) ⇒ Types::CreateRegistryRecordResponse

Creates a new registry record within the specified registry. A registry record represents an individual AI resource’s metadata in the registry. This could be an MCP server (and associated tools), A2A agent, agent skill, or a custom resource with a custom schema.

The record is processed asynchronously and returns HTTP 202 Accepted.

Examples:

Request syntax with placeholder values


resp = client.create_registry_record({
  registry_id: "RegistryIdentifier", # required
  name: "RegistryRecordName", # required
  description: "Description",
  descriptor_type: "MCP", # required, accepts MCP, A2A, CUSTOM, AGENT_SKILLS
  descriptors: {
    mcp: {
      server: {
        schema_version: "SchemaVersion",
        inline_content: "InlineContent",
      },
      tools: {
        protocol_version: "SchemaVersion",
        inline_content: "InlineContent",
      },
    },
    a2a: {
      agent_card: {
        schema_version: "SchemaVersion",
        inline_content: "InlineContent",
      },
    },
    custom: {
      inline_content: "InlineContent",
    },
    agent_skills: {
      skill_md: {
        inline_content: "InlineContent",
      },
      skill_definition: {
        schema_version: "SchemaVersion",
        inline_content: "InlineContent",
      },
    },
  },
  record_version: "RegistryRecordVersion",
  synchronization_type: "URL", # accepts URL
  synchronization_configuration: {
    from_url: {
      url: "McpServerUrl", # required
      credential_provider_configurations: [
        {
          credential_provider_type: "OAUTH", # required, accepts OAUTH, IAM
          credential_provider: { # required
            oauth_credential_provider: {
              provider_arn: "CredentialProviderArn", # required
              grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS
              scopes: ["String"],
              custom_parameters: {
                "String" => "String",
              },
            },
            iam_credential_provider: {
              role_arn: "IamRoleArn",
              service: "IamSigningServiceName",
              region: "IamSigningRegion",
            },
          },
        },
      ],
    },
  },
  client_token: "ClientToken",
})

Response structure


resp.record_arn #=> String
resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry where the record will be created. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :name (required, String)

    The name of the registry record.

  • :description (String)

    A description of the registry record.

  • :descriptor_type (required, String)

    The descriptor type of the registry record.

    • ‘MCP` - Model Context Protocol descriptor for MCP-compatible servers and tools.

    • ‘A2A` - Agent-to-Agent protocol descriptor.

    • ‘CUSTOM` - Custom descriptor type for resources such as APIs, Lambda functions, or servers not conforming to a standard protocol.

    • ‘AGENT_SKILLS` - Agent skills descriptor for defining agent skill definitions.

  • :descriptors (Types::Descriptors)

    The descriptor-type-specific configuration containing the resource schema and metadata. The structure of this field depends on the ‘descriptorType` you specify.

  • :record_version (String)

    The version of the registry record. Use this to track different versions of the record’s content.

  • :synchronization_type (String)

    The type of synchronization to use for keeping the record metadata up to date from an external source. Possible values include ‘FROM_URL` and `NONE`.

  • :synchronization_configuration (Types::SynchronizationConfiguration)

    The configuration for synchronizing registry record metadata from an external source, such as a URL-based MCP server.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

Returns:

See Also:



4173
4174
4175
4176
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4173

def create_registry_record(params = {}, options = {})
  req = build_request(:create_registry_record, params)
  req.send_request(options)
end

#create_workload_identity(params = {}) ⇒ Types::CreateWorkloadIdentityResponse

Creates a new workload identity.

Examples:

Request syntax with placeholder values


resp = client.create_workload_identity({
  name: "WorkloadIdentityNameType", # required
  allowed_resource_oauth_2_return_urls: ["ResourceOauth2ReturnUrlType"],
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.name #=> String
resp.workload_identity_arn #=> String
resp.allowed_resource_oauth_2_return_urls #=> Array
resp.allowed_resource_oauth_2_return_urls[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the workload identity. The name must be unique within your account.

  • :allowed_resource_oauth_2_return_urls (Array<String>)

    The list of allowed OAuth2 return URLs for resources associated with this workload identity.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the workload identity. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.

Returns:

See Also:



4220
4221
4222
4223
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4220

def create_workload_identity(params = {}, options = {})
  req = build_request(:create_workload_identity, params)
  req.send_request(options)
end

#delete_agent_runtime(params = {}) ⇒ Types::DeleteAgentRuntimeResponse

Deletes an Amazon Bedrock AgentCore Runtime.

Examples:

Request syntax with placeholder values


resp = client.delete_agent_runtime({
  agent_runtime_id: "AgentRuntimeId", # required
  client_token: "ClientToken",
})

Response structure


resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.agent_runtime_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the service ignores the request but does not return an error.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



4259
4260
4261
4262
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4259

def delete_agent_runtime(params = {}, options = {})
  req = build_request(:delete_agent_runtime, params)
  req.send_request(options)
end

#delete_agent_runtime_endpoint(params = {}) ⇒ Types::DeleteAgentRuntimeEndpointResponse

Deletes an AAgentCore Runtime endpoint.

Examples:

Request syntax with placeholder values


resp = client.delete_agent_runtime_endpoint({
  agent_runtime_id: "AgentRuntimeId", # required
  endpoint_name: "EndpointName", # required
  client_token: "ClientToken",
})

Response structure


resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.agent_runtime_id #=> String
resp.endpoint_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime associated with the endpoint.

  • :endpoint_name (required, String)

    The name of the AgentCore Runtime endpoint to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



4304
4305
4306
4307
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4304

def delete_agent_runtime_endpoint(params = {}, options = {})
  req = build_request(:delete_agent_runtime_endpoint, params)
  req.send_request(options)
end

#delete_api_key_credential_provider(params = {}) ⇒ Struct

Deletes an API key credential provider.

Examples:

Request syntax with placeholder values


resp = client.delete_api_key_credential_provider({
  name: "CredentialProviderName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the API key credential provider to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4326
4327
4328
4329
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4326

def delete_api_key_credential_provider(params = {}, options = {})
  req = build_request(:delete_api_key_credential_provider, params)
  req.send_request(options)
end

#delete_browser(params = {}) ⇒ Types::DeleteBrowserResponse

Deletes a custom browser.

Examples:

Request syntax with placeholder values


resp = client.delete_browser({
  browser_id: "BrowserId", # required
  client_token: "ClientToken",
})

Response structure


resp.browser_id #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :browser_id (required, String)

    The unique identifier of the browser to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



4366
4367
4368
4369
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4366

def delete_browser(params = {}, options = {})
  req = build_request(:delete_browser, params)
  req.send_request(options)
end

#delete_browser_profile(params = {}) ⇒ Types::DeleteBrowserProfileResponse

Deletes a browser profile.

Examples:

Request syntax with placeholder values


resp = client.delete_browser_profile({
  profile_id: "BrowserProfileId", # required
  client_token: "ClientToken",
})

Response structure


resp.profile_id #=> String
resp.profile_arn #=> String
resp.status #=> String, one of "READY", "DELETING", "DELETED", "SAVING"
resp.last_updated_at #=> Time
resp.last_saved_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :profile_id (required, String)

    The unique identifier of the browser profile to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



4410
4411
4412
4413
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4410

def delete_browser_profile(params = {}, options = {})
  req = build_request(:delete_browser_profile, params)
  req.send_request(options)
end

#delete_code_interpreter(params = {}) ⇒ Types::DeleteCodeInterpreterResponse

Deletes a custom code interpreter.

Examples:

Request syntax with placeholder values


resp = client.delete_code_interpreter({
  code_interpreter_id: "CodeInterpreterId", # required
  client_token: "ClientToken",
})

Response structure


resp.code_interpreter_id #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :code_interpreter_id (required, String)

    The unique identifier of the code interpreter to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



4450
4451
4452
4453
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4450

def delete_code_interpreter(params = {}, options = {})
  req = build_request(:delete_code_interpreter, params)
  req.send_request(options)
end

#delete_configuration_bundle(params = {}) ⇒ Types::DeleteConfigurationBundleResponse

Deletes a configuration bundle and all of its versions.

Examples:

Request syntax with placeholder values


resp = client.delete_configuration_bundle({
  bundle_id: "ConfigurationBundleId", # required
})

Response structure


resp.bundle_id #=> String
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :bundle_id (required, String)

    The unique identifier of the configuration bundle to delete.

Returns:

See Also:



4480
4481
4482
4483
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4480

def delete_configuration_bundle(params = {}, options = {})
  req = build_request(:delete_configuration_bundle, params)
  req.send_request(options)
end

#delete_evaluator(params = {}) ⇒ Types::DeleteEvaluatorResponse

Deletes a custom evaluator. Builtin evaluators cannot be deleted. The evaluator must not be referenced by any active online evaluation configurations.

Examples:

Request syntax with placeholder values


resp = client.delete_evaluator({
  evaluator_id: "EvaluatorId", # required
})

Response structure


resp.evaluator_arn #=> String
resp.evaluator_id #=> String
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :evaluator_id (required, String)

    The unique identifier of the evaluator to delete.

Returns:

See Also:



4514
4515
4516
4517
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4514

def delete_evaluator(params = {}, options = {})
  req = build_request(:delete_evaluator, params)
  req.send_request(options)
end

#delete_gateway(params = {}) ⇒ Types::DeleteGatewayResponse

Deletes a gateway.

Examples:

Request syntax with placeholder values


resp = client.delete_gateway({
  gateway_identifier: "GatewayIdentifier", # required
})

Response structure


resp.gateway_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to delete.

Returns:

See Also:



4547
4548
4549
4550
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4547

def delete_gateway(params = {}, options = {})
  req = build_request(:delete_gateway, params)
  req.send_request(options)
end

#delete_gateway_rule(params = {}) ⇒ Types::DeleteGatewayRuleResponse

Deletes a gateway rule.

Examples:

Request syntax with placeholder values


resp = client.delete_gateway_rule({
  gateway_identifier: "GatewayIdentifier", # required
  rule_id: "GatewayRuleId", # required
})

Response structure


resp.rule_id #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway containing the rule.

  • :rule_id (required, String)

    The unique identifier of the rule to delete.

Returns:

See Also:



4581
4582
4583
4584
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4581

def delete_gateway_rule(params = {}, options = {})
  req = build_request(:delete_gateway_rule, params)
  req.send_request(options)
end

#delete_gateway_target(params = {}) ⇒ Types::DeleteGatewayTargetResponse

Deletes a gateway target.

You cannot delete a target that is in a pending authorization state (‘CREATE_PENDING_AUTH`, `UPDATE_PENDING_AUTH`, or `SYNCHRONIZE_PENDING_AUTH`). Wait for the authorization to complete or fail before deleting the target.

Examples:

Request syntax with placeholder values


resp = client.delete_gateway_target({
  gateway_identifier: "GatewayIdentifier", # required
  target_id: "TargetId", # required
})

Response structure


resp.gateway_arn #=> String
resp.target_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED", "SYNCHRONIZING", "SYNCHRONIZE_UNSUCCESSFUL", "CREATE_PENDING_AUTH", "UPDATE_PENDING_AUTH", "SYNCHRONIZE_PENDING_AUTH"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The unique identifier of the gateway associated with the target.

  • :target_id (required, String)

    The unique identifier of the gateway target to delete.

Returns:

See Also:



4625
4626
4627
4628
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4625

def delete_gateway_target(params = {}, options = {})
  req = build_request(:delete_gateway_target, params)
  req.send_request(options)
end

#delete_harness(params = {}) ⇒ Types::DeleteHarnessResponse

Operation to delete a Harness.

Examples:

Request syntax with placeholder values


resp = client.delete_harness({
  harness_id: "HarnessId", # required
  client_token: "ClientToken",
})

Response structure


resp.harness.harness_id #=> String
resp.harness.harness_name #=> String
resp.harness.arn #=> String
resp.harness.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.harness.execution_role_arn #=> String
resp.harness.created_at #=> Time
resp.harness.updated_at #=> Time
resp.harness.model.bedrock_model_config.model_id #=> String
resp.harness.model.bedrock_model_config.max_tokens #=> Integer
resp.harness.model.bedrock_model_config.temperature #=> Float
resp.harness.model.bedrock_model_config.top_p #=> Float
resp.harness.model.open_ai_model_config.model_id #=> String
resp.harness.model.open_ai_model_config.api_key_arn #=> String
resp.harness.model.open_ai_model_config.max_tokens #=> Integer
resp.harness.model.open_ai_model_config.temperature #=> Float
resp.harness.model.open_ai_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.model_id #=> String
resp.harness.model.gemini_model_config.api_key_arn #=> String
resp.harness.model.gemini_model_config.max_tokens #=> Integer
resp.harness.model.gemini_model_config.temperature #=> Float
resp.harness.model.gemini_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.top_k #=> Integer
resp.harness.system_prompt #=> Array
resp.harness.system_prompt[0].text #=> String
resp.harness.tools #=> Array
resp.harness.tools[0].type #=> String, one of "remote_mcp", "agentcore_browser", "agentcore_gateway", "inline_function", "agentcore_code_interpreter"
resp.harness.tools[0].name #=> String
resp.harness.tools[0].config.remote_mcp.url #=> String
resp.harness.tools[0].config.remote_mcp.headers #=> Hash
resp.harness.tools[0].config.remote_mcp.headers["HttpHeaderKey"] #=> String
resp.harness.tools[0].config.agent_core_browser.browser_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.gateway_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.provider_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes #=> Array
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes[0] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters #=> Hash
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.default_return_url #=> String
resp.harness.tools[0].config.inline_function.description #=> String
resp.harness.tools[0].config.agent_core_code_interpreter.code_interpreter_arn #=> String
resp.harness.skills #=> Array
resp.harness.skills[0].path #=> String
resp.harness.allowed_tools #=> Array
resp.harness.allowed_tools[0] #=> String
resp.harness.truncation.strategy #=> String, one of "sliding_window", "summarization", "none"
resp.harness.truncation.config.sliding_window.messages_count #=> Integer
resp.harness.truncation.config.summarization.summary_ratio #=> Float
resp.harness.truncation.config.summarization.preserve_recent_messages #=> Integer
resp.harness.truncation.config.summarization.summarization_system_prompt #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_arn #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_name #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_id #=> String
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.idle_runtime_session_timeout #=> Integer
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.max_lifetime #=> Integer
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode #=> String, one of "PUBLIC", "VPC"
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups[0] #=> String
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets[0] #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations #=> Array
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].session_storage.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.mount_path #=> String
resp.harness.environment_artifact.container_configuration.container_uri #=> String
resp.harness.environment_variables #=> Hash
resp.harness.environment_variables["EnvironmentVariableKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.memory.agent_core_memory_configuration.arn #=> String
resp.harness.memory.agent_core_memory_configuration.actor_id #=> String
resp.harness.memory.agent_core_memory_configuration.messages_count #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config #=> Hash
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].top_k #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].relevance_score #=> Float
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].strategy_id #=> String
resp.harness.max_iterations #=> Integer
resp.harness.max_tokens #=> Integer
resp.harness.timeout_seconds #=> Integer
resp.harness.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



4776
4777
4778
4779
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4776

def delete_harness(params = {}, options = {})
  req = build_request(:delete_harness, params)
  req.send_request(options)
end

#delete_memory(params = {}) ⇒ Types::DeleteMemoryOutput

Deletes an Amazon Bedrock AgentCore Memory resource.

Examples:

Request syntax with placeholder values


resp = client.delete_memory({
  client_token: "DeleteMemoryInputClientTokenString",
  memory_id: "MemoryId", # required
})

Response structure


resp.memory_id #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A client token is used for keeping track of idempotent requests. It can contain a session id which can be around 250 chars, combined with a unique AWS identifier.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :memory_id (required, String)

    The unique identifier of the memory to delete.

Returns:

See Also:



4815
4816
4817
4818
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4815

def delete_memory(params = {}, options = {})
  req = build_request(:delete_memory, params)
  req.send_request(options)
end

#delete_oauth_2_credential_provider(params = {}) ⇒ Struct

Deletes an OAuth2 credential provider.

Examples:

Request syntax with placeholder values


resp = client.delete_oauth_2_credential_provider({
  name: "CredentialProviderName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the OAuth2 credential provider to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4837
4838
4839
4840
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4837

def delete_oauth_2_credential_provider(params = {}, options = {})
  req = build_request(:delete_oauth_2_credential_provider, params)
  req.send_request(options)
end

#delete_online_evaluation_config(params = {}) ⇒ Types::DeleteOnlineEvaluationConfigResponse

Deletes an online evaluation configuration and stops any ongoing evaluation processes associated with it.

Examples:

Request syntax with placeholder values


resp = client.delete_online_evaluation_config({
  online_evaluation_config_id: "OnlineEvaluationConfigId", # required
})

Response structure


resp.online_evaluation_config_arn #=> String
resp.online_evaluation_config_id #=> String
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING", "ERROR"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :online_evaluation_config_id (required, String)

    The unique identifier of the online evaluation configuration to delete.

Returns:

See Also:



4871
4872
4873
4874
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4871

def delete_online_evaluation_config(params = {}, options = {})
  req = build_request(:delete_online_evaluation_config, params)
  req.send_request(options)
end

#delete_payment_connector(params = {}) ⇒ Types::DeletePaymentConnectorResponse

Deletes a payment connector.

Examples:

Request syntax with placeholder values


resp = client.delete_payment_connector({
  payment_manager_id: "PaymentManagerId", # required
  payment_connector_id: "PaymentConnectorId", # required
  client_token: "ClientToken",
})

Response structure


resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.payment_connector_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the parent payment manager.

  • :payment_connector_id (required, String)

    The unique identifier of the payment connector to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

Returns:

See Also:



4920
4921
4922
4923
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4920

def delete_payment_connector(params = {}, options = {})
  req = build_request(:delete_payment_connector, params)
  req.send_request(options)
end

#delete_payment_credential_provider(params = {}) ⇒ Struct

Deletes a payment credential provider and its associated stored credentials.

Examples:

Request syntax with placeholder values


resp = client.delete_payment_credential_provider({
  name: "CredentialProviderName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the payment credential provider to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4943
4944
4945
4946
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4943

def delete_payment_credential_provider(params = {}, options = {})
  req = build_request(:delete_payment_credential_provider, params)
  req.send_request(options)
end

#delete_payment_manager(params = {}) ⇒ Types::DeletePaymentManagerResponse

Deletes a payment manager. All payment connectors associated with the payment manager must be deleted before the payment manager can be deleted. This operation initiates the deletion process asynchronously.

Examples:

Request syntax with placeholder values


resp = client.delete_payment_manager({
  payment_manager_id: "PaymentManagerId", # required
  client_token: "ClientToken",
})

Response structure


resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.payment_manager_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the payment manager to delete.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

Returns:

See Also:



4990
4991
4992
4993
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4990

def delete_payment_manager(params = {}, options = {})
  req = build_request(:delete_payment_manager, params)
  req.send_request(options)
end

#delete_policy(params = {}) ⇒ Types::DeletePolicyResponse

Deletes an existing policy from the AgentCore Policy system. Once deleted, the policy can no longer be used for agent behavior control and all references to it become invalid. This is an asynchronous operation. Use the ‘GetPolicy` operation to poll the `status` field to track completion.

Examples:

Request syntax with placeholder values


resp = client.delete_policy({
  policy_engine_id: "ResourceId", # required
  policy_id: "ResourceId", # required
})

Response structure


resp.policy_id #=> String
resp.name #=> String
resp.policy_engine_id #=> String
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The identifier of the policy engine that manages the policy to be deleted. This ensures the policy is deleted from the correct policy engine context.

  • :policy_id (required, String)

    The unique identifier of the policy to be deleted. This must be a valid policy ID that exists within the specified policy engine.

Returns:

See Also:



5050
5051
5052
5053
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5050

def delete_policy(params = {}, options = {})
  req = build_request(:delete_policy, params)
  req.send_request(options)
end

#delete_policy_engine(params = {}) ⇒ Types::DeletePolicyEngineResponse

Deletes an existing policy engine from the AgentCore Policy system. The policy engine must not have any associated policies before deletion. Once deleted, the policy engine and all its configurations become unavailable for policy management and evaluation. This is an asynchronous operation. Use the ‘GetPolicyEngine` operation to poll the `status` field to track completion.

Examples:

Request syntax with placeholder values


resp = client.delete_policy_engine({
  policy_engine_id: "ResourceId", # required
})

Response structure


resp.policy_engine_id #=> String
resp.name #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_engine_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.encryption_key_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The unique identifier of the policy engine to be deleted. This must be a valid policy engine ID that exists within the account.

Returns:

See Also:



5101
5102
5103
5104
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5101

def delete_policy_engine(params = {}, options = {})
  req = build_request(:delete_policy_engine, params)
  req.send_request(options)
end

#delete_registry(params = {}) ⇒ Types::DeleteRegistryResponse

Deletes a registry. The registry must contain zero records before it can be deleted. This operation initiates the deletion process asynchronously.

Examples:

Request syntax with placeholder values


resp = client.delete_registry({
  registry_id: "RegistryIdentifier", # required
})

Response structure


resp.status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry to delete. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

Returns:

See Also:



5132
5133
5134
5135
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5132

def delete_registry(params = {}, options = {})
  req = build_request(:delete_registry, params)
  req.send_request(options)
end

#delete_registry_record(params = {}) ⇒ Struct

Deletes a registry record. The record’s status transitions to ‘DELETING` and the record is removed asynchronously.

Examples:

Request syntax with placeholder values


resp = client.delete_registry_record({
  registry_id: "RegistryIdentifier", # required
  record_id: "RecordIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry containing the record. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :record_id (required, String)

    The identifier of the registry record to delete. You can specify either the Amazon Resource Name (ARN) or the ID of the record.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5161
5162
5163
5164
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5161

def delete_registry_record(params = {}, options = {})
  req = build_request(:delete_registry_record, params)
  req.send_request(options)
end

#delete_resource_policy(params = {}) ⇒ Struct

Deletes the resource-based policy for a specified resource.

<note markdown=“1”> This feature is currently available only for AgentCore Runtime and Gateway.

</note>

Examples:

Request syntax with placeholder values


resp = client.delete_resource_policy({
  resource_arn: "BedrockAgentcoreResourceArn", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource for which to delete the resource policy.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5189
5190
5191
5192
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5189

def delete_resource_policy(params = {}, options = {})
  req = build_request(:delete_resource_policy, params)
  req.send_request(options)
end

#delete_workload_identity(params = {}) ⇒ Struct

Deletes a workload identity.

Examples:

Request syntax with placeholder values


resp = client.delete_workload_identity({
  name: "WorkloadIdentityNameType", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the workload identity to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5211
5212
5213
5214
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5211

def delete_workload_identity(params = {}, options = {})
  req = build_request(:delete_workload_identity, params)
  req.send_request(options)
end

#get_agent_runtime(params = {}) ⇒ Types::GetAgentRuntimeResponse

Gets an Amazon Bedrock AgentCore Runtime.

Examples:

Request syntax with placeholder values


resp = client.get_agent_runtime({
  agent_runtime_id: "AgentRuntimeId", # required
  agent_runtime_version: "AgentRuntimeVersion",
})

Response structure


resp.agent_runtime_arn #=> String
resp.agent_runtime_name #=> String
resp.agent_runtime_id #=> String
resp.agent_runtime_version #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.role_arn #=> String
resp.network_configuration.network_mode #=> String, one of "PUBLIC", "VPC"
resp.network_configuration.network_mode_config.security_groups #=> Array
resp.network_configuration.network_mode_config.security_groups[0] #=> String
resp.network_configuration.network_mode_config.subnets #=> Array
resp.network_configuration.network_mode_config.subnets[0] #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.lifecycle_configuration.idle_runtime_session_timeout #=> Integer
resp.lifecycle_configuration.max_lifetime #=> Integer
resp.failure_reason #=> String
resp.description #=> String
resp.workload_identity_details.workload_identity_arn #=> String
resp.agent_runtime_artifact.container_configuration.container_uri #=> String
resp.agent_runtime_artifact.code_configuration.code.s3.bucket #=> String
resp.agent_runtime_artifact.code_configuration.code.s3.prefix #=> String
resp.agent_runtime_artifact.code_configuration.code.s3.version_id #=> String
resp.agent_runtime_artifact.code_configuration.runtime #=> String, one of "PYTHON_3_10", "PYTHON_3_11", "PYTHON_3_12", "PYTHON_3_13", "PYTHON_3_14", "NODE_22"
resp.agent_runtime_artifact.code_configuration.entry_point #=> Array
resp.agent_runtime_artifact.code_configuration.entry_point[0] #=> String
resp.protocol_configuration.server_protocol #=> String, one of "MCP", "HTTP", "A2A", "AGUI"
resp.environment_variables #=> Hash
resp.environment_variables["EnvironmentVariableKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.request_header_configuration.request_header_allowlist #=> Array
resp.request_header_configuration.request_header_allowlist[0] #=> String
resp..require_mmdsv2 #=> Boolean
resp.filesystem_configurations #=> Array
resp.filesystem_configurations[0].session_storage.mount_path #=> String
resp.filesystem_configurations[0].s3_files_access_point.access_point_arn #=> String
resp.filesystem_configurations[0].s3_files_access_point.mount_path #=> String
resp.filesystem_configurations[0].efs_access_point.access_point_arn #=> String
resp.filesystem_configurations[0].efs_access_point.mount_path #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime to retrieve.

  • :agent_runtime_version (String)

    The version of the AgentCore Runtime to retrieve.

Returns:

See Also:



5334
5335
5336
5337
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5334

def get_agent_runtime(params = {}, options = {})
  req = build_request(:get_agent_runtime, params)
  req.send_request(options)
end

#get_agent_runtime_endpoint(params = {}) ⇒ Types::GetAgentRuntimeEndpointResponse

Gets information about an Amazon Secure AgentEndpoint.

Examples:

Request syntax with placeholder values


resp = client.get_agent_runtime_endpoint({
  agent_runtime_id: "AgentRuntimeId", # required
  endpoint_name: "EndpointName", # required
})

Response structure


resp.live_version #=> String
resp.target_version #=> String
resp.agent_runtime_endpoint_arn #=> String
resp.agent_runtime_arn #=> String
resp.description #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.failure_reason #=> String
resp.name #=> String
resp.id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime associated with the endpoint.

  • :endpoint_name (required, String)

    The name of the AgentCore Runtime endpoint to retrieve.

Returns:

See Also:



5387
5388
5389
5390
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5387

def get_agent_runtime_endpoint(params = {}, options = {})
  req = build_request(:get_agent_runtime_endpoint, params)
  req.send_request(options)
end

#get_api_key_credential_provider(params = {}) ⇒ Types::GetApiKeyCredentialProviderResponse

Retrieves information about an API key credential provider.

Examples:

Request syntax with placeholder values


resp = client.get_api_key_credential_provider({
  name: "CredentialProviderName", # required
})

Response structure


resp.api_key_secret_arn.secret_arn #=> String
resp.name #=> String
resp.credential_provider_arn #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the API key credential provider to retrieve.

Returns:

See Also:



5423
5424
5425
5426
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5423

def get_api_key_credential_provider(params = {}, options = {})
  req = build_request(:get_api_key_credential_provider, params)
  req.send_request(options)
end

#get_browser(params = {}) ⇒ Types::GetBrowserResponse

Gets information about a custom browser.

Examples:

Request syntax with placeholder values


resp = client.get_browser({
  browser_id: "BrowserId", # required
})

Response structure


resp.browser_id #=> String
resp.browser_arn #=> String
resp.name #=> String
resp.description #=> String
resp.execution_role_arn #=> String
resp.network_configuration.network_mode #=> String, one of "PUBLIC", "VPC"
resp.network_configuration.vpc_config.security_groups #=> Array
resp.network_configuration.vpc_config.security_groups[0] #=> String
resp.network_configuration.vpc_config.subnets #=> Array
resp.network_configuration.vpc_config.subnets[0] #=> String
resp.recording.enabled #=> Boolean
resp.recording.s3_location.bucket #=> String
resp.recording.s3_location.prefix #=> String
resp.recording.s3_location.version_id #=> String
resp.browser_signing.enabled #=> Boolean
resp.enterprise_policies #=> Array
resp.enterprise_policies[0].location.s3.bucket #=> String
resp.enterprise_policies[0].location.s3.prefix #=> String
resp.enterprise_policies[0].location.s3.version_id #=> String
resp.enterprise_policies[0].type #=> String, one of "MANAGED", "RECOMMENDED"
resp.certificates #=> Array
resp.certificates[0].location.secrets_manager.secret_arn #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
resp.failure_reason #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :browser_id (required, String)

    The unique identifier of the browser to retrieve.

Returns:

See Also:



5489
5490
5491
5492
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5489

def get_browser(params = {}, options = {})
  req = build_request(:get_browser, params)
  req.send_request(options)
end

#get_browser_profile(params = {}) ⇒ Types::GetBrowserProfileResponse

Gets information about a browser profile.

Examples:

Request syntax with placeholder values


resp = client.get_browser_profile({
  profile_id: "BrowserProfileId", # required
})

Response structure


resp.profile_id #=> String
resp.profile_arn #=> String
resp.name #=> String
resp.description #=> String
resp.status #=> String, one of "READY", "DELETING", "DELETED", "SAVING"
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.last_saved_at #=> Time
resp.last_saved_browser_session_id #=> String
resp.last_saved_browser_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :profile_id (required, String)

    The unique identifier of the browser profile to retrieve.

Returns:

See Also:



5535
5536
5537
5538
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5535

def get_browser_profile(params = {}, options = {})
  req = build_request(:get_browser_profile, params)
  req.send_request(options)
end

#get_code_interpreter(params = {}) ⇒ Types::GetCodeInterpreterResponse

Gets information about a custom code interpreter.

Examples:

Request syntax with placeholder values


resp = client.get_code_interpreter({
  code_interpreter_id: "CodeInterpreterId", # required
})

Response structure


resp.code_interpreter_id #=> String
resp.code_interpreter_arn #=> String
resp.name #=> String
resp.description #=> String
resp.execution_role_arn #=> String
resp.network_configuration.network_mode #=> String, one of "PUBLIC", "SANDBOX", "VPC"
resp.network_configuration.vpc_config.security_groups #=> Array
resp.network_configuration.vpc_config.security_groups[0] #=> String
resp.network_configuration.vpc_config.subnets #=> Array
resp.network_configuration.vpc_config.subnets[0] #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
resp.certificates #=> Array
resp.certificates[0].location.secrets_manager.secret_arn #=> String
resp.failure_reason #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :code_interpreter_id (required, String)

    The unique identifier of the code interpreter to retrieve.

Returns:

See Also:



5588
5589
5590
5591
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5588

def get_code_interpreter(params = {}, options = {})
  req = build_request(:get_code_interpreter, params)
  req.send_request(options)
end

#get_configuration_bundle(params = {}) ⇒ Types::GetConfigurationBundleResponse

Gets the latest version of a configuration bundle. By default, returns the latest version on the mainline branch. Use ‘GetConfigurationBundleVersion` to retrieve a specific historical version.

Examples:

Request syntax with placeholder values


resp = client.get_configuration_bundle({
  bundle_id: "ConfigurationBundleId", # required
  branch_name: "BranchName",
})

Response structure


resp.bundle_arn #=> String
resp.bundle_id #=> String
resp.bundle_name #=> String
resp.description #=> String
resp.version_id #=> String
resp.components #=> Hash
resp..parent_version_ids #=> Array
resp..parent_version_ids[0] #=> String
resp..branch_name #=> String
resp..created_by.name #=> String
resp..created_by.arn #=> String
resp..commit_message #=> String
resp.created_at #=> Time
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :bundle_id (required, String)

    The unique identifier of the configuration bundle to retrieve.

  • :branch_name (String)

    The branch name to get the latest version from. If not specified, returns the latest version on the mainline branch.

Returns:

See Also:



5645
5646
5647
5648
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5645

def get_configuration_bundle(params = {}, options = {})
  req = build_request(:get_configuration_bundle, params)
  req.send_request(options)
end

#get_configuration_bundle_version(params = {}) ⇒ Types::GetConfigurationBundleVersionResponse

Gets a specific version of a configuration bundle by its version identifier.

Examples:

Request syntax with placeholder values


resp = client.get_configuration_bundle_version({
  bundle_id: "ConfigurationBundleId", # required
  version_id: "ConfigurationBundleVersion", # required
})

Response structure


resp.bundle_arn #=> String
resp.bundle_id #=> String
resp.bundle_name #=> String
resp.description #=> String
resp.version_id #=> String
resp.components #=> Hash
resp..parent_version_ids #=> Array
resp..parent_version_ids[0] #=> String
resp..branch_name #=> String
resp..created_by.name #=> String
resp..created_by.arn #=> String
resp..commit_message #=> String
resp.created_at #=> Time
resp.version_created_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :bundle_id (required, String)

    The unique identifier of the configuration bundle.

  • :version_id (required, String)

    The version identifier of the configuration bundle version to retrieve.

Returns:

See Also:



5700
5701
5702
5703
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5700

def get_configuration_bundle_version(params = {}, options = {})
  req = build_request(:get_configuration_bundle_version, params)
  req.send_request(options)
end

#get_evaluator(params = {}) ⇒ Types::GetEvaluatorResponse

Retrieves detailed information about an evaluator, including its configuration, status, and metadata. Works with both built-in and custom evaluators.

Examples:

Request syntax with placeholder values


resp = client.get_evaluator({
  evaluator_id: "EvaluatorId", # required
  included_data: "ALL_DATA", # accepts ALL_DATA, METADATA_ONLY
})

Response structure


resp.evaluator_arn #=> String
resp.evaluator_id #=> String
resp.evaluator_name #=> String
resp.description #=> String
resp.evaluator_config.llm_as_a_judge.instructions #=> String
resp.evaluator_config.llm_as_a_judge.rating_scale.numerical #=> Array
resp.evaluator_config.llm_as_a_judge.rating_scale.numerical[0].definition #=> String
resp.evaluator_config.llm_as_a_judge.rating_scale.numerical[0].value #=> Float
resp.evaluator_config.llm_as_a_judge.rating_scale.numerical[0].label #=> String
resp.evaluator_config.llm_as_a_judge.rating_scale.categorical #=> Array
resp.evaluator_config.llm_as_a_judge.rating_scale.categorical[0].definition #=> String
resp.evaluator_config.llm_as_a_judge.rating_scale.categorical[0].label #=> String
resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.model_id #=> String
resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.max_tokens #=> Integer
resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.temperature #=> Float
resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.top_p #=> Float
resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.stop_sequences #=> Array
resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.stop_sequences[0] #=> String
resp.evaluator_config.code_based.lambda_config.lambda_arn #=> String
resp.evaluator_config.code_based.lambda_config.lambda_timeout_in_seconds #=> Integer
resp.level #=> String, one of "TOOL_CALL", "TRACE", "SESSION"
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
resp.created_at #=> Time
resp.updated_at #=> Time
resp.locked_for_modification #=> Boolean
resp.kms_key_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :evaluator_id (required, String)

    The unique identifier of the evaluator to retrieve. Can be a built-in evaluator ID (e.g., Builtin.Helpfulness) or a custom evaluator ID.

  • :included_data (String)

    Controls which data is returned in the response. ‘ALL_DATA` (default) returns the full evaluator including decrypted instructions and rating scale. For evaluators encrypted with a customer managed KMS key, this requires `kms:Decrypt` permission on the key. `METADATA_ONLY` returns evaluator metadata and model configuration without instructions or rating scale, and does not require any KMS permissions.

Returns:

See Also:



5775
5776
5777
5778
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5775

def get_evaluator(params = {}, options = {})
  req = build_request(:get_evaluator, params)
  req.send_request(options)
end

#get_gateway(params = {}) ⇒ Types::GetGatewayResponse

Retrieves information about a specific Gateway.

Examples:

Request syntax with placeholder values


resp = client.get_gateway({
  gateway_identifier: "GatewayIdentifier", # required
})

Response structure


resp.gateway_arn #=> String
resp.gateway_id #=> String
resp.gateway_url #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.name #=> String
resp.description #=> String
resp.role_arn #=> String
resp.protocol_type #=> String, one of "MCP"
resp.protocol_configuration.mcp.supported_versions #=> Array
resp.protocol_configuration.mcp.supported_versions[0] #=> String
resp.protocol_configuration.mcp.instructions #=> String
resp.protocol_configuration.mcp.search_type #=> String, one of "SEMANTIC"
resp.protocol_configuration.mcp.session_configuration.session_timeout_in_seconds #=> Integer
resp.protocol_configuration.mcp.streaming_configuration.enable_response_streaming #=> Boolean
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM", "NONE", "AUTHENTICATE_ONLY"
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.kms_key_arn #=> String
resp.interceptor_configurations #=> Array
resp.interceptor_configurations[0].interceptor.lambda.arn #=> String
resp.interceptor_configurations[0].interception_points #=> Array
resp.interceptor_configurations[0].interception_points[0] #=> String, one of "REQUEST", "RESPONSE"
resp.interceptor_configurations[0].input_configuration.pass_request_headers #=> Boolean
resp.policy_engine_configuration.arn #=> String
resp.policy_engine_configuration.mode #=> String, one of "LOG_ONLY", "ENFORCE"
resp.workload_identity_details.workload_identity_arn #=> String
resp.exception_level #=> String, one of "DEBUG"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to retrieve.

Returns:

See Also:



5885
5886
5887
5888
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5885

def get_gateway(params = {}, options = {})
  req = build_request(:get_gateway, params)
  req.send_request(options)
end

#get_gateway_rule(params = {}) ⇒ Types::GetGatewayRuleResponse

Retrieves detailed information about a specific gateway rule.

Examples:

Request syntax with placeholder values


resp = client.get_gateway_rule({
  gateway_identifier: "GatewayIdentifier", # required
  rule_id: "GatewayRuleId", # required
})

Response structure


resp.rule_id #=> String
resp.gateway_arn #=> String
resp.priority #=> Integer
resp.conditions #=> Array
resp.conditions[0].match_principals.any_of #=> Array
resp.conditions[0].match_principals.any_of[0].iam_principal.arn #=> String
resp.conditions[0].match_principals.any_of[0].iam_principal.operator #=> String, one of "StringEquals", "StringLike"
resp.conditions[0].match_paths.any_of #=> Array
resp.conditions[0].match_paths.any_of[0] #=> String
resp.actions #=> Array
resp.actions[0].configuration_bundle.static_override.bundle_arn #=> String
resp.actions[0].configuration_bundle.static_override.bundle_version #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split #=> Array
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].name #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].weight #=> Integer
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_arn #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_version #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].description #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0]. #=> Hash
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.actions[0].route_to_target.static_route.target_name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split #=> Array
resp.actions[0].route_to_target.weighted_route.traffic_split[0].name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0].weight #=> Integer
resp.actions[0].route_to_target.weighted_route.traffic_split[0].target_name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0].description #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0]. #=> Hash
resp.actions[0].route_to_target.weighted_route.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.description #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING"
resp.system.managed_by #=> String
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway containing the rule.

  • :rule_id (required, String)

    The unique identifier of the rule to retrieve.

Returns:

See Also:



5958
5959
5960
5961
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5958

def get_gateway_rule(params = {}, options = {})
  req = build_request(:get_gateway_rule, params)
  req.send_request(options)
end

#get_gateway_target(params = {}) ⇒ Types::GetGatewayTargetResponse

Retrieves information about a specific gateway target.

Examples:

Request syntax with placeholder values


resp = client.get_gateway_target({
  gateway_identifier: "GatewayIdentifier", # required
  target_id: "TargetId", # required
})

Response structure


resp.gateway_arn #=> String
resp.target_id #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED", "SYNCHRONIZING", "SYNCHRONIZE_UNSUCCESSFUL", "CREATE_PENDING_AUTH", "UPDATE_PENDING_AUTH", "SYNCHRONIZE_PENDING_AUTH"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.name #=> String
resp.description #=> String
resp.target_configuration.mcp.open_api_schema.s3.uri #=> String
resp.target_configuration.mcp.open_api_schema.s3. #=> String
resp.target_configuration.mcp.open_api_schema.inline_payload #=> String
resp.target_configuration.mcp.smithy_model.s3.uri #=> String
resp.target_configuration.mcp.smithy_model.s3. #=> String
resp.target_configuration.mcp.smithy_model.inline_payload #=> String
resp.target_configuration.mcp.lambda.lambda_arn #=> String
resp.target_configuration.mcp.lambda.tool_schema.s3.uri #=> String
resp.target_configuration.mcp.lambda.tool_schema.s3. #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].name #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].description #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties #=> Hash
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties["String"] #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required[0] #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.items #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.description #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties #=> Hash
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties["String"] #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required[0] #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
resp.target_configuration.mcp.mcp_server.endpoint #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3. #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
resp.target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
resp.target_configuration.mcp.mcp_server.resource_priority #=> Integer
resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
resp.target_configuration.mcp.api_gateway.stage #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.target_configuration.http.agentcore_runtime.arn #=> String
resp.target_configuration.http.agentcore_runtime.qualifier #=> String
resp.credential_provider_configurations #=> Array
resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY", "CALLER_IAM_CREDENTIALS", "JWT_PASSTHROUGH"
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_location #=> String, one of "HEADER", "QUERY_PARAMETER"
resp.credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
resp.credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String
resp.last_synchronized_at #=> Time
resp..allowed_request_headers #=> Array
resp..allowed_request_headers[0] #=> String
resp..allowed_query_parameters #=> Array
resp..allowed_query_parameters[0] #=> String
resp..allowed_response_headers #=> Array
resp..allowed_response_headers[0] #=> String
resp.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.private_endpoint_managed_resources #=> Array
resp.private_endpoint_managed_resources[0].domain #=> String
resp.private_endpoint_managed_resources[0].resource_gateway_arn #=> String
resp.private_endpoint_managed_resources[0].resource_association_arn #=> String
resp.authorization_data.oauth2.authorization_url #=> String
resp.authorization_data.oauth2.user_id #=> String
resp.protocol_type #=> String, one of "MCP", "HTTP"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway that contains the target.

  • :target_id (required, String)

    The unique identifier of the target to retrieve.

Returns:

See Also:



6097
6098
6099
6100
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6097

def get_gateway_target(params = {}, options = {})
  req = build_request(:get_gateway_target, params)
  req.send_request(options)
end

#get_harness(params = {}) ⇒ Types::GetHarnessResponse

Operation to get a single Harness.

Examples:

Request syntax with placeholder values


resp = client.get_harness({
  harness_id: "HarnessId", # required
})

Response structure


resp.harness.harness_id #=> String
resp.harness.harness_name #=> String
resp.harness.arn #=> String
resp.harness.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.harness.execution_role_arn #=> String
resp.harness.created_at #=> Time
resp.harness.updated_at #=> Time
resp.harness.model.bedrock_model_config.model_id #=> String
resp.harness.model.bedrock_model_config.max_tokens #=> Integer
resp.harness.model.bedrock_model_config.temperature #=> Float
resp.harness.model.bedrock_model_config.top_p #=> Float
resp.harness.model.open_ai_model_config.model_id #=> String
resp.harness.model.open_ai_model_config.api_key_arn #=> String
resp.harness.model.open_ai_model_config.max_tokens #=> Integer
resp.harness.model.open_ai_model_config.temperature #=> Float
resp.harness.model.open_ai_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.model_id #=> String
resp.harness.model.gemini_model_config.api_key_arn #=> String
resp.harness.model.gemini_model_config.max_tokens #=> Integer
resp.harness.model.gemini_model_config.temperature #=> Float
resp.harness.model.gemini_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.top_k #=> Integer
resp.harness.system_prompt #=> Array
resp.harness.system_prompt[0].text #=> String
resp.harness.tools #=> Array
resp.harness.tools[0].type #=> String, one of "remote_mcp", "agentcore_browser", "agentcore_gateway", "inline_function", "agentcore_code_interpreter"
resp.harness.tools[0].name #=> String
resp.harness.tools[0].config.remote_mcp.url #=> String
resp.harness.tools[0].config.remote_mcp.headers #=> Hash
resp.harness.tools[0].config.remote_mcp.headers["HttpHeaderKey"] #=> String
resp.harness.tools[0].config.agent_core_browser.browser_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.gateway_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.provider_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes #=> Array
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes[0] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters #=> Hash
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.default_return_url #=> String
resp.harness.tools[0].config.inline_function.description #=> String
resp.harness.tools[0].config.agent_core_code_interpreter.code_interpreter_arn #=> String
resp.harness.skills #=> Array
resp.harness.skills[0].path #=> String
resp.harness.allowed_tools #=> Array
resp.harness.allowed_tools[0] #=> String
resp.harness.truncation.strategy #=> String, one of "sliding_window", "summarization", "none"
resp.harness.truncation.config.sliding_window.messages_count #=> Integer
resp.harness.truncation.config.summarization.summary_ratio #=> Float
resp.harness.truncation.config.summarization.preserve_recent_messages #=> Integer
resp.harness.truncation.config.summarization.summarization_system_prompt #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_arn #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_name #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_id #=> String
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.idle_runtime_session_timeout #=> Integer
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.max_lifetime #=> Integer
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode #=> String, one of "PUBLIC", "VPC"
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups[0] #=> String
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets[0] #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations #=> Array
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].session_storage.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.mount_path #=> String
resp.harness.environment_artifact.container_configuration.container_uri #=> String
resp.harness.environment_variables #=> Hash
resp.harness.environment_variables["EnvironmentVariableKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.memory.agent_core_memory_configuration.arn #=> String
resp.harness.memory.agent_core_memory_configuration.actor_id #=> String
resp.harness.memory.agent_core_memory_configuration.messages_count #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config #=> Hash
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].top_k #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].relevance_score #=> Float
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].strategy_id #=> String
resp.harness.max_iterations #=> Integer
resp.harness.max_tokens #=> Integer
resp.harness.timeout_seconds #=> Integer
resp.harness.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness to retrieve.

Returns:

See Also:



6240
6241
6242
6243
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6240

def get_harness(params = {}, options = {})
  req = build_request(:get_harness, params)
  req.send_request(options)
end

#get_memory(params = {}) ⇒ Types::GetMemoryOutput

Retrieve an existing Amazon Bedrock AgentCore Memory resource.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* memory_created

Examples:

Request syntax with placeholder values


resp = client.get_memory({
  memory_id: "MemoryId", # required
  view: "full", # accepts full, without_decryption
})

Response structure


resp.memory.arn #=> String
resp.memory.id #=> String
resp.memory.name #=> String
resp.memory.description #=> String
resp.memory.encryption_key_arn #=> String
resp.memory.memory_execution_role_arn #=> String
resp.memory.event_expiry_duration #=> Integer
resp.memory.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
resp.memory.failure_reason #=> String
resp.memory.created_at #=> Time
resp.memory.updated_at #=> Time
resp.memory.strategies #=> Array
resp.memory.strategies[0].strategy_id #=> String
resp.memory.strategies[0].name #=> String
resp.memory.strategies[0].description #=> String
resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED", "EPISODIC_OVERRIDE"
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.model_id #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespace_templates #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespace_templates[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema. #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].key #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespace_templates #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespace_templates[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema. #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].key #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions #=> Array
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].message_based_trigger.message_count #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].token_based_trigger.token_count #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].time_based_trigger.idle_session_timeout #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.topic_arn #=> String
resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.payload_delivery_bucket_name #=> String
resp.memory.strategies[0].configuration.self_managed_configuration.historical_context_window_size #=> Integer
resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM", "EPISODIC"
resp.memory.strategies[0].namespaces #=> Array
resp.memory.strategies[0].namespaces[0] #=> String
resp.memory.strategies[0].namespace_templates #=> Array
resp.memory.strategies[0].namespace_templates[0] #=> String
resp.memory.strategies[0].created_at #=> Time
resp.memory.strategies[0].updated_at #=> Time
resp.memory.strategies[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
resp.memory.strategies[0].memory_record_schema. #=> Array
resp.memory.strategies[0].memory_record_schema.[0].key #=> String
resp.memory.strategies[0].memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.indexed_keys #=> Array
resp.memory.indexed_keys[0].key #=> String
resp.memory.indexed_keys[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.stream_delivery_resources.resources #=> Array
resp.memory.stream_delivery_resources.resources[0].kinesis.data_stream_arn #=> String
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations #=> Array
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations[0].type #=> String, one of "MEMORY_RECORDS"
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations[0].level #=> String, one of "METADATA_ONLY", "FULL_CONTENT"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :memory_id (required, String)

    The unique identifier of the memory to retrieve.

  • :view (String)

    The level of detail to return for the memory.

Returns:

See Also:



6375
6376
6377
6378
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6375

def get_memory(params = {}, options = {})
  req = build_request(:get_memory, params)
  req.send_request(options)
end

#get_oauth_2_credential_provider(params = {}) ⇒ Types::GetOauth2CredentialProviderResponse

Retrieves information about an OAuth2 credential provider.

Examples:

Request syntax with placeholder values


resp = client.get_oauth_2_credential_provider({
  name: "CredentialProviderName", # required
})

Response structure


resp.client_secret_arn.secret_arn #=> String
resp.name #=> String
resp.credential_provider_arn #=> String
resp.credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2", "AtlassianOauth2", "LinkedinOauth2", "XOauth2", "OktaOauth2", "OneLoginOauth2", "PingOneOauth2", "FacebookOauth2", "YandexOauth2", "RedditOauth2", "ZoomOauth2", "TwitchOauth2", "SpotifyOauth2", "DropboxOauth2", "NotionOauth2", "HubspotOauth2", "CyberArkOauth2", "FusionAuthOauth2", "Auth0Oauth2", "CognitoOauth2"
resp.callback_url #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.grant_type #=> String, one of "TOKEN_EXCHANGE", "JWT_AUTHORIZATION_GRANT"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_content #=> String, one of "NONE", "M2M", "AWS_IAM_ID_TOKEN_JWT"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_scopes #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_scopes[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.client_authentication_method #=> String, one of "CLIENT_SECRET_BASIC", "CLIENT_SECRET_POST", "AWS_IAM_ID_TOKEN_JWT"
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.client_id #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the OAuth2 credential provider to retrieve.

Returns:

See Also:



6528
6529
6530
6531
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6528

def get_oauth_2_credential_provider(params = {}, options = {})
  req = build_request(:get_oauth_2_credential_provider, params)
  req.send_request(options)
end

#get_online_evaluation_config(params = {}) ⇒ Types::GetOnlineEvaluationConfigResponse

Retrieves detailed information about an online evaluation configuration, including its rules, data sources, evaluators, and execution status.

Examples:

Request syntax with placeholder values


resp = client.get_online_evaluation_config({
  online_evaluation_config_id: "OnlineEvaluationConfigId", # required
})

Response structure


resp.online_evaluation_config_arn #=> String
resp.online_evaluation_config_id #=> String
resp.online_evaluation_config_name #=> String
resp.description #=> String
resp.rule.sampling_config.sampling_percentage #=> Float
resp.rule.filters #=> Array
resp.rule.filters[0].key #=> String
resp.rule.filters[0].operator #=> String, one of "Equals", "NotEquals", "GreaterThan", "LessThan", "GreaterThanOrEqual", "LessThanOrEqual", "Contains", "NotContains"
resp.rule.filters[0].value.string_value #=> String
resp.rule.filters[0].value.double_value #=> Float
resp.rule.filters[0].value.boolean_value #=> Boolean
resp.rule.session_config.session_timeout_minutes #=> Integer
resp.data_source_config.cloud_watch_logs.log_group_names #=> Array
resp.data_source_config.cloud_watch_logs.log_group_names[0] #=> String
resp.data_source_config.cloud_watch_logs.service_names #=> Array
resp.data_source_config.cloud_watch_logs.service_names[0] #=> String
resp.evaluators #=> Array
resp.evaluators[0].evaluator_id #=> String
resp.output_config.cloud_watch_config.log_group_name #=> String
resp.evaluation_execution_role_arn #=> String
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING", "ERROR"
resp.execution_status #=> String, one of "ENABLED", "DISABLED"
resp.created_at #=> Time
resp.updated_at #=> Time
resp.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :online_evaluation_config_id (required, String)

    The unique identifier of the online evaluation configuration to retrieve.

Returns:

See Also:



6596
6597
6598
6599
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6596

def get_online_evaluation_config(params = {}, options = {})
  req = build_request(:get_online_evaluation_config, params)
  req.send_request(options)
end

#get_payment_connector(params = {}) ⇒ Types::GetPaymentConnectorResponse

Retrieves information about a specific payment connector.

Examples:

Request syntax with placeholder values


resp = client.get_payment_connector({
  payment_manager_id: "PaymentManagerId", # required
  payment_connector_id: "PaymentConnectorId", # required
})

Response structure


resp.payment_connector_id #=> String
resp.name #=> String
resp.description #=> String
resp.type #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.credential_provider_configurations #=> Array
resp.credential_provider_configurations[0].coinbase_cdp.credential_provider_arn #=> String
resp.credential_provider_configurations[0].stripe_privy.credential_provider_arn #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the parent payment manager.

  • :payment_connector_id (required, String)

    The unique identifier of the payment connector to retrieve.

Returns:

See Also:



6644
6645
6646
6647
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6644

def get_payment_connector(params = {}, options = {})
  req = build_request(:get_payment_connector, params)
  req.send_request(options)
end

#get_payment_credential_provider(params = {}) ⇒ Types::GetPaymentCredentialProviderResponse

Retrieves information about a specific payment credential provider.

Examples:

Request syntax with placeholder values


resp = client.get_payment_credential_provider({
  name: "CredentialProviderName", # required
})

Response structure


resp.name #=> String
resp.credential_provider_arn #=> String
resp.credential_provider_vendor #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_id #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_secret_arn.secret_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_id #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_secret_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_id #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the payment credential provider to retrieve.

Returns:

See Also:



6691
6692
6693
6694
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6691

def get_payment_credential_provider(params = {}, options = {})
  req = build_request(:get_payment_credential_provider, params)
  req.send_request(options)
end

#get_payment_manager(params = {}) ⇒ Types::GetPaymentManagerResponse

Retrieves information about a specific payment manager.

Examples:

Request syntax with placeholder values


resp = client.get_payment_manager({
  payment_manager_id: "PaymentManagerId", # required
})

Response structure


resp.payment_manager_arn #=> String
resp.payment_manager_id #=> String
resp.name #=> String
resp.description #=> String
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.role_arn #=> String
resp.workload_identity_details.workload_identity_arn #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the payment manager to retrieve.

Returns:

See Also:



6777
6778
6779
6780
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6777

def get_payment_manager(params = {}, options = {})
  req = build_request(:get_payment_manager, params)
  req.send_request(options)
end

#get_policy(params = {}) ⇒ Types::GetPolicyResponse

Retrieves detailed information about a specific policy within the AgentCore Policy system. This operation returns the complete policy definition, metadata, and current status, allowing administrators to review and manage policy configurations.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* policy_active
* policy_deleted

Examples:

Request syntax with placeholder values


resp = client.get_policy({
  policy_engine_id: "ResourceId", # required
  policy_id: "ResourceId", # required
})

Response structure


resp.policy_id #=> String
resp.name #=> String
resp.policy_engine_id #=> String
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The identifier of the policy engine that manages the policy to be retrieved.

  • :policy_id (required, String)

    The unique identifier of the policy to be retrieved. This must be a valid policy ID that exists within the specified policy engine.

Returns:

See Also:



6841
6842
6843
6844
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6841

def get_policy(params = {}, options = {})
  req = build_request(:get_policy, params)
  req.send_request(options)
end

#get_policy_engine(params = {}) ⇒ Types::GetPolicyEngineResponse

Retrieves detailed information about a specific policy engine within the AgentCore Policy system. This operation returns the complete policy engine configuration, metadata, and current status, allowing administrators to review and manage policy engine settings.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* policy_engine_active
* policy_engine_deleted

Examples:

Request syntax with placeholder values


resp = client.get_policy_engine({
  policy_engine_id: "ResourceId", # required
})

Response structure


resp.policy_engine_id #=> String
resp.name #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_engine_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.encryption_key_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The unique identifier of the policy engine to be retrieved. This must be a valid policy engine ID that exists within the account.

Returns:

See Also:



6896
6897
6898
6899
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6896

def get_policy_engine(params = {}, options = {})
  req = build_request(:get_policy_engine, params)
  req.send_request(options)
end

#get_policy_generation(params = {}) ⇒ Types::GetPolicyGenerationResponse

Retrieves information about a policy generation request within the AgentCore Policy system. Policy generation converts natural language descriptions into Cedar policy statements using AI-powered translation, enabling non-technical users to create policies.

The following waiters are defined for this operation (see #wait_until for detailed usage):

* policy_generation_completed

Examples:

Request syntax with placeholder values


resp = client.get_policy_generation({
  policy_generation_id: "ResourceId", # required
  policy_engine_id: "ResourceId", # required
})

Response structure


resp.policy_engine_id #=> String
resp.policy_generation_id #=> String
resp.name #=> String
resp.policy_generation_arn #=> String
resp.resource.arn #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "GENERATING", "GENERATED", "GENERATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.findings #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_generation_id (required, String)

    The unique identifier of the policy generation request to be retrieved. This must be a valid generation ID from a previous

    StartPolicyGeneration][1

    call.

    [1]: docs.aws.amazon.com/bedrock-agentcore-control/latest/APIReference/API_StartPolicyGeneration.html

  • :policy_engine_id (required, String)

    The identifier of the policy engine associated with the policy generation request. This provides the context for the generation operation and schema validation.

Returns:

See Also:



6963
6964
6965
6966
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6963

def get_policy_generation(params = {}, options = {})
  req = build_request(:get_policy_generation, params)
  req.send_request(options)
end

#get_registry(params = {}) ⇒ Types::GetRegistryResponse

Retrieves information about a specific registry.

Examples:

Request syntax with placeholder values


resp = client.get_registry({
  registry_id: "RegistryIdentifier", # required
})

Response structure


resp.name #=> String
resp.description #=> String
resp.registry_id #=> String
resp.registry_arn #=> String
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.approval_configuration.auto_approval #=> Boolean
resp.status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
resp.status_reason #=> String
resp.created_at #=> Time
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry to retrieve. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

Returns:

See Also:



7047
7048
7049
7050
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7047

def get_registry(params = {}, options = {})
  req = build_request(:get_registry, params)
  req.send_request(options)
end

#get_registry_record(params = {}) ⇒ Types::GetRegistryRecordResponse

Retrieves information about a specific registry record.

Examples:

Request syntax with placeholder values


resp = client.get_registry_record({
  registry_id: "RegistryIdentifier", # required
  record_id: "RecordIdentifier", # required
})

Response structure


resp.registry_arn #=> String
resp.record_arn #=> String
resp.record_id #=> String
resp.name #=> String
resp.description #=> String
resp.descriptor_type #=> String, one of "MCP", "A2A", "CUSTOM", "AGENT_SKILLS"
resp.descriptors.mcp.server.schema_version #=> String
resp.descriptors.mcp.server.inline_content #=> String
resp.descriptors.mcp.tools.protocol_version #=> String
resp.descriptors.mcp.tools.inline_content #=> String
resp.descriptors.a2a.agent_card.schema_version #=> String
resp.descriptors.a2a.agent_card.inline_content #=> String
resp.descriptors.custom.inline_content #=> String
resp.descriptors.agent_skills.skill_md.inline_content #=> String
resp.descriptors.agent_skills.skill_definition.schema_version #=> String
resp.descriptors.agent_skills.skill_definition.inline_content #=> String
resp.record_version #=> String
resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status_reason #=> String
resp.synchronization_type #=> String, one of "URL"
resp.synchronization_configuration.from_url.url #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations #=> Array
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider_type #=> String, one of "OAUTH", "IAM"
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS"
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["String"] #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.role_arn #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry containing the record. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :record_id (required, String)

    The identifier of the registry record to retrieve. You can specify either the Amazon Resource Name (ARN) or the ID of the record.

Returns:

See Also:



7127
7128
7129
7130
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7127

def get_registry_record(params = {}, options = {})
  req = build_request(:get_registry_record, params)
  req.send_request(options)
end

#get_resource_policy(params = {}) ⇒ Types::GetResourcePolicyResponse

Retrieves the resource-based policy for a specified resource.

<note markdown=“1”> This feature is currently available only for AgentCore Runtime and Gateway.

</note>

Examples:

Request syntax with placeholder values


resp = client.get_resource_policy({
  resource_arn: "BedrockAgentcoreResourceArn", # required
})

Response structure


resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource for which to retrieve the resource policy.

Returns:

See Also:



7161
7162
7163
7164
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7161

def get_resource_policy(params = {}, options = {})
  req = build_request(:get_resource_policy, params)
  req.send_request(options)
end

#get_token_vault(params = {}) ⇒ Types::GetTokenVaultResponse

Retrieves information about a token vault.

Examples:

Request syntax with placeholder values


resp = client.get_token_vault({
  token_vault_id: "TokenVaultIdType",
})

Response structure


resp.token_vault_id #=> String
resp.kms_configuration.key_type #=> String, one of "CustomerManagedKey", "ServiceManagedKey"
resp.kms_configuration.kms_key_arn #=> String
resp.last_modified_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :token_vault_id (String)

    The unique identifier of the token vault to retrieve.

Returns:

See Also:



7194
7195
7196
7197
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7194

def get_token_vault(params = {}, options = {})
  req = build_request(:get_token_vault, params)
  req.send_request(options)
end

#get_workload_identity(params = {}) ⇒ Types::GetWorkloadIdentityResponse

Retrieves information about a workload identity.

Examples:

Request syntax with placeholder values


resp = client.get_workload_identity({
  name: "WorkloadIdentityNameType", # required
})

Response structure


resp.name #=> String
resp.workload_identity_arn #=> String
resp.allowed_resource_oauth_2_return_urls #=> Array
resp.allowed_resource_oauth_2_return_urls[0] #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the workload identity to retrieve.

Returns:

See Also:



7231
7232
7233
7234
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7231

def get_workload_identity(params = {}, options = {})
  req = build_request(:get_workload_identity, params)
  req.send_request(options)
end

#list_agent_runtime_endpoints(params = {}) ⇒ Types::ListAgentRuntimeEndpointsResponse

Lists all endpoints for a specific Amazon Secure Agent.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_agent_runtime_endpoints({
  agent_runtime_id: "AgentRuntimeId", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.runtime_endpoints #=> Array
resp.runtime_endpoints[0].name #=> String
resp.runtime_endpoints[0].live_version #=> String
resp.runtime_endpoints[0].target_version #=> String
resp.runtime_endpoints[0].agent_runtime_endpoint_arn #=> String
resp.runtime_endpoints[0].agent_runtime_arn #=> String
resp.runtime_endpoints[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.runtime_endpoints[0].id #=> String
resp.runtime_endpoints[0].description #=> String
resp.runtime_endpoints[0].created_at #=> Time
resp.runtime_endpoints[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime to list endpoints for.

  • :max_results (Integer)

    The maximum number of results to return in the response.

  • :next_token (String)

    A token to retrieve the next page of results.

Returns:

See Also:



7281
7282
7283
7284
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7281

def list_agent_runtime_endpoints(params = {}, options = {})
  req = build_request(:list_agent_runtime_endpoints, params)
  req.send_request(options)
end

#list_agent_runtime_versions(params = {}) ⇒ Types::ListAgentRuntimeVersionsResponse

Lists all versions of a specific Amazon Secure Agent.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_agent_runtime_versions({
  agent_runtime_id: "AgentRuntimeId", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.agent_runtimes #=> Array
resp.agent_runtimes[0].agent_runtime_arn #=> String
resp.agent_runtimes[0].agent_runtime_id #=> String
resp.agent_runtimes[0].agent_runtime_version #=> String
resp.agent_runtimes[0].agent_runtime_name #=> String
resp.agent_runtimes[0].description #=> String
resp.agent_runtimes[0].last_updated_at #=> Time
resp.agent_runtimes[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime to list versions for.

  • :max_results (Integer)

    The maximum number of results to return in the response.

  • :next_token (String)

    A token to retrieve the next page of results.

Returns:

See Also:



7328
7329
7330
7331
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7328

def list_agent_runtime_versions(params = {}, options = {})
  req = build_request(:list_agent_runtime_versions, params)
  req.send_request(options)
end

#list_agent_runtimes(params = {}) ⇒ Types::ListAgentRuntimesResponse

Lists all Amazon Secure Agents in your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_agent_runtimes({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.agent_runtimes #=> Array
resp.agent_runtimes[0].agent_runtime_arn #=> String
resp.agent_runtimes[0].agent_runtime_id #=> String
resp.agent_runtimes[0].agent_runtime_version #=> String
resp.agent_runtimes[0].agent_runtime_name #=> String
resp.agent_runtimes[0].description #=> String
resp.agent_runtimes[0].last_updated_at #=> Time
resp.agent_runtimes[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in the response.

  • :next_token (String)

    A token to retrieve the next page of results.

Returns:

See Also:



7371
7372
7373
7374
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7371

def list_agent_runtimes(params = {}, options = {})
  req = build_request(:list_agent_runtimes, params)
  req.send_request(options)
end

#list_api_key_credential_providers(params = {}) ⇒ Types::ListApiKeyCredentialProvidersResponse

Lists all API key credential providers in your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_api_key_credential_providers({
  next_token: "String",
  max_results: 1,
})

Response structure


resp.credential_providers #=> Array
resp.credential_providers[0].name #=> String
resp.credential_providers[0].credential_provider_arn #=> String
resp.credential_providers[0].created_time #=> Time
resp.credential_providers[0].last_updated_time #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    Pagination token.

  • :max_results (Integer)

    Maximum number of results to return.

Returns:

See Also:



7411
7412
7413
7414
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7411

def list_api_key_credential_providers(params = {}, options = {})
  req = build_request(:list_api_key_credential_providers, params)
  req.send_request(options)
end

#list_browser_profiles(params = {}) ⇒ Types::ListBrowserProfilesResponse

Lists all browser profiles in your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_browser_profiles({
  max_results: 1,
  next_token: "NextToken",
  name: "BrowserProfileName",
})

Response structure


resp.profile_summaries #=> Array
resp.profile_summaries[0].profile_id #=> String
resp.profile_summaries[0].profile_arn #=> String
resp.profile_summaries[0].name #=> String
resp.profile_summaries[0].description #=> String
resp.profile_summaries[0].status #=> String, one of "READY", "DELETING", "DELETED", "SAVING"
resp.profile_summaries[0].created_at #=> Time
resp.profile_summaries[0].last_updated_at #=> Time
resp.profile_summaries[0].last_saved_at #=> Time
resp.profile_summaries[0].last_saved_browser_session_id #=> String
resp.profile_summaries[0].last_saved_browser_id #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in the response.

  • :next_token (String)

    A token to retrieve the next page of results.

  • :name (String)

    The name of the browser profile to filter results by.

Returns:

See Also:



7461
7462
7463
7464
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7461

def list_browser_profiles(params = {}, options = {})
  req = build_request(:list_browser_profiles, params)
  req.send_request(options)
end

#list_browsers(params = {}) ⇒ Types::ListBrowsersResponse

Lists all custom browsers in your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_browsers({
  max_results: 1,
  next_token: "NextToken",
  type: "SYSTEM", # accepts SYSTEM, CUSTOM
})

Response structure


resp.browser_summaries #=> Array
resp.browser_summaries[0].browser_id #=> String
resp.browser_summaries[0].browser_arn #=> String
resp.browser_summaries[0].name #=> String
resp.browser_summaries[0].description #=> String
resp.browser_summaries[0].status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
resp.browser_summaries[0].created_at #=> Time
resp.browser_summaries[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in a single call. The default value is 10. The maximum value is 50.

  • :next_token (String)

    The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

  • :type (String)

    The type of browsers to list. If not specified, all browser types are returned.

Returns:

See Also:



7512
7513
7514
7515
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7512

def list_browsers(params = {}, options = {})
  req = build_request(:list_browsers, params)
  req.send_request(options)
end

#list_code_interpreters(params = {}) ⇒ Types::ListCodeInterpretersResponse

Lists all custom code interpreters in your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_code_interpreters({
  max_results: 1,
  next_token: "NextToken",
  type: "SYSTEM", # accepts SYSTEM, CUSTOM
})

Response structure


resp.code_interpreter_summaries #=> Array
resp.code_interpreter_summaries[0].code_interpreter_id #=> String
resp.code_interpreter_summaries[0].code_interpreter_arn #=> String
resp.code_interpreter_summaries[0].name #=> String
resp.code_interpreter_summaries[0].description #=> String
resp.code_interpreter_summaries[0].status #=> String, one of "CREATING", "CREATE_FAILED", "READY", "DELETING", "DELETE_FAILED", "DELETED"
resp.code_interpreter_summaries[0].created_at #=> Time
resp.code_interpreter_summaries[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in the response.

  • :next_token (String)

    A token to retrieve the next page of results.

  • :type (String)

    The type of code interpreters to list.

Returns:

See Also:



7559
7560
7561
7562
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7559

def list_code_interpreters(params = {}, options = {})
  req = build_request(:list_code_interpreters, params)
  req.send_request(options)
end

#list_configuration_bundle_versions(params = {}) ⇒ Types::ListConfigurationBundleVersionsResponse

Lists all versions of a configuration bundle, with optional filtering by branch name or creation source.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_configuration_bundle_versions({
  bundle_id: "ConfigurationBundleId", # required
  next_token: "String",
  max_results: 1,
  filter: {
    branch_name: "BranchName",
    created_by_name: "String",
    latest_per_branch: false,
  },
})

Response structure


resp.versions #=> Array
resp.versions[0].bundle_arn #=> String
resp.versions[0].bundle_id #=> String
resp.versions[0].version_id #=> String
resp.versions[0]..parent_version_ids #=> Array
resp.versions[0]..parent_version_ids[0] #=> String
resp.versions[0]..branch_name #=> String
resp.versions[0]..created_by.name #=> String
resp.versions[0]..created_by.arn #=> String
resp.versions[0]..commit_message #=> String
resp.versions[0].version_created_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :bundle_id (required, String)

    The unique identifier of the configuration bundle to list versions for.

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :filter (Types::VersionFilter)

    An optional filter for listing versions, including branch name, creation source, and whether to return only the latest version per branch.

Returns:

See Also:



7627
7628
7629
7630
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7627

def list_configuration_bundle_versions(params = {}, options = {})
  req = build_request(:list_configuration_bundle_versions, params)
  req.send_request(options)
end

#list_configuration_bundles(params = {}) ⇒ Types::ListConfigurationBundlesResponse

Lists all configuration bundles in the account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_configuration_bundles({
  next_token: "String",
  max_results: 1,
})

Response structure


resp.bundles #=> Array
resp.bundles[0].bundle_arn #=> String
resp.bundles[0].bundle_id #=> String
resp.bundles[0].bundle_name #=> String
resp.bundles[0].description #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

Returns:

See Also:



7673
7674
7675
7676
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7673

def list_configuration_bundles(params = {}, options = {})
  req = build_request(:list_configuration_bundles, params)
  req.send_request(options)
end

#list_evaluators(params = {}) ⇒ Types::ListEvaluatorsResponse

Lists all available evaluators, including both builtin evaluators provided by the service and custom evaluators created by the user.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_evaluators({
  next_token: "String",
  max_results: 1,
})

Response structure


resp.evaluators #=> Array
resp.evaluators[0].evaluator_arn #=> String
resp.evaluators[0].evaluator_id #=> String
resp.evaluators[0].evaluator_name #=> String
resp.evaluators[0].description #=> String
resp.evaluators[0].evaluator_type #=> String, one of "Builtin", "Custom", "CustomCode"
resp.evaluators[0].level #=> String, one of "TOOL_CALL", "TRACE", "SESSION"
resp.evaluators[0].status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
resp.evaluators[0].created_at #=> Time
resp.evaluators[0].updated_at #=> Time
resp.evaluators[0].locked_for_modification #=> Boolean
resp.evaluators[0].kms_key_arn #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token from a previous request to retrieve the next page of results.

  • :max_results (Integer)

    The maximum number of evaluators to return in a single response.

Returns:

See Also:



7722
7723
7724
7725
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7722

def list_evaluators(params = {}, options = {})
  req = build_request(:list_evaluators, params)
  req.send_request(options)
end

#list_gateway_rules(params = {}) ⇒ Types::ListGatewayRulesResponse

Lists all rules for a gateway.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_gateway_rules({
  gateway_identifier: "GatewayIdentifier", # required
  max_results: 1,
  next_token: "GatewayRuleNextToken",
})

Response structure


resp.gateway_rules #=> Array
resp.gateway_rules[0].rule_id #=> String
resp.gateway_rules[0].gateway_arn #=> String
resp.gateway_rules[0].priority #=> Integer
resp.gateway_rules[0].conditions #=> Array
resp.gateway_rules[0].conditions[0].match_principals.any_of #=> Array
resp.gateway_rules[0].conditions[0].match_principals.any_of[0].iam_principal.arn #=> String
resp.gateway_rules[0].conditions[0].match_principals.any_of[0].iam_principal.operator #=> String, one of "StringEquals", "StringLike"
resp.gateway_rules[0].conditions[0].match_paths.any_of #=> Array
resp.gateway_rules[0].conditions[0].match_paths.any_of[0] #=> String
resp.gateway_rules[0].actions #=> Array
resp.gateway_rules[0].actions[0].configuration_bundle.static_override.bundle_arn #=> String
resp.gateway_rules[0].actions[0].configuration_bundle.static_override.bundle_version #=> String
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split #=> Array
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split[0].name #=> String
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split[0].weight #=> Integer
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_arn #=> String
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_version #=> String
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split[0].description #=> String
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split[0]. #=> Hash
resp.gateway_rules[0].actions[0].configuration_bundle.weighted_override.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.gateway_rules[0].actions[0].route_to_target.static_route.target_name #=> String
resp.gateway_rules[0].actions[0].route_to_target.weighted_route.traffic_split #=> Array
resp.gateway_rules[0].actions[0].route_to_target.weighted_route.traffic_split[0].name #=> String
resp.gateway_rules[0].actions[0].route_to_target.weighted_route.traffic_split[0].weight #=> Integer
resp.gateway_rules[0].actions[0].route_to_target.weighted_route.traffic_split[0].target_name #=> String
resp.gateway_rules[0].actions[0].route_to_target.weighted_route.traffic_split[0].description #=> String
resp.gateway_rules[0].actions[0].route_to_target.weighted_route.traffic_split[0]. #=> Hash
resp.gateway_rules[0].actions[0].route_to_target.weighted_route.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.gateway_rules[0].description #=> String
resp.gateway_rules[0].created_at #=> Time
resp.gateway_rules[0].status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING"
resp.gateway_rules[0].system.managed_by #=> String
resp.gateway_rules[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to list rules for.

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :next_token (String)

    The pagination token from a previous request.

Returns:

See Also:



7798
7799
7800
7801
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7798

def list_gateway_rules(params = {}, options = {})
  req = build_request(:list_gateway_rules, params)
  req.send_request(options)
end

#list_gateway_targets(params = {}) ⇒ Types::ListGatewayTargetsResponse

Lists all targets for a specific gateway.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_gateway_targets({
  gateway_identifier: "GatewayIdentifier", # required
  max_results: 1,
  next_token: "TargetNextToken",
})

Response structure


resp.items #=> Array
resp.items[0].target_id #=> String
resp.items[0].name #=> String
resp.items[0].status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED", "SYNCHRONIZING", "SYNCHRONIZE_UNSUCCESSFUL", "CREATE_PENDING_AUTH", "UPDATE_PENDING_AUTH", "SYNCHRONIZE_PENDING_AUTH"
resp.items[0].description #=> String
resp.items[0].created_at #=> Time
resp.items[0].updated_at #=> Time
resp.items[0].resource_priority #=> Integer
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to list targets for.

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

Returns:

See Also:



7851
7852
7853
7854
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7851

def list_gateway_targets(params = {}, options = {})
  req = build_request(:list_gateway_targets, params)
  req.send_request(options)
end

#list_gateways(params = {}) ⇒ Types::ListGatewaysResponse

Lists all gateways in the account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_gateways({
  max_results: 1,
  next_token: "GatewayNextToken",
})

Response structure


resp.items #=> Array
resp.items[0].gateway_id #=> String
resp.items[0].name #=> String
resp.items[0].status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
resp.items[0].description #=> String
resp.items[0].created_at #=> Time
resp.items[0].updated_at #=> Time
resp.items[0].authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM", "NONE", "AUTHENTICATE_ONLY"
resp.items[0].protocol_type #=> String, one of "MCP"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

Returns:

See Also:



7901
7902
7903
7904
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7901

def list_gateways(params = {}, options = {})
  req = build_request(:list_gateways, params)
  req.send_request(options)
end

#list_harnesses(params = {}) ⇒ Types::ListHarnessesResponse

Operation to list Harnesses.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_harnesses({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.harnesses #=> Array
resp.harnesses[0].harness_id #=> String
resp.harnesses[0].harness_name #=> String
resp.harnesses[0].arn #=> String
resp.harnesses[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.harnesses[0].created_at #=> Time
resp.harnesses[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next set of results.

Returns:

See Also:



7943
7944
7945
7946
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7943

def list_harnesses(params = {}, options = {})
  req = build_request(:list_harnesses, params)
  req.send_request(options)
end

#list_memories(params = {}) ⇒ Types::ListMemoriesOutput

Lists the available Amazon Bedrock AgentCore Memory resources in the current Amazon Web Services Region.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_memories({
  max_results: 1,
  next_token: "String",
})

Response structure


resp.memories #=> Array
resp.memories[0].arn #=> String
resp.memories[0].id #=> String
resp.memories[0].status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
resp.memories[0].created_at #=> Time
resp.memories[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in a single call. The default value is 10. The maximum value is 50.

  • :next_token (String)

    The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

Returns:

See Also:



7988
7989
7990
7991
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7988

def list_memories(params = {}, options = {})
  req = build_request(:list_memories, params)
  req.send_request(options)
end

#list_oauth_2_credential_providers(params = {}) ⇒ Types::ListOauth2CredentialProvidersResponse

Lists all OAuth2 credential providers in your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_oauth_2_credential_providers({
  next_token: "String",
  max_results: 1,
})

Response structure


resp.credential_providers #=> Array
resp.credential_providers[0].name #=> String
resp.credential_providers[0].credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2", "AtlassianOauth2", "LinkedinOauth2", "XOauth2", "OktaOauth2", "OneLoginOauth2", "PingOneOauth2", "FacebookOauth2", "YandexOauth2", "RedditOauth2", "ZoomOauth2", "TwitchOauth2", "SpotifyOauth2", "DropboxOauth2", "NotionOauth2", "HubspotOauth2", "CyberArkOauth2", "FusionAuthOauth2", "Auth0Oauth2", "CognitoOauth2"
resp.credential_providers[0].credential_provider_arn #=> String
resp.credential_providers[0].created_time #=> Time
resp.credential_providers[0].last_updated_time #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    Pagination token.

  • :max_results (Integer)

    Maximum number of results to return.

Returns:

See Also:



8029
8030
8031
8032
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8029

def list_oauth_2_credential_providers(params = {}, options = {})
  req = build_request(:list_oauth_2_credential_providers, params)
  req.send_request(options)
end

#list_online_evaluation_configs(params = {}) ⇒ Types::ListOnlineEvaluationConfigsResponse

Lists all online evaluation configurations in the account, providing summary information about each configuration’s status and settings.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_online_evaluation_configs({
  next_token: "String",
  max_results: 1,
})

Response structure


resp.online_evaluation_configs #=> Array
resp.online_evaluation_configs[0].online_evaluation_config_arn #=> String
resp.online_evaluation_configs[0].online_evaluation_config_id #=> String
resp.online_evaluation_configs[0].online_evaluation_config_name #=> String
resp.online_evaluation_configs[0].description #=> String
resp.online_evaluation_configs[0].status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING", "ERROR"
resp.online_evaluation_configs[0].execution_status #=> String, one of "ENABLED", "DISABLED"
resp.online_evaluation_configs[0].created_at #=> Time
resp.online_evaluation_configs[0].updated_at #=> Time
resp.online_evaluation_configs[0].failure_reason #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token from a previous request to retrieve the next page of results.

  • :max_results (Integer)

    The maximum number of online evaluation configurations to return in a single response.

Returns:

See Also:



8077
8078
8079
8080
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8077

def list_online_evaluation_configs(params = {}, options = {})
  req = build_request(:list_online_evaluation_configs, params)
  req.send_request(options)
end

#list_payment_connectors(params = {}) ⇒ Types::ListPaymentConnectorsResponse

Lists all payment connectors for a specified payment manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_payment_connectors({
  payment_manager_id: "PaymentManagerId", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.payment_connectors #=> Array
resp.payment_connectors[0].payment_connector_id #=> String
resp.payment_connectors[0].name #=> String
resp.payment_connectors[0].type #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.payment_connectors[0].status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.payment_connectors[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the payment manager whose connectors to list.

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

Returns:

See Also:



8128
8129
8130
8131
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8128

def list_payment_connectors(params = {}, options = {})
  req = build_request(:list_payment_connectors, params)
  req.send_request(options)
end

#list_payment_credential_providers(params = {}) ⇒ Types::ListPaymentCredentialProvidersResponse

Lists all payment credential providers in the account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_payment_credential_providers({
  next_token: "String",
  max_results: 1,
})

Response structure


resp.credential_providers #=> Array
resp.credential_providers[0].name #=> String
resp.credential_providers[0].credential_provider_vendor #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.credential_providers[0].credential_provider_arn #=> String
resp.credential_providers[0].created_time #=> Time
resp.credential_providers[0].last_updated_time #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    Pagination token.

  • :max_results (Integer)

    Maximum number of results to return.

Returns:

See Also:



8169
8170
8171
8172
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8169

def list_payment_credential_providers(params = {}, options = {})
  req = build_request(:list_payment_credential_providers, params)
  req.send_request(options)
end

#list_payment_managers(params = {}) ⇒ Types::ListPaymentManagersResponse

Lists all payment managers in the account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_payment_managers({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.payment_managers #=> Array
resp.payment_managers[0].payment_manager_arn #=> String
resp.payment_managers[0].payment_manager_id #=> String
resp.payment_managers[0].name #=> String
resp.payment_managers[0].description #=> String
resp.payment_managers[0].authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
resp.payment_managers[0].role_arn #=> String
resp.payment_managers[0].status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.payment_managers[0].created_at #=> Time
resp.payment_managers[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

Returns:

See Also:



8220
8221
8222
8223
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8220

def list_payment_managers(params = {}, options = {})
  req = build_request(:list_payment_managers, params)
  req.send_request(options)
end

#list_policies(params = {}) ⇒ Types::ListPoliciesResponse

Retrieves a list of policies within the AgentCore Policy engine. This operation supports pagination and filtering to help administrators manage and discover policies across policy engines. Results can be filtered by policy engine or resource associations.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_policies({
  next_token: "NextToken",
  max_results: 1,
  policy_engine_id: "ResourceId", # required
  target_resource_scope: "BedrockAgentcoreResourceArn",
})

Response structure


resp.policies #=> Array
resp.policies[0].policy_id #=> String
resp.policies[0].name #=> String
resp.policies[0].policy_engine_id #=> String
resp.policies[0].definition.cedar.statement #=> String
resp.policies[0].definition.policy_generation.policy_generation_id #=> String
resp.policies[0].definition.policy_generation.policy_generation_asset_id #=> String
resp.policies[0].description #=> String
resp.policies[0].created_at #=> Time
resp.policies[0].updated_at #=> Time
resp.policies[0].policy_arn #=> String
resp.policies[0].status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.policies[0].status_reasons #=> Array
resp.policies[0].status_reasons[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    A pagination token returned from a previous [ListPolicies] call. Use this token to retrieve the next page of results when the response is paginated.

    [1]: docs.aws.amazon.com/bedrock-agentcore-control/latest/APIReference/API_ListPolicies.html

  • :max_results (Integer)

    The maximum number of policies to return in a single response. If not specified, the default is 10 policies per page, with a maximum of 100 per page.

  • :policy_engine_id (required, String)

    The identifier of the policy engine whose policies to retrieve.

  • :target_resource_scope (String)

    Optional filter to list policies that apply to a specific resource scope or resource type. This helps narrow down policy results to those relevant for particular Amazon Web Services resources, agent tools, or operational contexts within the policy engine ecosystem.

Returns:

See Also:



8291
8292
8293
8294
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8291

def list_policies(params = {}, options = {})
  req = build_request(:list_policies, params)
  req.send_request(options)
end

#list_policy_engines(params = {}) ⇒ Types::ListPolicyEnginesResponse

Retrieves a list of policy engines within the AgentCore Policy system. This operation supports pagination to help administrators discover and manage policy engines across their account. Each policy engine serves as a container for related policies.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_policy_engines({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.policy_engines #=> Array
resp.policy_engines[0].policy_engine_id #=> String
resp.policy_engines[0].name #=> String
resp.policy_engines[0].description #=> String
resp.policy_engines[0].created_at #=> Time
resp.policy_engines[0].updated_at #=> Time
resp.policy_engines[0].policy_engine_arn #=> String
resp.policy_engines[0].status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.policy_engines[0].status_reasons #=> Array
resp.policy_engines[0].status_reasons[0] #=> String
resp.policy_engines[0].encryption_key_arn #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



8348
8349
8350
8351
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8348

def list_policy_engines(params = {}, options = {})
  req = build_request(:list_policy_engines, params)
  req.send_request(options)
end

#list_policy_generation_assets(params = {}) ⇒ Types::ListPolicyGenerationAssetsResponse

Retrieves a list of generated policy assets from a policy generation request within the AgentCore Policy system. This operation returns the actual Cedar policies and related artifacts produced by the AI-powered policy generation process, allowing users to review and select from multiple generated policy options.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_policy_generation_assets({
  policy_generation_id: "ResourceId", # required
  policy_engine_id: "ResourceId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.policy_generation_assets #=> Array
resp.policy_generation_assets[0].policy_generation_asset_id #=> String
resp.policy_generation_assets[0].definition.cedar.statement #=> String
resp.policy_generation_assets[0].definition.policy_generation.policy_generation_id #=> String
resp.policy_generation_assets[0].definition.policy_generation.policy_generation_asset_id #=> String
resp.policy_generation_assets[0].raw_text_fragment #=> String
resp.policy_generation_assets[0].findings #=> Array
resp.policy_generation_assets[0].findings[0].type #=> String, one of "VALID", "INVALID", "NOT_TRANSLATABLE", "ALLOW_ALL", "ALLOW_NONE", "DENY_ALL", "DENY_NONE"
resp.policy_generation_assets[0].findings[0].description #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_generation_id (required, String)

    The unique identifier of the policy generation request whose assets are to be retrieved. This must be a valid generation ID from a previous [StartPolicyGeneration] call that has completed processing.

    [1]: docs.aws.amazon.com/bedrock-agentcore-control/latest/APIReference/API_StartPolicyGeneration.html

  • :policy_engine_id (required, String)

    The unique identifier of the policy engine associated with the policy generation request. This provides the context for the generation operation and ensures assets are retrieved from the correct policy engine.

  • :next_token (String)

    A pagination token returned from a previous

    ListPolicyGenerationAssets][1

    call. Use this token to retrieve the

    next page of assets when the response is paginated due to large numbers of generated policy options.

    [1]: docs.aws.amazon.com/bedrock-agentcore-control/latest/APIReference/API_ListPolicyGenerationAssets.html

  • :max_results (Integer)

    The maximum number of policy generation assets to return in a single response. If not specified, the default is 10 assets per page, with a maximum of 100 per page. This helps control response size when dealing with policy generations that produce many alternative policy options.

Returns:

See Also:



8424
8425
8426
8427
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8424

def list_policy_generation_assets(params = {}, options = {})
  req = build_request(:list_policy_generation_assets, params)
  req.send_request(options)
end

#list_policy_generations(params = {}) ⇒ Types::ListPolicyGenerationsResponse

Retrieves a list of policy generation requests within the AgentCore Policy system. This operation supports pagination and filtering to help track and manage AI-powered policy generation operations.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_policy_generations({
  next_token: "NextToken",
  max_results: 1,
  policy_engine_id: "ResourceId", # required
})

Response structure


resp.policy_generations #=> Array
resp.policy_generations[0].policy_engine_id #=> String
resp.policy_generations[0].policy_generation_id #=> String
resp.policy_generations[0].name #=> String
resp.policy_generations[0].policy_generation_arn #=> String
resp.policy_generations[0].resource.arn #=> String
resp.policy_generations[0].created_at #=> Time
resp.policy_generations[0].updated_at #=> Time
resp.policy_generations[0].status #=> String, one of "GENERATING", "GENERATED", "GENERATE_FAILED", "DELETE_FAILED"
resp.policy_generations[0].status_reasons #=> Array
resp.policy_generations[0].status_reasons[0] #=> String
resp.policy_generations[0].findings #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    A pagination token for retrieving additional policy generations when results are paginated.

  • :max_results (Integer)

    The maximum number of policy generations to return in a single response.

  • :policy_engine_id (required, String)

    The identifier of the policy engine whose policy generations to retrieve.

Returns:

See Also:



8480
8481
8482
8483
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8480

def list_policy_generations(params = {}, options = {})
  req = build_request(:list_policy_generations, params)
  req.send_request(options)
end

#list_registries(params = {}) ⇒ Types::ListRegistriesResponse

Lists all registries in the account. You can optionally filter results by status using the ‘status` parameter.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_registries({
  max_results: 1,
  next_token: "NextToken",
  status: "CREATING", # accepts CREATING, READY, UPDATING, CREATE_FAILED, UPDATE_FAILED, DELETING, DELETE_FAILED
})

Response structure


resp.registries #=> Array
resp.registries[0].name #=> String
resp.registries[0].description #=> String
resp.registries[0].registry_id #=> String
resp.registries[0].registry_arn #=> String
resp.registries[0].authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
resp.registries[0].status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
resp.registries[0].status_reason #=> String
resp.registries[0].created_at #=> Time
resp.registries[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

  • :status (String)

    Filter registries by their current status. Possible values include ‘CREATING`, `READY`, `UPDATING`, `CREATE_FAILED`, `UPDATE_FAILED`, `DELETING`, and `DELETE_FAILED`.

Returns:

See Also:



8538
8539
8540
8541
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8538

def list_registries(params = {}, options = {})
  req = build_request(:list_registries, params)
  req.send_request(options)
end

#list_registry_records(params = {}) ⇒ Types::ListRegistryRecordsResponse

Lists registry records within a registry. You can optionally filter results using the ‘name`, `status`, and `descriptorType` parameters. When multiple filters are specified, they are combined using AND logic.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_registry_records({
  registry_id: "RegistryIdentifier", # required
  max_results: 1,
  next_token: "NextToken",
  name: "RegistryRecordName",
  status: "DRAFT", # accepts DRAFT, PENDING_APPROVAL, APPROVED, REJECTED, DEPRECATED, CREATING, UPDATING, CREATE_FAILED, UPDATE_FAILED
  descriptor_type: "MCP", # accepts MCP, A2A, CUSTOM, AGENT_SKILLS
})

Response structure


resp.registry_records #=> Array
resp.registry_records[0].registry_arn #=> String
resp.registry_records[0].record_arn #=> String
resp.registry_records[0].record_id #=> String
resp.registry_records[0].name #=> String
resp.registry_records[0].description #=> String
resp.registry_records[0].descriptor_type #=> String, one of "MCP", "A2A", "CUSTOM", "AGENT_SKILLS"
resp.registry_records[0].record_version #=> String
resp.registry_records[0].status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
resp.registry_records[0].created_at #=> Time
resp.registry_records[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry to list records from. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :max_results (Integer)

    The maximum number of results to return in the response. If the total number of results is greater than this value, use the token returned in the response in the ‘nextToken` field when making another request to return the next batch of results.

  • :next_token (String)

    If the total number of results is greater than the ‘maxResults` value provided in the request, enter the token returned in the `nextToken` field in the response in this field to return the next batch of results.

  • :name (String)

    Filter registry records by name.

  • :status (String)

    Filter registry records by their current status. Possible values include ‘CREATING`, `DRAFT`, `APPROVED`, `PENDING_APPROVAL`, `REJECTED`, `DEPRECATED`, `UPDATING`, `CREATE_FAILED`, and `UPDATE_FAILED`.

  • :descriptor_type (String)

    Filter registry records by their descriptor type. Possible values are ‘MCP`, `A2A`, `CUSTOM`, and `AGENT_SKILLS`.

Returns:

See Also:



8614
8615
8616
8617
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8614

def list_registry_records(params = {}, options = {})
  req = build_request(:list_registry_records, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Lists the tags associated with the specified resource.

<note markdown=“1”> This feature is currently available only for AgentCore Runtime, Browser, Browser Profile, Code Interpreter tool, and Gateway.

</note>

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "TaggableResourcesArn", # required
})

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource for which you want to list tags.

Returns:

See Also:



8649
8650
8651
8652
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8649

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#list_workload_identities(params = {}) ⇒ Types::ListWorkloadIdentitiesResponse

Lists all workload identities in your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_workload_identities({
  next_token: "String",
  max_results: 1,
})

Response structure


resp.workload_identities #=> Array
resp.workload_identities[0].name #=> String
resp.workload_identities[0].workload_identity_arn #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    Pagination token.

  • :max_results (Integer)

    Maximum number of results to return.

Returns:

See Also:



8687
8688
8689
8690
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8687

def list_workload_identities(params = {}, options = {})
  req = build_request(:list_workload_identities, params)
  req.send_request(options)
end

#put_resource_policy(params = {}) ⇒ Types::PutResourcePolicyResponse

Creates or updates a resource-based policy for a resource with the specified resourceArn.

<note markdown=“1”> This feature is currently available only for AgentCore Runtime and Gateway.

</note>

Examples:

Request syntax with placeholder values


resp = client.put_resource_policy({
  resource_arn: "BedrockAgentcoreResourceArn", # required
  policy: "ResourcePolicyBody", # required
})

Response structure


resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource for which to create or update the resource policy.

  • :policy (required, String)

    The resource policy to create or update.

Returns:

See Also:



8726
8727
8728
8729
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8726

def put_resource_policy(params = {}, options = {})
  req = build_request(:put_resource_policy, params)
  req.send_request(options)
end

#set_token_vault_cmk(params = {}) ⇒ Types::SetTokenVaultCMKResponse

Sets the customer master key (CMK) for a token vault.

Examples:

Request syntax with placeholder values


resp = client.set_token_vault_cmk({
  token_vault_id: "TokenVaultIdType",
  kms_configuration: { # required
    key_type: "CustomerManagedKey", # required, accepts CustomerManagedKey, ServiceManagedKey
    kms_key_arn: "KmsKeyArn",
  },
})

Response structure


resp.token_vault_id #=> String
resp.kms_configuration.key_type #=> String, one of "CustomerManagedKey", "ServiceManagedKey"
resp.kms_configuration.kms_key_arn #=> String
resp.last_modified_date #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :token_vault_id (String)

    The unique identifier of the token vault to update.

  • :kms_configuration (required, Types::KmsConfiguration)

    The KMS configuration for the token vault, including the key type and KMS key ARN.

Returns:

See Also:



8767
8768
8769
8770
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8767

def set_token_vault_cmk(params = {}, options = {})
  req = build_request(:set_token_vault_cmk, params)
  req.send_request(options)
end

#start_policy_generation(params = {}) ⇒ Types::StartPolicyGenerationResponse

Initiates the AI-powered generation of Cedar policies from natural language descriptions within the AgentCore Policy system. This feature enables both technical and non-technical users to create policies by describing their authorization requirements in plain English, which is then automatically translated into formal Cedar policy statements. The generation process analyzes the natural language input along with the Gateway’s tool context to produce validated policy options. Generated policy assets are automatically deleted after 7 days, so you should review and create policies from the generated assets within this timeframe. Once created, policies are permanent and not subject to this expiration. Generated policies should be reviewed and tested in log-only mode before deploying to production. Use this when you want to describe policy intent naturally rather than learning Cedar syntax, though generated policies may require refinement for complex scenarios.

Examples:

Request syntax with placeholder values


resp = client.start_policy_generation({
  policy_engine_id: "ResourceId", # required
  resource: { # required
    arn: "BedrockAgentcoreResourceArn",
  },
  content: { # required
    raw_text: "NaturalLanguage",
  },
  name: "PolicyGenerationName", # required
  client_token: "ClientToken",
})

Response structure


resp.policy_engine_id #=> String
resp.policy_generation_id #=> String
resp.name #=> String
resp.policy_generation_arn #=> String
resp.resource.arn #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "GENERATING", "GENERATED", "GENERATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.findings #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The identifier of the policy engine that provides the context for policy generation. This engine’s schema and tool context are used to ensure generated policies are valid and applicable.

  • :resource (required, Types::Resource)

    The resource information that provides context for policy generation. This helps the AI understand the target resources and generate appropriate access control rules.

  • :content (required, Types::Content)

    The natural language description of the desired policy behavior. This content is processed by AI to generate corresponding Cedar policy statements that match the described intent.

  • :name (required, String)

    A customer-assigned name for the policy generation request. This helps track and identify generation operations, especially when running multiple generations simultaneously.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure the idempotency of the request. The AWS SDK automatically generates this token, so you don’t need to provide it in most cases. If you retry a request with the same client token, the service returns the same response without starting a duplicate generation.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



8863
8864
8865
8866
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8863

def start_policy_generation(params = {}, options = {})
  req = build_request(:start_policy_generation, params)
  req.send_request(options)
end

#submit_registry_record_for_approval(params = {}) ⇒ Types::SubmitRegistryRecordForApprovalResponse

Submits a registry record for approval. This transitions the record from ‘DRAFT` status to `PENDING_APPROVAL` status. If the registry has auto-approval enabled, the record is automatically approved.

Examples:

Request syntax with placeholder values


resp = client.submit_registry_record_for_approval({
  registry_id: "RegistryIdentifier", # required
  record_id: "RecordIdentifier", # required
})

Response structure


resp.registry_arn #=> String
resp.record_arn #=> String
resp.record_id #=> String
resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry containing the record. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :record_id (required, String)

    The identifier of the registry record to submit for approval. You can specify either the Amazon Resource Name (ARN) or the ID of the record.

Returns:

See Also:



8907
8908
8909
8910
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8907

def submit_registry_record_for_approval(params = {}, options = {})
  req = build_request(:submit_registry_record_for_approval, params)
  req.send_request(options)
end

#synchronize_gateway_targets(params = {}) ⇒ Types::SynchronizeGatewayTargetsResponse

Synchronizes the gateway targets by fetching the latest tool definitions from the target endpoints.

You cannot synchronize a target that is in a pending authorization state (‘CREATE_PENDING_AUTH`, `UPDATE_PENDING_AUTH`, or `SYNCHRONIZE_PENDING_AUTH`). Wait for the authorization to complete or fail before synchronizing.

You cannot synchronize a target that has a static tool schema (‘mcpToolSchema`) configured. Remove the static schema through an `UpdateGatewayTarget` call to enable dynamic tool synchronization.

Examples:

Request syntax with placeholder values


resp = client.synchronize_gateway_targets({
  gateway_identifier: "GatewayIdentifier", # required
  target_id_list: ["TargetId"], # required
})

Response structure


resp.targets #=> Array
resp.targets[0].gateway_arn #=> String
resp.targets[0].target_id #=> String
resp.targets[0].created_at #=> Time
resp.targets[0].updated_at #=> Time
resp.targets[0].status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED", "SYNCHRONIZING", "SYNCHRONIZE_UNSUCCESSFUL", "CREATE_PENDING_AUTH", "UPDATE_PENDING_AUTH", "SYNCHRONIZE_PENDING_AUTH"
resp.targets[0].status_reasons #=> Array
resp.targets[0].status_reasons[0] #=> String
resp.targets[0].name #=> String
resp.targets[0].description #=> String
resp.targets[0].target_configuration.mcp.open_api_schema.s3.uri #=> String
resp.targets[0].target_configuration.mcp.open_api_schema.s3. #=> String
resp.targets[0].target_configuration.mcp.open_api_schema.inline_payload #=> String
resp.targets[0].target_configuration.mcp.smithy_model.s3.uri #=> String
resp.targets[0].target_configuration.mcp.smithy_model.s3. #=> String
resp.targets[0].target_configuration.mcp.smithy_model.inline_payload #=> String
resp.targets[0].target_configuration.mcp.lambda.lambda_arn #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.s3.uri #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.s3. #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload #=> Array
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].name #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].description #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties #=> Hash
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties["String"] #=> Types::SchemaDefinition
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required #=> Array
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required[0] #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.items #=> Types::SchemaDefinition
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.description #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties #=> Hash
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties["String"] #=> Types::SchemaDefinition
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required #=> Array
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required[0] #=> String
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
resp.targets[0].target_configuration.mcp.mcp_server.endpoint #=> String
resp.targets[0].target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
resp.targets[0].target_configuration.mcp.mcp_server.mcp_tool_schema.s3. #=> String
resp.targets[0].target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
resp.targets[0].target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
resp.targets[0].target_configuration.mcp.mcp_server.resource_priority #=> Integer
resp.targets[0].target_configuration.mcp.api_gateway.rest_api_id #=> String
resp.targets[0].target_configuration.mcp.api_gateway.stage #=> String
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.targets[0].target_configuration.http.agentcore_runtime.arn #=> String
resp.targets[0].target_configuration.http.agentcore_runtime.qualifier #=> String
resp.targets[0].credential_provider_configurations #=> Array
resp.targets[0].credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY", "CALLER_IAM_CREDENTIALS", "JWT_PASSTHROUGH"
resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_location #=> String, one of "HEADER", "QUERY_PARAMETER"
resp.targets[0].credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
resp.targets[0].credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String
resp.targets[0].last_synchronized_at #=> Time
resp.targets[0]..allowed_request_headers #=> Array
resp.targets[0]..allowed_request_headers[0] #=> String
resp.targets[0]..allowed_query_parameters #=> Array
resp.targets[0]..allowed_query_parameters[0] #=> String
resp.targets[0]..allowed_response_headers #=> Array
resp.targets[0]..allowed_response_headers[0] #=> String
resp.targets[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.targets[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.targets[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.targets[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.targets[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.targets[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.targets[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.targets[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.targets[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.targets[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.targets[0].private_endpoint_managed_resources #=> Array
resp.targets[0].private_endpoint_managed_resources[0].domain #=> String
resp.targets[0].private_endpoint_managed_resources[0].resource_gateway_arn #=> String
resp.targets[0].private_endpoint_managed_resources[0].resource_association_arn #=> String
resp.targets[0].authorization_data.oauth2.authorization_url #=> String
resp.targets[0].authorization_data.oauth2.user_id #=> String
resp.targets[0].protocol_type #=> String, one of "MCP", "HTTP"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The gateway Identifier.

  • :target_id_list (required, Array<String>)

    The target ID list.

Returns:

See Also:



9042
9043
9044
9045
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9042

def synchronize_gateway_targets(params = {}, options = {})
  req = build_request(:synchronize_gateway_targets, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Associates the specified tags to a resource with the specified resourceArn. If existing tags on a resource are not specified in the request parameters, they are not changed. When a resource is deleted, the tags associated with that resource are also deleted.

<note markdown=“1”> This feature is currently available only for AgentCore Runtime, Browser, Browser Profile, Code Interpreter tool, and Gateway.

</note>

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "TaggableResourcesArn", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource that you want to tag.

  • :tags (required, Hash<String,String>)

    The tags to add to the resource. A tag is a key-value pair.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



9078
9079
9080
9081
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9078

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes the specified tags from the specified resource.

<note markdown=“1”> This feature is currently available only for AgentCore Runtime, Browser, Browser Profile, Code Interpreter tool, and Gateway.

</note>

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "TaggableResourcesArn", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource that you want to untag.

  • :tag_keys (required, Array<String>)

    The tag keys of the tags to remove from the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



9109
9110
9111
9112
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9109

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_agent_runtime(params = {}) ⇒ Types::UpdateAgentRuntimeResponse

Updates an existing Amazon Secure Agent.

Examples:

Request syntax with placeholder values


resp = client.update_agent_runtime({
  agent_runtime_id: "AgentRuntimeId", # required
  agent_runtime_artifact: { # required
    container_configuration: {
      container_uri: "RuntimeContainerUri", # required
    },
    code_configuration: {
      code: { # required
        s3: {
          bucket: "S3LocationBucketString", # required
          prefix: "S3LocationPrefixString", # required
          version_id: "S3LocationVersionIdString",
        },
      },
      runtime: "PYTHON_3_10", # required, accepts PYTHON_3_10, PYTHON_3_11, PYTHON_3_12, PYTHON_3_13, PYTHON_3_14, NODE_22
      entry_point: ["entryPoint"], # required
    },
  },
  role_arn: "RoleArn", # required
  network_configuration: { # required
    network_mode: "PUBLIC", # required, accepts PUBLIC, VPC
    network_mode_config: {
      security_groups: ["SecurityGroupId"], # required
      subnets: ["SubnetId"], # required
    },
  },
  description: "Description",
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  request_header_configuration: {
    request_header_allowlist: ["HeaderName"],
  },
  protocol_configuration: {
    server_protocol: "MCP", # required, accepts MCP, HTTP, A2A, AGUI
  },
  lifecycle_configuration: {
    idle_runtime_session_timeout: 1,
    max_lifetime: 1,
  },
  metadata_configuration: {
    require_mmdsv2: false, # required
  },
  environment_variables: {
    "EnvironmentVariableKey" => "EnvironmentVariableValue",
  },
  filesystem_configurations: [
    {
      session_storage: {
        mount_path: "MountPath", # required
      },
      s3_files_access_point: {
        access_point_arn: "S3FilesAccessPointArn", # required
        mount_path: "MountPath", # required
      },
      efs_access_point: {
        access_point_arn: "EfsAccessPointArn", # required
        mount_path: "MountPath", # required
      },
    },
  ],
  client_token: "ClientToken",
})

Response structure


resp.agent_runtime_arn #=> String
resp.agent_runtime_id #=> String
resp.workload_identity_details.workload_identity_arn #=> String
resp.agent_runtime_version #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime to update.

  • :agent_runtime_artifact (required, Types::AgentRuntimeArtifact)

    The updated artifact of the AgentCore Runtime.

  • :role_arn (required, String)

    The updated IAM role ARN that provides permissions for the AgentCore Runtime.

  • :network_configuration (required, Types::NetworkConfiguration)

    The updated network configuration for the AgentCore Runtime.

  • :description (String)

    The updated description of the AgentCore Runtime.

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    The updated authorizer configuration for the AgentCore Runtime.

  • :request_header_configuration (Types::RequestHeaderConfiguration)

    The updated configuration for HTTP request headers that will be passed through to the runtime.

  • :protocol_configuration (Types::ProtocolConfiguration)

    The protocol configuration for an agent runtime. This structure defines how the agent runtime communicates with clients.

  • :lifecycle_configuration (Types::LifecycleConfiguration)

    The updated life cycle configuration for the AgentCore Runtime.

  • :metadata_configuration (Types::RuntimeMetadataConfiguration)

    The updated configuration for microVM Metadata Service (MMDS) settings for the AgentCore Runtime.

  • :environment_variables (Hash<String,String>)

    Updated environment variables to set in the AgentCore Runtime environment.

  • :filesystem_configurations (Array<Types::FilesystemConfiguration>)

    The updated filesystem configurations to mount into the AgentCore Runtime.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



9308
9309
9310
9311
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9308

def update_agent_runtime(params = {}, options = {})
  req = build_request(:update_agent_runtime, params)
  req.send_request(options)
end

#update_agent_runtime_endpoint(params = {}) ⇒ Types::UpdateAgentRuntimeEndpointResponse

Updates an existing Amazon Bedrock AgentCore Runtime endpoint.

Examples:

Request syntax with placeholder values


resp = client.update_agent_runtime_endpoint({
  agent_runtime_id: "AgentRuntimeId", # required
  endpoint_name: "EndpointName", # required
  agent_runtime_version: "AgentRuntimeVersion",
  description: "AgentEndpointDescription",
  client_token: "ClientToken",
})

Response structure


resp.live_version #=> String
resp.target_version #=> String
resp.agent_runtime_endpoint_arn #=> String
resp.agent_runtime_arn #=> String
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :agent_runtime_id (required, String)

    The unique identifier of the AgentCore Runtime associated with the endpoint.

  • :endpoint_name (required, String)

    The name of the AgentCore Runtime endpoint to update.

  • :agent_runtime_version (String)

    The updated version of the AgentCore Runtime for the endpoint.

  • :description (String)

    The updated description of the AgentCore Runtime endpoint.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

Returns:

See Also:



9369
9370
9371
9372
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9369

def update_agent_runtime_endpoint(params = {}, options = {})
  req = build_request(:update_agent_runtime_endpoint, params)
  req.send_request(options)
end

#update_api_key_credential_provider(params = {}) ⇒ Types::UpdateApiKeyCredentialProviderResponse

Updates an existing API key credential provider.

Examples:

Request syntax with placeholder values


resp = client.update_api_key_credential_provider({
  name: "CredentialProviderName", # required
  api_key: "ApiKeyType", # required
})

Response structure


resp.api_key_secret_arn.secret_arn #=> String
resp.name #=> String
resp.credential_provider_arn #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the API key credential provider to update.

  • :api_key (required, String)

    The new API key to use for authentication. This value replaces the existing API key and is encrypted and stored securely.

Returns:

See Also:



9410
9411
9412
9413
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9410

def update_api_key_credential_provider(params = {}, options = {})
  req = build_request(:update_api_key_credential_provider, params)
  req.send_request(options)
end

#update_configuration_bundle(params = {}) ⇒ Types::UpdateConfigurationBundleResponse

Updates a configuration bundle by creating a new version with the specified changes. Each update creates a new version in the version history.

Examples:

Request syntax with placeholder values


resp = client.update_configuration_bundle({
  client_token: "ClientToken",
  bundle_id: "ConfigurationBundleId", # required
  bundle_name: "ConfigurationBundleName",
  description: "ConfigurationBundleDescription",
  components: {
    "ComponentIdentifier" => {
      configuration: { # required
      },
    },
  },
  parent_version_ids: ["ConfigurationBundleVersion"],
  branch_name: "BranchName",
  commit_message: "UpdateConfigurationBundleRequestCommitMessageString",
  created_by: {
    name: "String", # required
    arn: "String",
  },
})

Response structure


resp.bundle_arn #=> String
resp.bundle_id #=> String
resp.version_id #=> String
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :bundle_id (required, String)

    The unique identifier of the configuration bundle to update.

  • :bundle_name (String)

    The updated name for the configuration bundle.

  • :description (String)

    The updated description for the configuration bundle.

  • :components (Hash<String,Types::ComponentConfiguration>)

    The updated component configurations. Creates a new version of the bundle.

  • :parent_version_ids (Array<String>)

    A list of parent version identifiers for lineage tracking. Regular commits have a single parent. Merge commits have two parents: the target branch parent and the source branch parent. If the branch already exists, the first parent must be the latest version on that branch.

  • :branch_name (String)

    The branch name for this version. If not specified, inherits the parent’s branch or defaults to ‘mainline`.

  • :commit_message (String)

    A commit message describing the changes in this version.

  • :created_by (Types::VersionCreatedBySource)

    The source that created this version, including the source name and optional ARN.

Returns:

See Also:



9504
9505
9506
9507
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9504

def update_configuration_bundle(params = {}, options = {})
  req = build_request(:update_configuration_bundle, params)
  req.send_request(options)
end

#update_evaluator(params = {}) ⇒ Types::UpdateEvaluatorResponse

Updates a custom evaluator’s configuration, description, or evaluation level. Built-in evaluators cannot be updated. The evaluator must not be locked for modification.

Examples:

Request syntax with placeholder values


resp = client.update_evaluator({
  client_token: "ClientToken",
  evaluator_id: "EvaluatorId", # required
  description: "EvaluatorDescription",
  evaluator_config: {
    llm_as_a_judge: {
      instructions: "EvaluatorInstructions", # required
      rating_scale: { # required
        numerical: [
          {
            definition: "String", # required
            value: 1.0, # required
            label: "NumericalScaleDefinitionLabelString", # required
          },
        ],
        categorical: [
          {
            definition: "String", # required
            label: "CategoricalScaleDefinitionLabelString", # required
          },
        ],
      },
      model_config: { # required
        bedrock_evaluator_model_config: {
          model_id: "ModelId", # required
          inference_config: {
            max_tokens: 1,
            temperature: 1.0,
            top_p: 1.0,
            stop_sequences: ["NonEmptyString"],
          },
          additional_model_request_fields: {
          },
        },
      },
    },
    code_based: {
      lambda_config: {
        lambda_arn: "LambdaArn", # required
        lambda_timeout_in_seconds: 1,
      },
    },
  },
  level: "TOOL_CALL", # accepts TOOL_CALL, TRACE, SESSION
  kms_key_arn: "KmsKeyArn",
})

Response structure


resp.evaluator_arn #=> String
resp.evaluator_id #=> String
resp.updated_at #=> Time
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :evaluator_id (required, String)

    The unique identifier of the evaluator to update.

  • :description (String)

    The updated description of the evaluator.

  • :evaluator_config (Types::EvaluatorConfig)

    The updated configuration for the evaluator. Specify either LLM-as-a-Judge settings with instructions, rating scale, and model configuration, or code-based settings with a customer-managed Lambda function.

  • :level (String)

    The updated evaluation level (‘TOOL_CALL`, `TRACE`, or `SESSION`) that determines the scope of evaluation.

  • :kms_key_arn (String)

    The Amazon Resource Name (ARN) of a customer managed KMS key to use for encrypting sensitive evaluator data. Specify a new key ARN to rotate the encryption key, or specify a key ARN to add encryption to an evaluator that was previously created without one. When you rotate to a new key, the service decrypts the existing data with the old key and re-encrypts it with the new key. Only symmetric encryption KMS keys are supported. For more information, see [Encryption at rest for AgentCore Evaluations].

    [1]: docs.aws.amazon.com/bedrock-agentcore/latest/devguide/evaluations-encryption.html

Returns:

See Also:



9624
9625
9626
9627
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9624

def update_evaluator(params = {}, options = {})
  req = build_request(:update_evaluator, params)
  req.send_request(options)
end

#update_gateway(params = {}) ⇒ Types::UpdateGatewayResponse

Updates an existing gateway.

Examples:

Request syntax with placeholder values


resp = client.update_gateway({
  gateway_identifier: "GatewayIdentifier", # required
  name: "GatewayName", # required
  description: "GatewayDescription",
  role_arn: "RoleArn", # required
  protocol_type: "MCP", # accepts MCP
  protocol_configuration: {
    mcp: {
      supported_versions: ["McpVersion"],
      instructions: "McpInstructions",
      search_type: "SEMANTIC", # accepts SEMANTIC
      session_configuration: {
        session_timeout_in_seconds: 1,
      },
      streaming_configuration: {
        enable_response_streaming: false,
      },
    },
  },
  authorizer_type: "CUSTOM_JWT", # required, accepts CUSTOM_JWT, AWS_IAM, NONE, AUTHENTICATE_ONLY
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  kms_key_arn: "KmsKeyArn",
  interceptor_configurations: [
    {
      interceptor: { # required
        lambda: {
          arn: "LambdaFunctionArn", # required
        },
      },
      interception_points: ["REQUEST"], # required, accepts REQUEST, RESPONSE
      input_configuration: {
        pass_request_headers: false, # required
      },
    },
  ],
  policy_engine_configuration: {
    arn: "GatewayPolicyEngineArn", # required
    mode: "LOG_ONLY", # required, accepts LOG_ONLY, ENFORCE
  },
  exception_level: "DEBUG", # accepts DEBUG
})

Response structure


resp.gateway_arn #=> String
resp.gateway_id #=> String
resp.gateway_url #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.name #=> String
resp.description #=> String
resp.role_arn #=> String
resp.protocol_type #=> String, one of "MCP"
resp.protocol_configuration.mcp.supported_versions #=> Array
resp.protocol_configuration.mcp.supported_versions[0] #=> String
resp.protocol_configuration.mcp.instructions #=> String
resp.protocol_configuration.mcp.search_type #=> String, one of "SEMANTIC"
resp.protocol_configuration.mcp.session_configuration.session_timeout_in_seconds #=> Integer
resp.protocol_configuration.mcp.streaming_configuration.enable_response_streaming #=> Boolean
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM", "NONE", "AUTHENTICATE_ONLY"
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.kms_key_arn #=> String
resp.interceptor_configurations #=> Array
resp.interceptor_configurations[0].interceptor.lambda.arn #=> String
resp.interceptor_configurations[0].interception_points #=> Array
resp.interceptor_configurations[0].interception_points[0] #=> String, one of "REQUEST", "RESPONSE"
resp.interceptor_configurations[0].input_configuration.pass_request_headers #=> Boolean
resp.policy_engine_configuration.arn #=> String
resp.policy_engine_configuration.mode #=> String, one of "LOG_ONLY", "ENFORCE"
resp.workload_identity_details.workload_identity_arn #=> String
resp.exception_level #=> String, one of "DEBUG"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to update.

  • :name (required, String)

    The name of the gateway. This name must be the same as the one when the gateway was created.

  • :description (String)

    The updated description for the gateway.

  • :role_arn (required, String)

    The updated IAM role ARN that provides permissions for the gateway.

  • :protocol_type (String)

    The updated protocol type for the gateway.

  • :protocol_configuration (Types::GatewayProtocolConfiguration)

    The configuration for a gateway protocol. This structure defines how the gateway communicates with external services.

  • :authorizer_type (required, String)

    The updated authorizer type for the gateway.

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    The updated authorizer configuration for the gateway.

  • :kms_key_arn (String)

    The updated ARN of the KMS key used to encrypt the gateway.

  • :interceptor_configurations (Array<Types::GatewayInterceptorConfiguration>)

    The updated interceptor configurations for the gateway.

  • :policy_engine_configuration (Types::GatewayPolicyEngineConfiguration)

    The updated policy engine configuration for the gateway. A policy engine is a collection of policies that evaluates and authorizes agent tool calls. When associated with a gateway, the policy engine intercepts all agent requests and determines whether to allow or deny each action based on the defined policies.

  • :exception_level (String)

    The level of detail in error messages returned when invoking the gateway.

    • If the value is ‘DEBUG`, granular exception messages are returned to help a user debug the gateway.

    • If the value is omitted, a generic error message is returned to the end user.

Returns:

See Also:



9873
9874
9875
9876
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9873

def update_gateway(params = {}, options = {})
  req = build_request(:update_gateway, params)
  req.send_request(options)
end

#update_gateway_rule(params = {}) ⇒ Types::UpdateGatewayRuleResponse

Updates a gateway rule’s priority, conditions, actions, or description.

Examples:

Request syntax with placeholder values


resp = client.update_gateway_rule({
  gateway_identifier: "GatewayIdentifier", # required
  rule_id: "GatewayRuleId", # required
  priority: 1,
  conditions: [
    {
      match_principals: {
        any_of: [ # required
          {
            iam_principal: {
              arn: "IamPrincipalArn", # required
              operator: "StringEquals", # accepts StringEquals, StringLike
            },
          },
        ],
      },
      match_paths: {
        any_of: ["MatchPathPattern"], # required
      },
    },
  ],
  actions: [
    {
      configuration_bundle: {
        static_override: {
          bundle_arn: "GatewayConfigurationBundleArn", # required
          bundle_version: "StaticOverrideBundleVersionString", # required
        },
        weighted_override: {
          traffic_split: [ # required
            {
              name: "TrafficSplitEntryNameString", # required
              weight: 1, # required
              configuration_bundle: { # required
                bundle_arn: "GatewayConfigurationBundleArn", # required
                bundle_version: "ConfigurationBundleReferenceBundleVersionString", # required
              },
              description: "TrafficSplitEntryDescriptionString",
              metadata: {
                "TrafficSplitMetadataKey" => "TrafficSplitMetadataValue",
              },
            },
          ],
        },
      },
      route_to_target: {
        static_route: {
          target_name: "TargetName", # required
        },
        weighted_route: {
          traffic_split: [ # required
            {
              name: "TargetTrafficSplitEntryNameString", # required
              weight: 1, # required
              target_name: "TargetName", # required
              description: "TargetTrafficSplitEntryDescriptionString",
              metadata: {
                "TrafficSplitMetadataKey" => "TrafficSplitMetadataValue",
              },
            },
          ],
        },
      },
    },
  ],
  description: "GatewayRuleDescription",
})

Response structure


resp.rule_id #=> String
resp.gateway_arn #=> String
resp.priority #=> Integer
resp.conditions #=> Array
resp.conditions[0].match_principals.any_of #=> Array
resp.conditions[0].match_principals.any_of[0].iam_principal.arn #=> String
resp.conditions[0].match_principals.any_of[0].iam_principal.operator #=> String, one of "StringEquals", "StringLike"
resp.conditions[0].match_paths.any_of #=> Array
resp.conditions[0].match_paths.any_of[0] #=> String
resp.actions #=> Array
resp.actions[0].configuration_bundle.static_override.bundle_arn #=> String
resp.actions[0].configuration_bundle.static_override.bundle_version #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split #=> Array
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].name #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].weight #=> Integer
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_arn #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].configuration_bundle.bundle_version #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].description #=> String
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0]. #=> Hash
resp.actions[0].configuration_bundle.weighted_override.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.actions[0].route_to_target.static_route.target_name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split #=> Array
resp.actions[0].route_to_target.weighted_route.traffic_split[0].name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0].weight #=> Integer
resp.actions[0].route_to_target.weighted_route.traffic_split[0].target_name #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0].description #=> String
resp.actions[0].route_to_target.weighted_route.traffic_split[0]. #=> Hash
resp.actions[0].route_to_target.weighted_route.traffic_split[0].["TrafficSplitMetadataKey"] #=> String
resp.description #=> String
resp.created_at #=> Time
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING"
resp.system.managed_by #=> String
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway containing the rule.

  • :rule_id (required, String)

    The unique identifier of the rule to update.

  • :priority (Integer)

    The updated priority of the rule.

  • :conditions (Array<Types::Condition>)

    The updated conditions for the rule.

  • :actions (Array<Types::Action>)

    The updated actions for the rule.

  • :description (String)

    The updated description of the rule.

Returns:

See Also:



10022
10023
10024
10025
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10022

def update_gateway_rule(params = {}, options = {})
  req = build_request(:update_gateway_rule, params)
  req.send_request(options)
end

#update_gateway_target(params = {}) ⇒ Types::UpdateGatewayTargetResponse

Updates an existing gateway target.

You cannot update a target that is in a pending authorization state (‘CREATE_PENDING_AUTH`, `UPDATE_PENDING_AUTH`, or `SYNCHRONIZE_PENDING_AUTH`). Wait for the authorization to complete or fail before updating the target.

Examples:

Request syntax with placeholder values


resp = client.update_gateway_target({
  gateway_identifier: "GatewayIdentifier", # required
  target_id: "TargetId", # required
  name: "TargetName", # required
  description: "TargetDescription",
  target_configuration: { # required
    mcp: {
      open_api_schema: {
        s3: {
          uri: "S3BucketUri",
          bucket_owner_account_id: "AwsAccountId",
        },
        inline_payload: "InlinePayload",
      },
      smithy_model: {
        s3: {
          uri: "S3BucketUri",
          bucket_owner_account_id: "AwsAccountId",
        },
        inline_payload: "InlinePayload",
      },
      lambda: {
        lambda_arn: "LambdaFunctionArn", # required
        tool_schema: { # required
          s3: {
            uri: "S3BucketUri",
            bucket_owner_account_id: "AwsAccountId",
          },
          inline_payload: [
            {
              name: "String", # required
              description: "String", # required
              input_schema: { # required
                type: "string", # required, accepts string, number, object, array, boolean, integer
                properties: {
                  "String" => {
                    # recursive SchemaDefinition
                  },
                },
                required: ["String"],
                items: {
                  # recursive SchemaDefinition
                },
                description: "String",
              },
              output_schema: {
                type: "string", # required, accepts string, number, object, array, boolean, integer
                properties: {
                  "String" => {
                    # recursive SchemaDefinition
                  },
                },
                required: ["String"],
                items: {
                  # recursive SchemaDefinition
                },
                description: "String",
              },
            },
          ],
        },
      },
      mcp_server: {
        endpoint: "McpServerTargetConfigurationEndpointString", # required
        mcp_tool_schema: {
          s3: {
            uri: "S3BucketUri",
            bucket_owner_account_id: "AwsAccountId",
          },
          inline_payload: "InlinePayload",
        },
        listing_mode: "DEFAULT", # accepts DEFAULT, DYNAMIC
        resource_priority: 1,
      },
      api_gateway: {
        rest_api_id: "String", # required
        stage: "String", # required
        api_gateway_tool_configuration: { # required
          tool_overrides: [
            {
              name: "String", # required
              description: "String",
              path: "String", # required
              method: "GET", # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
            },
          ],
          tool_filters: [ # required
            {
              filter_path: "String", # required
              methods: ["GET"], # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
            },
          ],
        },
      },
    },
    http: {
      agentcore_runtime: {
        arn: "RuntimeArn", # required
        qualifier: "RuntimeQualifier",
      },
    },
  },
  credential_provider_configurations: [
    {
      credential_provider_type: "GATEWAY_IAM_ROLE", # required, accepts GATEWAY_IAM_ROLE, OAUTH, API_KEY, CALLER_IAM_CREDENTIALS, JWT_PASSTHROUGH
      credential_provider: {
        oauth_credential_provider: {
          provider_arn: "OAuthCredentialProviderArn", # required
          scopes: ["OAuthScope"], # required
          custom_parameters: {
            "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
          },
          grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, TOKEN_EXCHANGE
          default_return_url: "OAuthDefaultReturnUrl",
        },
        api_key_credential_provider: {
          provider_arn: "ApiKeyCredentialProviderArn", # required
          credential_parameter_name: "ApiKeyCredentialParameterName",
          credential_prefix: "ApiKeyCredentialPrefix",
          credential_location: "HEADER", # accepts HEADER, QUERY_PARAMETER
        },
        iam_credential_provider: {
          service: "IamCredentialProviderServiceString", # required
          region: "IamCredentialProviderRegionString",
        },
      },
    },
  ],
  metadata_configuration: {
    allowed_request_headers: ["HttpHeaderName"],
    allowed_query_parameters: ["HttpQueryParameterName"],
    allowed_response_headers: ["HttpHeaderName"],
  },
  private_endpoint: {
    self_managed_lattice_resource: {
      resource_configuration_identifier: "ResourceConfigurationIdentifier",
    },
    managed_vpc_resource: {
      vpc_identifier: "VpcIdentifier", # required
      subnet_ids: ["SubnetId"], # required
      endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
      security_group_ids: ["SecurityGroupIdentifier"],
      tags: {
        "TagKey" => "TagValue",
      },
      routing_domain: "RoutingDomain",
    },
  },
})

Response structure


resp.gateway_arn #=> String
resp.target_id #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "UPDATE_UNSUCCESSFUL", "DELETING", "READY", "FAILED", "SYNCHRONIZING", "SYNCHRONIZE_UNSUCCESSFUL", "CREATE_PENDING_AUTH", "UPDATE_PENDING_AUTH", "SYNCHRONIZE_PENDING_AUTH"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.name #=> String
resp.description #=> String
resp.target_configuration.mcp.open_api_schema.s3.uri #=> String
resp.target_configuration.mcp.open_api_schema.s3. #=> String
resp.target_configuration.mcp.open_api_schema.inline_payload #=> String
resp.target_configuration.mcp.smithy_model.s3.uri #=> String
resp.target_configuration.mcp.smithy_model.s3. #=> String
resp.target_configuration.mcp.smithy_model.inline_payload #=> String
resp.target_configuration.mcp.lambda.lambda_arn #=> String
resp.target_configuration.mcp.lambda.tool_schema.s3.uri #=> String
resp.target_configuration.mcp.lambda.tool_schema.s3. #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].name #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].description #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties #=> Hash
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.properties["String"] #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.required[0] #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.items #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].input_schema.description #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.type #=> String, one of "string", "number", "object", "array", "boolean", "integer"
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties #=> Hash
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.properties["String"] #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required #=> Array
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.required[0] #=> String
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
resp.target_configuration.mcp.mcp_server.endpoint #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3. #=> String
resp.target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
resp.target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
resp.target_configuration.mcp.mcp_server.resource_priority #=> Integer
resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
resp.target_configuration.mcp.api_gateway.stage #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
resp.target_configuration.http.agentcore_runtime.arn #=> String
resp.target_configuration.http.agentcore_runtime.qualifier #=> String
resp.credential_provider_configurations #=> Array
resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY", "CALLER_IAM_CREDENTIALS", "JWT_PASSTHROUGH"
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_location #=> String, one of "HEADER", "QUERY_PARAMETER"
resp.credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
resp.credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String
resp.last_synchronized_at #=> Time
resp..allowed_request_headers #=> Array
resp..allowed_request_headers[0] #=> String
resp..allowed_query_parameters #=> Array
resp..allowed_query_parameters[0] #=> String
resp..allowed_response_headers #=> Array
resp..allowed_response_headers[0] #=> String
resp.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.private_endpoint_managed_resources #=> Array
resp.private_endpoint_managed_resources[0].domain #=> String
resp.private_endpoint_managed_resources[0].resource_gateway_arn #=> String
resp.private_endpoint_managed_resources[0].resource_association_arn #=> String
resp.authorization_data.oauth2.authorization_url #=> String
resp.authorization_data.oauth2.user_id #=> String
resp.protocol_type #=> String, one of "MCP", "HTTP"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The unique identifier of the gateway associated with the target.

  • :target_id (required, String)

    The unique identifier of the gateway target to update.

  • :name (required, String)

    The updated name for the gateway target.

  • :description (String)

    The updated description for the gateway target.

  • :target_configuration (required, Types::TargetConfiguration)

    The configuration for a gateway target. This structure defines how the gateway connects to and interacts with the target endpoint.

  • :credential_provider_configurations (Array<Types::CredentialProviderConfiguration>)

    The updated credential provider configurations for the gateway target.

  • :metadata_configuration (Types::MetadataConfiguration)

    Configuration for HTTP header and query parameter propagation to the gateway target.

  • :private_endpoint (Types::PrivateEndpoint)

    The private endpoint configuration for the gateway target. Use this to connect the gateway to private resources in your VPC.

Returns:

See Also:



10332
10333
10334
10335
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10332

def update_gateway_target(params = {}, options = {})
  req = build_request(:update_gateway_target, params)
  req.send_request(options)
end

#update_harness(params = {}) ⇒ Types::UpdateHarnessResponse

Operation to update a Harness.

Examples:

Request syntax with placeholder values


resp = client.update_harness({
  harness_id: "HarnessId", # required
  client_token: "ClientToken",
  execution_role_arn: "RoleArn",
  environment: {
    agent_core_runtime_environment: {
      lifecycle_configuration: {
        idle_runtime_session_timeout: 1,
        max_lifetime: 1,
      },
      network_configuration: {
        network_mode: "PUBLIC", # required, accepts PUBLIC, VPC
        network_mode_config: {
          security_groups: ["SecurityGroupId"], # required
          subnets: ["SubnetId"], # required
        },
      },
      filesystem_configurations: [
        {
          session_storage: {
            mount_path: "MountPath", # required
          },
          s3_files_access_point: {
            access_point_arn: "S3FilesAccessPointArn", # required
            mount_path: "MountPath", # required
          },
          efs_access_point: {
            access_point_arn: "EfsAccessPointArn", # required
            mount_path: "MountPath", # required
          },
        },
      ],
    },
  },
  environment_artifact: {
    optional_value: {
      container_configuration: {
        container_uri: "RuntimeContainerUri", # required
      },
    },
  },
  environment_variables: {
    "EnvironmentVariableKey" => "EnvironmentVariableValue",
  },
  authorizer_configuration: {
    optional_value: {
      custom_jwt_authorizer: {
        discovery_url: "DiscoveryUrl", # required
        allowed_audience: ["AllowedAudience"],
        allowed_clients: ["AllowedClient"],
        allowed_scopes: ["AllowedScopeType"],
        custom_claims: [
          {
            inbound_token_claim_name: "InboundTokenClaimNameType", # required
            inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
            authorizing_claim_match_value: { # required
              claim_match_value: { # required
                match_value_string: "MatchValueString",
                match_value_string_list: ["MatchValueString"],
              },
              claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
            },
          },
        ],
        private_endpoint: {
          self_managed_lattice_resource: {
            resource_configuration_identifier: "ResourceConfigurationIdentifier",
          },
          managed_vpc_resource: {
            vpc_identifier: "VpcIdentifier", # required
            subnet_ids: ["SubnetId"], # required
            endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
            security_group_ids: ["SecurityGroupIdentifier"],
            tags: {
              "TagKey" => "TagValue",
            },
            routing_domain: "RoutingDomain",
          },
        },
        private_endpoint_overrides: [
          {
            domain: "PrivateEndpointOverrideDomain", # required
            private_endpoint: { # required
              self_managed_lattice_resource: {
                resource_configuration_identifier: "ResourceConfigurationIdentifier",
              },
              managed_vpc_resource: {
                vpc_identifier: "VpcIdentifier", # required
                subnet_ids: ["SubnetId"], # required
                endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
                security_group_ids: ["SecurityGroupIdentifier"],
                tags: {
                  "TagKey" => "TagValue",
                },
                routing_domain: "RoutingDomain",
              },
            },
          },
        ],
      },
    },
  },
  model: {
    bedrock_model_config: {
      model_id: "ModelId", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
    },
    open_ai_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
    },
    gemini_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
      top_k: 1,
    },
  },
  system_prompt: [
    {
      text: "SensitiveText",
    },
  ],
  tools: [
    {
      type: "remote_mcp", # required, accepts remote_mcp, agentcore_browser, agentcore_gateway, inline_function, agentcore_code_interpreter
      name: "HarnessToolName",
      config: {
        remote_mcp: {
          url: "HarnessRemoteMcpUrl", # required
          headers: {
            "HttpHeaderKey" => "HttpHeaderValue",
          },
        },
        agent_core_browser: {
          browser_arn: "BrowserArn",
        },
        agent_core_gateway: {
          gateway_arn: "GatewayArn", # required
          outbound_auth: {
            aws_iam: {
            },
            none: {
            },
            oauth: {
              provider_arn: "OAuthCredentialProviderArn", # required
              scopes: ["OAuthScope"], # required
              custom_parameters: {
                "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
              },
              grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE, TOKEN_EXCHANGE
              default_return_url: "OAuthDefaultReturnUrl",
            },
          },
        },
        inline_function: {
          description: "HarnessInlineFunctionDescription", # required
          input_schema: { # required
          },
        },
        agent_core_code_interpreter: {
          code_interpreter_arn: "CodeInterpreterArn",
        },
      },
    },
  ],
  skills: [
    {
      path: "HarnessSkillPath",
    },
  ],
  allowed_tools: ["HarnessAllowedTool"],
  memory: {
    optional_value: {
      agent_core_memory_configuration: {
        arn: "MemoryArn", # required
        actor_id: "String",
        messages_count: 1,
        retrieval_config: {
          "String" => {
            top_k: 1,
            relevance_score: 1.0,
            strategy_id: "String",
          },
        },
      },
    },
  },
  truncation: {
    strategy: "sliding_window", # required, accepts sliding_window, summarization, none
    config: {
      sliding_window: {
        messages_count: 1,
      },
      summarization: {
        summary_ratio: 1.0,
        preserve_recent_messages: 1,
        summarization_system_prompt: "String",
      },
    },
  },
  max_iterations: 1,
  max_tokens: 1,
  timeout_seconds: 1,
})

Response structure


resp.harness.harness_id #=> String
resp.harness.harness_name #=> String
resp.harness.arn #=> String
resp.harness.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.harness.execution_role_arn #=> String
resp.harness.created_at #=> Time
resp.harness.updated_at #=> Time
resp.harness.model.bedrock_model_config.model_id #=> String
resp.harness.model.bedrock_model_config.max_tokens #=> Integer
resp.harness.model.bedrock_model_config.temperature #=> Float
resp.harness.model.bedrock_model_config.top_p #=> Float
resp.harness.model.open_ai_model_config.model_id #=> String
resp.harness.model.open_ai_model_config.api_key_arn #=> String
resp.harness.model.open_ai_model_config.max_tokens #=> Integer
resp.harness.model.open_ai_model_config.temperature #=> Float
resp.harness.model.open_ai_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.model_id #=> String
resp.harness.model.gemini_model_config.api_key_arn #=> String
resp.harness.model.gemini_model_config.max_tokens #=> Integer
resp.harness.model.gemini_model_config.temperature #=> Float
resp.harness.model.gemini_model_config.top_p #=> Float
resp.harness.model.gemini_model_config.top_k #=> Integer
resp.harness.system_prompt #=> Array
resp.harness.system_prompt[0].text #=> String
resp.harness.tools #=> Array
resp.harness.tools[0].type #=> String, one of "remote_mcp", "agentcore_browser", "agentcore_gateway", "inline_function", "agentcore_code_interpreter"
resp.harness.tools[0].name #=> String
resp.harness.tools[0].config.remote_mcp.url #=> String
resp.harness.tools[0].config.remote_mcp.headers #=> Hash
resp.harness.tools[0].config.remote_mcp.headers["HttpHeaderKey"] #=> String
resp.harness.tools[0].config.agent_core_browser.browser_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.gateway_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.provider_arn #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes #=> Array
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.scopes[0] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters #=> Hash
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.custom_parameters["OAuthCustomParametersKey"] #=> String
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE", "TOKEN_EXCHANGE"
resp.harness.tools[0].config.agent_core_gateway.outbound_auth.oauth.default_return_url #=> String
resp.harness.tools[0].config.inline_function.description #=> String
resp.harness.tools[0].config.agent_core_code_interpreter.code_interpreter_arn #=> String
resp.harness.skills #=> Array
resp.harness.skills[0].path #=> String
resp.harness.allowed_tools #=> Array
resp.harness.allowed_tools[0] #=> String
resp.harness.truncation.strategy #=> String, one of "sliding_window", "summarization", "none"
resp.harness.truncation.config.sliding_window.messages_count #=> Integer
resp.harness.truncation.config.summarization.summary_ratio #=> Float
resp.harness.truncation.config.summarization.preserve_recent_messages #=> Integer
resp.harness.truncation.config.summarization.summarization_system_prompt #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_arn #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_name #=> String
resp.harness.environment.agent_core_runtime_environment.agent_runtime_id #=> String
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.idle_runtime_session_timeout #=> Integer
resp.harness.environment.agent_core_runtime_environment.lifecycle_configuration.max_lifetime #=> Integer
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode #=> String, one of "PUBLIC", "VPC"
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.security_groups[0] #=> String
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets #=> Array
resp.harness.environment.agent_core_runtime_environment.network_configuration.network_mode_config.subnets[0] #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations #=> Array
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].session_storage.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].s3_files_access_point.mount_path #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.access_point_arn #=> String
resp.harness.environment.agent_core_runtime_environment.filesystem_configurations[0].efs_access_point.mount_path #=> String
resp.harness.environment_artifact.container_configuration.container_uri #=> String
resp.harness.environment_variables #=> Hash
resp.harness.environment_variables["EnvironmentVariableKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.harness.memory.agent_core_memory_configuration.arn #=> String
resp.harness.memory.agent_core_memory_configuration.actor_id #=> String
resp.harness.memory.agent_core_memory_configuration.messages_count #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config #=> Hash
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].top_k #=> Integer
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].relevance_score #=> Float
resp.harness.memory.agent_core_memory_configuration.retrieval_config["String"].strategy_id #=> String
resp.harness.max_iterations #=> Integer
resp.harness.max_tokens #=> Integer
resp.harness.timeout_seconds #=> Integer
resp.harness.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness to update.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure idempotency of the request.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :execution_role_arn (String)

    The ARN of the IAM role that the harness assumes when running. If not specified, the existing value is retained.

  • :environment (Types::HarnessEnvironmentProviderRequest)

    The compute environment configuration for the harness. If not specified, the existing value is retained.

  • :environment_artifact (Types::UpdatedHarnessEnvironmentArtifact)

    The environment artifact for the harness. Use the optionalValue wrapper to set a new value, or set it to null to clear the existing configuration.

  • :environment_variables (Hash<String,String>)

    Environment variables to set in the harness runtime environment. If specified, this replaces all existing environment variables. If not specified, the existing value is retained.

  • :authorizer_configuration (Types::UpdatedAuthorizerConfiguration)

    Wrapper for updating an optional AuthorizerConfiguration field with PATCH semantics. When present in an update request, the authorizer configuration is replaced with optionalValue. When absent, the authorizer configuration is left unchanged. To unset, include the wrapper with optionalValue not specified.

  • :model (Types::HarnessModelConfiguration)

    The model configuration for the harness. If not specified, the existing value is retained.

  • :system_prompt (Array<Types::HarnessSystemContentBlock>)

    The system prompt that defines the agent’s behavior. If not specified, the existing value is retained.

  • :tools (Array<Types::HarnessTool>)

    The tools available to the agent. If specified, this replaces all existing tools. If not specified, the existing value is retained.

  • :skills (Array<Types::HarnessSkill>)

    The skills available to the agent. If specified, this replaces all existing skills. If not specified, the existing value is retained.

  • :allowed_tools (Array<String>)

    The tools that the agent is allowed to use. If specified, this replaces all existing allowed tools. If not specified, the existing value is retained.

  • :memory (Types::UpdatedHarnessMemoryConfiguration)

    The AgentCore Memory configuration. Use the optionalValue wrapper to set a new value, or set it to null to clear the existing configuration.

  • :truncation (Types::HarnessTruncationConfiguration)

    The truncation configuration for managing conversation context. If not specified, the existing value is retained.

  • :max_iterations (Integer)

    The maximum number of iterations the agent loop can execute per invocation. If not specified, the existing value is retained.

  • :max_tokens (Integer)

    The maximum total number of output tokens the agent can generate across all model calls within a single invocation. If not specified, the existing value is retained.

  • :timeout_seconds (Integer)

    The maximum duration in seconds for the agent loop execution per invocation. If not specified, the existing value is retained.

Returns:

See Also:



10759
10760
10761
10762
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10759

def update_harness(params = {}, options = {})
  req = build_request(:update_harness, params)
  req.send_request(options)
end

#update_memory(params = {}) ⇒ Types::UpdateMemoryOutput

Update an Amazon Bedrock AgentCore Memory resource memory.

Examples:

Request syntax with placeholder values


resp = client.update_memory({
  client_token: "UpdateMemoryInputClientTokenString",
  memory_id: "MemoryId", # required
  description: "Description",
  event_expiry_duration: 1,
  memory_execution_role_arn: "Arn",
  memory_strategies: {
    add_memory_strategies: [
      {
        semantic_memory_strategy: {
          name: "Name", # required
          description: "Description",
          namespaces: ["Namespace"],
          namespace_templates: ["Namespace"],
          memory_record_schema: {
            metadata_schema: [
              {
                key: "MetadataKey", # required
                type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                extraction_config: {
                  llm_extraction_config: {
                    llm_extraction_instruction: "LlmExtractionInstruction",
                    definition: "Definition", # required
                    validation: {
                      string_validation: {
                        allowed_values: ["AllowedStringValue"], # required
                      },
                      string_list_validation: {
                        allowed_values: ["AllowedStringListValue"],
                        max_items: 1,
                      },
                      number_validation: {
                        min_value: 1.0,
                        max_value: 1.0,
                      },
                    },
                  },
                },
              },
            ],
          },
        },
        summary_memory_strategy: {
          name: "Name", # required
          description: "Description",
          namespaces: ["Namespace"],
          namespace_templates: ["Namespace"],
          memory_record_schema: {
            metadata_schema: [
              {
                key: "MetadataKey", # required
                type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                extraction_config: {
                  llm_extraction_config: {
                    llm_extraction_instruction: "LlmExtractionInstruction",
                    definition: "Definition", # required
                    validation: {
                      string_validation: {
                        allowed_values: ["AllowedStringValue"], # required
                      },
                      string_list_validation: {
                        allowed_values: ["AllowedStringListValue"],
                        max_items: 1,
                      },
                      number_validation: {
                        min_value: 1.0,
                        max_value: 1.0,
                      },
                    },
                  },
                },
              },
            ],
          },
        },
        user_preference_memory_strategy: {
          name: "Name", # required
          description: "Description",
          namespaces: ["Namespace"],
          namespace_templates: ["Namespace"],
          memory_record_schema: {
            metadata_schema: [
              {
                key: "MetadataKey", # required
                type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                extraction_config: {
                  llm_extraction_config: {
                    llm_extraction_instruction: "LlmExtractionInstruction",
                    definition: "Definition", # required
                    validation: {
                      string_validation: {
                        allowed_values: ["AllowedStringValue"], # required
                      },
                      string_list_validation: {
                        allowed_values: ["AllowedStringListValue"],
                        max_items: 1,
                      },
                      number_validation: {
                        min_value: 1.0,
                        max_value: 1.0,
                      },
                    },
                  },
                },
              },
            ],
          },
        },
        custom_memory_strategy: {
          name: "Name", # required
          description: "Description",
          namespaces: ["Namespace"],
          namespace_templates: ["Namespace"],
          configuration: {
            semantic_override: {
              extraction: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              consolidation: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
            },
            summary_override: {
              consolidation: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
            },
            user_preference_override: {
              extraction: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              consolidation: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
            },
            episodic_override: {
              extraction: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              consolidation: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              reflection: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
                namespaces: ["Namespace"],
                namespace_templates: ["Namespace"],
                memory_record_schema: {
                  metadata_schema: [
                    {
                      key: "MetadataKey", # required
                      type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                      extraction_config: {
                        llm_extraction_config: {
                          llm_extraction_instruction: "LlmExtractionInstruction",
                          definition: "Definition", # required
                          validation: {
                            string_validation: {
                              allowed_values: ["AllowedStringValue"], # required
                            },
                            string_list_validation: {
                              allowed_values: ["AllowedStringListValue"],
                              max_items: 1,
                            },
                            number_validation: {
                              min_value: 1.0,
                              max_value: 1.0,
                            },
                          },
                        },
                      },
                    },
                  ],
                },
              },
            },
            self_managed_configuration: {
              trigger_conditions: [
                {
                  message_based_trigger: {
                    message_count: 1,
                  },
                  token_based_trigger: {
                    token_count: 1,
                  },
                  time_based_trigger: {
                    idle_session_timeout: 1,
                  },
                },
              ],
              invocation_configuration: { # required
                topic_arn: "Arn", # required
                payload_delivery_bucket_name: "InvocationConfigurationInputPayloadDeliveryBucketNameString", # required
              },
              historical_context_window_size: 1,
            },
          },
          memory_record_schema: {
            metadata_schema: [
              {
                key: "MetadataKey", # required
                type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                extraction_config: {
                  llm_extraction_config: {
                    llm_extraction_instruction: "LlmExtractionInstruction",
                    definition: "Definition", # required
                    validation: {
                      string_validation: {
                        allowed_values: ["AllowedStringValue"], # required
                      },
                      string_list_validation: {
                        allowed_values: ["AllowedStringListValue"],
                        max_items: 1,
                      },
                      number_validation: {
                        min_value: 1.0,
                        max_value: 1.0,
                      },
                    },
                  },
                },
              },
            ],
          },
        },
        episodic_memory_strategy: {
          name: "Name", # required
          description: "Description",
          namespaces: ["Namespace"],
          namespace_templates: ["Namespace"],
          reflection_configuration: {
            namespaces: ["Namespace"],
            namespace_templates: ["Namespace"],
            memory_record_schema: {
              metadata_schema: [
                {
                  key: "MetadataKey", # required
                  type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                  extraction_config: {
                    llm_extraction_config: {
                      llm_extraction_instruction: "LlmExtractionInstruction",
                      definition: "Definition", # required
                      validation: {
                        string_validation: {
                          allowed_values: ["AllowedStringValue"], # required
                        },
                        string_list_validation: {
                          allowed_values: ["AllowedStringListValue"],
                          max_items: 1,
                        },
                        number_validation: {
                          min_value: 1.0,
                          max_value: 1.0,
                        },
                      },
                    },
                  },
                },
              ],
            },
          },
          memory_record_schema: {
            metadata_schema: [
              {
                key: "MetadataKey", # required
                type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                extraction_config: {
                  llm_extraction_config: {
                    llm_extraction_instruction: "LlmExtractionInstruction",
                    definition: "Definition", # required
                    validation: {
                      string_validation: {
                        allowed_values: ["AllowedStringValue"], # required
                      },
                      string_list_validation: {
                        allowed_values: ["AllowedStringListValue"],
                        max_items: 1,
                      },
                      number_validation: {
                        min_value: 1.0,
                        max_value: 1.0,
                      },
                    },
                  },
                },
              },
            ],
          },
        },
      },
    ],
    modify_memory_strategies: [
      {
        memory_strategy_id: "String", # required
        description: "Description",
        namespaces: ["Namespace"],
        namespace_templates: ["Namespace"],
        configuration: {
          extraction: {
            custom_extraction_configuration: {
              semantic_extraction_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              user_preference_extraction_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              episodic_extraction_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
            },
          },
          consolidation: {
            custom_consolidation_configuration: {
              semantic_consolidation_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              summary_consolidation_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              user_preference_consolidation_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
              episodic_consolidation_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
              },
            },
          },
          reflection: {
            episodic_reflection_configuration: {
              namespaces: ["Namespace"],
              namespace_templates: ["Namespace"],
              memory_record_schema: {
                metadata_schema: [
                  {
                    key: "MetadataKey", # required
                    type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                    extraction_config: {
                      llm_extraction_config: {
                        llm_extraction_instruction: "LlmExtractionInstruction",
                        definition: "Definition", # required
                        validation: {
                          string_validation: {
                            allowed_values: ["AllowedStringValue"], # required
                          },
                          string_list_validation: {
                            allowed_values: ["AllowedStringListValue"],
                            max_items: 1,
                          },
                          number_validation: {
                            min_value: 1.0,
                            max_value: 1.0,
                          },
                        },
                      },
                    },
                  },
                ],
              },
            },
            custom_reflection_configuration: {
              episodic_reflection_override: {
                append_to_prompt: "Prompt", # required
                model_id: "String", # required
                namespaces: ["Namespace"],
                namespace_templates: ["Namespace"],
                memory_record_schema: {
                  metadata_schema: [
                    {
                      key: "MetadataKey", # required
                      type: "STRING", # accepts STRING, STRINGLIST, NUMBER
                      extraction_config: {
                        llm_extraction_config: {
                          llm_extraction_instruction: "LlmExtractionInstruction",
                          definition: "Definition", # required
                          validation: {
                            string_validation: {
                              allowed_values: ["AllowedStringValue"], # required
                            },
                            string_list_validation: {
                              allowed_values: ["AllowedStringListValue"],
                              max_items: 1,
                            },
                            number_validation: {
                              min_value: 1.0,
                              max_value: 1.0,
                            },
                          },
                        },
                      },
                    },
                  ],
                },
              },
            },
          },
          self_managed_configuration: {
            trigger_conditions: [
              {
                message_based_trigger: {
                  message_count: 1,
                },
                token_based_trigger: {
                  token_count: 1,
                },
                time_based_trigger: {
                  idle_session_timeout: 1,
                },
              },
            ],
            invocation_configuration: {
              topic_arn: "Arn",
              payload_delivery_bucket_name: "ModifyInvocationConfigurationInputPayloadDeliveryBucketNameString",
            },
            historical_context_window_size: 1,
          },
        },
        memory_record_schema: {
          metadata_schema: [
            {
              key: "MetadataKey", # required
              type: "STRING", # accepts STRING, STRINGLIST, NUMBER
              extraction_config: {
                llm_extraction_config: {
                  llm_extraction_instruction: "LlmExtractionInstruction",
                  definition: "Definition", # required
                  validation: {
                    string_validation: {
                      allowed_values: ["AllowedStringValue"], # required
                    },
                    string_list_validation: {
                      allowed_values: ["AllowedStringListValue"],
                      max_items: 1,
                    },
                    number_validation: {
                      min_value: 1.0,
                      max_value: 1.0,
                    },
                  },
                },
              },
            },
          ],
        },
      },
    ],
    delete_memory_strategies: [
      {
        memory_strategy_id: "String", # required
      },
    ],
  },
  add_indexed_keys: [
    {
      key: "MetadataKey", # required
      type: "STRING", # required, accepts STRING, STRINGLIST, NUMBER
    },
  ],
  stream_delivery_resources: {
    resources: [ # required
      {
        kinesis: {
          data_stream_arn: "Arn", # required
          content_configurations: [ # required
            {
              type: "MEMORY_RECORDS", # required, accepts MEMORY_RECORDS
              level: "METADATA_ONLY", # accepts METADATA_ONLY, FULL_CONTENT
            },
          ],
        },
      },
    ],
  },
})

Response structure


resp.memory.arn #=> String
resp.memory.id #=> String
resp.memory.name #=> String
resp.memory.description #=> String
resp.memory.encryption_key_arn #=> String
resp.memory.memory_execution_role_arn #=> String
resp.memory.event_expiry_duration #=> Integer
resp.memory.status #=> String, one of "CREATING", "ACTIVE", "FAILED", "DELETING"
resp.memory.failure_reason #=> String
resp.memory.created_at #=> Time
resp.memory.updated_at #=> Time
resp.memory.strategies #=> Array
resp.memory.strategies[0].strategy_id #=> String
resp.memory.strategies[0].name #=> String
resp.memory.strategies[0].description #=> String
resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED", "EPISODIC_OVERRIDE"
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.model_id #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.append_to_prompt #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.model_id #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespace_templates #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespace_templates[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema. #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].key #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespace_templates #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespace_templates[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema. #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].key #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions #=> Array
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].message_based_trigger.message_count #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].token_based_trigger.token_count #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].time_based_trigger.idle_session_timeout #=> Integer
resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.topic_arn #=> String
resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.payload_delivery_bucket_name #=> String
resp.memory.strategies[0].configuration.self_managed_configuration.historical_context_window_size #=> Integer
resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM", "EPISODIC"
resp.memory.strategies[0].namespaces #=> Array
resp.memory.strategies[0].namespaces[0] #=> String
resp.memory.strategies[0].namespace_templates #=> Array
resp.memory.strategies[0].namespace_templates[0] #=> String
resp.memory.strategies[0].created_at #=> Time
resp.memory.strategies[0].updated_at #=> Time
resp.memory.strategies[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
resp.memory.strategies[0].memory_record_schema. #=> Array
resp.memory.strategies[0].memory_record_schema.[0].key #=> String
resp.memory.strategies[0].memory_record_schema.[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.llm_extraction_instruction #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.definition #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values #=> Array
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_validation.allowed_values[0] #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values #=> Array
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.allowed_values[0] #=> String
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.string_list_validation.max_items #=> Integer
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.min_value #=> Float
resp.memory.strategies[0].memory_record_schema.[0].extraction_config.llm_extraction_config.validation.number_validation.max_value #=> Float
resp.memory.indexed_keys #=> Array
resp.memory.indexed_keys[0].key #=> String
resp.memory.indexed_keys[0].type #=> String, one of "STRING", "STRINGLIST", "NUMBER"
resp.memory.stream_delivery_resources.resources #=> Array
resp.memory.stream_delivery_resources.resources[0].kinesis.data_stream_arn #=> String
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations #=> Array
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations[0].type #=> String, one of "MEMORY_RECORDS"
resp.memory.stream_delivery_resources.resources[0].kinesis.content_configurations[0].level #=> String, one of "METADATA_ONLY", "FULL_CONTENT"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A client token is used for keeping track of idempotent requests. It can contain a session id which can be around 250 chars, combined with a unique AWS identifier.

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

  • :memory_id (required, String)

    The unique identifier of the memory to update.

  • :description (String)

    The updated description of the AgentCore Memory resource.

  • :event_expiry_duration (Integer)

    The number of days after which memory events will expire, between 7 and 365 days.

  • :memory_execution_role_arn (String)

    The ARN of the IAM role that provides permissions for the AgentCore Memory resource.

  • :memory_strategies (Types::ModifyMemoryStrategies)

    The memory strategies to add, modify, or delete.

  • :add_indexed_keys (Array<Types::IndexedKey>)

    Additional metadata keys to index. Previously indexed keys cannot be removed.

  • :stream_delivery_resources (Types::StreamDeliveryResources)

    Configuration for streaming memory record data to external resources.

Returns:

See Also:



11398
11399
11400
11401
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11398

def update_memory(params = {}, options = {})
  req = build_request(:update_memory, params)
  req.send_request(options)
end

#update_oauth_2_credential_provider(params = {}) ⇒ Types::UpdateOauth2CredentialProviderResponse

Updates an existing OAuth2 credential provider.

Examples:

Request syntax with placeholder values


resp = client.update_oauth_2_credential_provider({
  name: "CredentialProviderName", # required
  credential_provider_vendor: "GoogleOauth2", # required, accepts GoogleOauth2, GithubOauth2, SlackOauth2, SalesforceOauth2, MicrosoftOauth2, CustomOauth2, AtlassianOauth2, LinkedinOauth2, XOauth2, OktaOauth2, OneLoginOauth2, PingOneOauth2, FacebookOauth2, YandexOauth2, RedditOauth2, ZoomOauth2, TwitchOauth2, SpotifyOauth2, DropboxOauth2, NotionOauth2, HubspotOauth2, CyberArkOauth2, FusionAuthOauth2, Auth0Oauth2, CognitoOauth2
  oauth2_provider_config_input: { # required
    custom_oauth_2_provider_config: {
      oauth_discovery: { # required
        discovery_url: "DiscoveryUrlType",
        authorization_server_metadata: {
          issuer: "IssuerUrlType", # required
          authorization_endpoint: "AuthorizationEndpointType", # required
          token_endpoint: "TokenEndpointType", # required
          response_types: ["ResponseType"],
          token_endpoint_auth_methods: ["TokenAuthMethod"],
        },
      },
      client_id: "DefaultClientIdType",
      client_secret: "DefaultClientSecretType",
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
      on_behalf_of_token_exchange_config: {
        grant_type: "TOKEN_EXCHANGE", # required, accepts TOKEN_EXCHANGE, JWT_AUTHORIZATION_GRANT
        token_exchange_grant_type_config: {
          actor_token_content: "NONE", # required, accepts NONE, M2M, AWS_IAM_ID_TOKEN_JWT
          actor_token_scopes: ["ScopeType"],
        },
      },
      client_authentication_method: "CLIENT_SECRET_BASIC", # accepts CLIENT_SECRET_BASIC, CLIENT_SECRET_POST, AWS_IAM_ID_TOKEN_JWT
    },
    google_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    github_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    slack_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    salesforce_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    microsoft_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
      tenant_id: "TenantIdType",
    },
    atlassian_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    linkedin_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
    },
    included_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "ClientSecretType", # required
      issuer: "IssuerUrlType",
      authorization_endpoint: "AuthorizationEndpointType",
      token_endpoint: "TokenEndpointType",
    },
  },
})

Response structure


resp.client_secret_arn.secret_arn #=> String
resp.name #=> String
resp.credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2", "AtlassianOauth2", "LinkedinOauth2", "XOauth2", "OktaOauth2", "OneLoginOauth2", "PingOneOauth2", "FacebookOauth2", "YandexOauth2", "RedditOauth2", "ZoomOauth2", "TwitchOauth2", "SpotifyOauth2", "DropboxOauth2", "NotionOauth2", "HubspotOauth2", "CyberArkOauth2", "FusionAuthOauth2", "Auth0Oauth2", "CognitoOauth2"
resp.credential_provider_arn #=> String
resp.callback_url #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.grant_type #=> String, one of "TOKEN_EXCHANGE", "JWT_AUTHORIZATION_GRANT"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_content #=> String, one of "NONE", "M2M", "AWS_IAM_ID_TOKEN_JWT"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_scopes #=> Array
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.on_behalf_of_token_exchange_config.token_exchange_grant_type_config.actor_token_scopes[0] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.client_authentication_method #=> String, one of "CLIENT_SECRET_BASIC", "CLIENT_SECRET_POST", "AWS_IAM_ID_TOKEN_JWT"
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.google_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.google_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.github_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.github_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.slack_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.salesforce_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.microsoft_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.atlassian_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.linkedin_oauth_2_provider_config.client_id #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery.discovery_url #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..issuer #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..authorization_endpoint #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..response_types #=> Array
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..response_types[0] #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods #=> Array
resp.oauth2_provider_config_output.included_oauth_2_provider_config.oauth_discovery..token_endpoint_auth_methods[0] #=> String
resp.oauth2_provider_config_output.included_oauth_2_provider_config.client_id #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time
resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the OAuth2 credential provider to update.

  • :credential_provider_vendor (required, String)

    The vendor of the OAuth2 credential provider.

  • :oauth2_provider_config_input (required, Types::Oauth2ProviderConfigInput)

    The configuration input for the OAuth2 provider.

Returns:

See Also:



11651
11652
11653
11654
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11651

def update_oauth_2_credential_provider(params = {}, options = {})
  req = build_request(:update_oauth_2_credential_provider, params)
  req.send_request(options)
end

#update_online_evaluation_config(params = {}) ⇒ Types::UpdateOnlineEvaluationConfigResponse

Updates an online evaluation configuration’s settings, including rules, data sources, evaluators, and execution status. Changes take effect immediately for ongoing evaluations.

Examples:

Request syntax with placeholder values


resp = client.update_online_evaluation_config({
  client_token: "ClientToken",
  online_evaluation_config_id: "OnlineEvaluationConfigId", # required
  description: "EvaluationConfigDescription",
  rule: {
    sampling_config: { # required
      sampling_percentage: 1.0, # required
    },
    filters: [
      {
        key: "FilterKeyString", # required
        operator: "Equals", # required, accepts Equals, NotEquals, GreaterThan, LessThan, GreaterThanOrEqual, LessThanOrEqual, Contains, NotContains
        value: { # required
          string_value: "FilterValueStringValueString",
          double_value: 1.0,
          boolean_value: false,
        },
      },
    ],
    session_config: {
      session_timeout_minutes: 1, # required
    },
  },
  data_source_config: {
    cloud_watch_logs: {
      log_group_names: ["LogGroupName"], # required
      service_names: ["ServiceName"], # required
    },
  },
  evaluators: [
    {
      evaluator_id: "EvaluatorId",
    },
  ],
  evaluation_execution_role_arn: "RoleArn",
  execution_status: "ENABLED", # accepts ENABLED, DISABLED
})

Response structure


resp.online_evaluation_config_arn #=> String
resp.online_evaluation_config_id #=> String
resp.updated_at #=> Time
resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING", "ERROR"
resp.execution_status #=> String, one of "ENABLED", "DISABLED"
resp.failure_reason #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

  • :online_evaluation_config_id (required, String)

    The unique identifier of the online evaluation configuration to update.

  • :description (String)

    The updated description of the online evaluation configuration.

  • :rule (Types::Rule)

    The updated evaluation rule containing sampling configuration, filters, and session settings.

  • :data_source_config (Types::DataSourceConfig)

    The updated data source configuration specifying CloudWatch log groups and service names to monitor.

  • :evaluators (Array<Types::EvaluatorReference>)

    The updated list of evaluators to apply during online evaluation.

  • :evaluation_execution_role_arn (String)

    The updated Amazon Resource Name (ARN) of the IAM role used for evaluation execution.

  • :execution_status (String)

    The updated execution status to enable or disable the online evaluation.

Returns:

See Also:



11762
11763
11764
11765
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11762

def update_online_evaluation_config(params = {}, options = {})
  req = build_request(:update_online_evaluation_config, params)
  req.send_request(options)
end

#update_payment_connector(params = {}) ⇒ Types::UpdatePaymentConnectorResponse

Updates an existing payment connector. This operation uses PATCH semantics, so you only need to specify the fields you want to change.

Examples:

Request syntax with placeholder values


resp = client.update_payment_connector({
  payment_manager_id: "PaymentManagerId", # required
  payment_connector_id: "PaymentConnectorId", # required
  description: "PaymentsDescription",
  type: "CoinbaseCDP", # accepts CoinbaseCDP, StripePrivy
  credential_provider_configurations: [
    {
      coinbase_cdp: {
        credential_provider_arn: "PaymentCredentialProviderArn", # required
      },
      stripe_privy: {
        credential_provider_arn: "PaymentCredentialProviderArn", # required
      },
    },
  ],
  client_token: "ClientToken",
})

Response structure


resp.payment_connector_id #=> String
resp.payment_manager_id #=> String
resp.name #=> String
resp.type #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.credential_provider_configurations #=> Array
resp.credential_provider_configurations[0].coinbase_cdp.credential_provider_arn #=> String
resp.credential_provider_configurations[0].stripe_privy.credential_provider_arn #=> String
resp.last_updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the parent payment manager.

  • :payment_connector_id (required, String)

    The unique identifier of the payment connector to update.

  • :description (String)

    The updated description of the payment connector.

  • :type (String)

    The updated type of the payment connector.

  • :credential_provider_configurations (Array<Types::CredentialsProviderConfiguration>)

    The updated credential provider configurations for the payment connector.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

Returns:

See Also:



11846
11847
11848
11849
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11846

def update_payment_connector(params = {}, options = {})
  req = build_request(:update_payment_connector, params)
  req.send_request(options)
end

#update_payment_credential_provider(params = {}) ⇒ Types::UpdatePaymentCredentialProviderResponse

Updates an existing payment credential provider with new authentication credentials.

Examples:

Request syntax with placeholder values


resp = client.update_payment_credential_provider({
  name: "CredentialProviderName", # required
  credential_provider_vendor: "CoinbaseCDP", # required, accepts CoinbaseCDP, StripePrivy
  provider_configuration_input: { # required
    coinbase_cdp_configuration: {
      api_key_id: "CoinbaseCdpApiKeyIdType", # required
      api_key_secret: "CoinbaseCdpApiKeySecretType", # required
      wallet_secret: "CoinbaseCdpWalletSecretType", # required
    },
    stripe_privy_configuration: {
      app_id: "StripePrivyAppIdType", # required
      app_secret: "StripePrivyAppSecretType", # required
      authorization_private_key: "StripePrivyAuthorizationPrivateKeyType", # required
      authorization_id: "StripePrivyAuthorizationIdType", # required
    },
  },
})

Response structure


resp.name #=> String
resp.credential_provider_vendor #=> String, one of "CoinbaseCDP", "StripePrivy"
resp.credential_provider_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_id #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_secret_arn.secret_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_id #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_secret_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_id #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the payment credential provider to update.

  • :credential_provider_vendor (required, String)

    Supported vendor types for payment providers using non-standard auth protocols

  • :provider_configuration_input (required, Types::PaymentProviderConfigurationInput)

    Configuration specific to the vendor, including API credentials

Returns:

See Also:



11912
11913
11914
11915
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11912

def update_payment_credential_provider(params = {}, options = {})
  req = build_request(:update_payment_credential_provider, params)
  req.send_request(options)
end

#update_payment_manager(params = {}) ⇒ Types::UpdatePaymentManagerResponse

Updates an existing payment manager. This operation uses PATCH semantics, so you only need to specify the fields you want to change.

Examples:

Request syntax with placeholder values


resp = client.update_payment_manager({
  payment_manager_id: "PaymentManagerId", # required
  description: "PaymentsDescription",
  authorizer_type: "CUSTOM_JWT", # accepts CUSTOM_JWT, AWS_IAM
  authorizer_configuration: {
    custom_jwt_authorizer: {
      discovery_url: "DiscoveryUrl", # required
      allowed_audience: ["AllowedAudience"],
      allowed_clients: ["AllowedClient"],
      allowed_scopes: ["AllowedScopeType"],
      custom_claims: [
        {
          inbound_token_claim_name: "InboundTokenClaimNameType", # required
          inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
          authorizing_claim_match_value: { # required
            claim_match_value: { # required
              match_value_string: "MatchValueString",
              match_value_string_list: ["MatchValueString"],
            },
            claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
          },
        },
      ],
      private_endpoint: {
        self_managed_lattice_resource: {
          resource_configuration_identifier: "ResourceConfigurationIdentifier",
        },
        managed_vpc_resource: {
          vpc_identifier: "VpcIdentifier", # required
          subnet_ids: ["SubnetId"], # required
          endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
          security_group_ids: ["SecurityGroupIdentifier"],
          tags: {
            "TagKey" => "TagValue",
          },
          routing_domain: "RoutingDomain",
        },
      },
      private_endpoint_overrides: [
        {
          domain: "PrivateEndpointOverrideDomain", # required
          private_endpoint: { # required
            self_managed_lattice_resource: {
              resource_configuration_identifier: "ResourceConfigurationIdentifier",
            },
            managed_vpc_resource: {
              vpc_identifier: "VpcIdentifier", # required
              subnet_ids: ["SubnetId"], # required
              endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
              security_group_ids: ["SecurityGroupIdentifier"],
              tags: {
                "TagKey" => "TagValue",
              },
              routing_domain: "RoutingDomain",
            },
          },
        },
      ],
    },
  },
  role_arn: "RoleArn",
  client_token: "ClientToken",
})

Response structure


resp.payment_manager_arn #=> String
resp.payment_manager_id #=> String
resp.name #=> String
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
resp.role_arn #=> String
resp.workload_identity_details.workload_identity_arn #=> String
resp.last_updated_at #=> Time
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "READY", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :payment_manager_id (required, String)

    The unique identifier of the payment manager to update.

  • :description (String)

    The updated description of the payment manager.

  • :authorizer_type (String)

    The updated authorizer type for the payment manager.

  • :authorizer_configuration (Types::AuthorizerConfiguration)

    The updated authorizer configuration for the payment manager.

  • :role_arn (String)

    The updated Amazon Resource Name (ARN) of the IAM role for the payment manager.

  • :client_token (String)

    A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don’t specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn’t return an error. For more information, see [Ensuring idempotency].

    **A suitable default value is auto-generated.** You should normally not need to pass this option.**

    [1]: docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html

Returns:

See Also:



12042
12043
12044
12045
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12042

def update_payment_manager(params = {}, options = {})
  req = build_request(:update_payment_manager, params)
  req.send_request(options)
end

#update_policy(params = {}) ⇒ Types::UpdatePolicyResponse

Updates an existing policy within the AgentCore Policy system. This operation allows modification of the policy description and definition while maintaining the policy’s identity. The updated policy is validated against the Cedar schema before being applied. This is an asynchronous operation. Use the ‘GetPolicy` operation to poll the `status` field to track completion.

Examples:

Request syntax with placeholder values


resp = client.update_policy({
  policy_engine_id: "ResourceId", # required
  policy_id: "ResourceId", # required
  description: {
    optional_value: "Description",
  },
  definition: {
    cedar: {
      statement: "Statement", # required
    },
    policy_generation: {
      policy_generation_id: "ResourceId", # required
      policy_generation_asset_id: "ResourceId", # required
    },
  },
  validation_mode: "FAIL_ON_ANY_FINDINGS", # accepts FAIL_ON_ANY_FINDINGS, IGNORE_ALL_FINDINGS
})

Response structure


resp.policy_id #=> String
resp.name #=> String
resp.policy_engine_id #=> String
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The identifier of the policy engine that manages the policy to be updated. This ensures the policy is updated within the correct policy engine context.

  • :policy_id (required, String)

    The unique identifier of the policy to be updated. This must be a valid policy ID that exists within the specified policy engine.

  • :description (Types::UpdatedDescription)

    The new human-readable description for the policy. This optional field allows updating the policy’s documentation while keeping the same policy logic.

  • :definition (Types::PolicyDefinition)

    The new Cedar policy statement that defines the access control rules. This replaces the existing policy definition with new logic while maintaining the policy’s identity.

  • :validation_mode (String)

    The validation mode for the policy update. Determines how Cedar analyzer validation results are handled during policy updates. FAIL_ON_ANY_FINDINGS runs the Cedar analyzer and fails the update if validation issues are detected, ensuring the policy conforms to the Cedar schema and tool context. IGNORE_ALL_FINDINGS runs the Cedar analyzer but allows updates despite validation warnings. Use FAIL_ON_ANY_FINDINGS to ensure policy correctness during updates, especially when modifying policy logic or conditions.

Returns:

See Also:



12136
12137
12138
12139
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12136

def update_policy(params = {}, options = {})
  req = build_request(:update_policy, params)
  req.send_request(options)
end

#update_policy_engine(params = {}) ⇒ Types::UpdatePolicyEngineResponse

Updates an existing policy engine within the AgentCore Policy system. This operation allows modification of the policy engine description while maintaining its identity. This is an asynchronous operation. Use the ‘GetPolicyEngine` operation to poll the `status` field to track completion.

Examples:

Request syntax with placeholder values


resp = client.update_policy_engine({
  policy_engine_id: "ResourceId", # required
  description: {
    optional_value: "Description",
  },
})

Response structure


resp.policy_engine_id #=> String
resp.name #=> String
resp.description #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.policy_engine_arn #=> String
resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.status_reasons #=> Array
resp.status_reasons[0] #=> String
resp.encryption_key_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The unique identifier of the policy engine to be updated.

  • :description (Types::UpdatedDescription)

    The new description for the policy engine.

Returns:

See Also:



12191
12192
12193
12194
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12191

def update_policy_engine(params = {}, options = {})
  req = build_request(:update_policy_engine, params)
  req.send_request(options)
end

#update_registry(params = {}) ⇒ Types::UpdateRegistryResponse

Updates an existing registry. This operation uses PATCH semantics, so you only need to specify the fields you want to change.

Examples:

Request syntax with placeholder values


resp = client.update_registry({
  registry_id: "RegistryIdentifier", # required
  name: "RegistryName",
  description: {
    optional_value: "Description",
  },
  authorizer_configuration: {
    optional_value: {
      custom_jwt_authorizer: {
        discovery_url: "DiscoveryUrl", # required
        allowed_audience: ["AllowedAudience"],
        allowed_clients: ["AllowedClient"],
        allowed_scopes: ["AllowedScopeType"],
        custom_claims: [
          {
            inbound_token_claim_name: "InboundTokenClaimNameType", # required
            inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
            authorizing_claim_match_value: { # required
              claim_match_value: { # required
                match_value_string: "MatchValueString",
                match_value_string_list: ["MatchValueString"],
              },
              claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
            },
          },
        ],
        private_endpoint: {
          self_managed_lattice_resource: {
            resource_configuration_identifier: "ResourceConfigurationIdentifier",
          },
          managed_vpc_resource: {
            vpc_identifier: "VpcIdentifier", # required
            subnet_ids: ["SubnetId"], # required
            endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
            security_group_ids: ["SecurityGroupIdentifier"],
            tags: {
              "TagKey" => "TagValue",
            },
            routing_domain: "RoutingDomain",
          },
        },
        private_endpoint_overrides: [
          {
            domain: "PrivateEndpointOverrideDomain", # required
            private_endpoint: { # required
              self_managed_lattice_resource: {
                resource_configuration_identifier: "ResourceConfigurationIdentifier",
              },
              managed_vpc_resource: {
                vpc_identifier: "VpcIdentifier", # required
                subnet_ids: ["SubnetId"], # required
                endpoint_ip_address_type: "IPV4", # required, accepts IPV4, IPV6
                security_group_ids: ["SecurityGroupIdentifier"],
                tags: {
                  "TagKey" => "TagValue",
                },
                routing_domain: "RoutingDomain",
              },
            },
          },
        ],
      },
    },
  },
  approval_configuration: {
    optional_value: {
      auto_approval: false,
    },
  },
})

Response structure


resp.name #=> String
resp.description #=> String
resp.registry_id #=> String
resp.registry_arn #=> String
resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].domain #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.self_managed_lattice_resource.resource_configuration_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.vpc_identifier #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.subnet_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.endpoint_ip_address_type #=> String, one of "IPV4", "IPV6"
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.security_group_ids[0] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.tags["TagKey"] #=> String
resp.authorizer_configuration.custom_jwt_authorizer.private_endpoint_overrides[0].private_endpoint.managed_vpc_resource.routing_domain #=> String
resp.approval_configuration.auto_approval #=> Boolean
resp.status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
resp.status_reason #=> String
resp.created_at #=> Time
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry to update. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :name (String)

    The updated name of the registry.

  • :description (Types::UpdatedDescription)

    The updated description of the registry. To clear the description, include the ‘UpdatedDescription` wrapper with `optionalValue` not specified.

  • :authorizer_configuration (Types::UpdatedAuthorizerConfiguration)

    The updated authorizer configuration for the registry. Changing the authorizer configuration can break existing consumers of the registry who are using the authorization type prior to the update.

  • :approval_configuration (Types::UpdatedApprovalConfiguration)

    The updated approval configuration for registry records. The updated configuration only affects new records that move to ‘PENDING_APPROVAL` status after the change. Existing records already in `PENDING_APPROVAL` status are not affected.

Returns:

See Also:



12362
12363
12364
12365
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12362

def update_registry(params = {}, options = {})
  req = build_request(:update_registry, params)
  req.send_request(options)
end

#update_registry_record(params = {}) ⇒ Types::UpdateRegistryRecordResponse

Updates an existing registry record. This operation uses PATCH semantics, so you only need to specify the fields you want to change. The update is processed asynchronously and returns HTTP 202 Accepted.

Examples:

Request syntax with placeholder values


resp = client.update_registry_record({
  registry_id: "RegistryIdentifier", # required
  record_id: "RecordIdentifier", # required
  name: "RegistryRecordName",
  description: {
    optional_value: "Description",
  },
  descriptor_type: "MCP", # accepts MCP, A2A, CUSTOM, AGENT_SKILLS
  descriptors: {
    optional_value: {
      mcp: {
        optional_value: {
          server: {
            optional_value: {
              schema_version: "SchemaVersion",
              inline_content: "InlineContent",
            },
          },
          tools: {
            optional_value: {
              protocol_version: "SchemaVersion",
              inline_content: "InlineContent",
            },
          },
        },
      },
      a2a: {
        optional_value: {
          agent_card: {
            schema_version: "SchemaVersion",
            inline_content: "InlineContent",
          },
        },
      },
      custom: {
        optional_value: {
          inline_content: "InlineContent",
        },
      },
      agent_skills: {
        optional_value: {
          skill_md: {
            optional_value: {
              inline_content: "InlineContent",
            },
          },
          skill_definition: {
            optional_value: {
              schema_version: "SchemaVersion",
              inline_content: "InlineContent",
            },
          },
        },
      },
    },
  },
  record_version: "RegistryRecordVersion",
  synchronization_type: {
    optional_value: "URL", # accepts URL
  },
  synchronization_configuration: {
    optional_value: {
      from_url: {
        url: "McpServerUrl", # required
        credential_provider_configurations: [
          {
            credential_provider_type: "OAUTH", # required, accepts OAUTH, IAM
            credential_provider: { # required
              oauth_credential_provider: {
                provider_arn: "CredentialProviderArn", # required
                grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS
                scopes: ["String"],
                custom_parameters: {
                  "String" => "String",
                },
              },
              iam_credential_provider: {
                role_arn: "IamRoleArn",
                service: "IamSigningServiceName",
                region: "IamSigningRegion",
              },
            },
          },
        ],
      },
    },
  },
  trigger_synchronization: false,
})

Response structure


resp.registry_arn #=> String
resp.record_arn #=> String
resp.record_id #=> String
resp.name #=> String
resp.description #=> String
resp.descriptor_type #=> String, one of "MCP", "A2A", "CUSTOM", "AGENT_SKILLS"
resp.descriptors.mcp.server.schema_version #=> String
resp.descriptors.mcp.server.inline_content #=> String
resp.descriptors.mcp.tools.protocol_version #=> String
resp.descriptors.mcp.tools.inline_content #=> String
resp.descriptors.a2a.agent_card.schema_version #=> String
resp.descriptors.a2a.agent_card.inline_content #=> String
resp.descriptors.custom.inline_content #=> String
resp.descriptors.agent_skills.skill_md.inline_content #=> String
resp.descriptors.agent_skills.skill_definition.schema_version #=> String
resp.descriptors.agent_skills.skill_definition.inline_content #=> String
resp.record_version #=> String
resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
resp.created_at #=> Time
resp.updated_at #=> Time
resp.status_reason #=> String
resp.synchronization_type #=> String, one of "URL"
resp.synchronization_configuration.from_url.url #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations #=> Array
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider_type #=> String, one of "OAUTH", "IAM"
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS"
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["String"] #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.role_arn #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry containing the record. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :record_id (required, String)

    The identifier of the registry record to update. You can specify either the Amazon Resource Name (ARN) or the ID of the record.

  • :name (String)

    The updated name for the registry record.

  • :description (Types::UpdatedDescription)

    The updated description for the registry record. To clear the description, include the ‘UpdatedDescription` wrapper with `optionalValue` not specified.

  • :descriptor_type (String)

    The updated descriptor type for the registry record. Changing the descriptor type may require updating the ‘descriptors` field to match the new type’s schema requirements.

  • :descriptors (Types::UpdatedDescriptors)

    The updated descriptor-type-specific configuration containing the resource schema and metadata. Uses PATCH semantics where individual descriptor fields can be updated independently.

  • :record_version (String)

    The version of the registry record for optimistic locking. If provided, it must match the current version of the record. The service automatically increments the version after a successful update.

  • :synchronization_type (Types::UpdatedSynchronizationType)

    The updated synchronization type for the registry record.

  • :synchronization_configuration (Types::UpdatedSynchronizationConfiguration)

    The updated synchronization configuration for the registry record.

  • :trigger_synchronization (Boolean)

    Whether to trigger synchronization using the stored or provided configuration. When set to ‘true`, the service will synchronize the record metadata from the configured external source.

Returns:

See Also:



12563
12564
12565
12566
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12563

def update_registry_record(params = {}, options = {})
  req = build_request(:update_registry_record, params)
  req.send_request(options)
end

#update_registry_record_status(params = {}) ⇒ Types::UpdateRegistryRecordStatusResponse

Updates the status of a registry record. Use this operation to approve, reject, or deprecate a registry record.

Examples:

Request syntax with placeholder values


resp = client.update_registry_record_status({
  registry_id: "RegistryIdentifier", # required
  record_id: "RecordIdentifier", # required
  status: "DRAFT", # required, accepts DRAFT, PENDING_APPROVAL, APPROVED, REJECTED, DEPRECATED, CREATING, UPDATING, CREATE_FAILED, UPDATE_FAILED
  status_reason: "UpdateRegistryRecordStatusRequestStatusReasonString", # required
})

Response structure


resp.registry_arn #=> String
resp.record_arn #=> String
resp.record_id #=> String
resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
resp.status_reason #=> String
resp.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :registry_id (required, String)

    The identifier of the registry containing the record. You can specify either the Amazon Resource Name (ARN) or the ID of the registry.

  • :record_id (required, String)

    The identifier of the registry record to update the status for. You can specify either the Amazon Resource Name (ARN) or the ID of the record.

  • :status (required, String)

    The target status for the registry record.

  • :status_reason (required, String)

    The reason for the status change, such as why the record was approved or rejected.

Returns:

See Also:



12618
12619
12620
12621
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12618

def update_registry_record_status(params = {}, options = {})
  req = build_request(:update_registry_record_status, params)
  req.send_request(options)
end

#update_workload_identity(params = {}) ⇒ Types::UpdateWorkloadIdentityResponse

Updates an existing workload identity.

Examples:

Request syntax with placeholder values


resp = client.update_workload_identity({
  name: "WorkloadIdentityNameType", # required
  allowed_resource_oauth_2_return_urls: ["ResourceOauth2ReturnUrlType"],
})

Response structure


resp.name #=> String
resp.workload_identity_arn #=> String
resp.allowed_resource_oauth_2_return_urls #=> Array
resp.allowed_resource_oauth_2_return_urls[0] #=> String
resp.created_time #=> Time
resp.last_updated_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the workload identity to update.

  • :allowed_resource_oauth_2_return_urls (Array<String>)

    The new list of allowed OAuth2 return URLs for resources associated with this workload identity. This list replaces the existing list.

Returns:

See Also:



12660
12661
12662
12663
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12660

def update_workload_identity(params = {}, options = {})
  req = build_request(:update_workload_identity, params)
  req.send_request(options)
end

#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean

Polls an API operation until a resource enters a desired state.

## Basic Usage

A waiter will call an API operation until:

  • It is successful

  • It enters a terminal state

  • It makes the maximum number of attempts

In between attempts, the waiter will sleep.

# polls in a loop, sleeping between attempts
client.wait_until(waiter_name, params)

## Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.

# poll for ~25 seconds
client.wait_until(waiter_name, params, {
  max_attempts: 5,
  delay: 5,
})

## Callbacks

You can be notified before each polling attempt and before each delay. If you throw ‘:success` or `:failure` from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(waiter_name, params, {

  # disable max attempts
  max_attempts: nil,

  # poll for 1 hour, instead of a number of attempts
  before_wait: -> (attempts, response) do
    throw :failure if Time.now - started_at > 3600
  end
})

## Handling Errors

When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

## Valid Waiters

The following table lists the valid waiter names, the operations they call, and the default ‘:delay` and `:max_attempts` values.

| waiter_name | params | :delay | :max_attempts | | ————————— | —————————— | ——– | ————- | | memory_created | #get_memory | 2 | 60 | | policy_active | #get_policy | 5 | 24 | | policy_deleted | #get_policy | 2 | 60 | | policy_engine_active | #get_policy_engine | 5 | 24 | | policy_engine_deleted | #get_policy_engine | 2 | 60 | | policy_generation_completed | #get_policy_generation | 5 | 24 |

Parameters:

  • waiter_name (Symbol)
  • params (Hash) (defaults to: {})

    ({})

  • options (Hash) (defaults to: {})

    ({})

Options Hash (options):

  • :max_attempts (Integer)
  • :delay (Integer)
  • :before_attempt (Proc)
  • :before_wait (Proc)

Yields:

  • (w.waiter)

Returns:

  • (Boolean)

    Returns ‘true` if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.



12780
12781
12782
12783
12784
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12780

def wait_until(waiter_name, params = {}, options = {})
  w = waiter(waiter_name, options)
  yield(w.waiter) if block_given? # deprecated
  w.wait(params)
end

#waiter_namesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Deprecated.


12788
12789
12790
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12788

def waiter_names
  waiters.keys
end