Class: Aws::BedrockAgentCoreControl::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-bedrockagentcorecontrol/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.

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

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

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[:credentials]

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

    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID'].

    • ~/.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['AWS_EC2_METADATA_DISABLED'] 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:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :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['AWS_AUTH_SCHEME_PREFERENCE'] 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 https://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:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :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 'http://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 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 471

def initialize(*args)
  super
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.**

  • :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 'gems/aws-sdk-bedrockagentcorecontrol/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

#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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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:



753
754
755
756
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 753

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:



822
823
824
825
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 822

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:



888
889
890
891
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 888

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
        },
      },
    },
  ],
  filesystem_configurations: [
    {
      s3_files_configuration: {
        access_point_arn: "S3FilesAccessPointArn", # required
        mount_path: "MountPath", # required
        file_system_arn: "S3FilesFileSystemArn", # required
      },
      efs_configuration: {
        access_point_arn: "EfsAccessPointArn", # required
        mount_path: "MountPath", # required
        file_system_arn: "EfsFileSystemArn", # 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.

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

    The file system configurations to mount into the browser. Use these configurations to mount your own Amazon Simple Storage Service (Amazon S3) Files or Amazon Elastic File System (Amazon EFS) access points. Your sessions can then access your data. If you don't specify this field, no file systems are mounted.

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



1029
1030
1031
1032
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1029

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:



1090
1091
1092
1093
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1090

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
        },
      },
    },
  ],
  filesystem_configurations: [
    {
      s3_files_configuration: {
        access_point_arn: "S3FilesAccessPointArn", # required
        mount_path: "MountPath", # required
        file_system_arn: "S3FilesFileSystemArn", # required
      },
      efs_configuration: {
        access_point_arn: "EfsAccessPointArn", # required
        mount_path: "MountPath", # required
        file_system_arn: "EfsFileSystemArn", # 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.

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

    The file system configurations to mount into the code interpreter. Use these configurations to mount your own Amazon Simple Storage Service (Amazon S3) Files or Amazon Elastic File System (Amazon EFS) access points. Your sessions can then access your data. If you don't specify this field, no file systems are mounted.

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



1198
1199
1200
1201
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1198

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

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



1294
1295
1296
1297
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1294

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

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



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

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

Returns:

See Also:



1435
1436
1437
1438
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1435

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

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

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



1565
1566
1567
1568
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1565

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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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.**

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



1878
1879
1880
1881
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 1878

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

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



2040
2041
2042
2043
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2040

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
          version: "ConnectorVersion",
        },
        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.source.version #=> 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.**

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



2465
2466
2467
2468
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2465

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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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,
      additional_params: {
      },
    },
    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.advertised_scope_mapping #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



2966
2967
2968
2969
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 2966

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:



3032
3033
3034
3035
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3032

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:



3529
3530
3531
3532
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3529

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_KEY_JWT
      private_key_jwt_config: {
        private_key_source: {
          kms_key_source: {
            kms_key_arn: "KmsKeyArn", # required
          },
        },
        signing_algorithm: "RS256", # accepts RS256, PS256, ES256
        additional_header_claims: {
          "AdditionalClaimName" => "AdditionalClaimValue",
        },
        additional_payload_claims: {
          "AdditionalClaimName" => "AdditionalClaimValue",
        },
      },
      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.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", "PRIVATE_KEY_JWT"
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.private_key_jwt_config.private_key_source.kms_key_source.kms_key_arn #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.signing_algorithm #=> String, one of "RS256", "PS256", "ES256"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_header_claims #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_header_claims["AdditionalClaimName"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_payload_claims #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_payload_claims["AdditionalClaimName"] #=> String
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:



3856
3857
3858
3859
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 3856

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

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

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



4005
4006
4007
4008
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4005

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

Returns:

See Also:



4093
4094
4095
4096
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4093

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:



4190
4191
4192
4193
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4190

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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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.**

  • :tags (Hash<String,String>)

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

Returns:

See Also:



4392
4393
4394
4395
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4392

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.

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:



4526
4527
4528
4529
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4526

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.

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:



4617
4618
4619
4620
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4617

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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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.**

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



4762
4763
4764
4765
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4762

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

Returns:

See Also:



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

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:



4959
4960
4961
4962
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 4959

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:



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

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:



5043
5044
5045
5046
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5043

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:



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

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:



5105
5106
5107
5108
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5105

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:



5149
5150
5151
5152
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5149

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:



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

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:



5219
5220
5221
5222
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5219

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:



5262
5263
5264
5265
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5262

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

  • :example_ids (required, Array<String>)

    The IDs of the examples to delete.

Returns:

See Also:



5319
5320
5321
5322
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5319

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:



5353
5354
5355
5356
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5353

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:



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

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:



5420
5421
5422
5423
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5420

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:



5464
5465
5466
5467
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5464

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.advertised_scope_mapping #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



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

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:



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

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:



5738
5739
5740
5741
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5738

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:



5760
5761
5762
5763
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5760

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:



5794
5795
5796
5797
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5794

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

Returns:

See Also:



5843
5844
5845
5846
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5843

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:



5866
5867
5868
5869
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5866

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

Returns:

See Also:



5913
5914
5915
5916
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5913

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:



5976
5977
5978
5979
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 5976

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:



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

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:



6058
6059
6060
6061
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6058

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:



6087
6088
6089
6090
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6087

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.

This feature is currently available only for AgentCore Runtime and Gateway.

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:



6115
6116
6117
6118
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6115

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:



6137
6138
6139
6140
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6137

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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



6267
6268
6269
6270
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6267

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:



6320
6321
6322
6323
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6320

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:



6360
6361
6362
6363
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6360

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.filesystem_configurations #=> Array
resp.filesystem_configurations[0].s3_files_configuration.access_point_arn #=> String
resp.filesystem_configurations[0].s3_files_configuration.mount_path #=> String
resp.filesystem_configurations[0].s3_files_configuration.file_system_arn #=> String
resp.filesystem_configurations[0].efs_configuration.access_point_arn #=> String
resp.filesystem_configurations[0].efs_configuration.mount_path #=> String
resp.filesystem_configurations[0].efs_configuration.file_system_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:



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

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:



6481
6482
6483
6484
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6481

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.filesystem_configurations #=> Array
resp.filesystem_configurations[0].s3_files_configuration.access_point_arn #=> String
resp.filesystem_configurations[0].s3_files_configuration.mount_path #=> String
resp.filesystem_configurations[0].s3_files_configuration.file_system_arn #=> String
resp.filesystem_configurations[0].efs_configuration.access_point_arn #=> String
resp.filesystem_configurations[0].efs_configuration.mount_path #=> String
resp.filesystem_configurations[0].efs_configuration.file_system_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:



6543
6544
6545
6546
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6543

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:



6602
6603
6604
6605
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6602

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:



6659
6660
6661
6662
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6659

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:



6725
6726
6727
6728
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6725

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:



6800
6801
6802
6803
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6800

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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



6924
6925
6926
6927
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6924

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:



6997
6998
6999
7000
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 6997

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.source.version #=> 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:



7166
7167
7168
7169
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7166

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.advertised_scope_mapping #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



7342
7343
7344
7345
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7342

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:



7384
7385
7386
7387
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7384

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:



7523
7524
7525
7526
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7523

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.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", "PRIVATE_KEY_JWT"
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.private_key_jwt_config.private_key_source.kms_key_source.kms_key_arn #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.signing_algorithm #=> String, one of "RS256", "PS256", "ES256"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_header_claims #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_header_claims["AdditionalClaimName"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_payload_claims #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_payload_claims["AdditionalClaimName"] #=> String
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:



7686
7687
7688
7689
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7686

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:



7760
7761
7762
7763
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7760

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:



7808
7809
7810
7811
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7808

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:



7863
7864
7865
7866
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7863

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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



7955
7956
7957
7958
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 7955

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:



8022
8023
8024
8025
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8022

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:



8077
8078
8079
8080
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8077

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:



8125
8126
8127
8128
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8125

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

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



8192
8193
8194
8195
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8192

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:



8248
8249
8250
8251
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8248

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:



8303
8304
8305
8306
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8303

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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



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

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:



8473
8474
8475
8476
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8473

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.

This feature is currently available only for AgentCore Runtime and Gateway.

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:



8507
8508
8509
8510
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8507

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:



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

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:



8577
8578
8579
8580
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8577

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:



8627
8628
8629
8630
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8627

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:



8674
8675
8676
8677
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8674

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:



8717
8718
8719
8720
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8717

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:



8757
8758
8759
8760
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8757

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:



8807
8808
8809
8810
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8807

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:



8858
8859
8860
8861
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8858

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:



8905
8906
8907
8908
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8905

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:



8973
8974
8975
8976
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 8973

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:



9020
9021
9022
9023
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9020

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:



9075
9076
9077
9078
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9075

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:



9119
9120
9121
9122
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9119

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:



9165
9166
9167
9168
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9165

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:



9214
9215
9216
9217
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9214

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:



9290
9291
9292
9293
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9290

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:



9348
9349
9350
9351
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9348

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:



9398
9399
9400
9401
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9398

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:



9449
9450
9451
9452
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9449

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:



9497
9498
9499
9500
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9497

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:



9540
9541
9542
9543
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9540

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:



9586
9587
9588
9589
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9586

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:



9627
9628
9629
9630
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9627

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:



9679
9680
9681
9682
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9679

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:



9730
9731
9732
9733
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9730

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:



9771
9772
9773
9774
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9771

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:



9822
9823
9824
9825
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9822

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.

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



9895
9896
9897
9898
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9895

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

  • :next_token (String)

    A pagination token returned from a previous ListPolicyEngineSummaries call. Use this token to retrieve the next page of results when the response is paginated.

  • :max_results (Integer)

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

Returns:

See Also:



9951
9952
9953
9954
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 9951

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

  • :next_token (String)

    A pagination token returned from a previous ListPolicyEngines call. Use this token to retrieve the next page of results when the response is paginated.

  • :max_results (Integer)

    The maximum number of policy engines to return in a single response. If not specified, the default is 10 policy engines per page, with a maximum of 100 per page.

Returns:

See Also:



10008
10009
10010
10011
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10008

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.

  • :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 call. Use this token to retrieve the next page of assets when the response is paginated due to large numbers of generated policy options.

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



10085
10086
10087
10088
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10085

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 call. Use this token to retrieve the next page of results when the response is paginated.

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



10148
10149
10150
10151
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10148

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:



10204
10205
10206
10207
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10204

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.

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



10273
10274
10275
10276
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10273

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:



10338
10339
10340
10341
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10338

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:



10414
10415
10416
10417
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10414

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.

This feature is currently available only for AgentCore Runtime, Browser, Browser Profile, Code Interpreter tool, and Gateway.

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:



10449
10450
10451
10452
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10449

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:



10487
10488
10489
10490
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10487

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.

This feature is currently available only for AgentCore Runtime and Gateway.

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:



10526
10527
10528
10529
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10526

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:



10567
10568
10569
10570
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10567

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:



10663
10664
10665
10666
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10663

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:



10707
10708
10709
10710
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10707

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.source.version #=> 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:



10872
10873
10874
10875
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10872

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.

This feature is currently available only for AgentCore Runtime, Browser, Browser Profile, Code Interpreter tool, and Gateway.

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:



10908
10909
10910
10911
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10908

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.

This feature is currently available only for AgentCore Runtime, Browser, Browser Profile, Code Interpreter tool, and Gateway.

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:



10939
10940
10941
10942
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 10939

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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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:



11150
11151
11152
11153
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11150

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:



11211
11212
11213
11214
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11211

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:



11272
11273
11274
11275
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11272

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

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



11372
11373
11374
11375
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11372

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

  • :description (String)

    The updated description for the dataset.

Returns:

See Also:



11426
11427
11428
11429
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11426

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

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



11489
11490
11491
11492
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11489

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

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

Returns:

See Also:



11609
11610
11611
11612
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11609

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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



11906
11907
11908
11909
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 11906

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:



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

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
          version: "ConnectorVersion",
        },
        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.source.version #=> 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:



12470
12471
12472
12473
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12470

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"],
        advertised_scope_mapping: {
          "AllowedScopeType" => "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,
      additional_params: {
      },
    },
    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.advertised_scope_mapping #=> Hash
resp.harness.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



12977
12978
12979
12980
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 12977

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:



13037
13038
13039
13040
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13037

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:



13690
13691
13692
13693
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 13690

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_KEY_JWT
      private_key_jwt_config: {
        private_key_source: {
          kms_key_source: {
            kms_key_arn: "KmsKeyArn", # required
          },
        },
        signing_algorithm: "RS256", # accepts RS256, PS256, ES256
        additional_header_claims: {
          "AdditionalClaimName" => "AdditionalClaimValue",
        },
        additional_payload_claims: {
          "AdditionalClaimName" => "AdditionalClaimValue",
        },
      },
      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.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", "PRIVATE_KEY_JWT"
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.private_key_jwt_config.private_key_source.kms_key_source.kms_key_arn #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.signing_algorithm #=> String, one of "RS256", "PS256", "ES256"
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_header_claims #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_header_claims["AdditionalClaimName"] #=> String
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_payload_claims #=> Hash
resp.oauth2_provider_config_output.custom_oauth_2_provider_config.private_key_jwt_config.additional_payload_claims["AdditionalClaimName"] #=> String
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:



14012
14013
14014
14015
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14012

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

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



14137
14138
14139
14140
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14137

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

Returns:

See Also:



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

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:



14315
14316
14317
14318
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14315

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"],
      advertised_scope_mapping: {
        "AllowedScopeType" => "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.**

Returns:

See Also:



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

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:



14564
14565
14566
14567
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14564

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:



14619
14620
14621
14622
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14619

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"],
        advertised_scope_mapping: {
          "AllowedScopeType" => "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.advertised_scope_mapping #=> Hash
resp.authorizer_configuration.custom_jwt_authorizer.advertised_scope_mapping["AllowedScopeType"] #=> 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:



14807
14808
14809
14810
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 14807

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:



15008
15009
15010
15011
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 15008

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:



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

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:



15105
15106
15107
15108
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 15105

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.



15225
15226
15227
15228
15229
# File 'gems/aws-sdk-bedrockagentcorecontrol/lib/aws-sdk-bedrockagentcorecontrol/client.rb', line 15225

def wait_until(waiter_name, params = {}, options = {})
  w = waiter(waiter_name, options)
  yield(w.waiter) if block_given? # deprecated
  w.wait(params)
end