BedrockAgentCoreControlPlaneFrontingLayer / Client / create_gateway_target
create_gateway_target¶
- BedrockAgentCoreControlPlaneFrontingLayer.Client.create_gateway_target(**kwargs)¶
Creates a target for a gateway. A target defines an endpoint that the gateway can connect to.
To create a target, you must specify the gateway identifier and target configuration.
See also: AWS API Documentation
Request Syntax
response = client.create_gateway_target( gatewayIdentifier='string', name='string', description='string', clientToken='string', targetConfiguration={ 'mcp': { 'openApiSchema': { 's3': { 'uri': 'string', 'bucketOwnerAccountId': 'string' }, 'inlinePayload': 'string' }, 'smithyModel': { 's3': { 'uri': 'string', 'bucketOwnerAccountId': 'string' }, 'inlinePayload': 'string' }, 'lambda': { 'lambdaArn': 'string', 'toolSchema': { 's3': { 'uri': 'string', 'bucketOwnerAccountId': 'string' }, 'inlinePayload': [ { 'name': 'string', 'description': 'string', 'inputSchema': { 'type': 'string'|'number'|'object'|'array'|'boolean'|'integer', 'properties': { 'string': {'... recursive ...'} }, 'required': [ 'string', ], 'items': {'... recursive ...'}, 'description': 'string' }, 'outputSchema': { 'type': 'string'|'number'|'object'|'array'|'boolean'|'integer', 'properties': { 'string': {'... recursive ...'} }, 'required': [ 'string', ], 'items': {'... recursive ...'}, 'description': 'string' } }, ] } } } }, credentialProviderConfigurations=[ { 'credentialProviderType': 'GATEWAY_IAM_ROLE'|'OAUTH'|'API_KEY', 'credentialProvider': { 'oauthCredentialProvider': { 'providerArn': 'string', 'scopes': [ 'string', ], 'customParameters': { 'string': 'string' } }, 'apiKeyCredentialProvider': { 'providerArn': 'string', 'credentialParameterName': 'string', 'credentialPrefix': 'string', 'credentialLocation': 'HEADER'|'QUERY_PARAMETER' } } }, ] )
- Parameters:
gatewayIdentifier (string) –
[REQUIRED]
The identifier of the gateway to create a target for. This can be either the gateway ID or the gateway ARN.
name (string) –
[REQUIRED]
The name of the gateway target. The name must be unique within the gateway.
description (string) – The description of the gateway target.
clientToken (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.
This field is autopopulated if not provided.
targetConfiguration (dict) –
[REQUIRED]
The configuration settings for the target, including endpoint information and schema definitions.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
mcp
.mcp (dict) –
The Model Context Protocol (MCP) configuration for the target. This configuration defines how the gateway uses MCP to communicate with the target.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
openApiSchema
,smithyModel
,lambda
.openApiSchema (dict) –
The OpenAPI schema for the Model Context Protocol target. This schema defines the API structure of the target.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
s3
,inlinePayload
.s3 (dict) –
The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.
uri (string) –
The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.
bucketOwnerAccountId (string) –
The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.
inlinePayload (string) –
The inline payload containing the API schema definition.
smithyModel (dict) –
The Smithy model for the Model Context Protocol target. This model defines the API structure of the target using the Smithy specification.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
s3
,inlinePayload
.s3 (dict) –
The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.
uri (string) –
The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.
bucketOwnerAccountId (string) –
The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.
inlinePayload (string) –
The inline payload containing the API schema definition.
lambda (dict) –
The Lambda configuration for the Model Context Protocol target. This configuration defines how the gateway uses a Lambda function to communicate with the target.
lambdaArn (string) – [REQUIRED]
The Amazon Resource Name (ARN) of the Lambda function. This function is invoked by the gateway to communicate with the target.
toolSchema (dict) – [REQUIRED]
The tool schema for the Lambda function. This schema defines the structure of the tools that the Lambda function provides.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
s3
,inlinePayload
.s3 (dict) –
The Amazon S3 location of the tool schema. This location contains the schema definition file.
uri (string) –
The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.
bucketOwnerAccountId (string) –
The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.
inlinePayload (list) –
The inline payload of the tool schema. This payload contains the schema definition directly in the request.
(dict) –
A tool definition for a gateway target. This structure defines a tool that the target exposes through the Model Context Protocol.
name (string) – [REQUIRED]
The name of the tool. This name identifies the tool in the Model Context Protocol.
description (string) – [REQUIRED]
The description of the tool. This description provides information about the purpose and usage of the tool.
inputSchema (dict) – [REQUIRED]
The input schema for the tool. This schema defines the structure of the input that the tool accepts.
type (string) – [REQUIRED]
The type of the schema definition. This field specifies the data type of the schema.
properties (dict) –
The properties of the schema definition. These properties define the fields in the schema.
(string) –
(dict) –
A schema definition for a gateway target. This structure defines the structure of the API that the target exposes.
required (list) –
The required fields in the schema definition. These fields must be provided when using the schema.
(string) –
items (dict) –
The items in the schema definition. This field is used for array types to define the structure of the array elements.
description (string) –
The description of the schema definition. This description provides information about the purpose and usage of the schema.
outputSchema (dict) –
The output schema for the tool. This schema defines the structure of the output that the tool produces.
type (string) – [REQUIRED]
The type of the schema definition. This field specifies the data type of the schema.
properties (dict) –
The properties of the schema definition. These properties define the fields in the schema.
(string) –
(dict) –
A schema definition for a gateway target. This structure defines the structure of the API that the target exposes.
required (list) –
The required fields in the schema definition. These fields must be provided when using the schema.
(string) –
items (dict) –
The items in the schema definition. This field is used for array types to define the structure of the array elements.
description (string) –
The description of the schema definition. This description provides information about the purpose and usage of the schema.
credentialProviderConfigurations (list) –
[REQUIRED]
The credential provider configurations for the target. These configurations specify how the gateway authenticates with the target endpoint.
(dict) –
The configuration for a credential provider. This structure defines how the gateway authenticates with the target endpoint.
credentialProviderType (string) – [REQUIRED]
The type of credential provider. This field specifies which authentication method the gateway uses.
credentialProvider (dict) –
The credential provider. This field contains the specific configuration for the credential provider type.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
oauthCredentialProvider
,apiKeyCredentialProvider
.oauthCredentialProvider (dict) –
The OAuth credential provider. This provider uses OAuth authentication to access the target endpoint.
providerArn (string) – [REQUIRED]
The Amazon Resource Name (ARN) of the OAuth credential provider. This ARN identifies the provider in Amazon Web Services.
scopes (list) – [REQUIRED]
The OAuth scopes for the credential provider. These scopes define the level of access requested from the OAuth provider.
(string) –
customParameters (dict) –
The custom parameters for the OAuth credential provider. These parameters provide additional configuration for the OAuth authentication process.
(string) –
(string) –
apiKeyCredentialProvider (dict) –
The API key credential provider. This provider uses an API key to authenticate with the target endpoint.
providerArn (string) – [REQUIRED]
The Amazon Resource Name (ARN) of the API key credential provider. This ARN identifies the provider in Amazon Web Services.
credentialParameterName (string) –
The name of the credential parameter for the API key. This parameter name is used when sending the API key to the target endpoint.
credentialPrefix (string) –
The prefix for the API key credential. This prefix is added to the API key when sending it to the target endpoint.
credentialLocation (string) –
The location of the API key credential. This field specifies where in the request the API key should be placed.
- Return type:
dict
- Returns:
Response Syntax
{ 'gatewayArn': 'string', 'targetId': 'string', 'createdAt': datetime(2015, 1, 1), 'updatedAt': datetime(2015, 1, 1), 'status': 'CREATING'|'UPDATING'|'UPDATE_UNSUCCESSFUL'|'DELETING'|'READY'|'FAILED', 'statusReasons': [ 'string', ], 'name': 'string', 'description': 'string', 'targetConfiguration': { 'mcp': { 'openApiSchema': { 's3': { 'uri': 'string', 'bucketOwnerAccountId': 'string' }, 'inlinePayload': 'string' }, 'smithyModel': { 's3': { 'uri': 'string', 'bucketOwnerAccountId': 'string' }, 'inlinePayload': 'string' }, 'lambda': { 'lambdaArn': 'string', 'toolSchema': { 's3': { 'uri': 'string', 'bucketOwnerAccountId': 'string' }, 'inlinePayload': [ { 'name': 'string', 'description': 'string', 'inputSchema': { 'type': 'string'|'number'|'object'|'array'|'boolean'|'integer', 'properties': { 'string': {'... recursive ...'} }, 'required': [ 'string', ], 'items': {'... recursive ...'}, 'description': 'string' }, 'outputSchema': { 'type': 'string'|'number'|'object'|'array'|'boolean'|'integer', 'properties': { 'string': {'... recursive ...'} }, 'required': [ 'string', ], 'items': {'... recursive ...'}, 'description': 'string' } }, ] } } } }, 'credentialProviderConfigurations': [ { 'credentialProviderType': 'GATEWAY_IAM_ROLE'|'OAUTH'|'API_KEY', 'credentialProvider': { 'oauthCredentialProvider': { 'providerArn': 'string', 'scopes': [ 'string', ], 'customParameters': { 'string': 'string' } }, 'apiKeyCredentialProvider': { 'providerArn': 'string', 'credentialParameterName': 'string', 'credentialPrefix': 'string', 'credentialLocation': 'HEADER'|'QUERY_PARAMETER' } } }, ] }
Response Structure
(dict) –
gatewayArn (string) –
The Amazon Resource Name (ARN) of the gateway.
targetId (string) –
The unique identifier of the created target.
createdAt (datetime) –
The timestamp when the target was created.
updatedAt (datetime) –
The timestamp when the target was last updated.
status (string) –
The current status of the target.
statusReasons (list) –
The reasons for the current status of the target.
(string) –
name (string) –
The name of the target.
description (string) –
The description of the target.
targetConfiguration (dict) –
The configuration settings for the target.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
mcp
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
mcp (dict) –
The Model Context Protocol (MCP) configuration for the target. This configuration defines how the gateway uses MCP to communicate with the target.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
openApiSchema
,smithyModel
,lambda
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
openApiSchema (dict) –
The OpenAPI schema for the Model Context Protocol target. This schema defines the API structure of the target.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
s3
,inlinePayload
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
s3 (dict) –
The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.
uri (string) –
The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.
bucketOwnerAccountId (string) –
The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.
inlinePayload (string) –
The inline payload containing the API schema definition.
smithyModel (dict) –
The Smithy model for the Model Context Protocol target. This model defines the API structure of the target using the Smithy specification.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
s3
,inlinePayload
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
s3 (dict) –
The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.
uri (string) –
The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.
bucketOwnerAccountId (string) –
The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.
inlinePayload (string) –
The inline payload containing the API schema definition.
lambda (dict) –
The Lambda configuration for the Model Context Protocol target. This configuration defines how the gateway uses a Lambda function to communicate with the target.
lambdaArn (string) –
The Amazon Resource Name (ARN) of the Lambda function. This function is invoked by the gateway to communicate with the target.
toolSchema (dict) –
The tool schema for the Lambda function. This schema defines the structure of the tools that the Lambda function provides.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
s3
,inlinePayload
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
s3 (dict) –
The Amazon S3 location of the tool schema. This location contains the schema definition file.
uri (string) –
The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.
bucketOwnerAccountId (string) –
The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.
inlinePayload (list) –
The inline payload of the tool schema. This payload contains the schema definition directly in the request.
(dict) –
A tool definition for a gateway target. This structure defines a tool that the target exposes through the Model Context Protocol.
name (string) –
The name of the tool. This name identifies the tool in the Model Context Protocol.
description (string) –
The description of the tool. This description provides information about the purpose and usage of the tool.
inputSchema (dict) –
The input schema for the tool. This schema defines the structure of the input that the tool accepts.
type (string) –
The type of the schema definition. This field specifies the data type of the schema.
properties (dict) –
The properties of the schema definition. These properties define the fields in the schema.
(string) –
(dict) –
A schema definition for a gateway target. This structure defines the structure of the API that the target exposes.
required (list) –
The required fields in the schema definition. These fields must be provided when using the schema.
(string) –
items (dict) –
The items in the schema definition. This field is used for array types to define the structure of the array elements.
description (string) –
The description of the schema definition. This description provides information about the purpose and usage of the schema.
outputSchema (dict) –
The output schema for the tool. This schema defines the structure of the output that the tool produces.
type (string) –
The type of the schema definition. This field specifies the data type of the schema.
properties (dict) –
The properties of the schema definition. These properties define the fields in the schema.
(string) –
(dict) –
A schema definition for a gateway target. This structure defines the structure of the API that the target exposes.
required (list) –
The required fields in the schema definition. These fields must be provided when using the schema.
(string) –
items (dict) –
The items in the schema definition. This field is used for array types to define the structure of the array elements.
description (string) –
The description of the schema definition. This description provides information about the purpose and usage of the schema.
credentialProviderConfigurations (list) –
The credential provider configurations for the target.
(dict) –
The configuration for a credential provider. This structure defines how the gateway authenticates with the target endpoint.
credentialProviderType (string) –
The type of credential provider. This field specifies which authentication method the gateway uses.
credentialProvider (dict) –
The credential provider. This field contains the specific configuration for the credential provider type.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
oauthCredentialProvider
,apiKeyCredentialProvider
. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBER
is as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
oauthCredentialProvider (dict) –
The OAuth credential provider. This provider uses OAuth authentication to access the target endpoint.
providerArn (string) –
The Amazon Resource Name (ARN) of the OAuth credential provider. This ARN identifies the provider in Amazon Web Services.
scopes (list) –
The OAuth scopes for the credential provider. These scopes define the level of access requested from the OAuth provider.
(string) –
customParameters (dict) –
The custom parameters for the OAuth credential provider. These parameters provide additional configuration for the OAuth authentication process.
(string) –
(string) –
apiKeyCredentialProvider (dict) –
The API key credential provider. This provider uses an API key to authenticate with the target endpoint.
providerArn (string) –
The Amazon Resource Name (ARN) of the API key credential provider. This ARN identifies the provider in Amazon Web Services.
credentialParameterName (string) –
The name of the credential parameter for the API key. This parameter name is used when sending the API key to the target endpoint.
credentialPrefix (string) –
The prefix for the API key credential. This prefix is added to the API key when sending it to the target endpoint.
credentialLocation (string) –
The location of the API key credential. This field specifies where in the request the API key should be placed.
Exceptions
BedrockAgentCoreControlPlaneFrontingLayer.Client.exceptions.ServiceQuotaExceededException
BedrockAgentCoreControlPlaneFrontingLayer.Client.exceptions.ConflictException
BedrockAgentCoreControlPlaneFrontingLayer.Client.exceptions.ValidationException
BedrockAgentCoreControlPlaneFrontingLayer.Client.exceptions.AccessDeniedException
BedrockAgentCoreControlPlaneFrontingLayer.Client.exceptions.ThrottlingException
BedrockAgentCoreControlPlaneFrontingLayer.Client.exceptions.ResourceNotFoundException
BedrockAgentCoreControlPlaneFrontingLayer.Client.exceptions.InternalServerException