@aws-sdk/client-bedrock-agentcore-control 3.1070.0 → 3.1071.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. package/README.md +42 -0
  2. package/dist-cjs/index.js +143 -1
  3. package/dist-cjs/schemas/schemas_0.js +475 -94
  4. package/dist-es/BedrockAgentCoreControl.js +16 -0
  5. package/dist-es/commands/CreateHarnessEndpointCommand.js +16 -0
  6. package/dist-es/commands/DeleteHarnessEndpointCommand.js +16 -0
  7. package/dist-es/commands/GetHarnessEndpointCommand.js +16 -0
  8. package/dist-es/commands/ListHarnessEndpointsCommand.js +16 -0
  9. package/dist-es/commands/ListHarnessVersionsCommand.js +16 -0
  10. package/dist-es/commands/UpdateHarnessEndpointCommand.js +16 -0
  11. package/dist-es/commands/index.js +6 -0
  12. package/dist-es/models/enums.js +43 -0
  13. package/dist-es/pagination/ListHarnessEndpointsPaginator.js +4 -0
  14. package/dist-es/pagination/ListHarnessVersionsPaginator.js +4 -0
  15. package/dist-es/pagination/index.js +2 -0
  16. package/dist-es/schemas/schemas_0.js +435 -94
  17. package/dist-types/BedrockAgentCoreControl.d.ts +56 -0
  18. package/dist-types/BedrockAgentCoreControlClient.d.ts +8 -2
  19. package/dist-types/commands/CreateAgentRuntimeCommand.d.ts +10 -0
  20. package/dist-types/commands/CreateGatewayCommand.d.ts +43 -0
  21. package/dist-types/commands/CreateGatewayTargetCommand.d.ts +139 -1
  22. package/dist-types/commands/CreateHarnessCommand.d.ts +51 -2
  23. package/dist-types/commands/CreateHarnessEndpointCommand.d.ts +116 -0
  24. package/dist-types/commands/CreateMemoryCommand.d.ts +1 -0
  25. package/dist-types/commands/CreatePaymentManagerCommand.d.ts +20 -0
  26. package/dist-types/commands/CreatePolicyCommand.d.ts +8 -0
  27. package/dist-types/commands/CreateRegistryCommand.d.ts +11 -1
  28. package/dist-types/commands/DeleteHarnessCommand.d.ts +27 -1
  29. package/dist-types/commands/DeleteHarnessEndpointCommand.d.ts +108 -0
  30. package/dist-types/commands/DeletePolicyCommand.d.ts +4 -0
  31. package/dist-types/commands/DeleteRegistryCommand.d.ts +1 -1
  32. package/dist-types/commands/GetAgentRuntimeCommand.d.ts +10 -0
  33. package/dist-types/commands/GetGatewayCommand.d.ts +26 -0
  34. package/dist-types/commands/GetGatewayTargetCommand.d.ts +69 -0
  35. package/dist-types/commands/GetHarnessCommand.d.ts +28 -2
  36. package/dist-types/commands/GetHarnessEndpointCommand.d.ts +104 -0
  37. package/dist-types/commands/GetMemoryCommand.d.ts +1 -0
  38. package/dist-types/commands/GetPaymentManagerCommand.d.ts +10 -0
  39. package/dist-types/commands/GetPolicyCommand.d.ts +4 -0
  40. package/dist-types/commands/GetPolicySummaryCommand.d.ts +1 -0
  41. package/dist-types/commands/GetRegistryCommand.d.ts +11 -1
  42. package/dist-types/commands/ListGatewayTargetsCommand.d.ts +12 -0
  43. package/dist-types/commands/ListHarnessEndpointsCommand.d.ts +108 -0
  44. package/dist-types/commands/ListHarnessVersionsCommand.d.ts +105 -0
  45. package/dist-types/commands/ListHarnessesCommand.d.ts +3 -2
  46. package/dist-types/commands/ListMemoriesCommand.d.ts +1 -0
  47. package/dist-types/commands/ListPoliciesCommand.d.ts +4 -0
  48. package/dist-types/commands/ListPolicyGenerationAssetsCommand.d.ts +3 -0
  49. package/dist-types/commands/ListPolicySummariesCommand.d.ts +1 -0
  50. package/dist-types/commands/ListRegistriesCommand.d.ts +1 -1
  51. package/dist-types/commands/ListRegistryRecordsCommand.d.ts +2 -1
  52. package/dist-types/commands/ListTagsForResourceCommand.d.ts +1 -1
  53. package/dist-types/commands/SetTokenVaultCMKCommand.d.ts +1 -1
  54. package/dist-types/commands/SubmitRegistryRecordForApprovalCommand.d.ts +1 -1
  55. package/dist-types/commands/SynchronizeGatewayTargetsCommand.d.ts +69 -0
  56. package/dist-types/commands/TagResourceCommand.d.ts +1 -1
  57. package/dist-types/commands/UntagResourceCommand.d.ts +1 -1
  58. package/dist-types/commands/UpdateAgentRuntimeCommand.d.ts +10 -0
  59. package/dist-types/commands/UpdateGatewayCommand.d.ts +51 -0
  60. package/dist-types/commands/UpdateGatewayTargetCommand.d.ts +139 -1
  61. package/dist-types/commands/UpdateHarnessCommand.d.ts +51 -2
  62. package/dist-types/commands/UpdateHarnessEndpointCommand.d.ts +113 -0
  63. package/dist-types/commands/UpdateMemoryCommand.d.ts +1 -0
  64. package/dist-types/commands/UpdatePaymentManagerCommand.d.ts +10 -0
  65. package/dist-types/commands/UpdatePolicyCommand.d.ts +8 -0
  66. package/dist-types/commands/UpdateRegistryCommand.d.ts +21 -1
  67. package/dist-types/commands/UpdateRegistryRecordCommand.d.ts +1 -1
  68. package/dist-types/commands/UpdateRegistryRecordStatusCommand.d.ts +1 -1
  69. package/dist-types/commands/index.d.ts +6 -0
  70. package/dist-types/models/enums.d.ts +99 -0
  71. package/dist-types/models/models_0.d.ts +904 -1144
  72. package/dist-types/models/models_1.d.ts +4595 -4209
  73. package/dist-types/models/models_2.d.ts +883 -6
  74. package/dist-types/pagination/ListHarnessEndpointsPaginator.d.ts +7 -0
  75. package/dist-types/pagination/ListHarnessVersionsPaginator.d.ts +7 -0
  76. package/dist-types/pagination/index.d.ts +2 -0
  77. package/dist-types/schemas/schemas_0.d.ts +46 -0
  78. package/dist-types/ts3.4/BedrockAgentCoreControl.d.ts +116 -0
  79. package/dist-types/ts3.4/BedrockAgentCoreControlClient.d.ts +36 -0
  80. package/dist-types/ts3.4/commands/CreateHarnessCommand.d.ts +1 -1
  81. package/dist-types/ts3.4/commands/CreateHarnessEndpointCommand.d.ts +53 -0
  82. package/dist-types/ts3.4/commands/CreateRegistryCommand.d.ts +1 -1
  83. package/dist-types/ts3.4/commands/DeleteHarnessCommand.d.ts +1 -1
  84. package/dist-types/ts3.4/commands/DeleteHarnessEndpointCommand.d.ts +53 -0
  85. package/dist-types/ts3.4/commands/DeleteRegistryCommand.d.ts +1 -1
  86. package/dist-types/ts3.4/commands/GetHarnessCommand.d.ts +1 -1
  87. package/dist-types/ts3.4/commands/GetHarnessEndpointCommand.d.ts +53 -0
  88. package/dist-types/ts3.4/commands/GetRegistryCommand.d.ts +1 -1
  89. package/dist-types/ts3.4/commands/ListHarnessEndpointsCommand.d.ts +53 -0
  90. package/dist-types/ts3.4/commands/ListHarnessVersionsCommand.d.ts +53 -0
  91. package/dist-types/ts3.4/commands/ListHarnessesCommand.d.ts +1 -1
  92. package/dist-types/ts3.4/commands/ListRegistriesCommand.d.ts +1 -1
  93. package/dist-types/ts3.4/commands/ListRegistryRecordsCommand.d.ts +2 -4
  94. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +1 -1
  95. package/dist-types/ts3.4/commands/SetTokenVaultCMKCommand.d.ts +1 -1
  96. package/dist-types/ts3.4/commands/SubmitRegistryRecordForApprovalCommand.d.ts +1 -1
  97. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +1 -1
  98. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +1 -1
  99. package/dist-types/ts3.4/commands/UpdateHarnessCommand.d.ts +1 -1
  100. package/dist-types/ts3.4/commands/UpdateHarnessEndpointCommand.d.ts +53 -0
  101. package/dist-types/ts3.4/commands/UpdateRegistryCommand.d.ts +1 -1
  102. package/dist-types/ts3.4/commands/UpdateRegistryRecordCommand.d.ts +1 -1
  103. package/dist-types/ts3.4/commands/UpdateRegistryRecordStatusCommand.d.ts +1 -1
  104. package/dist-types/ts3.4/commands/index.d.ts +6 -0
  105. package/dist-types/ts3.4/models/enums.d.ts +56 -0
  106. package/dist-types/ts3.4/models/models_0.d.ts +269 -402
  107. package/dist-types/ts3.4/models/models_1.d.ts +447 -211
  108. package/dist-types/ts3.4/models/models_2.d.ts +262 -3
  109. package/dist-types/ts3.4/pagination/ListHarnessEndpointsPaginator.d.ts +11 -0
  110. package/dist-types/ts3.4/pagination/ListHarnessVersionsPaginator.d.ts +11 -0
  111. package/dist-types/ts3.4/pagination/index.d.ts +2 -0
  112. package/dist-types/ts3.4/schemas/schemas_0.d.ts +46 -0
  113. package/package.json +3 -3
@@ -1,5 +1,5 @@
1
1
  import type { DocumentType as __DocumentType } from "@smithy/types";
2
- import type { AgentManagedRuntimeType, AgentRuntimeEndpointStatus, AgentRuntimeStatus, ApiKeyCredentialLocation, AuthorizerType, BrowserEnterprisePolicyType, BrowserNetworkMode, BrowserProfileStatus, BrowserStatus, ClaimMatchOperatorType, CodeInterpreterNetworkMode, CodeInterpreterStatus, ConfigurationBundleStatus, CredentialProviderType, DatasetSchemaType, DatasetStatus, DraftStatus, EndpointIpAddressType, EvaluatorLevel, EvaluatorStatus, EvaluatorType, ExceptionLevel, GatewayInterceptionPoint, GatewayPolicyEngineMode, GatewayProtocolType, GatewayRuleStatus, GatewayStatus, HarnessBedrockApiFormat, HarnessOpenAiApiFormat, HarnessStatus, HarnessToolType, HarnessTruncationStrategy, InboundTokenClaimValueType, IncludedData, KeyType, ListingMode, NetworkMode, OAuthGrantType, PrincipalMatchOperator, ResourceType, RestApiMethod, SearchType, SecretSourceType, ServerProtocol, TargetStatus } from "./enums";
2
+ import type { AgentManagedRuntimeType, AgentRuntimeEndpointStatus, AgentRuntimeStatus, ApiKeyCredentialLocation, AuthorizerType, BrowserEnterprisePolicyType, BrowserNetworkMode, BrowserProfileStatus, BrowserStatus, ClaimMatchOperatorType, CodeInterpreterNetworkMode, CodeInterpreterStatus, ConfigurationBundleStatus, CredentialProviderType, DatasetSchemaType, DatasetStatus, DraftStatus, EndpointIpAddressType, EvaluatorLevel, EvaluatorStatus, EvaluatorType, ExceptionLevel, GatewayInterceptionPoint, GatewayPolicyEngineMode, GatewayProtocolType, GatewayRuleStatus, GatewayStatus, HarnessBedrockApiFormat, HarnessEndpointStatus, HarnessManagedMemoryStrategyType, HarnessOpenAiApiFormat, InboundTokenClaimValueType, IncludedData, InterceptorPayloadExclusion, KeyType, ListingMode, NetworkMode, OAuthGrantType, PassthroughProtocolType, PrincipalMatchOperator, ResourceType, RestApiMethod, SearchType, SecretSourceType, ServerProtocol, TargetStatus, TargetType, WafFailureMode } from "./enums";
3
3
  /**
4
4
  * <p>The agent card definition for an A2A descriptor. Contains the schema version and inline content for the agent card.</p>
5
5
  * @public
@@ -909,6 +909,33 @@ export declare namespace AgentRuntimeArtifact {
909
909
  _: (name: string, value: any) => T;
910
910
  }
911
911
  }
912
+ /**
913
+ * <p>A hosting environment whose workloads are allowed to invoke the target. At launch, the only supported hosting environment is AgentCore Gateway.</p>
914
+ * @public
915
+ */
916
+ export interface HostingEnvironment {
917
+ /**
918
+ * <p>The Amazon Resource Name (ARN) of the hosting environment.</p>
919
+ * @public
920
+ */
921
+ arn: string | undefined;
922
+ }
923
+ /**
924
+ * <p>The configuration that restricts which workloads in the request's identity chain are allowed to invoke the target, identified by their hosting environments and workload identities. At launch, this is supported only for AgentCore Runtime targets, and the allowed workloads are AgentCore Gateways.</p>
925
+ * @public
926
+ */
927
+ export interface AllowedWorkloadConfiguration {
928
+ /**
929
+ * <p>The list of hosting environments whose workloads are allowed to invoke the target. At launch, the only supported hosting environment is AgentCore Gateway.</p>
930
+ * @public
931
+ */
932
+ hostingEnvironments?: HostingEnvironment[] | undefined;
933
+ /**
934
+ * <p>The list of workload identities that are allowed to invoke the target.</p>
935
+ * @public
936
+ */
937
+ workloadIdentities?: string[] | undefined;
938
+ }
912
939
  /**
913
940
  * <p>The value or values to match for.</p> <ul> <li> <p>Include a <code>matchValueString</code> with the <code>EQUALS</code> operator to specify a string that matches the claim field value.</p> </li> <li> <p>Include a <code>matchValueArray</code> to specify an array of string values. You can use the following operators:</p> <ul> <li> <p>Use <code>CONTAINS</code> to yield a match if the claim field value is in the array.</p> </li> <li> <p>Use <code>CONTAINS_ANY</code> to yield a match if the claim field value contains any of the strings in the array.</p> </li> </ul> </li> </ul>
914
941
  * @public
@@ -1161,6 +1188,11 @@ export interface CustomJWTAuthorizerConfiguration {
1161
1188
  * @public
1162
1189
  */
1163
1190
  privateEndpointOverrides?: PrivateEndpointOverride[] | undefined;
1191
+ /**
1192
+ * <p>The configuration that restricts which workloads in the request's identity chain are allowed to invoke the target, identified by their hosting environments and workload identities. At launch, this is supported only for AgentCore Runtime targets, and the allowed workloads are AgentCore Gateways.</p>
1193
+ * @public
1194
+ */
1195
+ allowedWorkloadConfiguration?: AllowedWorkloadConfiguration | undefined;
1164
1196
  }
1165
1197
  /**
1166
1198
  * <p>Represents inbound authorization configuration options used to authenticate incoming requests. </p>
@@ -1931,17 +1963,17 @@ export interface AgentSkillsDescriptor {
1931
1963
  skillDefinition?: SkillDefinition | undefined;
1932
1964
  }
1933
1965
  /**
1934
- * <p>Contains a reference to a secret stored in AWS Secrets Manager.</p>
1966
+ * <p>Contains a reference to a secret stored in Amazon Web Services Secrets Manager.</p>
1935
1967
  * @public
1936
1968
  */
1937
1969
  export interface SecretReference {
1938
1970
  /**
1939
- * <p>The ID of the AWS Secrets Manager secret that stores the secret value.</p>
1971
+ * <p>The ID of the Amazon Web Services Secrets Manager secret that stores the secret value.</p>
1940
1972
  * @public
1941
1973
  */
1942
1974
  secretId: string | undefined;
1943
1975
  /**
1944
- * <p>The JSON key used to extract the secret value from the AWS Secrets Manager secret.</p>
1976
+ * <p>The JSON key used to extract the secret value from the Amazon Web Services Secrets Manager secret.</p>
1945
1977
  * @public
1946
1978
  */
1947
1979
  jsonKey: string | undefined;
@@ -1961,12 +1993,12 @@ export interface CreateApiKeyCredentialProviderRequest {
1961
1993
  */
1962
1994
  apiKey?: string | undefined;
1963
1995
  /**
1964
- * <p>A reference to the AWS 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 <code>apiKeySecretSource</code> is set to <code>EXTERNAL</code>.</p>
1996
+ * <p>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 <code>apiKeySecretSource</code> is set to <code>EXTERNAL</code>.</p>
1965
1997
  * @public
1966
1998
  */
1967
1999
  apiKeySecretConfig?: SecretReference | undefined;
1968
2000
  /**
1969
- * <p>The source type of the API key secret. Use <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if you manage the secret yourself in AWS Secrets Manager.</p>
2001
+ * <p>The source type of the API key secret. Use <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if you manage the secret yourself in Amazon Web Services Secrets Manager.</p>
1970
2002
  * @public
1971
2003
  */
1972
2004
  apiKeySecretSource?: SecretSourceType | undefined;
@@ -1977,12 +2009,12 @@ export interface CreateApiKeyCredentialProviderRequest {
1977
2009
  tags?: Record<string, string> | undefined;
1978
2010
  }
1979
2011
  /**
1980
- * <p>Contains information about a secret in AWS Secrets Manager.</p>
2012
+ * <p>Contains information about a secret in Amazon Web Services Secrets Manager.</p>
1981
2013
  * @public
1982
2014
  */
1983
2015
  export interface Secret {
1984
2016
  /**
1985
- * <p>The Amazon Resource Name (ARN) of the secret in AWS Secrets Manager.</p>
2017
+ * <p>The Amazon Resource Name (ARN) of the secret in Amazon Web Services Secrets Manager.</p>
1986
2018
  * @public
1987
2019
  */
1988
2020
  secretArn: string | undefined;
@@ -1997,12 +2029,12 @@ export interface CreateApiKeyCredentialProviderResponse {
1997
2029
  */
1998
2030
  apiKeySecretArn: Secret | undefined;
1999
2031
  /**
2000
- * <p>The JSON key used to extract the API key value from the AWS Secrets Manager secret.</p>
2032
+ * <p>The JSON key used to extract the API key value from the Amazon Web Services Secrets Manager secret.</p>
2001
2033
  * @public
2002
2034
  */
2003
2035
  apiKeySecretJsonKey?: string | undefined;
2004
2036
  /**
2005
- * <p>The source type of the API key secret. Either <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if managed by the user in AWS Secrets Manager.</p>
2037
+ * <p>The source type of the API key secret. Either <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if managed by the user in Amazon Web Services Secrets Manager.</p>
2006
2038
  * @public
2007
2039
  */
2008
2040
  apiKeySecretSource?: SecretSourceType | undefined;
@@ -2047,17 +2079,17 @@ export interface GetApiKeyCredentialProviderRequest {
2047
2079
  */
2048
2080
  export interface GetApiKeyCredentialProviderResponse {
2049
2081
  /**
2050
- * <p>The Amazon Resource Name (ARN) of the API key secret in AWS Secrets Manager.</p>
2082
+ * <p>The Amazon Resource Name (ARN) of the API key secret in Amazon Web Services Secrets Manager.</p>
2051
2083
  * @public
2052
2084
  */
2053
2085
  apiKeySecretArn: Secret | undefined;
2054
2086
  /**
2055
- * <p>The JSON key used to extract the API key value from the AWS Secrets Manager secret.</p>
2087
+ * <p>The JSON key used to extract the API key value from the Amazon Web Services Secrets Manager secret.</p>
2056
2088
  * @public
2057
2089
  */
2058
2090
  apiKeySecretJsonKey?: string | undefined;
2059
2091
  /**
2060
- * <p>The source type of the API key secret. Either <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if managed by the user in AWS Secrets Manager.</p>
2092
+ * <p>The source type of the API key secret. Either <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if managed by the user in Amazon Web Services Secrets Manager.</p>
2061
2093
  * @public
2062
2094
  */
2063
2095
  apiKeySecretSource?: SecretSourceType | undefined;
@@ -2153,12 +2185,12 @@ export interface UpdateApiKeyCredentialProviderRequest {
2153
2185
  */
2154
2186
  apiKey?: string | undefined;
2155
2187
  /**
2156
- * <p>A reference to the AWS 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 <code>apiKeySecretSource</code> is set to <code>EXTERNAL</code>.</p>
2188
+ * <p>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 <code>apiKeySecretSource</code> is set to <code>EXTERNAL</code>.</p>
2157
2189
  * @public
2158
2190
  */
2159
2191
  apiKeySecretConfig?: SecretReference | undefined;
2160
2192
  /**
2161
- * <p>The source type of the API key secret. Use <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if you manage the secret yourself in AWS Secrets Manager.</p>
2193
+ * <p>The source type of the API key secret. Use <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if you manage the secret yourself in Amazon Web Services Secrets Manager.</p>
2162
2194
  * @public
2163
2195
  */
2164
2196
  apiKeySecretSource?: SecretSourceType | undefined;
@@ -2168,17 +2200,17 @@ export interface UpdateApiKeyCredentialProviderRequest {
2168
2200
  */
2169
2201
  export interface UpdateApiKeyCredentialProviderResponse {
2170
2202
  /**
2171
- * <p>The Amazon Resource Name (ARN) of the API key secret in AWS Secrets Manager.</p>
2203
+ * <p>The Amazon Resource Name (ARN) of the API key secret in Amazon Web Services Secrets Manager.</p>
2172
2204
  * @public
2173
2205
  */
2174
2206
  apiKeySecretArn: Secret | undefined;
2175
2207
  /**
2176
- * <p>The JSON key used to extract the API key value from the AWS Secrets Manager secret.</p>
2208
+ * <p>The JSON key used to extract the API key value from the Amazon Web Services Secrets Manager secret.</p>
2177
2209
  * @public
2178
2210
  */
2179
2211
  apiKeySecretJsonKey?: string | undefined;
2180
2212
  /**
2181
- * <p>The source type of the API key secret. Either <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if managed by the user in AWS Secrets Manager.</p>
2213
+ * <p>The source type of the API key secret. Either <code>MANAGED</code> if the secret is managed by the service, or <code>EXTERNAL</code> if managed by the user in Amazon Web Services Secrets Manager.</p>
2182
2214
  * @public
2183
2215
  */
2184
2216
  apiKeySecretSource?: SecretSourceType | undefined;
@@ -4881,6 +4913,50 @@ export interface UpdateEvaluatorResponse {
4881
4913
  */
4882
4914
  status: EvaluatorStatus | undefined;
4883
4915
  }
4916
+ /**
4917
+ * <p>A selector that identifies a payload field to exclude from the interceptor input.</p>
4918
+ * @public
4919
+ */
4920
+ export type InterceptorPayloadExclusionSelector = InterceptorPayloadExclusionSelector.FieldMember | InterceptorPayloadExclusionSelector.$UnknownMember;
4921
+ /**
4922
+ * @public
4923
+ */
4924
+ export declare namespace InterceptorPayloadExclusionSelector {
4925
+ /**
4926
+ * <p>The field to exclude from the interceptor input.</p>
4927
+ * @public
4928
+ */
4929
+ interface FieldMember {
4930
+ field: InterceptorPayloadExclusion;
4931
+ $unknown?: never;
4932
+ }
4933
+ /**
4934
+ * @public
4935
+ */
4936
+ interface $UnknownMember {
4937
+ field?: never;
4938
+ $unknown: [string, any];
4939
+ }
4940
+ /**
4941
+ * @deprecated unused in schema-serde mode.
4942
+ *
4943
+ */
4944
+ interface Visitor<T> {
4945
+ field: (value: InterceptorPayloadExclusion) => T;
4946
+ _: (name: string, value: any) => T;
4947
+ }
4948
+ }
4949
+ /**
4950
+ * <p>The filter that controls which fields of the request or response payload are included in the input to the interceptor.</p>
4951
+ * @public
4952
+ */
4953
+ export interface InterceptorPayloadFilter {
4954
+ /**
4955
+ * <p>The list of selectors that identify payload fields to exclude from the interceptor input.</p>
4956
+ * @public
4957
+ */
4958
+ exclude: InterceptorPayloadExclusionSelector[] | undefined;
4959
+ }
4884
4960
  /**
4885
4961
  * <p>The input configuration of the interceptor.</p>
4886
4962
  * @public
@@ -4891,6 +4967,11 @@ export interface InterceptorInputConfiguration {
4891
4967
  * @public
4892
4968
  */
4893
4969
  passRequestHeaders: boolean | undefined;
4970
+ /**
4971
+ * <p>The filter that determines which parts of the request or response payload are passed as input to the interceptor.</p>
4972
+ * @public
4973
+ */
4974
+ payloadFilter?: InterceptorPayloadFilter | undefined;
4894
4975
  }
4895
4976
  /**
4896
4977
  * <p>The lambda configuration for the interceptor</p>
@@ -5129,6 +5210,39 @@ export interface CreateGatewayRequest {
5129
5210
  */
5130
5211
  tags?: Record<string, string> | undefined;
5131
5212
  }
5213
+ /**
5214
+ * <p>The Lambda configuration for custom transformations. This structure defines the Lambda function that the gateway invokes to transform data.</p>
5215
+ * @public
5216
+ */
5217
+ export interface LambdaTransformConfiguration {
5218
+ /**
5219
+ * <p>The Amazon Resource Name (ARN) of the Lambda function. This function is invoked by the gateway to transform data.</p>
5220
+ * @public
5221
+ */
5222
+ arn?: string | undefined;
5223
+ }
5224
+ /**
5225
+ * <p>The configuration for custom transformations applied to requests and responses through the gateway. This structure defines how the gateway transforms data.</p>
5226
+ * @public
5227
+ */
5228
+ export interface CustomTransformConfiguration {
5229
+ /**
5230
+ * <p>The Lambda configuration for custom transformations. This configuration defines how the gateway uses a Lambda function to transform data.</p>
5231
+ * @public
5232
+ */
5233
+ lambda?: LambdaTransformConfiguration | undefined;
5234
+ }
5235
+ /**
5236
+ * <p>The Amazon Web Services WAF configuration for the gateway. This configuration controls how the gateway behaves when the associated web ACL cannot be evaluated.</p>
5237
+ * @public
5238
+ */
5239
+ export interface WafConfiguration {
5240
+ /**
5241
+ * <p>The failure mode that determines how the gateway handles requests when Amazon Web Services WAF is unreachable or times out. Valid values include:</p> <ul> <li> <p> <code>FAIL_CLOSE</code> - The gateway blocks requests when Amazon Web Services WAF cannot be evaluated.</p> </li> <li> <p> <code>FAIL_OPEN</code> - The gateway allows requests when Amazon Web Services WAF cannot be evaluated.</p> </li> </ul>
5242
+ * @public
5243
+ */
5244
+ failureMode?: WafFailureMode | undefined;
5245
+ }
5132
5246
  /**
5133
5247
  * @public
5134
5248
  */
@@ -5208,6 +5322,11 @@ export interface CreateGatewayResponse {
5208
5322
  * @public
5209
5323
  */
5210
5324
  kmsKeyArn?: string | undefined;
5325
+ /**
5326
+ * <p>The custom transformation configuration for the gateway. This configuration defines how the gateway transforms requests and responses.</p>
5327
+ * @public
5328
+ */
5329
+ customTransformConfiguration?: CustomTransformConfiguration | undefined;
5211
5330
  /**
5212
5331
  * <p>The list of interceptor configurations for the created gateway.</p>
5213
5332
  * @public
@@ -5228,6 +5347,16 @@ export interface CreateGatewayResponse {
5228
5347
  * @public
5229
5348
  */
5230
5349
  exceptionLevel?: ExceptionLevel | undefined;
5350
+ /**
5351
+ * <p>The Amazon Resource Name (ARN) of the Amazon Web Services WAF web ACL associated with the gateway.</p>
5352
+ * @public
5353
+ */
5354
+ webAclArn?: string | undefined;
5355
+ /**
5356
+ * <p>The Amazon Web Services WAF configuration for the gateway.</p>
5357
+ * @public
5358
+ */
5359
+ wafConfiguration?: WafConfiguration | undefined;
5231
5360
  }
5232
5361
  /**
5233
5362
  * @public
@@ -5348,6 +5477,11 @@ export interface GetGatewayResponse {
5348
5477
  * @public
5349
5478
  */
5350
5479
  kmsKeyArn?: string | undefined;
5480
+ /**
5481
+ * <p>The custom transformation configuration for the gateway. This configuration defines how the gateway transforms requests and responses.</p>
5482
+ * @public
5483
+ */
5484
+ customTransformConfiguration?: CustomTransformConfiguration | undefined;
5351
5485
  /**
5352
5486
  * <p>The interceptors configured on the gateway.</p>
5353
5487
  * @public
@@ -5368,6 +5502,16 @@ export interface GetGatewayResponse {
5368
5502
  * @public
5369
5503
  */
5370
5504
  exceptionLevel?: ExceptionLevel | undefined;
5505
+ /**
5506
+ * <p>The Amazon Resource Name (ARN) of the Amazon Web Services WAF web ACL associated with the gateway.</p>
5507
+ * @public
5508
+ */
5509
+ webAclArn?: string | undefined;
5510
+ /**
5511
+ * <p>The Amazon Web Services WAF configuration for the gateway.</p>
5512
+ * @public
5513
+ */
5514
+ wafConfiguration?: WafConfiguration | undefined;
5371
5515
  }
5372
5516
  /**
5373
5517
  * @public
@@ -5494,6 +5638,11 @@ export interface UpdateGatewayRequest {
5494
5638
  * @public
5495
5639
  */
5496
5640
  kmsKeyArn?: string | undefined;
5641
+ /**
5642
+ * <p>The updated custom transformation configuration for the gateway. This configuration defines how the gateway transforms requests and responses.</p>
5643
+ * @public
5644
+ */
5645
+ customTransformConfiguration?: CustomTransformConfiguration | undefined;
5497
5646
  /**
5498
5647
  * <p>The updated interceptor configurations for the gateway.</p>
5499
5648
  * @public
@@ -5509,6 +5658,11 @@ export interface UpdateGatewayRequest {
5509
5658
  * @public
5510
5659
  */
5511
5660
  exceptionLevel?: ExceptionLevel | undefined;
5661
+ /**
5662
+ * <p>The updated Amazon Web Services WAF configuration for the gateway.</p>
5663
+ * @public
5664
+ */
5665
+ wafConfiguration?: WafConfiguration | undefined;
5512
5666
  }
5513
5667
  /**
5514
5668
  * @public
@@ -5589,6 +5743,11 @@ export interface UpdateGatewayResponse {
5589
5743
  * @public
5590
5744
  */
5591
5745
  kmsKeyArn?: string | undefined;
5746
+ /**
5747
+ * <p>The custom transformation configuration for the gateway. This configuration defines how the gateway transforms requests and responses.</p>
5748
+ * @public
5749
+ */
5750
+ customTransformConfiguration?: CustomTransformConfiguration | undefined;
5592
5751
  /**
5593
5752
  * <p>The updated interceptor configurations for the gateway.</p>
5594
5753
  * @public
@@ -5609,6 +5768,16 @@ export interface UpdateGatewayResponse {
5609
5768
  * @public
5610
5769
  */
5611
5770
  exceptionLevel?: ExceptionLevel | undefined;
5771
+ /**
5772
+ * <p>The Amazon Resource Name (ARN) of the Amazon Web Services WAF web ACL associated with the gateway.</p>
5773
+ * @public
5774
+ */
5775
+ webAclArn?: string | undefined;
5776
+ /**
5777
+ * <p>The Amazon Web Services WAF configuration for the gateway.</p>
5778
+ * @public
5779
+ */
5780
+ wafConfiguration?: WafConfiguration | undefined;
5612
5781
  }
5613
5782
  /**
5614
5783
  * <p>A condition that matches requests based on the request path.</p>
@@ -6277,43 +6446,54 @@ export interface MetadataConfiguration {
6277
6446
  allowedResponseHeaders?: string[] | undefined;
6278
6447
  }
6279
6448
  /**
6280
- * <p>Configuration for an AgentCore Runtime target. Specifies the agent runtime to route requests to via HTTP.</p>
6449
+ * <p>The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.</p>
6281
6450
  * @public
6282
6451
  */
6283
- export interface RuntimeTargetConfiguration {
6452
+ export interface S3Configuration {
6284
6453
  /**
6285
- * <p>The Amazon Resource Name (ARN) of the AgentCore Runtime to route requests to.</p>
6454
+ * <p>The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.</p>
6286
6455
  * @public
6287
6456
  */
6288
- arn: string | undefined;
6457
+ uri?: string | undefined;
6289
6458
  /**
6290
- * <p>The qualifier for the agent runtime, used to target a specific endpoint version. If not specified, the default endpoint is used.</p>
6459
+ * <p>The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.</p>
6291
6460
  * @public
6292
6461
  */
6293
- qualifier?: string | undefined;
6462
+ bucketOwnerAccountId?: string | undefined;
6294
6463
  }
6295
6464
  /**
6296
- * <p>The HTTP target configuration for a gateway target. Contains the configuration for HTTP-based target endpoints.</p>
6465
+ * <p>Configuration for API schema.</p>
6297
6466
  * @public
6298
6467
  */
6299
- export type HttpTargetConfiguration = HttpTargetConfiguration.AgentcoreRuntimeMember | HttpTargetConfiguration.$UnknownMember;
6468
+ export type ApiSchemaConfiguration = ApiSchemaConfiguration.InlinePayloadMember | ApiSchemaConfiguration.S3Member | ApiSchemaConfiguration.$UnknownMember;
6300
6469
  /**
6301
6470
  * @public
6302
6471
  */
6303
- export declare namespace HttpTargetConfiguration {
6472
+ export declare namespace ApiSchemaConfiguration {
6304
6473
  /**
6305
- * <p>The AgentCore Runtime target configuration for HTTP-based communication with an agent runtime.</p>
6474
+ * <p>The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.</p>
6306
6475
  * @public
6307
6476
  */
6308
- interface AgentcoreRuntimeMember {
6309
- agentcoreRuntime: RuntimeTargetConfiguration;
6477
+ interface S3Member {
6478
+ s3: S3Configuration;
6479
+ inlinePayload?: never;
6480
+ $unknown?: never;
6481
+ }
6482
+ /**
6483
+ * <p>The inline payload containing the API schema definition.</p>
6484
+ * @public
6485
+ */
6486
+ interface InlinePayloadMember {
6487
+ s3?: never;
6488
+ inlinePayload: string;
6310
6489
  $unknown?: never;
6311
6490
  }
6312
6491
  /**
6313
6492
  * @public
6314
6493
  */
6315
6494
  interface $UnknownMember {
6316
- agentcoreRuntime?: never;
6495
+ s3?: never;
6496
+ inlinePayload?: never;
6317
6497
  $unknown: [string, any];
6318
6498
  }
6319
6499
  /**
@@ -6321,138 +6501,118 @@ export declare namespace HttpTargetConfiguration {
6321
6501
  *
6322
6502
  */
6323
6503
  interface Visitor<T> {
6324
- agentcoreRuntime: (value: RuntimeTargetConfiguration) => T;
6504
+ s3: (value: S3Configuration) => T;
6505
+ inlinePayload: (value: string) => T;
6325
6506
  _: (name: string, value: any) => T;
6326
6507
  }
6327
6508
  }
6328
6509
  /**
6329
- * <p>Specifies which operations from an API Gateway REST API are exposed as tools. Tool names and descriptions are derived from the operationId and description fields in the API's exported OpenAPI specification.</p>
6510
+ * <p>The API schema configuration for an HTTP target. This schema defines the API structure that the target exposes.</p>
6330
6511
  * @public
6331
6512
  */
6332
- export interface ApiGatewayToolFilter {
6513
+ export interface HttpApiSchemaConfiguration {
6333
6514
  /**
6334
- * <p>Resource path to match in the REST API. Supports exact paths (for example, <code>/pets</code>) or wildcard paths (for example, <code>/pets/*</code> to match all paths under <code>/pets</code>). Must match existing paths in the REST API.</p>
6335
- * @public
6336
- */
6337
- filterPath: string | undefined;
6338
- /**
6339
- * <p>The methods to filter for.</p>
6515
+ * <p>Configuration for API schema.</p>
6340
6516
  * @public
6341
6517
  */
6342
- methods: RestApiMethod[] | undefined;
6518
+ source: ApiSchemaConfiguration | undefined;
6343
6519
  }
6344
6520
  /**
6345
- * <p>Settings to override configurations for a tool.</p>
6521
+ * <p>Configuration for an AgentCore Runtime target. Specifies the agent runtime to route requests to via HTTP.</p>
6346
6522
  * @public
6347
6523
  */
6348
- export interface ApiGatewayToolOverride {
6349
- /**
6350
- * <p>The name of tool. Identifies the tool in the Model Context Protocol.</p>
6351
- * @public
6352
- */
6353
- name: string | undefined;
6524
+ export interface RuntimeTargetConfiguration {
6354
6525
  /**
6355
- * <p>The description of the tool. Provides information about the purpose and usage of the tool. If not provided, uses the description from the API's OpenAPI specification.</p>
6526
+ * <p>The Amazon Resource Name (ARN) of the AgentCore Runtime to route requests to.</p>
6356
6527
  * @public
6357
6528
  */
6358
- description?: string | undefined;
6529
+ arn: string | undefined;
6359
6530
  /**
6360
- * <p>Resource path in the REST API (e.g., <code>/pets</code>). Must explicitly match an existing path in the REST API.</p>
6531
+ * <p>The qualifier for the agent runtime, used to target a specific endpoint version. If not specified, the default endpoint is used.</p>
6361
6532
  * @public
6362
6533
  */
6363
- path: string | undefined;
6534
+ qualifier?: string | undefined;
6364
6535
  /**
6365
- * <p>The HTTP method to expose for the specified path.</p>
6536
+ * <p>The API schema configuration that defines the structure of the runtime target's API.</p>
6366
6537
  * @public
6367
6538
  */
6368
- method: RestApiMethod | undefined;
6539
+ schema?: HttpApiSchemaConfiguration | undefined;
6369
6540
  }
6370
6541
  /**
6371
- * <p>The configuration for defining REST API tool filters and overrides for the gateway target.</p>
6542
+ * <p>The configuration for session-sticky routing to a target. Session stickiness routes requests that share a session identifier to the same target.</p>
6372
6543
  * @public
6373
6544
  */
6374
- export interface ApiGatewayToolConfiguration {
6545
+ export interface StickinessConfiguration {
6375
6546
  /**
6376
- * <p>A list of explicit tool definitions with optional custom names and descriptions.</p>
6547
+ * <p>The expression that identifies where to extract the session identifier from the request (for example, <code>$context.header.x-session-id</code>).</p>
6377
6548
  * @public
6378
6549
  */
6379
- toolOverrides?: ApiGatewayToolOverride[] | undefined;
6550
+ identifier: string | undefined;
6380
6551
  /**
6381
- * <p>A list of path and method patterns to expose as tools using metadata from the REST API's OpenAPI specification.</p>
6552
+ * <p>The session stickiness timeout, in seconds. After this duration of inactivity, the session affinity expires. Valid values range from 1 to 86400.</p>
6382
6553
  * @public
6383
6554
  */
6384
- toolFilters: ApiGatewayToolFilter[] | undefined;
6555
+ timeout?: number | undefined;
6385
6556
  }
6386
6557
  /**
6387
- * <p>The configuration for an Amazon API Gateway target.</p>
6558
+ * <p>The configuration for an HTTP passthrough target. A passthrough target forwards requests directly to an external HTTP endpoint.</p>
6388
6559
  * @public
6389
6560
  */
6390
- export interface ApiGatewayTargetConfiguration {
6391
- /**
6392
- * <p>The ID of the API Gateway REST API.</p>
6393
- * @public
6394
- */
6395
- restApiId: string | undefined;
6561
+ export interface PassthroughTargetConfiguration {
6396
6562
  /**
6397
- * <p>The ID of the stage of the REST API to add as a target.</p>
6563
+ * <p>The HTTPS endpoint that the gateway forwards requests to for this passthrough target.</p>
6398
6564
  * @public
6399
6565
  */
6400
- stage: string | undefined;
6566
+ endpoint: string | undefined;
6401
6567
  /**
6402
- * <p>The configuration for defining REST API tool filters and overrides for the gateway target.</p>
6568
+ * The application protocol the passthrough target implements. Required for passthrough targets.
6403
6569
  * @public
6404
6570
  */
6405
- apiGatewayToolConfiguration: ApiGatewayToolConfiguration | undefined;
6406
- }
6407
- /**
6408
- * <p>The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.</p>
6409
- * @public
6410
- */
6411
- export interface S3Configuration {
6571
+ protocolType: PassthroughProtocolType | undefined;
6412
6572
  /**
6413
- * <p>The URI of the Amazon S3 object. This URI specifies the location of the object in Amazon S3.</p>
6573
+ * <p>The API schema configuration that defines the structure of the passthrough target's API.</p>
6414
6574
  * @public
6415
6575
  */
6416
- uri?: string | undefined;
6576
+ schema?: HttpApiSchemaConfiguration | undefined;
6417
6577
  /**
6418
- * <p>The account ID of the Amazon S3 bucket owner. This ID is used for cross-account access to the bucket.</p>
6578
+ * <p>The session stickiness configuration for the passthrough target. This configuration routes requests within the same session to the same target.</p>
6419
6579
  * @public
6420
6580
  */
6421
- bucketOwnerAccountId?: string | undefined;
6581
+ stickinessConfiguration?: StickinessConfiguration | undefined;
6422
6582
  }
6423
6583
  /**
6424
- * <p>The MCP tool schema configuration for an MCP server target. The tool schema must be aligned with the MCP specification.</p>
6584
+ * <p>The HTTP target configuration for a gateway target. Contains the configuration for HTTP-based target endpoints.</p>
6425
6585
  * @public
6426
6586
  */
6427
- export type McpToolSchemaConfiguration = McpToolSchemaConfiguration.InlinePayloadMember | McpToolSchemaConfiguration.S3Member | McpToolSchemaConfiguration.$UnknownMember;
6587
+ export type HttpTargetConfiguration = HttpTargetConfiguration.AgentcoreRuntimeMember | HttpTargetConfiguration.PassthroughMember | HttpTargetConfiguration.$UnknownMember;
6428
6588
  /**
6429
6589
  * @public
6430
6590
  */
6431
- export declare namespace McpToolSchemaConfiguration {
6591
+ export declare namespace HttpTargetConfiguration {
6432
6592
  /**
6433
- * <p>The Amazon S3 location of the tool schema. This location contains the schema definition file.</p>
6593
+ * <p>The AgentCore Runtime target configuration for HTTP-based communication with an agent runtime.</p>
6434
6594
  * @public
6435
6595
  */
6436
- interface S3Member {
6437
- s3: S3Configuration;
6438
- inlinePayload?: never;
6596
+ interface AgentcoreRuntimeMember {
6597
+ agentcoreRuntime: RuntimeTargetConfiguration;
6598
+ passthrough?: never;
6439
6599
  $unknown?: never;
6440
6600
  }
6441
6601
  /**
6442
- * <p>The inline payload containing the MCP tool schema definition.</p>
6602
+ * <p>The passthrough configuration for the HTTP target. A passthrough target forwards requests directly to an external HTTP endpoint.</p>
6443
6603
  * @public
6444
6604
  */
6445
- interface InlinePayloadMember {
6446
- s3?: never;
6447
- inlinePayload: string;
6605
+ interface PassthroughMember {
6606
+ agentcoreRuntime?: never;
6607
+ passthrough: PassthroughTargetConfiguration;
6448
6608
  $unknown?: never;
6449
6609
  }
6450
6610
  /**
6451
6611
  * @public
6452
6612
  */
6453
6613
  interface $UnknownMember {
6454
- s3?: never;
6455
- inlinePayload?: never;
6614
+ agentcoreRuntime?: never;
6615
+ passthrough?: never;
6456
6616
  $unknown: [string, any];
6457
6617
  }
6458
6618
  /**
@@ -6460,57 +6620,336 @@ export declare namespace McpToolSchemaConfiguration {
6460
6620
  *
6461
6621
  */
6462
6622
  interface Visitor<T> {
6463
- s3: (value: S3Configuration) => T;
6464
- inlinePayload: (value: string) => T;
6623
+ agentcoreRuntime: (value: RuntimeTargetConfiguration) => T;
6624
+ passthrough: (value: PassthroughTargetConfiguration) => T;
6465
6625
  _: (name: string, value: any) => T;
6466
6626
  }
6467
6627
  }
6468
6628
  /**
6469
- * <p>The target configuration for the MCP server.</p>
6629
+ * <p>The source identifying the inference connector.</p>
6470
6630
  * @public
6471
6631
  */
6472
- export interface McpServerTargetConfiguration {
6632
+ export interface InferenceConnectorSource {
6473
6633
  /**
6474
- * <p>The endpoint for the MCP server target configuration.</p>
6634
+ * <p>The identifier for the inference connector (for example, <code>bedrock-mantle</code>, <code>openai</code>, or <code>anthropic</code>).</p>
6475
6635
  * @public
6476
6636
  */
6477
- endpoint: string | undefined;
6637
+ connectorId: string | undefined;
6638
+ }
6639
+ /**
6640
+ * <p>The configuration for a connector-based inference target. This configuration uses a built-in connector that provides predefined rules for a large language model (LLM) provider.</p>
6641
+ * @public
6642
+ */
6643
+ export interface InferenceConnectorTargetConfiguration {
6478
6644
  /**
6479
- * <p>The tool schema configuration for the MCP server target. Supported only when the credential provider is configured with an authorization code grant type. Dynamic tool discovery/synchronization will be disabled when target is configured with mcpToolSchema.</p>
6645
+ * <p>The source configuration identifying which inference connector to use.</p>
6480
6646
  * @public
6481
6647
  */
6482
- mcpToolSchema?: McpToolSchemaConfiguration | undefined;
6648
+ source: InferenceConnectorSource | undefined;
6649
+ }
6650
+ /**
6651
+ * <p>The configuration that controls how a provider prefix is applied to model IDs during translation.</p>
6652
+ * @public
6653
+ */
6654
+ export interface ProviderPrefix {
6483
6655
  /**
6484
- * <p>The listing mode for the MCP server target configuration. MCP resources for default targets are cached at the control plane for faster access. MCP resources for dynamic targets will be dynamically retrieved when listing tools.</p>
6656
+ * <p>Whether clients can omit the provider prefix from model IDs. If <code>true</code>, the gateway accepts model IDs without the prefix and restores the full prefixed form before forwarding to the provider. The default is <code>false</code>.</p>
6485
6657
  * @public
6486
6658
  */
6487
- listingMode?: ListingMode | undefined;
6659
+ strip?: boolean | undefined;
6488
6660
  /**
6489
- * <p>Priority for resolving MCP server targets with shared resource URIs. Lower values take precedence. Defaults to 1000 when not set.</p>
6661
+ * <p>The single character that separates the provider prefix from the model name (for example, <code>.</code>). The default is <code>.</code>.</p>
6490
6662
  * @public
6491
6663
  */
6492
- resourcePriority?: number | undefined;
6664
+ separator?: string | undefined;
6493
6665
  }
6494
6666
  /**
6495
- * <p>Configuration for API schema.</p>
6667
+ * <p>The configuration that translates model IDs between client-facing names and provider model IDs.</p>
6496
6668
  * @public
6497
6669
  */
6498
- export type ApiSchemaConfiguration = ApiSchemaConfiguration.InlinePayloadMember | ApiSchemaConfiguration.S3Member | ApiSchemaConfiguration.$UnknownMember;
6670
+ export interface ModelMapping {
6671
+ /**
6672
+ * <p>The provider prefix configuration used for model ID translation.</p>
6673
+ * @public
6674
+ */
6675
+ providerPrefix?: ProviderPrefix | undefined;
6676
+ }
6499
6677
  /**
6678
+ * <p>A model entry that specifies a model supported for an inference operation.</p>
6500
6679
  * @public
6501
6680
  */
6502
- export declare namespace ApiSchemaConfiguration {
6681
+ export interface ModelEntry {
6503
6682
  /**
6504
- * <p>The Amazon S3 configuration for a gateway. This structure defines how the gateway accesses files in Amazon S3.</p>
6683
+ * <p>The model ID or glob pattern that identifies the model (for example, <code>anthropic.claude-opus-*</code> or <code>openai.gpt-oss-*</code>).</p>
6505
6684
  * @public
6506
6685
  */
6507
- interface S3Member {
6686
+ model: string | undefined;
6687
+ }
6688
+ /**
6689
+ * <p>The configuration for a specific inference operation, including its request path and the models that the operation supports.</p>
6690
+ * @public
6691
+ */
6692
+ export interface InferenceOperationConfiguration {
6693
+ /**
6694
+ * <p>The request path for this operation (for example, <code>/v1/messages</code> or <code>/v1/responses</code>).</p>
6695
+ * @public
6696
+ */
6697
+ path: string | undefined;
6698
+ /**
6699
+ * <p>The provider path to forward requests to, if it differs from the request path. For example, <code>/anthropic/v1/messages</code> when the provider expects a different path than the client-facing <code>/v1/messages</code>.</p>
6700
+ * @public
6701
+ */
6702
+ providerPath?: string | undefined;
6703
+ /**
6704
+ * <p>The list of models supported for this operation.</p>
6705
+ * @public
6706
+ */
6707
+ models?: ModelEntry[] | undefined;
6708
+ }
6709
+ /**
6710
+ * <p>The configuration for a provider-based inference target. This configuration explicitly defines the endpoint, model mapping, and operations used to route requests to a large language model (LLM) provider.</p>
6711
+ * @public
6712
+ */
6713
+ export interface InferenceProviderTargetConfiguration {
6714
+ /**
6715
+ * <p>The HTTPS endpoint of the inference provider that the gateway forwards requests to.</p>
6716
+ * @public
6717
+ */
6718
+ endpoint: string | undefined;
6719
+ /**
6720
+ * <p>The configuration that translates client-facing model IDs to the model IDs expected by the provider.</p>
6721
+ * @public
6722
+ */
6723
+ modelMapping?: ModelMapping | undefined;
6724
+ /**
6725
+ * <p>A list of per-operation configurations that map request paths to the models supported for each operation.</p>
6726
+ * @public
6727
+ */
6728
+ operations?: InferenceOperationConfiguration[] | undefined;
6729
+ }
6730
+ /**
6731
+ * <p>The configuration for an inference target. An inference target routes requests to a large language model (LLM) provider, either through a built-in connector or an explicitly configured provider.</p>
6732
+ * @public
6733
+ */
6734
+ export type InferenceTargetConfiguration = InferenceTargetConfiguration.ConnectorMember | InferenceTargetConfiguration.ProviderMember | InferenceTargetConfiguration.$UnknownMember;
6735
+ /**
6736
+ * @public
6737
+ */
6738
+ export declare namespace InferenceTargetConfiguration {
6739
+ /**
6740
+ * <p>The connector-based inference configuration. Use this option to route requests to an LLM provider through a built-in connector that includes predefined provider rules.</p>
6741
+ * @public
6742
+ */
6743
+ interface ConnectorMember {
6744
+ connector: InferenceConnectorTargetConfiguration;
6745
+ provider?: never;
6746
+ $unknown?: never;
6747
+ }
6748
+ /**
6749
+ * <p>The provider-based inference configuration. Use this option to explicitly configure the endpoint, model mapping, and operations for an LLM provider.</p>
6750
+ * @public
6751
+ */
6752
+ interface ProviderMember {
6753
+ connector?: never;
6754
+ provider: InferenceProviderTargetConfiguration;
6755
+ $unknown?: never;
6756
+ }
6757
+ /**
6758
+ * @public
6759
+ */
6760
+ interface $UnknownMember {
6761
+ connector?: never;
6762
+ provider?: never;
6763
+ $unknown: [string, any];
6764
+ }
6765
+ /**
6766
+ * @deprecated unused in schema-serde mode.
6767
+ *
6768
+ */
6769
+ interface Visitor<T> {
6770
+ connector: (value: InferenceConnectorTargetConfiguration) => T;
6771
+ provider: (value: InferenceProviderTargetConfiguration) => T;
6772
+ _: (name: string, value: any) => T;
6773
+ }
6774
+ }
6775
+ /**
6776
+ * <p>Specifies which operations from an API Gateway REST API are exposed as tools. Tool names and descriptions are derived from the operationId and description fields in the API's exported OpenAPI specification.</p>
6777
+ * @public
6778
+ */
6779
+ export interface ApiGatewayToolFilter {
6780
+ /**
6781
+ * <p>Resource path to match in the REST API. Supports exact paths (for example, <code>/pets</code>) or wildcard paths (for example, <code>/pets/*</code> to match all paths under <code>/pets</code>). Must match existing paths in the REST API.</p>
6782
+ * @public
6783
+ */
6784
+ filterPath: string | undefined;
6785
+ /**
6786
+ * <p>The methods to filter for.</p>
6787
+ * @public
6788
+ */
6789
+ methods: RestApiMethod[] | undefined;
6790
+ }
6791
+ /**
6792
+ * <p>Settings to override configurations for a tool.</p>
6793
+ * @public
6794
+ */
6795
+ export interface ApiGatewayToolOverride {
6796
+ /**
6797
+ * <p>The name of tool. Identifies the tool in the Model Context Protocol.</p>
6798
+ * @public
6799
+ */
6800
+ name: string | undefined;
6801
+ /**
6802
+ * <p>The description of the tool. Provides information about the purpose and usage of the tool. If not provided, uses the description from the API's OpenAPI specification.</p>
6803
+ * @public
6804
+ */
6805
+ description?: string | undefined;
6806
+ /**
6807
+ * <p>Resource path in the REST API (e.g., <code>/pets</code>). Must explicitly match an existing path in the REST API.</p>
6808
+ * @public
6809
+ */
6810
+ path: string | undefined;
6811
+ /**
6812
+ * <p>The HTTP method to expose for the specified path.</p>
6813
+ * @public
6814
+ */
6815
+ method: RestApiMethod | undefined;
6816
+ }
6817
+ /**
6818
+ * <p>The configuration for defining REST API tool filters and overrides for the gateway target.</p>
6819
+ * @public
6820
+ */
6821
+ export interface ApiGatewayToolConfiguration {
6822
+ /**
6823
+ * <p>A list of explicit tool definitions with optional custom names and descriptions.</p>
6824
+ * @public
6825
+ */
6826
+ toolOverrides?: ApiGatewayToolOverride[] | undefined;
6827
+ /**
6828
+ * <p>A list of path and method patterns to expose as tools using metadata from the REST API's OpenAPI specification.</p>
6829
+ * @public
6830
+ */
6831
+ toolFilters: ApiGatewayToolFilter[] | undefined;
6832
+ }
6833
+ /**
6834
+ * <p>The configuration for an Amazon API Gateway target.</p>
6835
+ * @public
6836
+ */
6837
+ export interface ApiGatewayTargetConfiguration {
6838
+ /**
6839
+ * <p>The ID of the API Gateway REST API.</p>
6840
+ * @public
6841
+ */
6842
+ restApiId: string | undefined;
6843
+ /**
6844
+ * <p>The ID of the stage of the REST API to add as a target.</p>
6845
+ * @public
6846
+ */
6847
+ stage: string | undefined;
6848
+ /**
6849
+ * <p>The configuration for defining REST API tool filters and overrides for the gateway target.</p>
6850
+ * @public
6851
+ */
6852
+ apiGatewayToolConfiguration: ApiGatewayToolConfiguration | undefined;
6853
+ }
6854
+ /**
6855
+ * <p>Specifies a parameter override for a connector tool, allowing you to control parameter visibility and descriptions.</p>
6856
+ * @public
6857
+ */
6858
+ export interface ConnectorParameterOverride {
6859
+ /**
6860
+ * <p>A JSON Pointer path identifying the parameter (for example, <code>/numberOfResults</code> or <code>/filter</code>).</p>
6861
+ * @public
6862
+ */
6863
+ path: string | undefined;
6864
+ /**
6865
+ * <p>An agent-facing description override for this parameter.</p>
6866
+ * @public
6867
+ */
6868
+ description?: string | undefined;
6869
+ /**
6870
+ * <p>Whether this parameter is visible to the agent. If not specified, uses the service default.</p>
6871
+ * @public
6872
+ */
6873
+ visible?: boolean | undefined;
6874
+ }
6875
+ /**
6876
+ * <p>Configuration for a single tool within a connector.</p>
6877
+ * @public
6878
+ */
6879
+ export interface ConnectorConfiguration {
6880
+ /**
6881
+ * <p>The tool or operation name (for example, <code>retrieve</code> or <code>webSearch</code>).</p>
6882
+ * @public
6883
+ */
6884
+ name: string | undefined;
6885
+ /**
6886
+ * <p>An agent-facing description override for this tool.</p>
6887
+ * @public
6888
+ */
6889
+ description?: string | undefined;
6890
+ /**
6891
+ * <p>Parameters to set as fixed or default values when provisioning this tool.</p>
6892
+ * @public
6893
+ */
6894
+ parameterValues?: __DocumentType | undefined;
6895
+ /**
6896
+ * <p>Parameters to expose to the agent at runtime, with optional description overrides.</p>
6897
+ * @public
6898
+ */
6899
+ parameterOverrides?: ConnectorParameterOverride[] | undefined;
6900
+ }
6901
+ /**
6902
+ * <p>The source identifying the connector integration.</p>
6903
+ * @public
6904
+ */
6905
+ export interface ConnectorSource {
6906
+ /**
6907
+ * <p>The identifier for the connector integration (for example, <code>bedrock-knowledge-bases</code>).</p>
6908
+ * @public
6909
+ */
6910
+ connectorId: string | undefined;
6911
+ }
6912
+ /**
6913
+ * <p>Configuration for a connector integration target. Connectors provide pre-built integrations with Amazon Web Services services and third-party tools.</p>
6914
+ * @public
6915
+ */
6916
+ export interface ConnectorTargetConfiguration {
6917
+ /**
6918
+ * <p>The source configuration identifying which connector to use.</p>
6919
+ * @public
6920
+ */
6921
+ source: ConnectorSource | undefined;
6922
+ /**
6923
+ * <p>A list of tool names to enable from this connector. If absent, all tools provided by the connector are enabled.</p>
6924
+ * @public
6925
+ */
6926
+ enabled?: string[] | undefined;
6927
+ /**
6928
+ * <p>A list of per-tool configurations for the connector.</p>
6929
+ * @public
6930
+ */
6931
+ configurations?: ConnectorConfiguration[] | undefined;
6932
+ }
6933
+ /**
6934
+ * <p>The MCP tool schema configuration for an MCP server target. The tool schema must be aligned with the MCP specification.</p>
6935
+ * @public
6936
+ */
6937
+ export type McpToolSchemaConfiguration = McpToolSchemaConfiguration.InlinePayloadMember | McpToolSchemaConfiguration.S3Member | McpToolSchemaConfiguration.$UnknownMember;
6938
+ /**
6939
+ * @public
6940
+ */
6941
+ export declare namespace McpToolSchemaConfiguration {
6942
+ /**
6943
+ * <p>The Amazon S3 location of the tool schema. This location contains the schema definition file.</p>
6944
+ * @public
6945
+ */
6946
+ interface S3Member {
6508
6947
  s3: S3Configuration;
6509
6948
  inlinePayload?: never;
6510
6949
  $unknown?: never;
6511
6950
  }
6512
6951
  /**
6513
- * <p>The inline payload containing the API schema definition.</p>
6952
+ * <p>The inline payload containing the MCP tool schema definition.</p>
6514
6953
  * @public
6515
6954
  */
6516
6955
  interface InlinePayloadMember {
@@ -6536,6 +6975,32 @@ export declare namespace ApiSchemaConfiguration {
6536
6975
  _: (name: string, value: any) => T;
6537
6976
  }
6538
6977
  }
6978
+ /**
6979
+ * <p>The target configuration for the MCP server.</p>
6980
+ * @public
6981
+ */
6982
+ export interface McpServerTargetConfiguration {
6983
+ /**
6984
+ * <p>The endpoint for the MCP server target configuration.</p>
6985
+ * @public
6986
+ */
6987
+ endpoint: string | undefined;
6988
+ /**
6989
+ * <p>The tool schema configuration for the MCP server target. Supported only when the credential provider is configured with an authorization code grant type. Dynamic tool discovery/synchronization will be disabled when target is configured with mcpToolSchema.</p>
6990
+ * @public
6991
+ */
6992
+ mcpToolSchema?: McpToolSchemaConfiguration | undefined;
6993
+ /**
6994
+ * <p>The listing mode for the MCP server target configuration. MCP resources for default targets are cached at the control plane for faster access. MCP resources for dynamic targets will be dynamically retrieved when listing tools.</p>
6995
+ * @public
6996
+ */
6997
+ listingMode?: ListingMode | undefined;
6998
+ /**
6999
+ * <p>Priority for resolving MCP server targets with shared resource URIs. Lower values take precedence. Defaults to 1000 when not set.</p>
7000
+ * @public
7001
+ */
7002
+ resourcePriority?: number | undefined;
7003
+ }
6539
7004
  /**
6540
7005
  * <p>OAuth2-specific authorization data, including the authorization URL and user identifier for the authorization session.</p>
6541
7006
  * @public
@@ -6721,6 +7186,26 @@ export interface TargetSummary {
6721
7186
  * @public
6722
7187
  */
6723
7188
  resourcePriority?: number | undefined;
7189
+ /**
7190
+ * <p>The timestamp when the target was last synchronized.</p>
7191
+ * @public
7192
+ */
7193
+ lastSynchronizedAt?: Date | undefined;
7194
+ /**
7195
+ * <p>Contains the authorization data that is returned when a gateway target is configured with a credential provider with authorization code grant type and requires user federation.</p>
7196
+ * @public
7197
+ */
7198
+ authorizationData?: AuthorizationData | undefined;
7199
+ /**
7200
+ * <p>The type of the target.</p>
7201
+ * @public
7202
+ */
7203
+ targetType?: TargetType | undefined;
7204
+ /**
7205
+ * <p>The listing mode for the target. MCP resources for <code>DEFAULT</code> targets are cached at the control plane for faster access. MCP resources for <code>DYNAMIC</code> targets are retrieved dynamically when listing tools.</p>
7206
+ * @public
7207
+ */
7208
+ listingMode?: ListingMode | undefined;
6724
7209
  }
6725
7210
  /**
6726
7211
  * @public
@@ -6819,25 +7304,261 @@ export interface GetTokenVaultResponse {
6819
7304
  lastModifiedDate: Date | undefined;
6820
7305
  }
6821
7306
  /**
6822
- * <p>The AgentCore Runtime environment request configuration.</p>
6823
7307
  * @public
6824
7308
  */
6825
- export interface HarnessAgentCoreRuntimeEnvironmentRequest {
7309
+ export interface CreateHarnessEndpointRequest {
6826
7310
  /**
6827
- * <p>LifecycleConfiguration lets you manage the lifecycle of runtime sessions and resources in AgentCore Runtime. This configuration helps optimize resource utilization by automatically cleaning up idle sessions and preventing long-running instances from consuming resources indefinitely.</p>
7311
+ * <p>The ID of the harness to create an endpoint for.</p>
6828
7312
  * @public
6829
7313
  */
6830
- lifecycleConfiguration?: LifecycleConfiguration | undefined;
7314
+ harnessId: string | undefined;
6831
7315
  /**
6832
- * <p>SecurityConfig for the Agent.</p>
7316
+ * <p>The name of the endpoint. Must start with a letter and contain only alphanumeric characters and underscores.</p>
6833
7317
  * @public
6834
7318
  */
6835
- networkConfiguration?: NetworkConfiguration | undefined;
7319
+ endpointName: string | undefined;
6836
7320
  /**
6837
- * <p>The filesystem configurations for the runtime environment.</p>
7321
+ * <p>The harness version that the endpoint points to and serves invocations from.</p>
6838
7322
  * @public
6839
7323
  */
6840
- filesystemConfigurations?: FilesystemConfiguration[] | undefined;
7324
+ targetVersion?: string | undefined;
7325
+ /**
7326
+ * <p>A description of the endpoint.</p>
7327
+ * @public
7328
+ */
7329
+ description?: string | undefined;
7330
+ /**
7331
+ * <p>A unique, case-sensitive identifier to ensure idempotency of the request.</p>
7332
+ * @public
7333
+ */
7334
+ clientToken?: string | undefined;
7335
+ /**
7336
+ * <p>Tags to apply to the endpoint resource.</p>
7337
+ * @public
7338
+ */
7339
+ tags?: Record<string, string> | undefined;
7340
+ }
7341
+ /**
7342
+ * <p>Representation of a harness endpoint. An endpoint is a named, stable reference to a specific version of a harness that callers invoke, allowing the underlying version to be updated without changing how the agent is invoked.</p>
7343
+ * @public
7344
+ */
7345
+ export interface HarnessEndpoint {
7346
+ /**
7347
+ * <p>The ID of the harness that the endpoint belongs to.</p>
7348
+ * @public
7349
+ */
7350
+ harnessId: string | undefined;
7351
+ /**
7352
+ * <p>The name of the harness that the endpoint belongs to.</p>
7353
+ * @public
7354
+ */
7355
+ harnessName: string | undefined;
7356
+ /**
7357
+ * <p>The name of the endpoint.</p>
7358
+ * @public
7359
+ */
7360
+ endpointName: string | undefined;
7361
+ /**
7362
+ * <p>The ARN of the endpoint.</p>
7363
+ * @public
7364
+ */
7365
+ arn: string | undefined;
7366
+ /**
7367
+ * <p>The status of the endpoint.</p>
7368
+ * @public
7369
+ */
7370
+ status: HarnessEndpointStatus | undefined;
7371
+ /**
7372
+ * <p>The timestamp when the endpoint was created.</p>
7373
+ * @public
7374
+ */
7375
+ createdAt: Date | undefined;
7376
+ /**
7377
+ * <p>The timestamp when the endpoint was last updated.</p>
7378
+ * @public
7379
+ */
7380
+ updatedAt: Date | undefined;
7381
+ /**
7382
+ * <p>The harness version that the endpoint is currently serving.</p>
7383
+ * @public
7384
+ */
7385
+ liveVersion?: string | undefined;
7386
+ /**
7387
+ * <p>The harness version that the endpoint points to. While an update is in progress, this can differ from the live version until the endpoint finishes transitioning.</p>
7388
+ * @public
7389
+ */
7390
+ targetVersion?: string | undefined;
7391
+ /**
7392
+ * <p>The description of the endpoint.</p>
7393
+ * @public
7394
+ */
7395
+ description?: string | undefined;
7396
+ /**
7397
+ * <p>The reason the endpoint's last create or update operation failed.</p>
7398
+ * @public
7399
+ */
7400
+ failureReason?: string | undefined;
7401
+ }
7402
+ /**
7403
+ * @public
7404
+ */
7405
+ export interface CreateHarnessEndpointResponse {
7406
+ /**
7407
+ * <p>The endpoint that was created.</p>
7408
+ * @public
7409
+ */
7410
+ endpoint: HarnessEndpoint | undefined;
7411
+ }
7412
+ /**
7413
+ * @public
7414
+ */
7415
+ export interface DeleteHarnessEndpointRequest {
7416
+ /**
7417
+ * <p>The ID of the harness that the endpoint belongs to.</p>
7418
+ * @public
7419
+ */
7420
+ harnessId: string | undefined;
7421
+ /**
7422
+ * <p>The name of the endpoint to delete.</p>
7423
+ * @public
7424
+ */
7425
+ endpointName: string | undefined;
7426
+ /**
7427
+ * <p>A unique, case-sensitive identifier to ensure idempotency of the request.</p>
7428
+ * @public
7429
+ */
7430
+ clientToken?: string | undefined;
7431
+ }
7432
+ /**
7433
+ * @public
7434
+ */
7435
+ export interface DeleteHarnessEndpointResponse {
7436
+ /**
7437
+ * <p>The endpoint that was deleted.</p>
7438
+ * @public
7439
+ */
7440
+ endpoint: HarnessEndpoint | undefined;
7441
+ }
7442
+ /**
7443
+ * @public
7444
+ */
7445
+ export interface GetHarnessEndpointRequest {
7446
+ /**
7447
+ * <p>The ID of the harness that the endpoint belongs to.</p>
7448
+ * @public
7449
+ */
7450
+ harnessId: string | undefined;
7451
+ /**
7452
+ * <p>The name of the endpoint to retrieve.</p>
7453
+ * @public
7454
+ */
7455
+ endpointName: string | undefined;
7456
+ }
7457
+ /**
7458
+ * @public
7459
+ */
7460
+ export interface GetHarnessEndpointResponse {
7461
+ /**
7462
+ * <p>The endpoint resource.</p>
7463
+ * @public
7464
+ */
7465
+ endpoint: HarnessEndpoint | undefined;
7466
+ }
7467
+ /**
7468
+ * @public
7469
+ */
7470
+ export interface ListHarnessEndpointsRequest {
7471
+ /**
7472
+ * <p>The ID of the harness whose endpoints are listed.</p>
7473
+ * @public
7474
+ */
7475
+ harnessId: string | undefined;
7476
+ /**
7477
+ * <p>The maximum number of results to return in a single call.</p>
7478
+ * @public
7479
+ */
7480
+ maxResults?: number | undefined;
7481
+ /**
7482
+ * <p>The token for the next set of results.</p>
7483
+ * @public
7484
+ */
7485
+ nextToken?: string | undefined;
7486
+ }
7487
+ /**
7488
+ * @public
7489
+ */
7490
+ export interface ListHarnessEndpointsResponse {
7491
+ /**
7492
+ * <p>The list of harness endpoints.</p>
7493
+ * @public
7494
+ */
7495
+ endpoints: HarnessEndpoint[] | undefined;
7496
+ /**
7497
+ * <p>The token for the next set of results.</p>
7498
+ * @public
7499
+ */
7500
+ nextToken?: string | undefined;
7501
+ }
7502
+ /**
7503
+ * @public
7504
+ */
7505
+ export interface UpdateHarnessEndpointRequest {
7506
+ /**
7507
+ * <p>The ID of the harness that the endpoint belongs to.</p>
7508
+ * @public
7509
+ */
7510
+ harnessId: string | undefined;
7511
+ /**
7512
+ * <p>The name of the endpoint to update.</p>
7513
+ * @public
7514
+ */
7515
+ endpointName: string | undefined;
7516
+ /**
7517
+ * <p>The harness version that the endpoint points to. If not specified, the existing value is retained.</p>
7518
+ * @public
7519
+ */
7520
+ targetVersion?: string | undefined;
7521
+ /**
7522
+ * <p>A description of the endpoint. If not specified, the existing value is retained.</p>
7523
+ * @public
7524
+ */
7525
+ description?: string | undefined;
7526
+ /**
7527
+ * <p>A unique, case-sensitive identifier to ensure idempotency of the request.</p>
7528
+ * @public
7529
+ */
7530
+ clientToken?: string | undefined;
7531
+ }
7532
+ /**
7533
+ * @public
7534
+ */
7535
+ export interface UpdateHarnessEndpointResponse {
7536
+ /**
7537
+ * <p>The updated endpoint.</p>
7538
+ * @public
7539
+ */
7540
+ endpoint: HarnessEndpoint | undefined;
7541
+ }
7542
+ /**
7543
+ * <p>The AgentCore Runtime environment request configuration.</p>
7544
+ * @public
7545
+ */
7546
+ export interface HarnessAgentCoreRuntimeEnvironmentRequest {
7547
+ /**
7548
+ * <p>LifecycleConfiguration lets you manage the lifecycle of runtime sessions and resources in AgentCore Runtime. This configuration helps optimize resource utilization by automatically cleaning up idle sessions and preventing long-running instances from consuming resources indefinitely.</p>
7549
+ * @public
7550
+ */
7551
+ lifecycleConfiguration?: LifecycleConfiguration | undefined;
7552
+ /**
7553
+ * <p>SecurityConfig for the Agent.</p>
7554
+ * @public
7555
+ */
7556
+ networkConfiguration?: NetworkConfiguration | undefined;
7557
+ /**
7558
+ * <p>The filesystem configurations for the runtime environment.</p>
7559
+ * @public
7560
+ */
7561
+ filesystemConfigurations?: FilesystemConfiguration[] | undefined;
6841
7562
  }
6842
7563
  /**
6843
7564
  * <p>The environment provider request configuration.</p>
@@ -6952,11 +7673,43 @@ export interface HarnessAgentCoreMemoryConfiguration {
6952
7673
  */
6953
7674
  retrievalConfig?: Record<string, HarnessAgentCoreMemoryRetrievalConfig> | undefined;
6954
7675
  }
7676
+ /**
7677
+ * <p>Explicitly opt out of memory.</p>
7678
+ * @public
7679
+ */
7680
+ export interface HarnessDisabledMemoryConfiguration {
7681
+ }
7682
+ /**
7683
+ * <p>Configuration for managed memory creation.</p>
7684
+ * @public
7685
+ */
7686
+ export interface HarnessManagedMemoryConfiguration {
7687
+ /**
7688
+ * <p>The ARN of the managed AgentCore Memory resource. Read-only on Get, ignored on Create/Update input.</p>
7689
+ * @public
7690
+ */
7691
+ arn?: string | undefined;
7692
+ /**
7693
+ * <p>Strategy types to enable. Defaults to [SEMANTIC, SUMMARIZATION].</p>
7694
+ * @public
7695
+ */
7696
+ strategies?: HarnessManagedMemoryStrategyType[] | undefined;
7697
+ /**
7698
+ * <p>Event retention in days. Defaults to 30.</p>
7699
+ * @public
7700
+ */
7701
+ eventExpiryDuration?: number | undefined;
7702
+ /**
7703
+ * <p>Customer-managed KMS key. Defaults to AWS-owned key. Not updatable after creation.</p>
7704
+ * @public
7705
+ */
7706
+ encryptionKeyArn?: string | undefined;
7707
+ }
6955
7708
  /**
6956
7709
  * <p>The memory configuration for a harness.</p>
6957
7710
  * @public
6958
7711
  */
6959
- export type HarnessMemoryConfiguration = HarnessMemoryConfiguration.AgentCoreMemoryConfigurationMember | HarnessMemoryConfiguration.$UnknownMember;
7712
+ export type HarnessMemoryConfiguration = HarnessMemoryConfiguration.AgentCoreMemoryConfigurationMember | HarnessMemoryConfiguration.DisabledMember | HarnessMemoryConfiguration.ManagedMemoryConfigurationMember | HarnessMemoryConfiguration.$UnknownMember;
6960
7713
  /**
6961
7714
  * @public
6962
7715
  */
@@ -6967,6 +7720,28 @@ export declare namespace HarnessMemoryConfiguration {
6967
7720
  */
6968
7721
  interface AgentCoreMemoryConfigurationMember {
6969
7722
  agentCoreMemoryConfiguration: HarnessAgentCoreMemoryConfiguration;
7723
+ managedMemoryConfiguration?: never;
7724
+ disabled?: never;
7725
+ $unknown?: never;
7726
+ }
7727
+ /**
7728
+ * <p>Harness creates and manages a memory resource in the customer's account.</p>
7729
+ * @public
7730
+ */
7731
+ interface ManagedMemoryConfigurationMember {
7732
+ agentCoreMemoryConfiguration?: never;
7733
+ managedMemoryConfiguration: HarnessManagedMemoryConfiguration;
7734
+ disabled?: never;
7735
+ $unknown?: never;
7736
+ }
7737
+ /**
7738
+ * <p>Explicitly opt out of memory.</p>
7739
+ * @public
7740
+ */
7741
+ interface DisabledMember {
7742
+ agentCoreMemoryConfiguration?: never;
7743
+ managedMemoryConfiguration?: never;
7744
+ disabled: HarnessDisabledMemoryConfiguration;
6970
7745
  $unknown?: never;
6971
7746
  }
6972
7747
  /**
@@ -6974,6 +7749,8 @@ export declare namespace HarnessMemoryConfiguration {
6974
7749
  */
6975
7750
  interface $UnknownMember {
6976
7751
  agentCoreMemoryConfiguration?: never;
7752
+ managedMemoryConfiguration?: never;
7753
+ disabled?: never;
6977
7754
  $unknown: [string, any];
6978
7755
  }
6979
7756
  /**
@@ -6982,6 +7759,8 @@ export declare namespace HarnessMemoryConfiguration {
6982
7759
  */
6983
7760
  interface Visitor<T> {
6984
7761
  agentCoreMemoryConfiguration: (value: HarnessAgentCoreMemoryConfiguration) => T;
7762
+ managedMemoryConfiguration: (value: HarnessManagedMemoryConfiguration) => T;
7763
+ disabled: (value: HarnessDisabledMemoryConfiguration) => T;
6985
7764
  _: (name: string, value: any) => T;
6986
7765
  }
6987
7766
  }
@@ -7215,1037 +7994,18 @@ export declare namespace HarnessModelConfiguration {
7215
7994
  }
7216
7995
  }
7217
7996
  /**
7218
- * <p>Authentication configuration for accessing a private git repository.</p>
7219
- * @public
7220
- */
7221
- export interface HarnessSkillGitAuth {
7222
- /**
7223
- * <p>The ARN of the credential in AgentCore Identity containing the password or personal access token.</p>
7224
- * @public
7225
- */
7226
- credentialArn: string | undefined;
7227
- /**
7228
- * <p>Username for authentication. Defaults to 'oauth2' if not specified.</p>
7229
- * @public
7230
- */
7231
- username?: string | undefined;
7232
- }
7233
- /**
7234
- * <p>A git repository source for a skill.</p>
7235
- * @public
7236
- */
7237
- export interface HarnessSkillGitSource {
7238
- /**
7239
- * <p>The HTTPS URL of the git repository.</p>
7240
- * @public
7241
- */
7242
- url: string | undefined;
7243
- /**
7244
- * <p>Subdirectory within the repository containing the skill.</p>
7245
- * @public
7246
- */
7247
- path?: string | undefined;
7248
- /**
7249
- * <p>Authentication configuration for private repositories.</p>
7250
- * @public
7251
- */
7252
- auth?: HarnessSkillGitAuth | undefined;
7253
- }
7254
- /**
7255
- * <p>An S3 source for a skill.</p>
7997
+ * <p>Passed to show that AWS Skills should be included.</p>
7256
7998
  * @public
7257
7999
  */
7258
- export interface HarnessSkillS3Source {
8000
+ export interface HarnessSkillAwsSkillsSource {
7259
8001
  /**
7260
- * <p>The S3 URI pointing to the skill directory (e.g., s3://bucket/skills/my-skill/).</p>
8002
+ * <p>Optionally filter allowed skills with glob syntax, e.g., ['core-skills/*'].</p>
7261
8003
  * @public
7262
8004
  */
7263
- uri: string | undefined;
7264
- }
7265
- /**
7266
- * <p>A skill available to the agent.</p>
7267
- * @public
7268
- */
7269
- export type HarnessSkill = HarnessSkill.GitMember | HarnessSkill.PathMember | HarnessSkill.S3Member | HarnessSkill.$UnknownMember;
7270
- /**
7271
- * @public
7272
- */
7273
- export declare namespace HarnessSkill {
7274
- /**
7275
- * <p>The filesystem path to the skill definition.</p>
7276
- * @public
7277
- */
7278
- interface PathMember {
7279
- path: string;
7280
- s3?: never;
7281
- git?: never;
7282
- $unknown?: never;
7283
- }
7284
- /**
7285
- * <p>An S3 source containing the skill.</p>
7286
- * @public
7287
- */
7288
- interface S3Member {
7289
- path?: never;
7290
- s3: HarnessSkillS3Source;
7291
- git?: never;
7292
- $unknown?: never;
7293
- }
7294
- /**
7295
- * <p>A git repository containing the skill.</p>
7296
- * @public
7297
- */
7298
- interface GitMember {
7299
- path?: never;
7300
- s3?: never;
7301
- git: HarnessSkillGitSource;
7302
- $unknown?: never;
7303
- }
7304
- /**
7305
- * @public
7306
- */
7307
- interface $UnknownMember {
7308
- path?: never;
7309
- s3?: never;
7310
- git?: never;
7311
- $unknown: [string, any];
7312
- }
7313
- /**
7314
- * @deprecated unused in schema-serde mode.
7315
- *
7316
- */
7317
- interface Visitor<T> {
7318
- path: (value: string) => T;
7319
- s3: (value: HarnessSkillS3Source) => T;
7320
- git: (value: HarnessSkillGitSource) => T;
7321
- _: (name: string, value: any) => T;
7322
- }
7323
- }
7324
- /**
7325
- * <p>A content block in the system prompt.</p>
7326
- * @public
7327
- */
7328
- export type HarnessSystemContentBlock = HarnessSystemContentBlock.TextMember | HarnessSystemContentBlock.$UnknownMember;
7329
- /**
7330
- * @public
7331
- */
7332
- export declare namespace HarnessSystemContentBlock {
7333
- /**
7334
- * <p>The text content of the system prompt block.</p>
7335
- * @public
7336
- */
7337
- interface TextMember {
7338
- text: string;
7339
- $unknown?: never;
7340
- }
7341
- /**
7342
- * @public
7343
- */
7344
- interface $UnknownMember {
7345
- text?: never;
7346
- $unknown: [string, any];
7347
- }
7348
- /**
7349
- * @deprecated unused in schema-serde mode.
7350
- *
7351
- */
7352
- interface Visitor<T> {
7353
- text: (value: string) => T;
7354
- _: (name: string, value: any) => T;
7355
- }
7356
- }
7357
- /**
7358
- * <p>Configuration for AgentCore Browser.</p>
7359
- * @public
7360
- */
7361
- export interface HarnessAgentCoreBrowserConfig {
7362
- /**
7363
- * <p>If not populated, the built-in Browser ARN is used.</p>
7364
- * @public
7365
- */
7366
- browserArn?: string | undefined;
7367
- }
7368
- /**
7369
- * <p>Configuration for AgentCore Code Interpreter.</p>
7370
- * @public
7371
- */
7372
- export interface HarnessAgentCoreCodeInterpreterConfig {
7373
- /**
7374
- * <p>If not populated, the built-in Code Interpreter ARN is used.</p>
7375
- * @public
7376
- */
7377
- codeInterpreterArn?: string | undefined;
8005
+ paths?: string[] | undefined;
7378
8006
  }
7379
8007
  /**
7380
8008
  * @public
7381
8009
  */
7382
8010
  export interface Unit {
7383
8011
  }
7384
- /**
7385
- * <p>Authentication method for calling a Gateway.</p>
7386
- * @public
7387
- */
7388
- export type HarnessGatewayOutboundAuth = HarnessGatewayOutboundAuth.AwsIamMember | HarnessGatewayOutboundAuth.NoneMember | HarnessGatewayOutboundAuth.OauthMember | HarnessGatewayOutboundAuth.$UnknownMember;
7389
- /**
7390
- * @public
7391
- */
7392
- export declare namespace HarnessGatewayOutboundAuth {
7393
- /**
7394
- * <p>SigV4-sign requests using the agent's execution role.</p>
7395
- * @public
7396
- */
7397
- interface AwsIamMember {
7398
- awsIam: Unit;
7399
- none?: never;
7400
- oauth?: never;
7401
- $unknown?: never;
7402
- }
7403
- /**
7404
- * <p>No authentication.</p>
7405
- * @public
7406
- */
7407
- interface NoneMember {
7408
- awsIam?: never;
7409
- none: Unit;
7410
- oauth?: never;
7411
- $unknown?: never;
7412
- }
7413
- /**
7414
- * <p>Use OAuth credentials for outbound authentication to the gateway.</p>
7415
- * @public
7416
- */
7417
- interface OauthMember {
7418
- awsIam?: never;
7419
- none?: never;
7420
- oauth: OAuthCredentialProvider;
7421
- $unknown?: never;
7422
- }
7423
- /**
7424
- * @public
7425
- */
7426
- interface $UnknownMember {
7427
- awsIam?: never;
7428
- none?: never;
7429
- oauth?: never;
7430
- $unknown: [string, any];
7431
- }
7432
- /**
7433
- * @deprecated unused in schema-serde mode.
7434
- *
7435
- */
7436
- interface Visitor<T> {
7437
- awsIam: (value: Unit) => T;
7438
- none: (value: Unit) => T;
7439
- oauth: (value: OAuthCredentialProvider) => T;
7440
- _: (name: string, value: any) => T;
7441
- }
7442
- }
7443
- /**
7444
- * <p>Configuration for AgentCore Gateway.</p>
7445
- * @public
7446
- */
7447
- export interface HarnessAgentCoreGatewayConfig {
7448
- /**
7449
- * <p>The ARN of the desired AgentCore Gateway.</p>
7450
- * @public
7451
- */
7452
- gatewayArn: string | undefined;
7453
- /**
7454
- * <p>How harness authenticates to this Gateway. Defaults to AWS_IAM (SigV4) if omitted.</p>
7455
- * @public
7456
- */
7457
- outboundAuth?: HarnessGatewayOutboundAuth | undefined;
7458
- }
7459
- /**
7460
- * <p>Configuration for an inline function tool. When the agent calls this tool, the tool call is returned to the caller for external execution.</p>
7461
- * @public
7462
- */
7463
- export interface HarnessInlineFunctionConfig {
7464
- /**
7465
- * <p>Description of what the tool does, provided to the model.</p>
7466
- * @public
7467
- */
7468
- description: string | undefined;
7469
- /**
7470
- * <p>JSON Schema describing the tool's input parameters.</p>
7471
- * @public
7472
- */
7473
- inputSchema: __DocumentType | undefined;
7474
- }
7475
- /**
7476
- * <p>Configuration for connecting to a remote MCP server.</p>
7477
- * @public
7478
- */
7479
- export interface HarnessRemoteMcpConfig {
7480
- /**
7481
- * <p>URL of the MCP endpoint.</p>
7482
- * @public
7483
- */
7484
- url: string | undefined;
7485
- /**
7486
- * <p>Custom headers to include when connecting to the remote MCP server.</p>
7487
- * @public
7488
- */
7489
- headers?: Record<string, string> | undefined;
7490
- }
7491
- /**
7492
- * <p>Configuration union for different tool types.</p>
7493
- * @public
7494
- */
7495
- export type HarnessToolConfiguration = HarnessToolConfiguration.AgentCoreBrowserMember | HarnessToolConfiguration.AgentCoreCodeInterpreterMember | HarnessToolConfiguration.AgentCoreGatewayMember | HarnessToolConfiguration.InlineFunctionMember | HarnessToolConfiguration.RemoteMcpMember | HarnessToolConfiguration.$UnknownMember;
7496
- /**
7497
- * @public
7498
- */
7499
- export declare namespace HarnessToolConfiguration {
7500
- /**
7501
- * <p>Configuration for remote MCP server.</p>
7502
- * @public
7503
- */
7504
- interface RemoteMcpMember {
7505
- remoteMcp: HarnessRemoteMcpConfig;
7506
- agentCoreBrowser?: never;
7507
- agentCoreGateway?: never;
7508
- inlineFunction?: never;
7509
- agentCoreCodeInterpreter?: never;
7510
- $unknown?: never;
7511
- }
7512
- /**
7513
- * <p>Configuration for AgentCore Browser.</p>
7514
- * @public
7515
- */
7516
- interface AgentCoreBrowserMember {
7517
- remoteMcp?: never;
7518
- agentCoreBrowser: HarnessAgentCoreBrowserConfig;
7519
- agentCoreGateway?: never;
7520
- inlineFunction?: never;
7521
- agentCoreCodeInterpreter?: never;
7522
- $unknown?: never;
7523
- }
7524
- /**
7525
- * <p>Configuration for AgentCore Gateway.</p>
7526
- * @public
7527
- */
7528
- interface AgentCoreGatewayMember {
7529
- remoteMcp?: never;
7530
- agentCoreBrowser?: never;
7531
- agentCoreGateway: HarnessAgentCoreGatewayConfig;
7532
- inlineFunction?: never;
7533
- agentCoreCodeInterpreter?: never;
7534
- $unknown?: never;
7535
- }
7536
- /**
7537
- * <p>Configuration for an inline function tool.</p>
7538
- * @public
7539
- */
7540
- interface InlineFunctionMember {
7541
- remoteMcp?: never;
7542
- agentCoreBrowser?: never;
7543
- agentCoreGateway?: never;
7544
- inlineFunction: HarnessInlineFunctionConfig;
7545
- agentCoreCodeInterpreter?: never;
7546
- $unknown?: never;
7547
- }
7548
- /**
7549
- * <p>Configuration for AgentCore Code Interpreter.</p>
7550
- * @public
7551
- */
7552
- interface AgentCoreCodeInterpreterMember {
7553
- remoteMcp?: never;
7554
- agentCoreBrowser?: never;
7555
- agentCoreGateway?: never;
7556
- inlineFunction?: never;
7557
- agentCoreCodeInterpreter: HarnessAgentCoreCodeInterpreterConfig;
7558
- $unknown?: never;
7559
- }
7560
- /**
7561
- * @public
7562
- */
7563
- interface $UnknownMember {
7564
- remoteMcp?: never;
7565
- agentCoreBrowser?: never;
7566
- agentCoreGateway?: never;
7567
- inlineFunction?: never;
7568
- agentCoreCodeInterpreter?: never;
7569
- $unknown: [string, any];
7570
- }
7571
- /**
7572
- * @deprecated unused in schema-serde mode.
7573
- *
7574
- */
7575
- interface Visitor<T> {
7576
- remoteMcp: (value: HarnessRemoteMcpConfig) => T;
7577
- agentCoreBrowser: (value: HarnessAgentCoreBrowserConfig) => T;
7578
- agentCoreGateway: (value: HarnessAgentCoreGatewayConfig) => T;
7579
- inlineFunction: (value: HarnessInlineFunctionConfig) => T;
7580
- agentCoreCodeInterpreter: (value: HarnessAgentCoreCodeInterpreterConfig) => T;
7581
- _: (name: string, value: any) => T;
7582
- }
7583
- }
7584
- /**
7585
- * <p>A tool available to the agent loop.</p>
7586
- * @public
7587
- */
7588
- export interface HarnessTool {
7589
- /**
7590
- * <p>The type of tool.</p>
7591
- * @public
7592
- */
7593
- type: HarnessToolType | undefined;
7594
- /**
7595
- * <p>Unique name for the tool. If not provided, a name will be inferred or generated.</p>
7596
- * @public
7597
- */
7598
- name?: string | undefined;
7599
- /**
7600
- * <p>Tool-specific configuration.</p>
7601
- * @public
7602
- */
7603
- config?: HarnessToolConfiguration | undefined;
7604
- }
7605
- /**
7606
- * <p>Configuration for sliding window truncation strategy.</p>
7607
- * @public
7608
- */
7609
- export interface HarnessSlidingWindowConfiguration {
7610
- /**
7611
- * <p>The number of recent messages to retain in the context window.</p>
7612
- * @public
7613
- */
7614
- messagesCount?: number | undefined;
7615
- }
7616
- /**
7617
- * <p>Configuration for summarization-based truncation strategy.</p>
7618
- * @public
7619
- */
7620
- export interface HarnessSummarizationConfiguration {
7621
- /**
7622
- * <p>The ratio of content to summarize.</p>
7623
- * @public
7624
- */
7625
- summaryRatio?: number | undefined;
7626
- /**
7627
- * <p>The number of recent messages to preserve without summarization.</p>
7628
- * @public
7629
- */
7630
- preserveRecentMessages?: number | undefined;
7631
- /**
7632
- * <p>The system prompt used for generating summaries.</p>
7633
- * @public
7634
- */
7635
- summarizationSystemPrompt?: string | undefined;
7636
- }
7637
- /**
7638
- * <p>Strategy-specific truncation configuration.</p>
7639
- * @public
7640
- */
7641
- export type HarnessTruncationStrategyConfiguration = HarnessTruncationStrategyConfiguration.SlidingWindowMember | HarnessTruncationStrategyConfiguration.SummarizationMember | HarnessTruncationStrategyConfiguration.$UnknownMember;
7642
- /**
7643
- * @public
7644
- */
7645
- export declare namespace HarnessTruncationStrategyConfiguration {
7646
- /**
7647
- * <p>Configuration for sliding window truncation.</p>
7648
- * @public
7649
- */
7650
- interface SlidingWindowMember {
7651
- slidingWindow: HarnessSlidingWindowConfiguration;
7652
- summarization?: never;
7653
- $unknown?: never;
7654
- }
7655
- /**
7656
- * <p>Configuration for summarization-based truncation.</p>
7657
- * @public
7658
- */
7659
- interface SummarizationMember {
7660
- slidingWindow?: never;
7661
- summarization: HarnessSummarizationConfiguration;
7662
- $unknown?: never;
7663
- }
7664
- /**
7665
- * @public
7666
- */
7667
- interface $UnknownMember {
7668
- slidingWindow?: never;
7669
- summarization?: never;
7670
- $unknown: [string, any];
7671
- }
7672
- /**
7673
- * @deprecated unused in schema-serde mode.
7674
- *
7675
- */
7676
- interface Visitor<T> {
7677
- slidingWindow: (value: HarnessSlidingWindowConfiguration) => T;
7678
- summarization: (value: HarnessSummarizationConfiguration) => T;
7679
- _: (name: string, value: any) => T;
7680
- }
7681
- }
7682
- /**
7683
- * <p>Configuration for truncating conversation context when it exceeds model limits.</p>
7684
- * @public
7685
- */
7686
- export interface HarnessTruncationConfiguration {
7687
- /**
7688
- * <p>The truncation strategy to use.</p>
7689
- * @public
7690
- */
7691
- strategy: HarnessTruncationStrategy | undefined;
7692
- /**
7693
- * <p>The strategy-specific configuration.</p>
7694
- * @public
7695
- */
7696
- config?: HarnessTruncationStrategyConfiguration | undefined;
7697
- }
7698
- /**
7699
- * @public
7700
- */
7701
- export interface CreateHarnessRequest {
7702
- /**
7703
- * <p>The name of the harness. Must start with a letter and contain only alphanumeric characters and underscores.</p>
7704
- * @public
7705
- */
7706
- harnessName: string | undefined;
7707
- /**
7708
- * <p>A unique, case-sensitive identifier to ensure idempotency of the request.</p>
7709
- * @public
7710
- */
7711
- clientToken?: string | undefined;
7712
- /**
7713
- * <p>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.</p>
7714
- * @public
7715
- */
7716
- executionRoleArn: string | undefined;
7717
- /**
7718
- * <p>The compute environment configuration for the harness, including network and lifecycle settings.</p>
7719
- * @public
7720
- */
7721
- environment?: HarnessEnvironmentProviderRequest | undefined;
7722
- /**
7723
- * <p>The environment artifact for the harness, such as a custom container image containing additional dependencies.</p>
7724
- * @public
7725
- */
7726
- environmentArtifact?: HarnessEnvironmentArtifact | undefined;
7727
- /**
7728
- * <p>Environment variables to set in the harness runtime environment.</p>
7729
- * @public
7730
- */
7731
- environmentVariables?: Record<string, string> | undefined;
7732
- /**
7733
- * <p>Represents inbound authorization configuration options used to authenticate incoming requests. </p>
7734
- * @public
7735
- */
7736
- authorizerConfiguration?: AuthorizerConfiguration | undefined;
7737
- /**
7738
- * <p>The model configuration for the harness. Supports Amazon Bedrock, OpenAI, and Google Gemini model providers.</p>
7739
- * @public
7740
- */
7741
- model?: HarnessModelConfiguration | undefined;
7742
- /**
7743
- * <p>The system prompt that defines the agent's behavior and instructions.</p>
7744
- * @public
7745
- */
7746
- systemPrompt?: HarnessSystemContentBlock[] | undefined;
7747
- /**
7748
- * <p>The tools available to the agent, such as remote MCP servers, AgentCore Gateway, AgentCore Browser, Code Interpreter, or inline functions.</p>
7749
- * @public
7750
- */
7751
- tools?: HarnessTool[] | undefined;
7752
- /**
7753
- * <p>The skills available to the agent. Skills are bundles of files that the agent can pull into its context on demand.</p>
7754
- * @public
7755
- */
7756
- skills?: HarnessSkill[] | undefined;
7757
- /**
7758
- * <p>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.</p>
7759
- * @public
7760
- */
7761
- allowedTools?: string[] | undefined;
7762
- /**
7763
- * <p>The AgentCore Memory configuration for persisting conversation context across sessions.</p>
7764
- * @public
7765
- */
7766
- memory?: HarnessMemoryConfiguration | undefined;
7767
- /**
7768
- * <p>The truncation configuration for managing conversation context when it exceeds model limits.</p>
7769
- * @public
7770
- */
7771
- truncation?: HarnessTruncationConfiguration | undefined;
7772
- /**
7773
- * <p>The maximum number of iterations the agent loop can execute per invocation.</p>
7774
- * @public
7775
- */
7776
- maxIterations?: number | undefined;
7777
- /**
7778
- * <p>The maximum total number of output tokens the agent can generate across all model calls within a single invocation.</p>
7779
- * @public
7780
- */
7781
- maxTokens?: number | undefined;
7782
- /**
7783
- * <p>The maximum duration in seconds for the agent loop execution per invocation.</p>
7784
- * @public
7785
- */
7786
- timeoutSeconds?: number | undefined;
7787
- /**
7788
- * <p>Tags to apply to the harness resource.</p>
7789
- * @public
7790
- */
7791
- tags?: Record<string, string> | undefined;
7792
- }
7793
- /**
7794
- * <p>The AgentCore Runtime environment for a harness.</p>
7795
- * @public
7796
- */
7797
- export interface HarnessAgentCoreRuntimeEnvironment {
7798
- /**
7799
- * <p>The ARN of the underlying AgentCore Runtime.</p>
7800
- * @public
7801
- */
7802
- agentRuntimeArn: string | undefined;
7803
- /**
7804
- * <p>The name of the underlying AgentCore Runtime.</p>
7805
- * @public
7806
- */
7807
- agentRuntimeName: string | undefined;
7808
- /**
7809
- * <p>The ID of the underlying AgentCore Runtime.</p>
7810
- * @public
7811
- */
7812
- agentRuntimeId: string | undefined;
7813
- /**
7814
- * <p>LifecycleConfiguration lets you manage the lifecycle of runtime sessions and resources in AgentCore Runtime. This configuration helps optimize resource utilization by automatically cleaning up idle sessions and preventing long-running instances from consuming resources indefinitely.</p>
7815
- * @public
7816
- */
7817
- lifecycleConfiguration: LifecycleConfiguration | undefined;
7818
- /**
7819
- * <p>SecurityConfig for the Agent.</p>
7820
- * @public
7821
- */
7822
- networkConfiguration: NetworkConfiguration | undefined;
7823
- /**
7824
- * <p>The filesystem configurations for the runtime environment.</p>
7825
- * @public
7826
- */
7827
- filesystemConfigurations?: FilesystemConfiguration[] | undefined;
7828
- }
7829
- /**
7830
- * <p>The environment provider for a harness.</p>
7831
- * @public
7832
- */
7833
- export type HarnessEnvironmentProvider = HarnessEnvironmentProvider.AgentCoreRuntimeEnvironmentMember | HarnessEnvironmentProvider.$UnknownMember;
7834
- /**
7835
- * @public
7836
- */
7837
- export declare namespace HarnessEnvironmentProvider {
7838
- /**
7839
- * <p>The AgentCore Runtime environment configuration.</p>
7840
- * @public
7841
- */
7842
- interface AgentCoreRuntimeEnvironmentMember {
7843
- agentCoreRuntimeEnvironment: HarnessAgentCoreRuntimeEnvironment;
7844
- $unknown?: never;
7845
- }
7846
- /**
7847
- * @public
7848
- */
7849
- interface $UnknownMember {
7850
- agentCoreRuntimeEnvironment?: never;
7851
- $unknown: [string, any];
7852
- }
7853
- /**
7854
- * @deprecated unused in schema-serde mode.
7855
- *
7856
- */
7857
- interface Visitor<T> {
7858
- agentCoreRuntimeEnvironment: (value: HarnessAgentCoreRuntimeEnvironment) => T;
7859
- _: (name: string, value: any) => T;
7860
- }
7861
- }
7862
- /**
7863
- * <p>Representation of a Harness.</p>
7864
- * @public
7865
- */
7866
- export interface Harness {
7867
- /**
7868
- * <p>The ID of the Harness.</p>
7869
- * @public
7870
- */
7871
- harnessId: string | undefined;
7872
- /**
7873
- * <p>The name of the Harness.</p>
7874
- * @public
7875
- */
7876
- harnessName: string | undefined;
7877
- /**
7878
- * <p>The ARN of the Harness.</p>
7879
- * @public
7880
- */
7881
- arn: string | undefined;
7882
- /**
7883
- * <p>The status of the Harness.</p>
7884
- * @public
7885
- */
7886
- status: HarnessStatus | undefined;
7887
- /**
7888
- * <p>IAM role the Harness assumes when running.</p>
7889
- * @public
7890
- */
7891
- executionRoleArn: string | undefined;
7892
- /**
7893
- * <p>The createdAt time of the Harness.</p>
7894
- * @public
7895
- */
7896
- createdAt: Date | undefined;
7897
- /**
7898
- * <p>The updatedAt time of the Harness.</p>
7899
- * @public
7900
- */
7901
- updatedAt: Date | undefined;
7902
- /**
7903
- * <p>The configuration of the default model used by the Harness.</p>
7904
- * @public
7905
- */
7906
- model: HarnessModelConfiguration | undefined;
7907
- /**
7908
- * <p>The system prompt of the Harness.</p>
7909
- * @public
7910
- */
7911
- systemPrompt: HarnessSystemContentBlock[] | undefined;
7912
- /**
7913
- * <p>The tools of the Harness.</p>
7914
- * @public
7915
- */
7916
- tools: HarnessTool[] | undefined;
7917
- /**
7918
- * <p>The skills of the Harness.</p>
7919
- * @public
7920
- */
7921
- skills: HarnessSkill[] | undefined;
7922
- /**
7923
- * <p>The allowed tools of the Harness. All tools are allowed by default.</p>
7924
- * @public
7925
- */
7926
- allowedTools: string[] | undefined;
7927
- /**
7928
- * <p>Configuration for truncating model context.</p>
7929
- * @public
7930
- */
7931
- truncation: HarnessTruncationConfiguration | undefined;
7932
- /**
7933
- * <p>The compute environment on which the Harness runs.</p>
7934
- * @public
7935
- */
7936
- environment: HarnessEnvironmentProvider | undefined;
7937
- /**
7938
- * <p>The environment artifact (e.g., container) in which the Harness operates.</p>
7939
- * @public
7940
- */
7941
- environmentArtifact?: HarnessEnvironmentArtifact | undefined;
7942
- /**
7943
- * <p>Environment variables exposed in the environment in which the Harness operates.</p>
7944
- * @public
7945
- */
7946
- environmentVariables?: Record<string, string> | undefined;
7947
- /**
7948
- * <p>Represents inbound authorization configuration options used to authenticate incoming requests. </p>
7949
- * @public
7950
- */
7951
- authorizerConfiguration?: AuthorizerConfiguration | undefined;
7952
- /**
7953
- * <p>AgentCore Memory instance configuration for short and long term memory.</p>
7954
- * @public
7955
- */
7956
- memory?: HarnessMemoryConfiguration | undefined;
7957
- /**
7958
- * <p>The maximum number of iterations in the agent loop allowed before exiting per invocation.</p>
7959
- * @public
7960
- */
7961
- maxIterations?: number | undefined;
7962
- /**
7963
- * <p>The maximum total number of output tokens the agent can generate across all model calls within a single invocation.</p>
7964
- * @public
7965
- */
7966
- maxTokens?: number | undefined;
7967
- /**
7968
- * <p>The maximum duration per invocation.</p>
7969
- * @public
7970
- */
7971
- timeoutSeconds?: number | undefined;
7972
- /**
7973
- * <p>Reason why create or update operations fail.</p>
7974
- * @public
7975
- */
7976
- failureReason?: string | undefined;
7977
- }
7978
- /**
7979
- * @public
7980
- */
7981
- export interface CreateHarnessResponse {
7982
- /**
7983
- * <p>The harness that was created.</p>
7984
- * @public
7985
- */
7986
- harness: Harness | undefined;
7987
- }
7988
- /**
7989
- * @public
7990
- */
7991
- export interface DeleteHarnessRequest {
7992
- /**
7993
- * <p>The ID of the harness to delete.</p>
7994
- * @public
7995
- */
7996
- harnessId: string | undefined;
7997
- /**
7998
- * <p>A unique, case-sensitive identifier to ensure idempotency of the request.</p>
7999
- * @public
8000
- */
8001
- clientToken?: string | undefined;
8002
- }
8003
- /**
8004
- * @public
8005
- */
8006
- export interface DeleteHarnessResponse {
8007
- /**
8008
- * <p>The harness that was deleted.</p>
8009
- * @public
8010
- */
8011
- harness?: Harness | undefined;
8012
- }
8013
- /**
8014
- * @public
8015
- */
8016
- export interface GetHarnessRequest {
8017
- /**
8018
- * <p>The ID of the harness to retrieve.</p>
8019
- * @public
8020
- */
8021
- harnessId: string | undefined;
8022
- }
8023
- /**
8024
- * @public
8025
- */
8026
- export interface GetHarnessResponse {
8027
- /**
8028
- * <p>The harness resource.</p>
8029
- * @public
8030
- */
8031
- harness: Harness | undefined;
8032
- }
8033
- /**
8034
- * @public
8035
- */
8036
- export interface ListHarnessesRequest {
8037
- /**
8038
- * <p>The maximum number of results to return in a single call.</p>
8039
- * @public
8040
- */
8041
- maxResults?: number | undefined;
8042
- /**
8043
- * <p>The token for the next set of results.</p>
8044
- * @public
8045
- */
8046
- nextToken?: string | undefined;
8047
- }
8048
- /**
8049
- * <p>Summary information about a harness.</p>
8050
- * @public
8051
- */
8052
- export interface HarnessSummary {
8053
- /**
8054
- * <p>The ID of the harness.</p>
8055
- * @public
8056
- */
8057
- harnessId: string | undefined;
8058
- /**
8059
- * <p>The name of the harness.</p>
8060
- * @public
8061
- */
8062
- harnessName: string | undefined;
8063
- /**
8064
- * <p>The ARN of the harness.</p>
8065
- * @public
8066
- */
8067
- arn: string | undefined;
8068
- /**
8069
- * <p>The current status of the harness.</p>
8070
- * @public
8071
- */
8072
- status: HarnessStatus | undefined;
8073
- /**
8074
- * <p>The timestamp when the harness was created.</p>
8075
- * @public
8076
- */
8077
- createdAt: Date | undefined;
8078
- /**
8079
- * <p>The timestamp when the harness was last updated.</p>
8080
- * @public
8081
- */
8082
- updatedAt: Date | undefined;
8083
- }
8084
- /**
8085
- * @public
8086
- */
8087
- export interface ListHarnessesResponse {
8088
- /**
8089
- * <p>The list of harness summaries.</p>
8090
- * @public
8091
- */
8092
- harnesses: HarnessSummary[] | undefined;
8093
- /**
8094
- * <p>The token for the next set of results.</p>
8095
- * @public
8096
- */
8097
- nextToken?: string | undefined;
8098
- }
8099
- /**
8100
- * <p>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.</p>
8101
- * @public
8102
- */
8103
- export interface UpdatedAuthorizerConfiguration {
8104
- /**
8105
- * <p>The updated authorizer configuration value. If not specified, it will clear the current authorizer configuration of the resource.</p>
8106
- * @public
8107
- */
8108
- optionalValue?: AuthorizerConfiguration | undefined;
8109
- }
8110
- /**
8111
- * <p>Wrapper for updating the environment artifact configuration.</p>
8112
- * @public
8113
- */
8114
- export interface UpdatedHarnessEnvironmentArtifact {
8115
- /**
8116
- * <p>The updated environment artifact value, or null to clear the existing configuration.</p>
8117
- * @public
8118
- */
8119
- optionalValue?: HarnessEnvironmentArtifact | undefined;
8120
- }
8121
- /**
8122
- * <p>Wrapper for updating the memory configuration.</p>
8123
- * @public
8124
- */
8125
- export interface UpdatedHarnessMemoryConfiguration {
8126
- /**
8127
- * <p>The updated memory configuration value, or null to clear the existing configuration.</p>
8128
- * @public
8129
- */
8130
- optionalValue?: HarnessMemoryConfiguration | undefined;
8131
- }
8132
- /**
8133
- * @public
8134
- */
8135
- export interface UpdateHarnessRequest {
8136
- /**
8137
- * <p>The ID of the harness to update.</p>
8138
- * @public
8139
- */
8140
- harnessId: string | undefined;
8141
- /**
8142
- * <p>A unique, case-sensitive identifier to ensure idempotency of the request.</p>
8143
- * @public
8144
- */
8145
- clientToken?: string | undefined;
8146
- /**
8147
- * <p>The ARN of the IAM role that the harness assumes when running. If not specified, the existing value is retained.</p>
8148
- * @public
8149
- */
8150
- executionRoleArn?: string | undefined;
8151
- /**
8152
- * <p>The compute environment configuration for the harness. If not specified, the existing value is retained.</p>
8153
- * @public
8154
- */
8155
- environment?: HarnessEnvironmentProviderRequest | undefined;
8156
- /**
8157
- * <p>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.</p>
8158
- * @public
8159
- */
8160
- environmentArtifact?: UpdatedHarnessEnvironmentArtifact | undefined;
8161
- /**
8162
- * <p>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.</p>
8163
- * @public
8164
- */
8165
- environmentVariables?: Record<string, string> | undefined;
8166
- /**
8167
- * <p>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.</p>
8168
- * @public
8169
- */
8170
- authorizerConfiguration?: UpdatedAuthorizerConfiguration | undefined;
8171
- /**
8172
- * <p>The model configuration for the harness. If not specified, the existing value is retained.</p>
8173
- * @public
8174
- */
8175
- model?: HarnessModelConfiguration | undefined;
8176
- /**
8177
- * <p>The system prompt that defines the agent's behavior. If not specified, the existing value is retained.</p>
8178
- * @public
8179
- */
8180
- systemPrompt?: HarnessSystemContentBlock[] | undefined;
8181
- /**
8182
- * <p>The tools available to the agent. If specified, this replaces all existing tools. If not specified, the existing value is retained.</p>
8183
- * @public
8184
- */
8185
- tools?: HarnessTool[] | undefined;
8186
- /**
8187
- * <p>The skills available to the agent. If specified, this replaces all existing skills. If not specified, the existing value is retained.</p>
8188
- * @public
8189
- */
8190
- skills?: HarnessSkill[] | undefined;
8191
- /**
8192
- * <p>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.</p>
8193
- * @public
8194
- */
8195
- allowedTools?: string[] | undefined;
8196
- /**
8197
- * <p>The AgentCore Memory configuration. Use the optionalValue wrapper to set a new value, or set it to null to clear the existing configuration.</p>
8198
- * @public
8199
- */
8200
- memory?: UpdatedHarnessMemoryConfiguration | undefined;
8201
- /**
8202
- * <p>The truncation configuration for managing conversation context. If not specified, the existing value is retained.</p>
8203
- * @public
8204
- */
8205
- truncation?: HarnessTruncationConfiguration | undefined;
8206
- /**
8207
- * <p>The maximum number of iterations the agent loop can execute per invocation. If not specified, the existing value is retained.</p>
8208
- * @public
8209
- */
8210
- maxIterations?: number | undefined;
8211
- /**
8212
- * <p>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.</p>
8213
- * @public
8214
- */
8215
- maxTokens?: number | undefined;
8216
- /**
8217
- * <p>The maximum duration in seconds for the agent loop execution per invocation. If not specified, the existing value is retained.</p>
8218
- * @public
8219
- */
8220
- timeoutSeconds?: number | undefined;
8221
- }
8222
- /**
8223
- * @public
8224
- */
8225
- export interface UpdateHarnessResponse {
8226
- /**
8227
- * <p>The updated harness.</p>
8228
- * @public
8229
- */
8230
- harness: Harness | undefined;
8231
- }
8232
- /**
8233
- * @public
8234
- */
8235
- export interface ListTagsForResourceRequest {
8236
- /**
8237
- * <p>The Amazon Resource Name (ARN) of the resource for which you want to list tags.</p>
8238
- * @public
8239
- */
8240
- resourceArn: string | undefined;
8241
- }
8242
- /**
8243
- * @public
8244
- */
8245
- export interface ListTagsForResourceResponse {
8246
- /**
8247
- * <p>The tags associated with the resource.</p>
8248
- * @public
8249
- */
8250
- tags?: Record<string, string> | undefined;
8251
- }