Skip to content
v2.274.0

GatewayTargetApiGatewayProps Struct ​

Properties for creating an API Gateway-based Gateway Target.

Example ​

ts
const gateway = new agentcore.Gateway(this, "MyGateway", {
  gatewayName: "my-gateway",
});

const api = new apigateway.RestApi(this, 'MyApi', {
  restApiName: 'my-api',
});

// Create a gateway target using the static factory method
const apiGatewayTarget = agentcore.GatewayTarget.forApiGateway(this, "MyApiGatewayTarget", {
  gatewayTargetName: "my-api-gateway-target",
  description: "Target for API Gateway REST API integration",
  gateway: gateway,
  restApi: api,
  apiGatewayToolConfiguration: {
    toolFilters: [
      {
        filterPath: "/pets/*",
        methods: [agentcore.ApiGatewayHttpMethod.GET, agentcore.ApiGatewayHttpMethod.POST],
      },
    ],
  },
  metadataConfiguration: {
    allowedRequestHeaders: ["X-User-Id"],
    allowedQueryParameters: ["limit"],
  },
});

Properties ​

apiGatewayToolConfigurationApiGatewayToolConfigurationapi_gateway_tool_configurationApiGatewayToolConfigurationapiGatewayToolConfigurationApiGatewayToolConfigurationApiGatewayToolConfigurationApiGatewayToolConfigurationApiGatewayToolConfigurationApiGatewayToolConfigurationrequired#
Tool configuration defining which operations to expose.
credentialProviderConfigurationsICredentialProviderConfig[]credential_provider_configurationstyping.List[ICredentialProviderConfig]credentialProviderConfigurationsList<ICredentialProviderConfig>CredentialProviderConfigurationsICredentialProviderConfig[]CredentialProviderConfigurations*[]ICredentialProviderConfig#
Credential providers for authentication API Gateway targets support IAM and API key authentication.

Default: Empty array (service handles IAM automatically)

descriptionstringdescriptionstrdescriptionStringDescriptionstringDescription*string#
Optional description for the gateway target The description can have up to 200 characters.

Default: No description

gatewayIGatewaygatewayIGatewaygatewayIGatewayGatewayIGatewayGatewayIGatewayrequired#
The gateway this target belongs to [disable-awslint:prefer-ref-interface].
gatewayTargetNamestringgateway_target_namestrgatewayTargetNameStringGatewayTargetNamestringGatewayTargetName*string#
The name of the gateway target The name must be unique within the gateway Pattern: ^([0-9a-zA-Z][-]?){1,100}$.

Default: auto generate

metadataConfigurationMetadataConfigurationmetadata_configurationMetadataConfigurationmetadataConfigurationMetadataConfigurationMetadataConfigurationMetadataConfigurationMetadataConfigurationMetadataConfiguration#
Metadata configuration for passing headers and query parameters Allows you to pass additional context through headers and query parameters.

Default: No metadata configuration

restApiIRestApirest_apiIRestApirestApiIRestApiRestApiIRestApiRestApiIRestApirequired#
The REST API to integrate with Must be in the same account and region as the gateway [disable-awslint:prefer-ref-interface].
stagestringstagestrstageStringStagestringStage*string#
The stage name of the REST API.

Default: Uses the deployment stage from the RestApi (restApi.deploymentStage.stageName)