Amazon Bedrock Agent Core Control Plane Fronting Layer

2025/10/08 - Amazon Bedrock Agent Core Control Plane Fronting Layer - 4 updated api methods

Changes  Adding support for authorizer type AWS_IAM to AgentCore Control Gateway.

CreateGateway (updated) Link ¶
Changes (both)
{'authorizerType': {'AWS_IAM'}}

Creates a gateway for Amazon Bedrock Agent. A gateway serves as an integration point between your agent and external services.

To create a gateway, you must specify a name, protocol type, and IAM role. The role grants the gateway permission to access Amazon Web Services services and resources.

See also: AWS API Documentation

Request Syntax

client.create_gateway(
    name='string',
    description='string',
    clientToken='string',
    roleArn='string',
    protocolType='MCP',
    protocolConfiguration={
        'mcp': {
            'supportedVersions': [
                'string',
            ],
            'instructions': 'string',
            'searchType': 'SEMANTIC'
        }
    },
    authorizerType='CUSTOM_JWT'|'AWS_IAM',
    authorizerConfiguration={
        'customJWTAuthorizer': {
            'discoveryUrl': 'string',
            'allowedAudience': [
                'string',
            ],
            'allowedClients': [
                'string',
            ]
        }
    },
    kmsKeyArn='string',
    exceptionLevel='DEBUG',
    tags={
        'string': 'string'
    }
)
type name:

string

param name:

[REQUIRED]

The name of the gateway. The name must be unique within your account.

type description:

string

param description:

The description of the gateway.

type clientToken:

string

param clientToken:

A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, the service ignores the request, but does not return an error. For more information, see Ensuring idempotency.

This field is autopopulated if not provided.

type roleArn:

string

param roleArn:

[REQUIRED]

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the gateway to access Amazon Web Services services.

type protocolType:

string

param protocolType:

[REQUIRED]

The protocol type for the gateway.

type protocolConfiguration:

dict

param protocolConfiguration:

The configuration settings for the protocol specified in the protocolType parameter.

  • mcp (dict) --

    The configuration for the Model Context Protocol (MCP). This protocol enables communication between Amazon Bedrock Agent and external tools.

    • supportedVersions (list) --

      The supported versions of the Model Context Protocol. This field specifies which versions of the protocol the gateway can use.

      • (string) --

    • instructions (string) --

      The instructions for using the Model Context Protocol gateway. These instructions provide guidance on how to interact with the gateway.

    • searchType (string) --

      The search type for the Model Context Protocol gateway. This field specifies how the gateway handles search operations.

type authorizerType:

string

param authorizerType:

[REQUIRED]

The type of authorizer to use for the gateway.

type authorizerConfiguration:

dict

param authorizerConfiguration:

The authorizer configuration for the gateway.

  • customJWTAuthorizer (dict) --

    The inbound JWT-based authorization, specifying how incoming requests should be authenticated.

    • discoveryUrl (string) -- [REQUIRED]

      This URL is used to fetch OpenID Connect configuration or authorization server metadata for validating incoming tokens.

    • allowedAudience (list) --

      Represents individual audience values that are validated in the incoming JWT token validation process.

      • (string) --

    • allowedClients (list) --

      Represents individual client IDs that are validated in the incoming JWT token validation process.

      • (string) --

type kmsKeyArn:

string

param kmsKeyArn:

The Amazon Resource Name (ARN) of the KMS key used to encrypt data associated with the gateway.

type exceptionLevel:

string

param exceptionLevel:

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.

type tags:

dict

param tags:

A map of key-value pairs to associate with the gateway as metadata tags.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'gatewayArn': 'string',
    'gatewayId': 'string',
    'gatewayUrl': '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',
    'roleArn': 'string',
    'protocolType': 'MCP',
    'protocolConfiguration': {
        'mcp': {
            'supportedVersions': [
                'string',
            ],
            'instructions': 'string',
            'searchType': 'SEMANTIC'
        }
    },
    'authorizerType': 'CUSTOM_JWT'|'AWS_IAM',
    'authorizerConfiguration': {
        'customJWTAuthorizer': {
            'discoveryUrl': 'string',
            'allowedAudience': [
                'string',
            ],
            'allowedClients': [
                'string',
            ]
        }
    },
    'kmsKeyArn': 'string',
    'workloadIdentityDetails': {
        'workloadIdentityArn': 'string'
    },
    'exceptionLevel': 'DEBUG'
}

Response Structure

  • (dict) --

    • gatewayArn (string) --

      The Amazon Resource Name (ARN) of the created gateway.

    • gatewayId (string) --

      The unique identifier of the created gateway.

    • gatewayUrl (string) --

      The URL endpoint for the created gateway.

    • createdAt (datetime) --

      The timestamp when the gateway was created.

    • updatedAt (datetime) --

      The timestamp when the gateway was last updated.

    • status (string) --

      The current status of the gateway.

    • statusReasons (list) --

      The reasons for the current status of the gateway.

      • (string) --

    • name (string) --

      The name of the gateway.

    • description (string) --

      The description of the gateway.

    • roleArn (string) --

      The Amazon Resource Name (ARN) of the IAM role associated with the gateway.

    • protocolType (string) --

      The protocol type of the gateway.

    • protocolConfiguration (dict) --

      The configuration settings for the protocol used by the gateway.

      • mcp (dict) --

        The configuration for the Model Context Protocol (MCP). This protocol enables communication between Amazon Bedrock Agent and external tools.

        • supportedVersions (list) --

          The supported versions of the Model Context Protocol. This field specifies which versions of the protocol the gateway can use.

          • (string) --

        • instructions (string) --

          The instructions for using the Model Context Protocol gateway. These instructions provide guidance on how to interact with the gateway.

        • searchType (string) --

          The search type for the Model Context Protocol gateway. This field specifies how the gateway handles search operations.

    • authorizerType (string) --

      The type of authorizer used by the gateway.

    • authorizerConfiguration (dict) --

      The authorizer configuration for the created gateway.

      • customJWTAuthorizer (dict) --

        The inbound JWT-based authorization, specifying how incoming requests should be authenticated.

        • discoveryUrl (string) --

          This URL is used to fetch OpenID Connect configuration or authorization server metadata for validating incoming tokens.

        • allowedAudience (list) --

          Represents individual audience values that are validated in the incoming JWT token validation process.

          • (string) --

        • allowedClients (list) --

          Represents individual client IDs that are validated in the incoming JWT token validation process.

          • (string) --

    • kmsKeyArn (string) --

      The Amazon Resource Name (ARN) of the KMS key used to encrypt data associated with the gateway.

    • workloadIdentityDetails (dict) --

      The workload identity details for the created gateway.

      • workloadIdentityArn (string) --

        The ARN associated with the workload identity.

    • exceptionLevel (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.

GetGateway (updated) Link ¶
Changes (response)
{'authorizerType': {'AWS_IAM'}}

Retrieves information about a specific Gateway.

See also: AWS API Documentation

Request Syntax

client.get_gateway(
    gatewayIdentifier='string'
)
type gatewayIdentifier:

string

param gatewayIdentifier:

[REQUIRED]

The identifier of the gateway to retrieve.

rtype:

dict

returns:

Response Syntax

{
    'gatewayArn': 'string',
    'gatewayId': 'string',
    'gatewayUrl': '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',
    'roleArn': 'string',
    'protocolType': 'MCP',
    'protocolConfiguration': {
        'mcp': {
            'supportedVersions': [
                'string',
            ],
            'instructions': 'string',
            'searchType': 'SEMANTIC'
        }
    },
    'authorizerType': 'CUSTOM_JWT'|'AWS_IAM',
    'authorizerConfiguration': {
        'customJWTAuthorizer': {
            'discoveryUrl': 'string',
            'allowedAudience': [
                'string',
            ],
            'allowedClients': [
                'string',
            ]
        }
    },
    'kmsKeyArn': 'string',
    'workloadIdentityDetails': {
        'workloadIdentityArn': 'string'
    },
    'exceptionLevel': 'DEBUG'
}

Response Structure

  • (dict) --

    • gatewayArn (string) --

      The Amazon Resource Name (ARN) of the gateway.

    • gatewayId (string) --

      The unique identifier of the gateway.

    • gatewayUrl (string) --

      An endpoint for invoking gateway.

    • createdAt (datetime) --

      The timestamp when the gateway was created.

    • updatedAt (datetime) --

      The timestamp when the gateway was last updated.

    • status (string) --

      The current status of the gateway.

    • statusReasons (list) --

      The reasons for the current status of the gateway.

      • (string) --

    • name (string) --

      The name of the gateway.

    • description (string) --

      The description of the gateway.

    • roleArn (string) --

      The IAM role ARN that provides permissions for the gateway.

    • protocolType (string) --

      Protocol applied to a gateway.

    • protocolConfiguration (dict) --

      The configuration for a gateway protocol. This structure defines how the gateway communicates with external services.

      • mcp (dict) --

        The configuration for the Model Context Protocol (MCP). This protocol enables communication between Amazon Bedrock Agent and external tools.

        • supportedVersions (list) --

          The supported versions of the Model Context Protocol. This field specifies which versions of the protocol the gateway can use.

          • (string) --

        • instructions (string) --

          The instructions for using the Model Context Protocol gateway. These instructions provide guidance on how to interact with the gateway.

        • searchType (string) --

          The search type for the Model Context Protocol gateway. This field specifies how the gateway handles search operations.

    • authorizerType (string) --

      Authorizer type for the gateway.

    • authorizerConfiguration (dict) --

      The authorizer configuration for the gateway.

      • customJWTAuthorizer (dict) --

        The inbound JWT-based authorization, specifying how incoming requests should be authenticated.

        • discoveryUrl (string) --

          This URL is used to fetch OpenID Connect configuration or authorization server metadata for validating incoming tokens.

        • allowedAudience (list) --

          Represents individual audience values that are validated in the incoming JWT token validation process.

          • (string) --

        • allowedClients (list) --

          Represents individual client IDs that are validated in the incoming JWT token validation process.

          • (string) --

    • kmsKeyArn (string) --

      The Amazon Resource Name (ARN) of the KMS key used to encrypt the gateway.

    • workloadIdentityDetails (dict) --

      The workload identity details for the gateway.

      • workloadIdentityArn (string) --

        The ARN associated with the workload identity.

    • exceptionLevel (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.

ListGateways (updated) Link ¶
Changes (response)
{'items': {'authorizerType': {'AWS_IAM'}}}

Lists all gateways in the account.

See also: AWS API Documentation

Request Syntax

client.list_gateways(
    maxResults=123,
    nextToken='string'
)
type maxResults:

integer

param maxResults:

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.

type nextToken:

string

param nextToken:

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.

rtype:

dict

returns:

Response Syntax

{
    'items': [
        {
            'gatewayId': 'string',
            'name': 'string',
            'status': 'CREATING'|'UPDATING'|'UPDATE_UNSUCCESSFUL'|'DELETING'|'READY'|'FAILED',
            'description': 'string',
            'createdAt': datetime(2015, 1, 1),
            'updatedAt': datetime(2015, 1, 1),
            'authorizerType': 'CUSTOM_JWT'|'AWS_IAM',
            'protocolType': 'MCP'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      The list of gateway summaries.

      • (dict) --

        Contains summary information about a gateway.

        • gatewayId (string) --

          The unique identifier of the gateway.

        • name (string) --

          The name of the gateway.

        • status (string) --

          The current status of the gateway.

        • description (string) --

          The description of the gateway.

        • createdAt (datetime) --

          The timestamp when the gateway was created.

        • updatedAt (datetime) --

          The timestamp when the gateway was last updated.

        • authorizerType (string) --

          The type of authorizer used by the gateway.

        • protocolType (string) --

          The protocol type used by the gateway.

    • nextToken (string) --

      If the total number of results is greater than the maxResults value provided in the request, use this token when making another request in the nextToken field to return the next batch of results.

UpdateGateway (updated) Link ¶
Changes (both)
{'authorizerType': {'AWS_IAM'}}

Updates an existing gateway.

See also: AWS API Documentation

Request Syntax

client.update_gateway(
    gatewayIdentifier='string',
    name='string',
    description='string',
    roleArn='string',
    protocolType='MCP',
    protocolConfiguration={
        'mcp': {
            'supportedVersions': [
                'string',
            ],
            'instructions': 'string',
            'searchType': 'SEMANTIC'
        }
    },
    authorizerType='CUSTOM_JWT'|'AWS_IAM',
    authorizerConfiguration={
        'customJWTAuthorizer': {
            'discoveryUrl': 'string',
            'allowedAudience': [
                'string',
            ],
            'allowedClients': [
                'string',
            ]
        }
    },
    kmsKeyArn='string',
    exceptionLevel='DEBUG'
)
type gatewayIdentifier:

string

param gatewayIdentifier:

[REQUIRED]

The identifier of the gateway to update.

type name:

string

param name:

[REQUIRED]

The name of the gateway. This name must be the same as the one when the gateway was created.

type description:

string

param description:

The updated description for the gateway.

type roleArn:

string

param roleArn:

[REQUIRED]

The updated IAM role ARN that provides permissions for the gateway.

type protocolType:

string

param protocolType:

[REQUIRED]

The updated protocol type for the gateway.

type protocolConfiguration:

dict

param protocolConfiguration:

The configuration for a gateway protocol. This structure defines how the gateway communicates with external services.

  • mcp (dict) --

    The configuration for the Model Context Protocol (MCP). This protocol enables communication between Amazon Bedrock Agent and external tools.

    • supportedVersions (list) --

      The supported versions of the Model Context Protocol. This field specifies which versions of the protocol the gateway can use.

      • (string) --

    • instructions (string) --

      The instructions for using the Model Context Protocol gateway. These instructions provide guidance on how to interact with the gateway.

    • searchType (string) --

      The search type for the Model Context Protocol gateway. This field specifies how the gateway handles search operations.

type authorizerType:

string

param authorizerType:

[REQUIRED]

The updated authorizer type for the gateway.

type authorizerConfiguration:

dict

param authorizerConfiguration:

The updated authorizer configuration for the gateway.

  • customJWTAuthorizer (dict) --

    The inbound JWT-based authorization, specifying how incoming requests should be authenticated.

    • discoveryUrl (string) -- [REQUIRED]

      This URL is used to fetch OpenID Connect configuration or authorization server metadata for validating incoming tokens.

    • allowedAudience (list) --

      Represents individual audience values that are validated in the incoming JWT token validation process.

      • (string) --

    • allowedClients (list) --

      Represents individual client IDs that are validated in the incoming JWT token validation process.

      • (string) --

type kmsKeyArn:

string

param kmsKeyArn:

The updated ARN of the KMS key used to encrypt the gateway.

type exceptionLevel:

string

param exceptionLevel:

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.

rtype:

dict

returns:

Response Syntax

{
    'gatewayArn': 'string',
    'gatewayId': 'string',
    'gatewayUrl': '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',
    'roleArn': 'string',
    'protocolType': 'MCP',
    'protocolConfiguration': {
        'mcp': {
            'supportedVersions': [
                'string',
            ],
            'instructions': 'string',
            'searchType': 'SEMANTIC'
        }
    },
    'authorizerType': 'CUSTOM_JWT'|'AWS_IAM',
    'authorizerConfiguration': {
        'customJWTAuthorizer': {
            'discoveryUrl': 'string',
            'allowedAudience': [
                'string',
            ],
            'allowedClients': [
                'string',
            ]
        }
    },
    'kmsKeyArn': 'string',
    'workloadIdentityDetails': {
        'workloadIdentityArn': 'string'
    },
    'exceptionLevel': 'DEBUG'
}

Response Structure

  • (dict) --

    • gatewayArn (string) --

      The Amazon Resource Name (ARN) of the updated gateway.

    • gatewayId (string) --

      The unique identifier of the updated gateway.

    • gatewayUrl (string) --

      An endpoint for invoking the updated gateway.

    • createdAt (datetime) --

      The timestamp when the gateway was created.

    • updatedAt (datetime) --

      The timestamp when the gateway was last updated.

    • status (string) --

      The current status of the updated gateway.

    • statusReasons (list) --

      The reasons for the current status of the updated gateway.

      • (string) --

    • name (string) --

      The name of the gateway.

    • description (string) --

      The updated description of the gateway.

    • roleArn (string) --

      The updated IAM role ARN that provides permissions for the gateway.

    • protocolType (string) --

      The updated protocol type for the gateway.

    • protocolConfiguration (dict) --

      The configuration for a gateway protocol. This structure defines how the gateway communicates with external services.

      • mcp (dict) --

        The configuration for the Model Context Protocol (MCP). This protocol enables communication between Amazon Bedrock Agent and external tools.

        • supportedVersions (list) --

          The supported versions of the Model Context Protocol. This field specifies which versions of the protocol the gateway can use.

          • (string) --

        • instructions (string) --

          The instructions for using the Model Context Protocol gateway. These instructions provide guidance on how to interact with the gateway.

        • searchType (string) --

          The search type for the Model Context Protocol gateway. This field specifies how the gateway handles search operations.

    • authorizerType (string) --

      The updated authorizer type for the gateway.

    • authorizerConfiguration (dict) --

      The updated authorizer configuration for the gateway.

      • customJWTAuthorizer (dict) --

        The inbound JWT-based authorization, specifying how incoming requests should be authenticated.

        • discoveryUrl (string) --

          This URL is used to fetch OpenID Connect configuration or authorization server metadata for validating incoming tokens.

        • allowedAudience (list) --

          Represents individual audience values that are validated in the incoming JWT token validation process.

          • (string) --

        • allowedClients (list) --

          Represents individual client IDs that are validated in the incoming JWT token validation process.

          • (string) --

    • kmsKeyArn (string) --

      The updated ARN of the KMS key used to encrypt the gateway.

    • workloadIdentityDetails (dict) --

      The workload identity details for the updated gateway.

      • workloadIdentityArn (string) --

        The ARN associated with the workload identity.

    • exceptionLevel (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.