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 the 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` - A retry mode that includes all the functionality of `standard` mode along with automatic client side throttling.

  • :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.



471
472
473
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 471

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.



14219
14220
14221
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14219

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.



14222
14223
14224
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14222

def errors_module
  Errors
end

Instance Method Details

#add_dataset_examples(params = {}) ⇒ Types::AddDatasetExamplesResponse

Adds examples to the dataset’s DRAFT. All examples are validated against the dataset’s schema type before any writes occur. If any example fails validation, the entire batch is rejected (all-or-nothing semantics).

Examples:

Request syntax with placeholder values


resp = client.add_dataset_examples({
  dataset_id: "DatasetId", # required
  client_token: "ClientToken",
  source: { # required
    inline_examples: {
      examples: [ # required
        {
        },
      ],
    },
    s3_source: {
      s3_uri: "S3Uri", # required
    },
  },
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.added_count #=> Integer
resp.updated_at #=> Time
resp.example_ids #=> Array
resp.example_ids[0] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset to add examples to.

  • :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

  • :source (required, Types::DataSourceType)

    Source of examples to add. Provide either inline examples or an S3 URI pointing to a JSONL file.

Returns:

See Also:



544
545
546
547
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 544

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

#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: {})


14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14069

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.53.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
      require_service_s3_endpoint: false,
    },
  },
  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:



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

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:



811
812
813
814
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 811

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: "DefaultApiKeyType",
  api_key_secret_config: {
    secret_id: "SecretIdType", # required
    json_key: "SecretJsonKeyType", # required
  },
  api_key_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.api_key_secret_arn.secret_arn #=> String
resp.api_key_secret_json_key #=> String
resp.api_key_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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 (String)

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

  • :api_key_secret_config (Types::SecretReference)

    A reference to the AWS Secrets Manager secret that stores the API key. This includes the secret ID and the JSON key used to extract the API key value from the secret. Required when ‘apiKeySecretSource` is set to `EXTERNAL`.

  • :api_key_secret_source (String)

    The source type of the API key secret. Use ‘MANAGED` if the secret is managed by the service, or `EXTERNAL` if you manage the secret yourself in AWS Secrets Manager.

  • :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:



877
878
879
880
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 877

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
      require_service_s3_endpoint: false,
    },
  },
  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:



997
998
999
1000
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 997

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:



1058
1059
1060
1061
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1058

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
      require_service_s3_endpoint: false,
    },
  },
  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:



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

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",
  },
  kms_key_arn: "KmsKeyArn",
  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.

  • :kms_key_arn (String)

    Optional KMS key ARN for encrypting component configurations.

  • :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:



1241
1242
1243
1244
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1241

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

#create_dataset(params = {}) ⇒ Types::CreateDatasetResponse

Creates a new dataset resource asynchronously. Returns immediately with status CREATING. Poll ‘GetDataset` until status transitions to ACTIVE or CREATE_FAILED.

Examples:

Request syntax with placeholder values


resp = client.create_dataset({
  client_token: "ClientToken",
  dataset_name: "DatasetName", # required
  description: "CreateDatasetRequestDescriptionString",
  source: { # required
    inline_examples: {
      examples: [ # required
        {
        },
      ],
    },
    s3_source: {
      s3_uri: "S3Uri", # required
    },
  },
  schema_type: "AGENTCORE_EVALUATION_PREDEFINED_V1", # required, accepts AGENTCORE_EVALUATION_PREDEFINED_V1, AGENTCORE_EVALUATION_SIMULATED_V1
  kms_key_arn: "KmsKeyArn",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
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

  • :dataset_name (required, String)

    Human-readable name for the dataset. Must be unique within the account. Immutable after creation.

  • :description (String)

    A description of the dataset.

  • :source (required, Types::DataSourceType)

    Source of initial examples. Provide either inline examples or an S3 URI pointing to a JSONL file.

  • :schema_type (required, String)

    Versioned schema type governing the structure of examples. Immutable after creation.

  • :kms_key_arn (String)

    Optional KMS key ARN for server-side encryption on service Amazon S3 writes.

  • :tags (Hash<String,String>)

    A map of tag keys and values to assign to the dataset.

Returns:

See Also:



1328
1329
1330
1331
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1328

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

#create_dataset_version(params = {}) ⇒ Types::CreateDatasetVersionResponse

Publishes the current DRAFT as a new numbered version. The DRAFT is preserved and remains editable after publishing. Returns immediately with status UPDATING. Poll ‘GetDataset` until status transitions to ACTIVE or UPDATE_FAILED.

Examples:

Request syntax with placeholder values


resp = client.create_dataset_version({
  dataset_id: "DatasetId", # required
  client_token: "ClientToken",
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.dataset_version #=> String
resp.created_at #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset to publish a version 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

Returns:

See Also:



1382
1383
1384
1385
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1382

def create_dataset_version(params = {}, options = {})
  req = build_request(:create_dataset_version, 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:



1512
1513
1514
1515
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1512

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:



1793
1794
1795
1796
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1793

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:



1955
1956
1957
1958
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1955

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:



2275
2276
2277
2278
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2275

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
          require_service_s3_endpoint: false,
        },
      },
      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,
      api_format: "converse_stream", # accepts converse_stream, responses, chat_completions
      additional_params: {
      },
    },
    open_ai_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
      api_format: "chat_completions", # accepts chat_completions, responses
      additional_params: {
      },
    },
    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,
    },
    lite_llm_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn",
      api_base: "HarnessLiteLlmApiBase",
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
      additional_params: {
      },
    },
  },
  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: "HarnessBrowserArn",
        },
        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: "HarnessCodeInterpreterArn",
        },
      },
    },
  ],
  skills: [
    {
      path: "HarnessSkillPath",
      s3: {
        uri: "HarnessSkillS3Uri", # required
      },
      git: {
        url: "HarnessSkillGitUrl", # required
        path: "String",
        auth: {
          credential_arn: "ApiKeyArn", # required
          username: "String",
        },
      },
    },
  ],
  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.bedrock_model_config.api_format #=> String, one of "converse_stream", "responses", "chat_completions"
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.open_ai_model_config.api_format #=> String, one of "chat_completions", "responses"
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.model.lite_llm_model_config.model_id #=> String
resp.harness.model.lite_llm_model_config.api_key_arn #=> String
resp.harness.model.lite_llm_model_config.api_base #=> String
resp.harness.model.lite_llm_model_config.max_tokens #=> Integer
resp.harness.model.lite_llm_model_config.temperature #=> Float
resp.harness.model.lite_llm_model_config.top_p #=> Float
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.skills[0].s3.uri #=> String
resp.harness.skills[0].git.url #=> String
resp.harness.skills[0].git.path #=> String
resp.harness.skills[0].git.auth.credential_arn #=> String
resp.harness.skills[0].git.auth.username #=> 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.network_configuration.network_mode_config.require_service_s3_endpoint #=> Boolean
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:



2738
2739
2740
2741
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2738

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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
              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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
              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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
              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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                    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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
              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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
              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", "UPDATING"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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:



3234
3235
3236
3237
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3234

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",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      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
      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",
            },
          },
        },
      ],
    },
    google_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    github_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    slack_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    salesforce_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    microsoft_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      tenant_id: "TenantIdType",
    },
    atlassian_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    linkedin_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    included_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      issuer: "IssuerUrlType",
      authorization_endpoint: "AuthorizationEndpointType",
      token_endpoint: "TokenEndpointType",
    },
  },
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.client_secret_arn.secret_arn #=> String
resp.client_secret_json_key #=> String
resp.client_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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:



3541
3542
3543
3544
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3541

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: [
    {
      evaluator_id: "EvaluatorId",
    },
  ],
  insights: [
    {
      insight_id: "InsightId", # required
    },
  ],
  clustering_config: {
    frequencies: ["DAILY"], # required, accepts DAILY, WEEKLY, MONTHLY
  },
  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 (Array<Types::EvaluatorReference>)

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

  • :insights (Array<Types::Insight>)

    The list of insight types to run against agent sessions.

  • :clustering_config (Types::ClusteringConfig)

    Configuration for periodic batch evaluation clustering of insight results.

  • :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:



3690
3691
3692
3693
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3690

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:



3778
3779
3780
3781
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3778

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: "DefaultCoinbaseCdpApiKeySecretType",
      api_key_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      api_key_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      wallet_secret: "DefaultCoinbaseCdpWalletSecretType",
      wallet_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      wallet_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
    },
    stripe_privy_configuration: {
      app_id: "StripePrivyAppIdType", # required
      app_secret: "DefaultStripePrivyAppSecretType",
      app_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      app_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      authorization_private_key: "DefaultStripePrivyAuthorizationPrivateKeyType",
      authorization_private_key_source: "MANAGED", # accepts MANAGED, EXTERNAL
      authorization_private_key_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # 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.api_key_secret_json_key #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_secret_source #=> String, one of "MANAGED", "EXTERNAL"
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_arn.secret_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_json_key #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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.app_secret_json_key #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_secret_source #=> String, one of "MANAGED", "EXTERNAL"
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_json_key #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_source #=> String, one of "MANAGED", "EXTERNAL"
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 for the payment credential provider (e.g., CoinbaseCDP, StripePrivy).

  • :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:



3875
3876
3877
3878
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3875

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:



4060
4061
4062
4063
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4060

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.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.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.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:



4181
4182
4183
4184
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4181

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.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.encryption_key_arn #=> String
resp.description #=> String
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 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:



4272
4273
4274
4275
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4272

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:



4406
4407
4408
4409
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4406

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:



4556
4557
4558
4559
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4556

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:



4603
4604
4605
4606
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4603

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:



4642
4643
4644
4645
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4642

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:



4687
4688
4689
4690
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4687

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:



4709
4710
4711
4712
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4709

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:



4749
4750
4751
4752
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4749

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:



4793
4794
4795
4796
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4793

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:



4833
4834
4835
4836
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4833

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:



4863
4864
4865
4866
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4863

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

#delete_dataset(params = {}) ⇒ Types::DeleteDatasetResponse

Deletes a dataset version or an entire dataset asynchronously. If ‘datasetVersion` is absent, deletes all versions and the dataset record itself. If provided, deletes only that specific version.

Examples:

Request syntax with placeholder values


resp = client.delete_dataset({
  dataset_id: "DatasetId", # required
  dataset_version: "DatasetVersion",
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.dataset_version #=> String
resp.updated_at #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset to delete.

  • :dataset_version (String)

    Optional version to delete. If absent, deletes the entire dataset. If provided, deletes only that specific version.

Returns:

See Also:



4906
4907
4908
4909
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4906

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

#delete_dataset_examples(params = {}) ⇒ Types::DeleteDatasetExamplesResponse

Deletes specific examples by ID from DRAFT. All example IDs are validated before any deletes occur. If any ID does not exist in DRAFT, the entire batch is rejected (all-or-nothing semantics).

Examples:

Request syntax with placeholder values


resp = client.delete_dataset_examples({
  dataset_id: "DatasetId", # required
  client_token: "ClientToken",
  example_ids: ["ExampleId"], # required
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.deleted_count #=> Integer
resp.updated_at #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset.

  • :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

  • :example_ids (required, Array<String>)

    The IDs of the examples to delete.

Returns:

See Also:



4963
4964
4965
4966
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4963

def delete_dataset_examples(params = {}, options = {})
  req = build_request(:delete_dataset_examples, 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:



4997
4998
4999
5000
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4997

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:



5030
5031
5032
5033
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5030

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:



5064
5065
5066
5067
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5064

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:



5108
5109
5110
5111
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5108

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.bedrock_model_config.api_format #=> String, one of "converse_stream", "responses", "chat_completions"
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.open_ai_model_config.api_format #=> String, one of "chat_completions", "responses"
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.model.lite_llm_model_config.model_id #=> String
resp.harness.model.lite_llm_model_config.api_key_arn #=> String
resp.harness.model.lite_llm_model_config.api_base #=> String
resp.harness.model.lite_llm_model_config.max_tokens #=> Integer
resp.harness.model.lite_llm_model_config.temperature #=> Float
resp.harness.model.lite_llm_model_config.top_p #=> Float
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.skills[0].s3.uri #=> String
resp.harness.skills[0].git.url #=> String
resp.harness.skills[0].git.path #=> String
resp.harness.skills[0].git.auth.credential_arn #=> String
resp.harness.skills[0].git.auth.username #=> 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.network_configuration.network_mode_config.require_service_s3_endpoint #=> Boolean
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:



5273
5274
5275
5276
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5273

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", "UPDATING"

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:



5312
5313
5314
5315
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5312

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:



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

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:



5368
5369
5370
5371
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5368

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:



5417
5418
5419
5420
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5417

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:



5440
5441
5442
5443
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5440

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:



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

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.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.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.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:



5547
5548
5549
5550
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5547

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.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.encryption_key_arn #=> String
resp.description #=> String
resp.status_reasons #=> Array
resp.status_reasons[0] #=> 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:



5598
5599
5600
5601
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5598

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:



5629
5630
5631
5632
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5629

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:



5658
5659
5660
5661
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5658

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:



5686
5687
5688
5689
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5686

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:



5708
5709
5710
5711
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5708

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.network_configuration.network_mode_config.require_service_s3_endpoint #=> Boolean
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:



5832
5833
5834
5835
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5832

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:



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

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.api_key_secret_json_key #=> String
resp.api_key_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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:



5925
5926
5927
5928
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5925

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.network_configuration.vpc_config.require_service_s3_endpoint #=> Boolean
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:



5992
5993
5994
5995
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5992

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:



6038
6039
6040
6041
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6038

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.network_configuration.vpc_config.require_service_s3_endpoint #=> Boolean
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:



6092
6093
6094
6095
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6092

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
resp.kms_key_arn #=> String

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:



6151
6152
6153
6154
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6151

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
resp.kms_key_arn #=> String

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:



6208
6209
6210
6211
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6208

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

#get_dataset(params = {}) ⇒ Types::GetDatasetResponse

Retrieves dataset metadata. Use the ‘datasetVersion` query parameter to retrieve a specific version’s metadata. If absent, defaults to DRAFT. For paginated example content, use ‘ListDatasetExamples`.

Examples:

Request syntax with placeholder values


resp = client.get_dataset({
  dataset_id: "DatasetId", # required
  dataset_version: "DatasetVersion",
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.dataset_version #=> String
resp.dataset_name #=> String
resp.description #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.draft_status #=> String, one of "MODIFIED", "UNMODIFIED"
resp.failure_reason #=> String
resp.schema_type #=> String, one of "AGENTCORE_EVALUATION_PREDEFINED_V1", "AGENTCORE_EVALUATION_SIMULATED_V1"
resp.kms_key_arn #=> String
resp.example_count #=> Integer
resp.download_url #=> String
resp.download_url_expires_at #=> Time
resp.created_at #=> Time
resp.updated_at #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset to retrieve.

  • :dataset_version (String)

    Version to retrieve: “DRAFT” or a version number. Defaults to DRAFT if absent.

Returns:

See Also:



6274
6275
6276
6277
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6274

def get_dataset(params = {}, options = {})
  req = build_request(:get_dataset, 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:



6349
6350
6351
6352
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6349

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:



6459
6460
6461
6462
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6459

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:



6532
6533
6534
6535
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6532

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:



6671
6672
6673
6674
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6671

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.bedrock_model_config.api_format #=> String, one of "converse_stream", "responses", "chat_completions"
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.open_ai_model_config.api_format #=> String, one of "chat_completions", "responses"
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.model.lite_llm_model_config.model_id #=> String
resp.harness.model.lite_llm_model_config.api_key_arn #=> String
resp.harness.model.lite_llm_model_config.api_base #=> String
resp.harness.model.lite_llm_model_config.max_tokens #=> Integer
resp.harness.model.lite_llm_model_config.temperature #=> Float
resp.harness.model.lite_llm_model_config.top_p #=> Float
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.skills[0].s3.uri #=> String
resp.harness.skills[0].git.url #=> String
resp.harness.skills[0].git.path #=> String
resp.harness.skills[0].git.auth.credential_arn #=> String
resp.harness.skills[0].git.auth.username #=> 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.network_configuration.network_mode_config.require_service_s3_endpoint #=> Boolean
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:



6828
6829
6830
6831
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6828

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", "UPDATING"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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:



6966
6967
6968
6969
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6966

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.client_secret_json_key #=> String
resp.client_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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:



7123
7124
7125
7126
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7123

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.insights #=> Array
resp.insights[0].insight_id #=> String
resp.clustering_config.frequencies #=> Array
resp.clustering_config.frequencies[0] #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
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:



7197
7198
7199
7200
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7197

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:



7245
7246
7247
7248
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7245

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.api_key_secret_json_key #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_secret_source #=> String, one of "MANAGED", "EXTERNAL"
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_arn.secret_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_json_key #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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.app_secret_json_key #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_secret_source #=> String, one of "MANAGED", "EXTERNAL"
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_json_key #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_source #=> String, one of "MANAGED", "EXTERNAL"
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:



7300
7301
7302
7303
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7300

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:



7386
7387
7388
7389
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7386

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.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.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.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:



7450
7451
7452
7453
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7450

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.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.encryption_key_arn #=> String
resp.description #=> String
resp.status_reasons #=> Array
resp.status_reasons[0] #=> 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:



7505
7506
7507
7508
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7505

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

#get_policy_engine_summary(params = {}) ⇒ Types::GetPolicyEngineSummaryResponse

Retrieves a metadata-only summary of a specific policy engine without decrypting customer content. This lightweight read operation returns resource identifiers, status, timestamps, and the encryption key ARN, but does not include the description or status reasons. Because this operation does not require access to the customer’s KMS key, it is suitable for resource discovery, inventory, and integration scenarios where only metadata is needed.

Examples:

Request syntax with placeholder values


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

Response structure


resp.policy_engine_id #=> String
resp.name #=> 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.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 retrieve the summary for. This must be a valid policy engine ID that exists within the account.

Returns:

See Also:



7553
7554
7555
7556
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7553

def get_policy_engine_summary(params = {}, options = {})
  req = build_request(:get_policy_engine_summary, 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.findings #=> String
resp.status_reasons #=> Array
resp.status_reasons[0] #=> 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:



7620
7621
7622
7623
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7620

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

#get_policy_generation_summary(params = {}) ⇒ Types::GetPolicyGenerationSummaryResponse

Retrieves a metadata-only summary of a specific policy generation request without decrypting customer content. This lightweight read operation returns resource identifiers, status, timestamps, and findings, but does not include status reasons. Because this operation does not require access to the customer’s KMS key, it is suitable for resource discovery, inventory, and integration scenarios where only metadata is needed.

Examples:

Request syntax with placeholder values


resp = client.get_policy_generation_summary({
  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.findings #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :policy_generation_id (required, String)

    The unique identifier of the policy generation request to retrieve the summary for.

  • :policy_engine_id (required, String)

    The identifier of the policy engine associated with the policy generation request.

Returns:

See Also:



7676
7677
7678
7679
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7676

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

#get_policy_summary(params = {}) ⇒ Types::GetPolicySummaryResponse

Retrieves a metadata-only summary of a specific policy without decrypting customer content. This lightweight read operation returns resource identifiers, status, and timestamps, but does not include the policy definition, description, or status reasons. Because this operation does not require access to the customer’s KMS key, it is suitable for resource discovery, inventory, and integration scenarios where only metadata is needed.

Examples:

Request syntax with placeholder values


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

Response structure


resp.policy_id #=> String
resp.name #=> String
resp.policy_engine_id #=> 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"

Parameters:

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

    ({})

Options Hash (params):

  • :policy_engine_id (required, String)

    The identifier of the policy engine that manages the policy to retrieve the summary for.

  • :policy_id (required, String)

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

Returns:

See Also:



7729
7730
7731
7732
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7729

def get_policy_summary(params = {}, options = {})
  req = build_request(:get_policy_summary, 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:



7813
7814
7815
7816
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7813

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:



7893
7894
7895
7896
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7893

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:



7927
7928
7929
7930
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7927

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:



7960
7961
7962
7963
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7960

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:



7997
7998
7999
8000
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7997

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:



8047
8048
8049
8050
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8047

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:



8094
8095
8096
8097
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8094

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:



8137
8138
8139
8140
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8137

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:



8177
8178
8179
8180
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8177

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:



8227
8228
8229
8230
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8227

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:



8278
8279
8280
8281
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8278

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:



8325
8326
8327
8328
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8325

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:



8393
8394
8395
8396
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8393

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.bundles[0].created_at #=> Time
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:



8440
8441
8442
8443
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8440

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

#list_dataset_examples(params = {}) ⇒ Types::ListDatasetExamplesResponse

Returns paginated examples from the dataset. The server embeds the resolved version in the pagination token. Once pagination begins, all subsequent pages are pinned to that version regardless of concurrent mutations.

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_dataset_examples({
  dataset_id: "DatasetId", # required
  dataset_version: "DatasetVersion",
  max_results: 1,
  next_token: "ListDatasetExamplesRequestNextTokenString",
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.dataset_version #=> String
resp.examples #=> Array
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset.

  • :dataset_version (String)

    Version to paginate: “DRAFT” or a version number. Defaults to DRAFT if absent. Only used on the first request; for subsequent pages, the version is extracted from the pagination token.

  • :max_results (Integer)

    Maximum number of examples to return per page.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



8495
8496
8497
8498
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8495

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

#list_dataset_versions(params = {}) ⇒ Types::ListDatasetVersionsResponse

Lists all published versions of a dataset, sorted by version number descending (newest first). Does not include the DRAFT working copy.

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_dataset_versions({
  dataset_id: "DatasetId", # required
  next_token: "String",
  max_results: 1,
})

Response structure


resp.versions #=> Array
resp.versions[0].dataset_version #=> String
resp.versions[0].example_count #=> Integer
resp.versions[0].created_at #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset.

  • :next_token (String)

    The token for the next page of results.

  • :max_results (Integer)

    The maximum number of versions to return per page.

Returns:

See Also:



8539
8540
8541
8542
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8539

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

#list_datasets(params = {}) ⇒ Types::ListDatasetsResponse

Lists all datasets in the caller’s account, paginated.

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_datasets({
  next_token: "ListDatasetsRequestNextTokenString",
  max_results: 1,
})

Response structure


resp.datasets #=> Array
resp.datasets[0].dataset_arn #=> String
resp.datasets[0].dataset_id #=> String
resp.datasets[0].dataset_name #=> String
resp.datasets[0].description #=> String
resp.datasets[0].status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.datasets[0].draft_status #=> String, one of "MODIFIED", "UNMODIFIED"
resp.datasets[0].schema_type #=> String, one of "AGENTCORE_EVALUATION_PREDEFINED_V1", "AGENTCORE_EVALUATION_SIMULATED_V1"
resp.datasets[0].example_count #=> Integer
resp.datasets[0].created_at #=> Time
resp.datasets[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    The token for the next page of results.

  • :max_results (Integer)

    The maximum number of datasets to return per page.

Returns:

See Also:



8585
8586
8587
8588
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8585

def list_datasets(params = {}, options = {})
  req = build_request(:list_datasets, 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:



8634
8635
8636
8637
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8634

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:



8710
8711
8712
8713
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8710

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:



8763
8764
8765
8766
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8763

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:



8813
8814
8815
8816
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8813

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:



8855
8856
8857
8858
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8855

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", "UPDATING"
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:



8900
8901
8902
8903
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8900

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:



8941
8942
8943
8944
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8941

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.online_evaluation_configs[0].insights #=> Array
resp.online_evaluation_configs[0].insights[0].insight_id #=> String
resp.online_evaluation_configs[0].clustering_config.frequencies #=> Array
resp.online_evaluation_configs[0].clustering_config.frequencies[0] #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
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:



8993
8994
8995
8996
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8993

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:



9044
9045
9046
9047
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9044

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:



9085
9086
9087
9088
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9085

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:



9136
9137
9138
9139
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9136

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].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].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].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:



9207
9208
9209
9210
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9207

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

#list_policy_engine_summaries(params = {}) ⇒ Types::ListPolicyEngineSummariesResponse

Retrieves a paginated list of metadata-only policy engine summaries without decrypting customer content. This lightweight read operation returns resource identifiers, status, and timestamps for each policy engine, but does not include descriptions or status reasons. Because this operation does not require access to the customer’s KMS key, it is suitable for resource discovery, inventory, and integration scenarios where only metadata is needed.

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_engine_summaries({
  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].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].encryption_key_arn #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

Returns:

See Also:



9263
9264
9265
9266
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9263

def list_policy_engine_summaries(params = {}, options = {})
  req = build_request(:list_policy_engine_summaries, 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].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].encryption_key_arn #=> String
resp.policy_engines[0].description #=> String
resp.policy_engines[0].status_reasons #=> Array
resp.policy_engines[0].status_reasons[0] #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

Returns:

See Also:



9320
9321
9322
9323
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9320

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:



9396
9397
9398
9399
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9396

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

#list_policy_generation_summaries(params = {}) ⇒ Types::ListPolicyGenerationSummariesResponse

Retrieves a paginated list of metadata-only policy generation summaries within a policy engine without decrypting customer content. This lightweight read operation returns resource identifiers, status, timestamps, and findings for each policy generation, but does not include status reasons. Because this operation does not require access to the customer’s KMS key, it is suitable for resource discovery, inventory, and integration scenarios where only metadata is needed.

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_summaries({
  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].findings #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    A pagination token returned from a previous

    ListPolicyGenerationSummaries][1

    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_ListPolicyGenerationSummaries.html

  • :max_results (Integer)

    The maximum number of policy generation summaries to return in a single response.

  • :policy_engine_id (required, String)

    The identifier of the policy engine whose policy generation summaries to retrieve.

Returns:

See Also:



9459
9460
9461
9462
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9459

def list_policy_generation_summaries(params = {}, options = {})
  req = build_request(:list_policy_generation_summaries, 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].findings #=> String
resp.policy_generations[0].status_reasons #=> Array
resp.policy_generations[0].status_reasons[0] #=> 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:



9515
9516
9517
9518
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9515

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

#list_policy_summaries(params = {}) ⇒ Types::ListPolicySummariesResponse

Retrieves a paginated list of metadata-only policy summaries within a policy engine without decrypting customer content. This lightweight read operation returns resource identifiers, status, and timestamps for each policy, but does not include policy definitions, descriptions, or status reasons. Because this operation does not require access to the customer’s KMS key, it is suitable for resource discovery, inventory, and integration scenarios where only metadata is needed.

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_summaries({
  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].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.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    A pagination token returned from a previous [ListPolicySummaries] 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_ListPolicySummaries.html

  • :max_results (Integer)

    The maximum number of policy summaries to return in a single response.

  • :policy_engine_id (required, String)

    The identifier of the policy engine whose policy summaries to retrieve.

  • :target_resource_scope (String)

    Optional filter to list policy summaries that apply to a specific resource scope or resource type. This helps narrow down results to those relevant for particular Amazon Web Services resources, agent tools, or operational contexts within the policy engine ecosystem.

Returns:

See Also:



9583
9584
9585
9586
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9583

def list_policy_summaries(params = {}, options = {})
  req = build_request(:list_policy_summaries, 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, or by authorizer type using the `authorizerType` 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
  authorizer_type: "CUSTOM_JWT", # accepts CUSTOM_JWT, AWS_IAM
})

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`.

  • :authorizer_type (String)

    Filter registries by their authorizer type. Possible values are ‘CUSTOM_JWT` and `AWS_IAM`. For more information about authorizer types, see the `RegistryAuthorizerType` enum.

Returns:

See Also:



9648
9649
9650
9651
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9648

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:



9724
9725
9726
9727
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9724

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:



9759
9760
9761
9762
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9759

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:



9797
9798
9799
9800
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9797

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:



9836
9837
9838
9839
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9836

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:



9877
9878
9879
9880
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9877

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.findings #=> String
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 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:



9973
9974
9975
9976
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9973

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:



10017
10018
10019
10020
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10017

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:



10152
10153
10154
10155
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10152

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:



10188
10189
10190
10191
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10188

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:



10219
10220
10221
10222
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10219

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
      require_service_s3_endpoint: false,
    },
  },
  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:



10419
10420
10421
10422
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10419

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:



10480
10481
10482
10483
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10480

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: "DefaultApiKeyType",
  api_key_secret_config: {
    secret_id: "SecretIdType", # required
    json_key: "SecretJsonKeyType", # required
  },
  api_key_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
})

Response structure


resp.api_key_secret_arn.secret_arn #=> String
resp.api_key_secret_json_key #=> String
resp.api_key_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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 (String)

    The new API key to use for authentication. This value replaces the existing API key and is encrypted and stored securely.

  • :api_key_secret_config (Types::SecretReference)

    A reference to the AWS Secrets Manager secret that stores the API key. This includes the secret ID and the JSON key used to extract the API key value from the secret. Required when ‘apiKeySecretSource` is set to `EXTERNAL`.

  • :api_key_secret_source (String)

    The source type of the API key secret. Use ‘MANAGED` if the secret is managed by the service, or `EXTERNAL` if you manage the secret yourself in AWS Secrets Manager.

Returns:

See Also:



10541
10542
10543
10544
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10541

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",
  },
  kms_key_arn: "KmsKeyArn",
})

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.

  • :kms_key_arn (String)

    Optional KMS key ARN for encrypting component configurations. If provided, components will be encrypted with this key. If the bundle already has a KMS key, this rotates to the new key.

Returns:

See Also:



10641
10642
10643
10644
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10641

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

#update_dataset(params = {}) ⇒ Types::UpdateDatasetResponse

Updates a dataset’s metadata. Synchronous operation. Only provided fields are updated; omitted fields remain unchanged. To modify dataset content, use ‘AddDatasetExamples`, `UpdateDatasetExamples`, or `DeleteDatasetExamples`.

Examples:

Request syntax with placeholder values


resp = client.update_dataset({
  dataset_id: "DatasetId", # required
  client_token: "ClientToken",
  description: "UpdateDatasetRequestDescriptionString",
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.updated_at #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset to update.

  • :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

  • :description (String)

    The updated description for the dataset.

Returns:

See Also:



10695
10696
10697
10698
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10695

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

#update_dataset_examples(params = {}) ⇒ Types::UpdateDatasetExamplesResponse

Updates multiple existing examples in-place on DRAFT. All examples are validated against the dataset’s schema type before any writes occur. If any example fails validation, the entire batch is rejected (all-or-nothing semantics).

Examples:

Request syntax with placeholder values


resp = client.update_dataset_examples({
  dataset_id: "DatasetId", # required
  client_token: "ClientToken",
  examples: [ # required
    {
    },
  ],
})

Response structure


resp.dataset_arn #=> String
resp.dataset_id #=> String
resp.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.updated_count #=> Integer
resp.updated_at #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :dataset_id (required, String)

    The unique identifier of the dataset.

  • :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

  • :examples (required, Array<Hash,Array,String,Numeric,Boolean>)

    Examples to update. Each element is a JSON object containing a required ‘exampleId` field identifying the existing example, plus the replacement fields. Maximum 1000 examples per call.

Returns:

See Also:



10758
10759
10760
10761
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10758

def update_dataset_examples(params = {}, options = {})
  req = build_request(:update_dataset_examples, 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:



10878
10879
10880
10881
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10878

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:



11127
11128
11129
11130
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11127

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:



11276
11277
11278
11279
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11276

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:



11586
11587
11588
11589
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11586

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
          require_service_s3_endpoint: false,
        },
      },
      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,
      api_format: "converse_stream", # accepts converse_stream, responses, chat_completions
      additional_params: {
      },
    },
    open_ai_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn", # required
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
      api_format: "chat_completions", # accepts chat_completions, responses
      additional_params: {
      },
    },
    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,
    },
    lite_llm_model_config: {
      model_id: "ModelId", # required
      api_key_arn: "ApiKeyArn",
      api_base: "HarnessLiteLlmApiBase",
      max_tokens: 1,
      temperature: 1.0,
      top_p: 1.0,
      additional_params: {
      },
    },
  },
  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: "HarnessBrowserArn",
        },
        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: "HarnessCodeInterpreterArn",
        },
      },
    },
  ],
  skills: [
    {
      path: "HarnessSkillPath",
      s3: {
        uri: "HarnessSkillS3Uri", # required
      },
      git: {
        url: "HarnessSkillGitUrl", # required
        path: "String",
        auth: {
          credential_arn: "ApiKeyArn", # required
          username: "String",
        },
      },
    },
  ],
  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.bedrock_model_config.api_format #=> String, one of "converse_stream", "responses", "chat_completions"
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.open_ai_model_config.api_format #=> String, one of "chat_completions", "responses"
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.model.lite_llm_model_config.model_id #=> String
resp.harness.model.lite_llm_model_config.api_key_arn #=> String
resp.harness.model.lite_llm_model_config.api_base #=> String
resp.harness.model.lite_llm_model_config.max_tokens #=> Integer
resp.harness.model.lite_llm_model_config.temperature #=> Float
resp.harness.model.lite_llm_model_config.top_p #=> Float
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.skills[0].s3.uri #=> String
resp.harness.skills[0].git.url #=> String
resp.harness.skills[0].git.path #=> String
resp.harness.skills[0].git.auth.credential_arn #=> String
resp.harness.skills[0].git.auth.username #=> 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.network_configuration.network_mode_config.require_service_s3_endpoint #=> Boolean
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:



12055
12056
12057
12058
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12055

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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                      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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                  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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                    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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
                      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_type: "LLM_INFERRED", # accepts LLM_INFERRED, STRICTLY_CONSISTENT
              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", "UPDATING"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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_type #=> String, one of "LLM_INFERRED", "STRICTLY_CONSISTENT"
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:



12707
12708
12709
12710
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12707

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",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      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
      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",
            },
          },
        },
      ],
    },
    google_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    github_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    slack_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    salesforce_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    microsoft_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      tenant_id: "TenantIdType",
    },
    atlassian_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    linkedin_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
    },
    included_oauth_2_provider_config: {
      client_id: "ClientIdType", # required
      client_secret: "DefaultClientSecretType",
      client_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      client_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      issuer: "IssuerUrlType",
      authorization_endpoint: "AuthorizationEndpointType",
      token_endpoint: "TokenEndpointType",
    },
  },
})

Response structure


resp.client_secret_arn.secret_arn #=> String
resp.client_secret_json_key #=> String
resp.client_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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:



13009
13010
13011
13012
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13009

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",
    },
  ],
  insights: [
    {
      insight_id: "InsightId", # required
    },
  ],
  clustering_config: {
    frequencies: ["DAILY"], # required, accepts DAILY, WEEKLY, MONTHLY
  },
  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.

  • :insights (Array<Types::Insight>)

    The updated list of insight types to run against agent sessions.

  • :clustering_config (Types::ClusteringConfig)

    The updated clustering configuration for periodic batch 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:



13134
13135
13136
13137
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13134

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:



13218
13219
13220
13221
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13218

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: "DefaultCoinbaseCdpApiKeySecretType",
      api_key_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      api_key_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      wallet_secret: "DefaultCoinbaseCdpWalletSecretType",
      wallet_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      wallet_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
    },
    stripe_privy_configuration: {
      app_id: "StripePrivyAppIdType", # required
      app_secret: "DefaultStripePrivyAppSecretType",
      app_secret_source: "MANAGED", # accepts MANAGED, EXTERNAL
      app_secret_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # required
      },
      authorization_private_key: "DefaultStripePrivyAuthorizationPrivateKeyType",
      authorization_private_key_source: "MANAGED", # accepts MANAGED, EXTERNAL
      authorization_private_key_config: {
        secret_id: "SecretIdType", # required
        json_key: "SecretJsonKeyType", # 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.api_key_secret_json_key #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.api_key_secret_source #=> String, one of "MANAGED", "EXTERNAL"
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_arn.secret_arn #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_json_key #=> String
resp.provider_configuration_output.coinbase_cdp_configuration.wallet_secret_source #=> String, one of "MANAGED", "EXTERNAL"
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.app_secret_json_key #=> String
resp.provider_configuration_output.stripe_privy_configuration.app_secret_source #=> String, one of "MANAGED", "EXTERNAL"
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_arn.secret_arn #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_json_key #=> String
resp.provider_configuration_output.stripe_privy_configuration.authorization_private_key_source #=> String, one of "MANAGED", "EXTERNAL"
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)

    The vendor type for the payment credential provider (e.g., CoinbaseCDP, StripePrivy).

  • :provider_configuration_input (required, Types::PaymentProviderConfigurationInput)

    Configuration specific to the vendor, including API credentials.

Returns:

See Also:



13312
13313
13314
13315
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13312

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:



13442
13443
13444
13445
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13442

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.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.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.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:



13536
13537
13538
13539
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13536

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.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.encryption_key_arn #=> String
resp.description #=> String
resp.status_reasons #=> Array
resp.status_reasons[0] #=> 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:



13591
13592
13593
13594
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13591

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:



13762
13763
13764
13765
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13762

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:



13963
13964
13965
13966
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13963

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:



14018
14019
14020
14021
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14018

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:



14060
14061
14062
14063
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14060

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.



14180
14181
14182
14183
14184
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14180

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.


14188
14189
14190
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14188

def waiter_names
  waiters.keys
end