Class: AWSCDK::BedrockAgentCore::OpenAPITargetConfiguration

Inherits:
McpTargetConfiguration
  • Object
show all
Defined in:
bedrock_agent_core/open_api_target_configuration.rb

Overview

Configuration for OpenAPI-based MCP targets.

This configuration exposes an OpenAPI/REST API as MCP tools, allowing the gateway to transform API operations into tool calls.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_schema, validate_schema = nil) ⇒ OpenAPITargetConfiguration

Returns a new instance of OpenAPITargetConfiguration.

Parameters:



13
14
15
16
17
# File 'bedrock_agent_core/open_api_target_configuration.rb', line 13

def initialize(api_schema, validate_schema = nil)
  Jsii::Type.check_type(api_schema, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYmVkcm9ja2FnZW50Y29yZS5BcGlTY2hlbWEifQ==")), "apiSchema")
  Jsii::Type.check_type(validate_schema, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "validateSchema") unless validate_schema.nil?
  Jsii::Object.instance_method(:initialize).bind(self).call(api_schema, validate_schema)
end

Class Method Details

.create(api_schema, validate_schema = nil) ⇒ AWSCDK::BedrockAgentCore::OpenAPITargetConfiguration

Create an OpenAPI target configuration.

Parameters:

  • api_schema (AWSCDK::BedrockAgentCore::APISchema)

    The OpenAPI schema.

  • validate_schema (Boolean, nil) (defaults to: nil)

    Whether to validate the OpenAPI schema (only applies to inline schemas).

Returns:

  • (AWSCDK::BedrockAgentCore::OpenAPITargetConfiguration)

    A new OpenApiTargetConfiguration instance



33
34
35
36
37
# File 'bedrock_agent_core/open_api_target_configuration.rb', line 33

def self.create(api_schema, validate_schema = nil)
  Jsii::Type.check_type(api_schema, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYmVkcm9ja2FnZW50Y29yZS5BcGlTY2hlbWEifQ==")), "apiSchema")
  Jsii::Type.check_type(validate_schema, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "validateSchema") unless validate_schema.nil?
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_bedrockagentcore.OpenApiTargetConfiguration", "create", [api_schema, validate_schema])
end

.jsii_overridable_methodsObject



19
20
21
22
23
24
25
26
# File 'bedrock_agent_core/open_api_target_configuration.rb', line 19

def self.jsii_overridable_methods
  {
    :target_type => { kind: :property, name: "targetType", is_optional: false },
    :api_schema => { kind: :property, name: "apiSchema", is_optional: false },
    :bind => { kind: :method, name: "bind", is_optional: false },
    :render_mcp_configuration => { kind: :method, name: "renderMcpConfiguration", is_optional: false },
  }
end

Instance Method Details

#api_schemaAWSCDK::BedrockAgentCore::APISchema

The OpenAPI schema that defines the API.



49
50
51
# File 'bedrock_agent_core/open_api_target_configuration.rb', line 49

def api_schema()
  jsii_get_property("apiSchema")
end

#bind(scope, gateway) ⇒ AWSCDK::BedrockAgentCore::TargetConfigurationConfig

Binds this configuration to a construct scope Sets up necessary permissions for the gateway to access the API schema.

Parameters:

Returns:



58
59
60
61
62
# File 'bedrock_agent_core/open_api_target_configuration.rb', line 58

def bind(scope, gateway)
  Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope")
  Jsii::Type.check_type(gateway, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYmVkcm9ja2FnZW50Y29yZS5JR2F0ZXdheSJ9")), "gateway")
  jsii_call_method("bind", [scope, gateway])
end

#render_mcp_configurationObject

Renders the MCP-specific configuration.

Returns:

  • (Object)


67
68
69
# File 'bedrock_agent_core/open_api_target_configuration.rb', line 67

def render_mcp_configuration()
  jsii_call_method("renderMcpConfiguration", [])
end

#target_typeAWSCDK::BedrockAgentCore::McpTargetType

The target type.



42
43
44
# File 'bedrock_agent_core/open_api_target_configuration.rb', line 42

def target_type()
  jsii_get_property("targetType")
end