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.



15096
15097
15098
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 15096

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.



15099
15100
15101
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 15099

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


14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14946

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.54.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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  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:



750
751
752
753
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 750

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:



819
820
821
822
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 819

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 Amazon Web Services 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 Amazon Web Services 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:



885
886
887
888
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 885

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:



1005
1006
1007
1008
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1005

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:



1066
1067
1068
1069
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1066

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:



1153
1154
1155
1156
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1153

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:



1249
1250
1251
1252
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1249

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:



1336
1337
1338
1339
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1336

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:



1390
1391
1392
1393
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1390

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:



1520
1521
1522
1523
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1520

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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  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
        payload_filter: {
          exclude: [ # required
            {
              field: "RESPONSE_BODY", # accepts RESPONSE_BODY
            },
          ],
        },
      },
    },
  ],
  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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> String
resp.kms_key_arn #=> String
resp.custom_transform_configuration.lambda.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.interceptor_configurations[0].input_configuration.payload_filter.exclude #=> Array
resp.interceptor_configurations[0].input_configuration.payload_filter.exclude[0].field #=> String, one of "RESPONSE_BODY"
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"
resp.web_acl_arn #=> String
resp.waf_configuration.failure_mode #=> String, one of "FAIL_CLOSE", "FAIL_OPEN"

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:



1828
1829
1830
1831
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1828

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:



1990
1991
1992
1993
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1990

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",
  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
            },
          ],
        },
      },
      connector: {
        source: { # required
          connector_id: "ConnectorId", # required
        },
        enabled: ["String"],
        configurations: [
          {
            name: "ConnectorConfigurationNameString", # required
            description: "ConnectorConfigurationDescriptionString",
            parameter_values: {
            },
            parameter_overrides: [
              {
                path: "String", # required
                description: "String",
                visible: false,
              },
            ],
          },
        ],
      },
    },
    http: {
      agentcore_runtime: {
        arn: "RuntimeArn", # required
        qualifier: "RuntimeQualifier",
        schema: {
          source: { # required
            s3: {
              uri: "S3BucketUri",
              bucket_owner_account_id: "AwsAccountId",
            },
            inline_payload: "InlinePayload",
          },
        },
      },
      passthrough: {
        endpoint: "PassthroughEndpoint", # required
        protocol_type: "MCP", # required, accepts MCP, A2A, INFERENCE, CUSTOM
        schema: {
          source: { # required
            s3: {
              uri: "S3BucketUri",
              bucket_owner_account_id: "AwsAccountId",
            },
            inline_payload: "InlinePayload",
          },
        },
        stickiness_configuration: {
          identifier: "StickinessConfigurationIdentifierString", # required
          timeout: 1,
        },
      },
    },
    inference: {
      connector: {
        source: { # required
          connector_id: "InferenceConnectorId", # required
        },
      },
      provider: {
        endpoint: "PassthroughEndpoint", # required
        model_mapping: {
          provider_prefix: {
            strip: false,
            separator: "ProviderPrefixSeparatorString",
          },
        },
        operations: [
          {
            path: "InferenceOperationPath", # required
            provider_path: "InferenceOperationPath",
            models: [
              {
                model: "ModelPattern", # required
              },
            ],
          },
        ],
      },
    },
  },
  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.mcp.connector.source.connector_id #=> String
resp.target_configuration.mcp.connector.enabled #=> Array
resp.target_configuration.mcp.connector.enabled[0] #=> String
resp.target_configuration.mcp.connector.configurations #=> Array
resp.target_configuration.mcp.connector.configurations[0].name #=> String
resp.target_configuration.mcp.connector.configurations[0].description #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides #=> Array
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].path #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].description #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].visible #=> Boolean
resp.target_configuration.http.agentcore_runtime.arn #=> String
resp.target_configuration.http.agentcore_runtime.qualifier #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.s3.uri #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.s3. #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.inline_payload #=> String
resp.target_configuration.http.passthrough.endpoint #=> String
resp.target_configuration.http.passthrough.protocol_type #=> String, one of "MCP", "A2A", "INFERENCE", "CUSTOM"
resp.target_configuration.http.passthrough.schema.source.s3.uri #=> String
resp.target_configuration.http.passthrough.schema.source.s3. #=> String
resp.target_configuration.http.passthrough.schema.source.inline_payload #=> String
resp.target_configuration.http.passthrough.stickiness_configuration.identifier #=> String
resp.target_configuration.http.passthrough.stickiness_configuration.timeout #=> Integer
resp.target_configuration.inference.connector.source.connector_id #=> String
resp.target_configuration.inference.provider.endpoint #=> String
resp.target_configuration.inference.provider.model_mapping.provider_prefix.strip #=> Boolean
resp.target_configuration.inference.provider.model_mapping.provider_prefix.separator #=> String
resp.target_configuration.inference.provider.operations #=> Array
resp.target_configuration.inference.provider.operations[0].path #=> String
resp.target_configuration.inference.provider.operations[0].provider_path #=> String
resp.target_configuration.inference.provider.operations[0].models #=> Array
resp.target_configuration.inference.provider.operations[0].models[0].model #=> 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 (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:



2413
2414
2415
2416
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2413

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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  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",
        },
      },
      aws_skills: {
        paths: ["HarnessAwsSkillPath"],
      },
    },
  ],
  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",
        },
      },
    },
    managed_memory_configuration: {
      arn: "MemoryArn",
      strategies: ["SEMANTIC"], # accepts SEMANTIC, SUMMARIZATION, USER_PREFERENCE, EPISODIC
      event_expiry_duration: 1,
      encryption_key_arn: "KmsKeyArn",
    },
    disabled: {
    },
  },
  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.harness_version #=> String
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.skills[0].aws_skills.paths #=> Array
resp.harness.skills[0].aws_skills.paths[0] #=> 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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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.memory.managed_memory_configuration.arn #=> String
resp.harness.memory.managed_memory_configuration.strategies #=> Array
resp.harness.memory.managed_memory_configuration.strategies[0] #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "EPISODIC"
resp.harness.memory.managed_memory_configuration.event_expiry_duration #=> Integer
resp.harness.memory.managed_memory_configuration.encryption_key_arn #=> 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:



2907
2908
2909
2910
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2907

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

#create_harness_endpoint(params = {}) ⇒ Types::CreateHarnessEndpointResponse

Operation to create a harness endpoint.

Examples:

Request syntax with placeholder values


resp = client.create_harness_endpoint({
  harness_id: "HarnessId", # required
  endpoint_name: "HarnessEndpointName", # required
  target_version: "HarnessVersion",
  description: "HarnessEndpointDescription",
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.endpoint.harness_id #=> String
resp.endpoint.harness_name #=> String
resp.endpoint.endpoint_name #=> String
resp.endpoint.arn #=> String
resp.endpoint.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.endpoint.created_at #=> Time
resp.endpoint.updated_at #=> Time
resp.endpoint.live_version #=> String
resp.endpoint.target_version #=> String
resp.endpoint.description #=> String
resp.endpoint.failure_reason #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness to create an endpoint for.

  • :endpoint_name (required, String)

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

  • :target_version (String)

    The harness version that the endpoint points to and serves invocations from.

  • :description (String)

    A description of the 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>)

    Tags to apply to the endpoint resource.

Returns:

See Also:



2973
2974
2975
2976
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2973

def create_harness_endpoint(params = {}, options = {})
  req = build_request(:create_harness_endpoint, 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"
resp.memory.managed_by_resource_arn #=> String

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:



3470
3471
3472
3473
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3470

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:



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

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:



3926
3927
3928
3929
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3926

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:



4014
4015
4016
4017
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4014

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:



4111
4112
4113
4114
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4111

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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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:



4308
4309
4310
4311
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4308

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
    },
    policy: {
      statement: "Statement", # required
    },
  },
  description: "Description",
  validation_mode: "FAIL_ON_ANY_FINDINGS", # accepts FAIL_ON_ANY_FINDINGS, IGNORE_ALL_FINDINGS
  enforcement_mode: "ACTIVE", # accepts ACTIVE, LOG_ONLY
  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.enforcement_mode #=> String, one of "ACTIVE", "LOG_ONLY"
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.definition.policy.statement #=> 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.

  • :enforcement_mode (String)

    The enforcement mode for the policy. Run this policy in ‘LOG_ONLY` mode to collect data on how it affects your application. Once you are satisfied with the data gathered, switch the policy to `ACTIVE`. Defaults to `ACTIVE`.

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



4442
4443
4444
4445
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4442

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:



4533
4534
4535
4536
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4533

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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  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:



4675
4676
4677
4678
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4675

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:



4825
4826
4827
4828
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4825

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:



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

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:



4911
4912
4913
4914
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4911

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:



4956
4957
4958
4959
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4956

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:



4978
4979
4980
4981
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4978

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:



5018
5019
5020
5021
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5018

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:



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

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:



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

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:



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

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:



5175
5176
5177
5178
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5175

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:



5232
5233
5234
5235
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5232

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:



5266
5267
5268
5269
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5266

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:



5299
5300
5301
5302
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5299

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:



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

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:



5377
5378
5379
5380
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5377

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",
  delete_managed_memory: false,
})

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.harness_version #=> String
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.skills[0].aws_skills.paths #=> Array
resp.harness.skills[0].aws_skills.paths[0] #=> 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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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.memory.managed_memory_configuration.arn #=> String
resp.harness.memory.managed_memory_configuration.strategies #=> Array
resp.harness.memory.managed_memory_configuration.strategies[0] #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "EPISODIC"
resp.harness.memory.managed_memory_configuration.event_expiry_duration #=> Integer
resp.harness.memory.managed_memory_configuration.encryption_key_arn #=> 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.**

  • :delete_managed_memory (Boolean)

    Whether to delete the managed memory on harness deletion. Default: true. If false, the memory is disassociated and becomes a regular customer-owned resource.

Returns:

See Also:



5560
5561
5562
5563
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5560

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

#delete_harness_endpoint(params = {}) ⇒ Types::DeleteHarnessEndpointResponse

Operation to delete a harness endpoint.

Examples:

Request syntax with placeholder values


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

Response structure


resp.endpoint.harness_id #=> String
resp.endpoint.harness_name #=> String
resp.endpoint.endpoint_name #=> String
resp.endpoint.arn #=> String
resp.endpoint.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.endpoint.created_at #=> Time
resp.endpoint.updated_at #=> Time
resp.endpoint.live_version #=> String
resp.endpoint.target_version #=> String
resp.endpoint.description #=> String
resp.endpoint.failure_reason #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness that the endpoint belongs to.

  • :endpoint_name (required, String)

    The name of the 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:



5610
5611
5612
5613
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5610

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



5649
5650
5651
5652
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5649

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:



5671
5672
5673
5674
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5671

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:



5705
5706
5707
5708
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5705

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:



5754
5755
5756
5757
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5754

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:



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

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:



5824
5825
5826
5827
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5824

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.enforcement_mode #=> String, one of "ACTIVE", "LOG_ONLY"
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.definition.policy.statement #=> 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:



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

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:



5938
5939
5940
5941
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5938

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:



5969
5970
5971
5972
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5969

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:



5998
5999
6000
6001
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5998

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:



6026
6027
6028
6029
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6026

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:



6048
6049
6050
6051
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6048

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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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:



6176
6177
6178
6179
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6176

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:



6229
6230
6231
6232
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6229

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:



6269
6270
6271
6272
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6269

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:



6336
6337
6338
6339
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6336

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:



6382
6383
6384
6385
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6382

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:



6436
6437
6438
6439
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6436

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:



6495
6496
6497
6498
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6495

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:



6552
6553
6554
6555
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6552

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:



6618
6619
6620
6621
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6618

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:



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

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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> String
resp.kms_key_arn #=> String
resp.custom_transform_configuration.lambda.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.interceptor_configurations[0].input_configuration.payload_filter.exclude #=> Array
resp.interceptor_configurations[0].input_configuration.payload_filter.exclude[0].field #=> String, one of "RESPONSE_BODY"
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"
resp.web_acl_arn #=> String
resp.waf_configuration.failure_mode #=> String, one of "FAIL_CLOSE", "FAIL_OPEN"

Parameters:

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

    ({})

Options Hash (params):

  • :gateway_identifier (required, String)

    The identifier of the gateway to retrieve.

Returns:

See Also:



6815
6816
6817
6818
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6815

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:



6888
6889
6890
6891
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6888

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.mcp.connector.source.connector_id #=> String
resp.target_configuration.mcp.connector.enabled #=> Array
resp.target_configuration.mcp.connector.enabled[0] #=> String
resp.target_configuration.mcp.connector.configurations #=> Array
resp.target_configuration.mcp.connector.configurations[0].name #=> String
resp.target_configuration.mcp.connector.configurations[0].description #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides #=> Array
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].path #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].description #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].visible #=> Boolean
resp.target_configuration.http.agentcore_runtime.arn #=> String
resp.target_configuration.http.agentcore_runtime.qualifier #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.s3.uri #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.s3. #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.inline_payload #=> String
resp.target_configuration.http.passthrough.endpoint #=> String
resp.target_configuration.http.passthrough.protocol_type #=> String, one of "MCP", "A2A", "INFERENCE", "CUSTOM"
resp.target_configuration.http.passthrough.schema.source.s3.uri #=> String
resp.target_configuration.http.passthrough.schema.source.s3. #=> String
resp.target_configuration.http.passthrough.schema.source.inline_payload #=> String
resp.target_configuration.http.passthrough.stickiness_configuration.identifier #=> String
resp.target_configuration.http.passthrough.stickiness_configuration.timeout #=> Integer
resp.target_configuration.inference.connector.source.connector_id #=> String
resp.target_configuration.inference.provider.endpoint #=> String
resp.target_configuration.inference.provider.model_mapping.provider_prefix.strip #=> Boolean
resp.target_configuration.inference.provider.model_mapping.provider_prefix.separator #=> String
resp.target_configuration.inference.provider.operations #=> Array
resp.target_configuration.inference.provider.operations[0].path #=> String
resp.target_configuration.inference.provider.operations[0].provider_path #=> String
resp.target_configuration.inference.provider.operations[0].models #=> Array
resp.target_configuration.inference.provider.operations[0].models[0].model #=> 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:



7056
7057
7058
7059
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7056

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
  harness_version: "HarnessVersion",
})

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.harness_version #=> String
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.skills[0].aws_skills.paths #=> Array
resp.harness.skills[0].aws_skills.paths[0] #=> 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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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.memory.managed_memory_configuration.arn #=> String
resp.harness.memory.managed_memory_configuration.strategies #=> Array
resp.harness.memory.managed_memory_configuration.strategies[0] #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "EPISODIC"
resp.harness.memory.managed_memory_configuration.event_expiry_duration #=> Integer
resp.harness.memory.managed_memory_configuration.encryption_key_arn #=> 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.

  • :harness_version (String)

    Specific version of the harness to retrieve. If omitted, returns the current Harness configuration, including its status.

Returns:

See Also:



7230
7231
7232
7233
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7230

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

#get_harness_endpoint(params = {}) ⇒ Types::GetHarnessEndpointResponse

Operation to get a single harness endpoint.

Examples:

Request syntax with placeholder values


resp = client.get_harness_endpoint({
  harness_id: "HarnessId", # required
  endpoint_name: "HarnessEndpointName", # required
})

Response structure


resp.endpoint.harness_id #=> String
resp.endpoint.harness_name #=> String
resp.endpoint.endpoint_name #=> String
resp.endpoint.arn #=> String
resp.endpoint.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.endpoint.created_at #=> Time
resp.endpoint.updated_at #=> Time
resp.endpoint.live_version #=> String
resp.endpoint.target_version #=> String
resp.endpoint.description #=> String
resp.endpoint.failure_reason #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness that the endpoint belongs to.

  • :endpoint_name (required, String)

    The name of the endpoint to retrieve.

Returns:

See Also:



7272
7273
7274
7275
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7272

def get_harness_endpoint(params = {}, options = {})
  req = build_request(:get_harness_endpoint, 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"
resp.memory.managed_by_resource_arn #=> String

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:



7411
7412
7413
7414
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7411

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:



7568
7569
7570
7571
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7568

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:



7642
7643
7644
7645
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7642

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:



7690
7691
7692
7693
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7690

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:



7745
7746
7747
7748
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7745

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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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:



7835
7836
7837
7838
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7835

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.enforcement_mode #=> String, one of "ACTIVE", "LOG_ONLY"
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.definition.policy.statement #=> 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:



7902
7903
7904
7905
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7902

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:



7957
7958
7959
7960
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7957

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:



8005
8006
8007
8008
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8005

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:



8072
8073
8074
8075
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8072

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:



8128
8129
8130
8131
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8128

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"
resp.enforcement_mode #=> String, one of "ACTIVE", "LOG_ONLY"

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:



8183
8184
8185
8186
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8183

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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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:



8271
8272
8273
8274
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8271

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:



8351
8352
8353
8354
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8351

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:



8385
8386
8387
8388
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8385

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:



8418
8419
8420
8421
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8418

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:



8455
8456
8457
8458
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8455

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:



8505
8506
8507
8508
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8505

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:



8552
8553
8554
8555
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8552

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:



8595
8596
8597
8598
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8595

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:



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

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:



8685
8686
8687
8688
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8685

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:



8736
8737
8738
8739
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8736

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:



8783
8784
8785
8786
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8783

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:



8851
8852
8853
8854
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8851

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:



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

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:



8953
8954
8955
8956
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8953

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:



8997
8998
8999
9000
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8997

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:



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

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:



9092
9093
9094
9095
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9092

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:



9168
9169
9170
9171
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9168

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.items[0].last_synchronized_at #=> Time
resp.items[0].authorization_data.oauth2.authorization_url #=> String
resp.items[0].authorization_data.oauth2.user_id #=> String
resp.items[0].target_type #=> String, one of "OPEN_API_SCHEMA", "SMITHY_MODEL", "MCP_SERVER", "LAMBDA", "API_GATEWAY", "CONNECTOR", "AGENTCORE_RUNTIME", "PASSTHROUGH", "PROVIDER"
resp.items[0].listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
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:



9226
9227
9228
9229
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9226

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:



9276
9277
9278
9279
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9276

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

#list_harness_endpoints(params = {}) ⇒ Types::ListHarnessEndpointsResponse

Operation to list the endpoints of a harness.

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_harness_endpoints({
  harness_id: "HarnessId", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.endpoints #=> Array
resp.endpoints[0].harness_id #=> String
resp.endpoints[0].harness_name #=> String
resp.endpoints[0].endpoint_name #=> String
resp.endpoints[0].arn #=> String
resp.endpoints[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.endpoints[0].created_at #=> Time
resp.endpoints[0].updated_at #=> Time
resp.endpoints[0].live_version #=> String
resp.endpoints[0].target_version #=> String
resp.endpoints[0].description #=> String
resp.endpoints[0].failure_reason #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness whose endpoints are listed.

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



9327
9328
9329
9330
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9327

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

#list_harness_versions(params = {}) ⇒ Types::ListHarnessVersionsResponse

Operation to list the versions of a Harness.

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_harness_versions({
  harness_id: "HarnessId", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.harness_versions #=> Array
resp.harness_versions[0].harness_id #=> String
resp.harness_versions[0].harness_name #=> String
resp.harness_versions[0].arn #=> String
resp.harness_versions[0].harness_version #=> String
resp.harness_versions[0].status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.harness_versions[0].created_at #=> Time
resp.harness_versions[0].updated_at #=> Time
resp.harness_versions[0].failure_reason #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness whose versions are listed.

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



9375
9376
9377
9378
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9375

def list_harness_versions(params = {}, options = {})
  req = build_request(:list_harness_versions, 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.harnesses[0].harness_version #=> String
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:



9418
9419
9420
9421
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9418

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.memories[0].managed_by_resource_arn #=> String
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:



9464
9465
9466
9467
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9464

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:



9505
9506
9507
9508
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9505

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:



9557
9558
9559
9560
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9557

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:



9608
9609
9610
9611
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9608

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:



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

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:



9700
9701
9702
9703
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9700

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].enforcement_mode #=> String, one of "ACTIVE", "LOG_ONLY"
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].definition.policy.statement #=> 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:



9773
9774
9775
9776
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9773

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:



9829
9830
9831
9832
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9829

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:



9886
9887
9888
9889
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9886

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].definition.policy.statement #=> 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:



9963
9964
9965
9966
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9963

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:



10026
10027
10028
10029
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10026

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:



10082
10083
10084
10085
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10082

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.policies[0].enforcement_mode #=> String, one of "ACTIVE", "LOG_ONLY"
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:



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

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:



10216
10217
10218
10219
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10216

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:



10292
10293
10294
10295
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10292

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:



10327
10328
10329
10330
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10327

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:



10365
10366
10367
10368
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10365

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:



10404
10405
10406
10407
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10404

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:



10445
10446
10447
10448
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10445

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:



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

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:



10585
10586
10587
10588
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10585

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.mcp.connector.source.connector_id #=> String
resp.targets[0].target_configuration.mcp.connector.enabled #=> Array
resp.targets[0].target_configuration.mcp.connector.enabled[0] #=> String
resp.targets[0].target_configuration.mcp.connector.configurations #=> Array
resp.targets[0].target_configuration.mcp.connector.configurations[0].name #=> String
resp.targets[0].target_configuration.mcp.connector.configurations[0].description #=> String
resp.targets[0].target_configuration.mcp.connector.configurations[0].parameter_overrides #=> Array
resp.targets[0].target_configuration.mcp.connector.configurations[0].parameter_overrides[0].path #=> String
resp.targets[0].target_configuration.mcp.connector.configurations[0].parameter_overrides[0].description #=> String
resp.targets[0].target_configuration.mcp.connector.configurations[0].parameter_overrides[0].visible #=> Boolean
resp.targets[0].target_configuration.http.agentcore_runtime.arn #=> String
resp.targets[0].target_configuration.http.agentcore_runtime.qualifier #=> String
resp.targets[0].target_configuration.http.agentcore_runtime.schema.source.s3.uri #=> String
resp.targets[0].target_configuration.http.agentcore_runtime.schema.source.s3. #=> String
resp.targets[0].target_configuration.http.agentcore_runtime.schema.source.inline_payload #=> String
resp.targets[0].target_configuration.http.passthrough.endpoint #=> String
resp.targets[0].target_configuration.http.passthrough.protocol_type #=> String, one of "MCP", "A2A", "INFERENCE", "CUSTOM"
resp.targets[0].target_configuration.http.passthrough.schema.source.s3.uri #=> String
resp.targets[0].target_configuration.http.passthrough.schema.source.s3. #=> String
resp.targets[0].target_configuration.http.passthrough.schema.source.inline_payload #=> String
resp.targets[0].target_configuration.http.passthrough.stickiness_configuration.identifier #=> String
resp.targets[0].target_configuration.http.passthrough.stickiness_configuration.timeout #=> Integer
resp.targets[0].target_configuration.inference.connector.source.connector_id #=> String
resp.targets[0].target_configuration.inference.provider.endpoint #=> String
resp.targets[0].target_configuration.inference.provider.model_mapping.provider_prefix.strip #=> Boolean
resp.targets[0].target_configuration.inference.provider.model_mapping.provider_prefix.separator #=> String
resp.targets[0].target_configuration.inference.provider.operations #=> Array
resp.targets[0].target_configuration.inference.provider.operations[0].path #=> String
resp.targets[0].target_configuration.inference.provider.operations[0].provider_path #=> String
resp.targets[0].target_configuration.inference.provider.operations[0].models #=> Array
resp.targets[0].target_configuration.inference.provider.operations[0].models[0].model #=> 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:



10749
10750
10751
10752
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10749

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:



10785
10786
10787
10788
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10785

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:



10816
10817
10818
10819
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10816

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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  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:



11024
11025
11026
11027
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11024

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:



11085
11086
11087
11088
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11085

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 Amazon Web Services 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 Amazon Web Services Secrets Manager.

Returns:

See Also:



11146
11147
11148
11149
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11146

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:



11246
11247
11248
11249
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11246

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:



11300
11301
11302
11303
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11300

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:



11363
11364
11365
11366
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11363

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:



11483
11484
11485
11486
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11483

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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  kms_key_arn: "KmsKeyArn",
  custom_transform_configuration: {
    lambda: {
      arn: "LambdaFunctionArn",
    },
  },
  interceptor_configurations: [
    {
      interceptor: { # required
        lambda: {
          arn: "LambdaFunctionArn", # required
        },
      },
      interception_points: ["REQUEST"], # required, accepts REQUEST, RESPONSE
      input_configuration: {
        pass_request_headers: false, # required
        payload_filter: {
          exclude: [ # required
            {
              field: "RESPONSE_BODY", # accepts RESPONSE_BODY
            },
          ],
        },
      },
    },
  ],
  policy_engine_configuration: {
    arn: "GatewayPolicyEngineArn", # required
    mode: "LOG_ONLY", # required, accepts LOG_ONLY, ENFORCE
  },
  exception_level: "DEBUG", # accepts DEBUG
  waf_configuration: {
    failure_mode: "FAIL_CLOSE", # accepts FAIL_CLOSE, FAIL_OPEN
  },
})

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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> String
resp.kms_key_arn #=> String
resp.custom_transform_configuration.lambda.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.interceptor_configurations[0].input_configuration.payload_filter.exclude #=> Array
resp.interceptor_configurations[0].input_configuration.payload_filter.exclude[0].field #=> String, one of "RESPONSE_BODY"
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"
resp.web_acl_arn #=> String
resp.waf_configuration.failure_mode #=> String, one of "FAIL_CLOSE", "FAIL_OPEN"

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.

  • :custom_transform_configuration (Types::CustomTransformConfiguration)

    The updated custom transformation configuration for the gateway. This configuration defines how the gateway transforms requests and responses.

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

  • :waf_configuration (Types::WafConfiguration)

    The updated Amazon Web Services WAF configuration for the gateway.

Returns:

See Also:



11775
11776
11777
11778
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11775

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:



11924
11925
11926
11927
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11924

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",
  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
            },
          ],
        },
      },
      connector: {
        source: { # required
          connector_id: "ConnectorId", # required
        },
        enabled: ["String"],
        configurations: [
          {
            name: "ConnectorConfigurationNameString", # required
            description: "ConnectorConfigurationDescriptionString",
            parameter_values: {
            },
            parameter_overrides: [
              {
                path: "String", # required
                description: "String",
                visible: false,
              },
            ],
          },
        ],
      },
    },
    http: {
      agentcore_runtime: {
        arn: "RuntimeArn", # required
        qualifier: "RuntimeQualifier",
        schema: {
          source: { # required
            s3: {
              uri: "S3BucketUri",
              bucket_owner_account_id: "AwsAccountId",
            },
            inline_payload: "InlinePayload",
          },
        },
      },
      passthrough: {
        endpoint: "PassthroughEndpoint", # required
        protocol_type: "MCP", # required, accepts MCP, A2A, INFERENCE, CUSTOM
        schema: {
          source: { # required
            s3: {
              uri: "S3BucketUri",
              bucket_owner_account_id: "AwsAccountId",
            },
            inline_payload: "InlinePayload",
          },
        },
        stickiness_configuration: {
          identifier: "StickinessConfigurationIdentifierString", # required
          timeout: 1,
        },
      },
    },
    inference: {
      connector: {
        source: { # required
          connector_id: "InferenceConnectorId", # required
        },
      },
      provider: {
        endpoint: "PassthroughEndpoint", # required
        model_mapping: {
          provider_prefix: {
            strip: false,
            separator: "ProviderPrefixSeparatorString",
          },
        },
        operations: [
          {
            path: "InferenceOperationPath", # required
            provider_path: "InferenceOperationPath",
            models: [
              {
                model: "ModelPattern", # required
              },
            ],
          },
        ],
      },
    },
  },
  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.mcp.connector.source.connector_id #=> String
resp.target_configuration.mcp.connector.enabled #=> Array
resp.target_configuration.mcp.connector.enabled[0] #=> String
resp.target_configuration.mcp.connector.configurations #=> Array
resp.target_configuration.mcp.connector.configurations[0].name #=> String
resp.target_configuration.mcp.connector.configurations[0].description #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides #=> Array
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].path #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].description #=> String
resp.target_configuration.mcp.connector.configurations[0].parameter_overrides[0].visible #=> Boolean
resp.target_configuration.http.agentcore_runtime.arn #=> String
resp.target_configuration.http.agentcore_runtime.qualifier #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.s3.uri #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.s3. #=> String
resp.target_configuration.http.agentcore_runtime.schema.source.inline_payload #=> String
resp.target_configuration.http.passthrough.endpoint #=> String
resp.target_configuration.http.passthrough.protocol_type #=> String, one of "MCP", "A2A", "INFERENCE", "CUSTOM"
resp.target_configuration.http.passthrough.schema.source.s3.uri #=> String
resp.target_configuration.http.passthrough.schema.source.s3. #=> String
resp.target_configuration.http.passthrough.schema.source.inline_payload #=> String
resp.target_configuration.http.passthrough.stickiness_configuration.identifier #=> String
resp.target_configuration.http.passthrough.stickiness_configuration.timeout #=> Integer
resp.target_configuration.inference.connector.source.connector_id #=> String
resp.target_configuration.inference.provider.endpoint #=> String
resp.target_configuration.inference.provider.model_mapping.provider_prefix.strip #=> Boolean
resp.target_configuration.inference.provider.model_mapping.provider_prefix.separator #=> String
resp.target_configuration.inference.provider.operations #=> Array
resp.target_configuration.inference.provider.operations[0].path #=> String
resp.target_configuration.inference.provider.operations[0].provider_path #=> String
resp.target_configuration.inference.provider.operations[0].models #=> Array
resp.target_configuration.inference.provider.operations[0].models[0].model #=> 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 (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:



12337
12338
12339
12340
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12337

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",
              },
            },
          },
        ],
        allowed_workload_configuration: {
          hosting_environments: [
            {
              arn: "BedrockAgentcoreResourceArn", # required
            },
          ],
          workload_identities: ["WorkloadIdentityNameType"],
        },
      },
    },
  },
  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",
        },
      },
      aws_skills: {
        paths: ["HarnessAwsSkillPath"],
      },
    },
  ],
  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",
          },
        },
      },
      managed_memory_configuration: {
        arn: "MemoryArn",
        strategies: ["SEMANTIC"], # accepts SEMANTIC, SUMMARIZATION, USER_PREFERENCE, EPISODIC
        event_expiry_duration: 1,
        encryption_key_arn: "KmsKeyArn",
      },
      disabled: {
      },
    },
  },
  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.harness_version #=> String
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.skills[0].aws_skills.paths #=> Array
resp.harness.skills[0].aws_skills.paths[0] #=> 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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.harness.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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.memory.managed_memory_configuration.arn #=> String
resp.harness.memory.managed_memory_configuration.strategies #=> Array
resp.harness.memory.managed_memory_configuration.strategies[0] #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "EPISODIC"
resp.harness.memory.managed_memory_configuration.event_expiry_duration #=> Integer
resp.harness.memory.managed_memory_configuration.encryption_key_arn #=> 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:



12837
12838
12839
12840
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12837

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

#update_harness_endpoint(params = {}) ⇒ Types::UpdateHarnessEndpointResponse

Operation to update a harness endpoint.

Examples:

Request syntax with placeholder values


resp = client.update_harness_endpoint({
  harness_id: "HarnessId", # required
  endpoint_name: "HarnessEndpointName", # required
  target_version: "HarnessVersion",
  description: "HarnessEndpointDescription",
  client_token: "ClientToken",
})

Response structure


resp.endpoint.harness_id #=> String
resp.endpoint.harness_name #=> String
resp.endpoint.endpoint_name #=> String
resp.endpoint.arn #=> String
resp.endpoint.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING", "DELETE_FAILED"
resp.endpoint.created_at #=> Time
resp.endpoint.updated_at #=> Time
resp.endpoint.live_version #=> String
resp.endpoint.target_version #=> String
resp.endpoint.description #=> String
resp.endpoint.failure_reason #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :harness_id (required, String)

    The ID of the harness that the endpoint belongs to.

  • :endpoint_name (required, String)

    The name of the endpoint to update.

  • :target_version (String)

    The harness version that the endpoint points to. If not specified, the existing value is retained.

  • :description (String)

    A description of the endpoint. If not specified, the existing value is retained.

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



12897
12898
12899
12900
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12897

def update_harness_endpoint(params = {}, options = {})
  req = build_request(:update_harness_endpoint, 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"
resp.memory.managed_by_resource_arn #=> String

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:



13550
13551
13552
13553
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13550

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:



13852
13853
13854
13855
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13852

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:



13977
13978
13979
13980
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13977

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:



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

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:



14155
14156
14157
14158
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14155

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",
            },
          },
        },
      ],
      allowed_workload_configuration: {
        hosting_environments: [
          {
            arn: "BedrockAgentcoreResourceArn", # required
          },
        ],
        workload_identities: ["WorkloadIdentityNameType"],
      },
    },
  },
  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:



14293
14294
14295
14296
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14293

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
    },
    policy: {
      statement: "Statement", # required
    },
  },
  validation_mode: "FAIL_ON_ANY_FINDINGS", # accepts FAIL_ON_ANY_FINDINGS, IGNORE_ALL_FINDINGS
  enforcement_mode: "ACTIVE", # accepts ACTIVE, LOG_ONLY
})

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.enforcement_mode #=> String, one of "ACTIVE", "LOG_ONLY"
resp.definition.cedar.statement #=> String
resp.definition.policy_generation.policy_generation_id #=> String
resp.definition.policy_generation.policy_generation_asset_id #=> String
resp.definition.policy.statement #=> 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.

  • :enforcement_mode (String)

    The enforcement mode for the policy. Run this policy in ‘LOG_ONLY` mode to collect data on how it affects your application. Once you are satisfied with the data gathered, switch the policy to `ACTIVE`. If you omit this field, the policy’s existing enforcement mode is unchanged.

Returns:

See Also:



14401
14402
14403
14404
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14401

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:



14456
14457
14458
14459
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14456

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",
              },
            },
          },
        ],
        allowed_workload_configuration: {
          hosting_environments: [
            {
              arn: "BedrockAgentcoreResourceArn", # required
            },
          ],
          workload_identities: ["WorkloadIdentityNameType"],
        },
      },
    },
  },
  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.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.hosting_environments[0].arn #=> String
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities #=> Array
resp.authorizer_configuration.custom_jwt_authorizer.allowed_workload_configuration.workload_identities[0] #=> 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:



14639
14640
14641
14642
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14639

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:



14840
14841
14842
14843
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14840

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:



14895
14896
14897
14898
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14895

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:



14937
14938
14939
14940
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14937

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.



15057
15058
15059
15060
15061
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 15057

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.


15065
15066
15067
# File 'lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 15065

def waiter_names
  waiters.keys
end