aws-sdk-bedrockagentcorecontrol 1.15.0 → 1.16.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.
@@ -566,6 +566,20 @@ module Aws::BedrockAgentCoreControl
566
566
  # discovery_url: "DiscoveryUrl", # required
567
567
  # allowed_audience: ["AllowedAudience"],
568
568
  # allowed_clients: ["AllowedClient"],
569
+ # allowed_scopes: ["AllowedScopeType"],
570
+ # custom_claims: [
571
+ # {
572
+ # inbound_token_claim_name: "InboundTokenClaimNameType", # required
573
+ # inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
574
+ # authorizing_claim_match_value: { # required
575
+ # claim_match_value: { # required
576
+ # match_value_string: "MatchValueString",
577
+ # match_value_string_list: ["MatchValueString"],
578
+ # },
579
+ # claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
580
+ # },
581
+ # },
582
+ # ],
569
583
  # },
570
584
  # },
571
585
  # request_header_configuration: {
@@ -885,6 +899,107 @@ module Aws::BedrockAgentCoreControl
885
899
  req.send_request(options)
886
900
  end
887
901
 
902
+ # Creates a custom evaluator for agent quality assessment. Custom
903
+ # evaluators use LLM-as-a-Judge configurations with user-defined
904
+ # prompts, rating scales, and model settings to evaluate agent
905
+ # performance at tool call, trace, or session levels.
906
+ #
907
+ # @option params [String] :client_token
908
+ # A unique, case-sensitive identifier to ensure that the API request
909
+ # completes no more than one time. If you don't specify this field, a
910
+ # value is randomly generated for you. If this token matches a previous
911
+ # request, the service ignores the request, but doesn't return an
912
+ # error. For more information, see [Ensuring idempotency][1].
913
+ #
914
+ # **A suitable default value is auto-generated.** You should normally
915
+ # not need to pass this option.**
916
+ #
917
+ #
918
+ #
919
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
920
+ #
921
+ # @option params [required, String] :evaluator_name
922
+ # The name of the evaluator. Must be unique within your account.
923
+ #
924
+ # @option params [String] :description
925
+ # The description of the evaluator that explains its purpose and
926
+ # evaluation criteria.
927
+ #
928
+ # @option params [required, Types::EvaluatorConfig] :evaluator_config
929
+ # The configuration for the evaluator, including LLM-as-a-Judge settings
930
+ # with instructions, rating scale, and model configuration.
931
+ #
932
+ # @option params [required, String] :level
933
+ # The evaluation level that determines the scope of evaluation. Valid
934
+ # values are `TOOL_CALL` for individual tool invocations, `TRACE` for
935
+ # single request-response interactions, or `SESSION` for entire
936
+ # conversation sessions.
937
+ #
938
+ # @return [Types::CreateEvaluatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
939
+ #
940
+ # * {Types::CreateEvaluatorResponse#evaluator_arn #evaluator_arn} => String
941
+ # * {Types::CreateEvaluatorResponse#evaluator_id #evaluator_id} => String
942
+ # * {Types::CreateEvaluatorResponse#created_at #created_at} => Time
943
+ # * {Types::CreateEvaluatorResponse#status #status} => String
944
+ #
945
+ # @example Request syntax with placeholder values
946
+ #
947
+ # resp = client.create_evaluator({
948
+ # client_token: "ClientToken",
949
+ # evaluator_name: "CustomEvaluatorName", # required
950
+ # description: "EvaluatorDescription",
951
+ # evaluator_config: { # required
952
+ # llm_as_a_judge: {
953
+ # instructions: "EvaluatorInstructions", # required
954
+ # rating_scale: { # required
955
+ # numerical: [
956
+ # {
957
+ # definition: "String", # required
958
+ # value: 1.0, # required
959
+ # label: "NumericalScaleDefinitionLabelString", # required
960
+ # },
961
+ # ],
962
+ # categorical: [
963
+ # {
964
+ # definition: "String", # required
965
+ # label: "CategoricalScaleDefinitionLabelString", # required
966
+ # },
967
+ # ],
968
+ # },
969
+ # model_config: { # required
970
+ # bedrock_evaluator_model_config: {
971
+ # model_id: "ModelId", # required
972
+ # inference_config: {
973
+ # max_tokens: 1,
974
+ # temperature: 1.0,
975
+ # top_p: 1.0,
976
+ # stop_sequences: ["NonEmptyString"],
977
+ # },
978
+ # additional_model_request_fields: {
979
+ # },
980
+ # },
981
+ # },
982
+ # },
983
+ # },
984
+ # level: "TOOL_CALL", # required, accepts TOOL_CALL, TRACE, SESSION
985
+ # })
986
+ #
987
+ # @example Response structure
988
+ #
989
+ # resp.evaluator_arn #=> String
990
+ # resp.evaluator_id #=> String
991
+ # resp.created_at #=> Time
992
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
993
+ #
994
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateEvaluator AWS API Documentation
995
+ #
996
+ # @overload create_evaluator(params = {})
997
+ # @param [Hash] params ({})
998
+ def create_evaluator(params = {}, options = {})
999
+ req = build_request(:create_evaluator, params)
1000
+ req.send_request(options)
1001
+ end
1002
+
888
1003
  # Creates a gateway for Amazon Bedrock Agent. A gateway serves as an
889
1004
  # integration point between your agent and external services.
890
1005
  #
@@ -944,6 +1059,13 @@ module Aws::BedrockAgentCoreControl
944
1059
  # interceptors allow custom code to be invoked during gateway
945
1060
  # invocations.
946
1061
  #
1062
+ # @option params [Types::GatewayPolicyEngineConfiguration] :policy_engine_configuration
1063
+ # The policy engine configuration for the gateway. A policy engine is a
1064
+ # collection of policies that evaluates and authorizes agent tool calls.
1065
+ # When associated with a gateway, the policy engine intercepts all agent
1066
+ # requests and determines whether to allow or deny each action based on
1067
+ # the defined policies.
1068
+ #
947
1069
  # @option params [String] :exception_level
948
1070
  # The level of detail in error messages returned when invoking the
949
1071
  # gateway.
@@ -976,6 +1098,7 @@ module Aws::BedrockAgentCoreControl
976
1098
  # * {Types::CreateGatewayResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
977
1099
  # * {Types::CreateGatewayResponse#kms_key_arn #kms_key_arn} => String
978
1100
  # * {Types::CreateGatewayResponse#interceptor_configurations #interceptor_configurations} => Array<Types::GatewayInterceptorConfiguration>
1101
+ # * {Types::CreateGatewayResponse#policy_engine_configuration #policy_engine_configuration} => Types::GatewayPolicyEngineConfiguration
979
1102
  # * {Types::CreateGatewayResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
980
1103
  # * {Types::CreateGatewayResponse#exception_level #exception_level} => String
981
1104
  #
@@ -1000,6 +1123,20 @@ module Aws::BedrockAgentCoreControl
1000
1123
  # discovery_url: "DiscoveryUrl", # required
1001
1124
  # allowed_audience: ["AllowedAudience"],
1002
1125
  # allowed_clients: ["AllowedClient"],
1126
+ # allowed_scopes: ["AllowedScopeType"],
1127
+ # custom_claims: [
1128
+ # {
1129
+ # inbound_token_claim_name: "InboundTokenClaimNameType", # required
1130
+ # inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
1131
+ # authorizing_claim_match_value: { # required
1132
+ # claim_match_value: { # required
1133
+ # match_value_string: "MatchValueString",
1134
+ # match_value_string_list: ["MatchValueString"],
1135
+ # },
1136
+ # claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
1137
+ # },
1138
+ # },
1139
+ # ],
1003
1140
  # },
1004
1141
  # },
1005
1142
  # kms_key_arn: "KmsKeyArn",
@@ -1016,6 +1153,10 @@ module Aws::BedrockAgentCoreControl
1016
1153
  # },
1017
1154
  # },
1018
1155
  # ],
1156
+ # policy_engine_configuration: {
1157
+ # arn: "GatewayPolicyEngineArn", # required
1158
+ # mode: "LOG_ONLY", # required, accepts LOG_ONLY, ENFORCE
1159
+ # },
1019
1160
  # exception_level: "DEBUG", # accepts DEBUG
1020
1161
  # tags: {
1021
1162
  # "TagKey" => "TagValue",
@@ -1046,12 +1187,23 @@ module Aws::BedrockAgentCoreControl
1046
1187
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
1047
1188
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
1048
1189
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
1190
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
1191
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
1192
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
1193
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
1194
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
1195
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
1196
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
1197
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
1198
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
1049
1199
  # resp.kms_key_arn #=> String
1050
1200
  # resp.interceptor_configurations #=> Array
1051
1201
  # resp.interceptor_configurations[0].interceptor.lambda.arn #=> String
1052
1202
  # resp.interceptor_configurations[0].interception_points #=> Array
1053
1203
  # resp.interceptor_configurations[0].interception_points[0] #=> String, one of "REQUEST", "RESPONSE"
1054
1204
  # resp.interceptor_configurations[0].input_configuration.pass_request_headers #=> Boolean
1205
+ # resp.policy_engine_configuration.arn #=> String
1206
+ # resp.policy_engine_configuration.mode #=> String, one of "LOG_ONLY", "ENFORCE"
1055
1207
  # resp.workload_identity_details.workload_identity_arn #=> String
1056
1208
  # resp.exception_level #=> String, one of "DEBUG"
1057
1209
  #
@@ -1181,6 +1333,26 @@ module Aws::BedrockAgentCoreControl
1181
1333
  # mcp_server: {
1182
1334
  # endpoint: "McpServerTargetConfigurationEndpointString", # required
1183
1335
  # },
1336
+ # api_gateway: {
1337
+ # rest_api_id: "String", # required
1338
+ # stage: "String", # required
1339
+ # api_gateway_tool_configuration: { # required
1340
+ # tool_overrides: [
1341
+ # {
1342
+ # name: "String", # required
1343
+ # description: "String",
1344
+ # path: "String", # required
1345
+ # method: "GET", # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
1346
+ # },
1347
+ # ],
1348
+ # tool_filters: [ # required
1349
+ # {
1350
+ # filter_path: "String", # required
1351
+ # methods: ["GET"], # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
1352
+ # },
1353
+ # ],
1354
+ # },
1355
+ # },
1184
1356
  # },
1185
1357
  # },
1186
1358
  # credential_provider_configurations: [
@@ -1193,6 +1365,8 @@ module Aws::BedrockAgentCoreControl
1193
1365
  # custom_parameters: {
1194
1366
  # "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
1195
1367
  # },
1368
+ # grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE
1369
+ # default_return_url: "OAuthDefaultReturnUrl",
1196
1370
  # },
1197
1371
  # api_key_credential_provider: {
1198
1372
  # provider_arn: "ApiKeyCredentialProviderArn", # required
@@ -1243,6 +1417,17 @@ module Aws::BedrockAgentCoreControl
1243
1417
  # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
1244
1418
  # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
1245
1419
  # resp.target_configuration.mcp.mcp_server.endpoint #=> String
1420
+ # resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
1421
+ # resp.target_configuration.mcp.api_gateway.stage #=> String
1422
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
1423
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
1424
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
1425
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
1426
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
1427
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
1428
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
1429
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
1430
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
1246
1431
  # resp.credential_provider_configurations #=> Array
1247
1432
  # resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY"
1248
1433
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
@@ -1250,6 +1435,8 @@ module Aws::BedrockAgentCoreControl
1250
1435
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
1251
1436
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
1252
1437
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
1438
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE"
1439
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
1253
1440
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
1254
1441
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
1255
1442
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
@@ -1364,6 +1551,21 @@ module Aws::BedrockAgentCoreControl
1364
1551
  # model_id: "String", # required
1365
1552
  # },
1366
1553
  # },
1554
+ # episodic_override: {
1555
+ # extraction: {
1556
+ # append_to_prompt: "Prompt", # required
1557
+ # model_id: "String", # required
1558
+ # },
1559
+ # consolidation: {
1560
+ # append_to_prompt: "Prompt", # required
1561
+ # model_id: "String", # required
1562
+ # },
1563
+ # reflection: {
1564
+ # append_to_prompt: "Prompt", # required
1565
+ # model_id: "String", # required
1566
+ # namespaces: ["Namespace"],
1567
+ # },
1568
+ # },
1367
1569
  # self_managed_configuration: {
1368
1570
  # trigger_conditions: [
1369
1571
  # {
@@ -1386,6 +1588,14 @@ module Aws::BedrockAgentCoreControl
1386
1588
  # },
1387
1589
  # },
1388
1590
  # },
1591
+ # episodic_memory_strategy: {
1592
+ # name: "Name", # required
1593
+ # description: "Description",
1594
+ # namespaces: ["Namespace"],
1595
+ # reflection_configuration: {
1596
+ # namespaces: ["Namespace"], # required
1597
+ # },
1598
+ # },
1389
1599
  # },
1390
1600
  # ],
1391
1601
  # tags: {
@@ -1410,17 +1620,27 @@ module Aws::BedrockAgentCoreControl
1410
1620
  # resp.memory.strategies[0].strategy_id #=> String
1411
1621
  # resp.memory.strategies[0].name #=> String
1412
1622
  # resp.memory.strategies[0].description #=> String
1413
- # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED"
1623
+ # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED", "EPISODIC_OVERRIDE"
1414
1624
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
1415
1625
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
1416
1626
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
1417
1627
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
1628
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.append_to_prompt #=> String
1629
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.model_id #=> String
1418
1630
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
1419
1631
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
1420
1632
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
1421
1633
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
1422
1634
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
1423
1635
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
1636
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.append_to_prompt #=> String
1637
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.model_id #=> String
1638
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.append_to_prompt #=> String
1639
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.model_id #=> String
1640
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces #=> Array
1641
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces[0] #=> String
1642
+ # resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces #=> Array
1643
+ # resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces[0] #=> String
1424
1644
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions #=> Array
1425
1645
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].message_based_trigger.message_count #=> Integer
1426
1646
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].token_based_trigger.token_count #=> Integer
@@ -1428,7 +1648,7 @@ module Aws::BedrockAgentCoreControl
1428
1648
  # resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.topic_arn #=> String
1429
1649
  # resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.payload_delivery_bucket_name #=> String
1430
1650
  # resp.memory.strategies[0].configuration.self_managed_configuration.historical_context_window_size #=> Integer
1431
- # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM"
1651
+ # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM", "EPISODIC"
1432
1652
  # resp.memory.strategies[0].namespaces #=> Array
1433
1653
  # resp.memory.strategies[0].namespaces[0] #=> String
1434
1654
  # resp.memory.strategies[0].created_at #=> Time
@@ -1630,6 +1850,315 @@ module Aws::BedrockAgentCoreControl
1630
1850
  req.send_request(options)
1631
1851
  end
1632
1852
 
1853
+ # Creates an online evaluation configuration for continuous monitoring
1854
+ # of agent performance. Online evaluation automatically samples live
1855
+ # traffic from CloudWatch logs at specified rates and applies evaluators
1856
+ # to assess agent quality in production.
1857
+ #
1858
+ # @option params [String] :client_token
1859
+ # A unique, case-sensitive identifier to ensure that the API request
1860
+ # completes no more than one time. If you don't specify this field, a
1861
+ # value is randomly generated for you. If this token matches a previous
1862
+ # request, the service ignores the request, but doesn't return an
1863
+ # error. For more information, see [Ensuring idempotency][1].
1864
+ #
1865
+ # **A suitable default value is auto-generated.** You should normally
1866
+ # not need to pass this option.**
1867
+ #
1868
+ #
1869
+ #
1870
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1871
+ #
1872
+ # @option params [required, String] :online_evaluation_config_name
1873
+ # The name of the online evaluation configuration. Must be unique within
1874
+ # your account.
1875
+ #
1876
+ # @option params [String] :description
1877
+ # The description of the online evaluation configuration that explains
1878
+ # its monitoring purpose and scope.
1879
+ #
1880
+ # @option params [required, Types::Rule] :rule
1881
+ # The evaluation rule that defines sampling configuration, filters, and
1882
+ # session detection settings for the online evaluation.
1883
+ #
1884
+ # @option params [required, Types::DataSourceConfig] :data_source_config
1885
+ # The data source configuration that specifies CloudWatch log groups and
1886
+ # service names to monitor for agent traces.
1887
+ #
1888
+ # @option params [required, Array<Types::EvaluatorReference>] :evaluators
1889
+ # The list of evaluators to apply during online evaluation. Can include
1890
+ # both built-in evaluators and custom evaluators created with
1891
+ # `CreateEvaluator`.
1892
+ #
1893
+ # @option params [required, String] :evaluation_execution_role_arn
1894
+ # The Amazon Resource Name (ARN) of the IAM role that grants permissions
1895
+ # to read from CloudWatch logs, write evaluation results, and invoke
1896
+ # Amazon Bedrock models for evaluation.
1897
+ #
1898
+ # @option params [required, Boolean] :enable_on_create
1899
+ # Whether to enable the online evaluation configuration immediately upon
1900
+ # creation. If true, evaluation begins automatically.
1901
+ #
1902
+ # @return [Types::CreateOnlineEvaluationConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1903
+ #
1904
+ # * {Types::CreateOnlineEvaluationConfigResponse#online_evaluation_config_arn #online_evaluation_config_arn} => String
1905
+ # * {Types::CreateOnlineEvaluationConfigResponse#online_evaluation_config_id #online_evaluation_config_id} => String
1906
+ # * {Types::CreateOnlineEvaluationConfigResponse#created_at #created_at} => Time
1907
+ # * {Types::CreateOnlineEvaluationConfigResponse#output_config #output_config} => Types::OutputConfig
1908
+ # * {Types::CreateOnlineEvaluationConfigResponse#status #status} => String
1909
+ # * {Types::CreateOnlineEvaluationConfigResponse#execution_status #execution_status} => String
1910
+ # * {Types::CreateOnlineEvaluationConfigResponse#failure_reason #failure_reason} => String
1911
+ #
1912
+ # @example Request syntax with placeholder values
1913
+ #
1914
+ # resp = client.create_online_evaluation_config({
1915
+ # client_token: "ClientToken",
1916
+ # online_evaluation_config_name: "EvaluationConfigName", # required
1917
+ # description: "EvaluationConfigDescription",
1918
+ # rule: { # required
1919
+ # sampling_config: { # required
1920
+ # sampling_percentage: 1.0, # required
1921
+ # },
1922
+ # filters: [
1923
+ # {
1924
+ # key: "FilterKeyString", # required
1925
+ # operator: "Equals", # required, accepts Equals, NotEquals, GreaterThan, LessThan, GreaterThanOrEqual, LessThanOrEqual, Contains, NotContains
1926
+ # value: { # required
1927
+ # string_value: "FilterValueStringValueString",
1928
+ # double_value: 1.0,
1929
+ # boolean_value: false,
1930
+ # },
1931
+ # },
1932
+ # ],
1933
+ # session_config: {
1934
+ # session_timeout_minutes: 1, # required
1935
+ # },
1936
+ # },
1937
+ # data_source_config: { # required
1938
+ # cloud_watch_logs: {
1939
+ # log_group_names: ["LogGroupName"], # required
1940
+ # service_names: ["ServiceName"], # required
1941
+ # },
1942
+ # },
1943
+ # evaluators: [ # required
1944
+ # {
1945
+ # evaluator_id: "EvaluatorId",
1946
+ # },
1947
+ # ],
1948
+ # evaluation_execution_role_arn: "RoleArn", # required
1949
+ # enable_on_create: false, # required
1950
+ # })
1951
+ #
1952
+ # @example Response structure
1953
+ #
1954
+ # resp.online_evaluation_config_arn #=> String
1955
+ # resp.online_evaluation_config_id #=> String
1956
+ # resp.created_at #=> Time
1957
+ # resp.output_config.cloud_watch_config.log_group_name #=> String
1958
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
1959
+ # resp.execution_status #=> String, one of "ENABLED", "DISABLED"
1960
+ # resp.failure_reason #=> String
1961
+ #
1962
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateOnlineEvaluationConfig AWS API Documentation
1963
+ #
1964
+ # @overload create_online_evaluation_config(params = {})
1965
+ # @param [Hash] params ({})
1966
+ def create_online_evaluation_config(params = {}, options = {})
1967
+ req = build_request(:create_online_evaluation_config, params)
1968
+ req.send_request(options)
1969
+ end
1970
+
1971
+ # Creates a policy within the AgentCore Policy system. Policies provide
1972
+ # real-time, deterministic control over agentic interactions with
1973
+ # AgentCore Gateway. Using the Cedar policy language, you can define
1974
+ # fine-grained policies that specify which interactions with Gateway
1975
+ # tools are permitted based on input parameters and OAuth claims,
1976
+ # ensuring agents operate within defined boundaries and business rules.
1977
+ # The policy is validated during creation against the Cedar schema
1978
+ # generated from the Gateway's tools' input schemas, which defines the
1979
+ # available tools, their parameters, and expected data types. This is an
1980
+ # asynchronous operation. Use the [GetPolicy][1] operation to poll the
1981
+ # `status` field to track completion.
1982
+ #
1983
+ #
1984
+ #
1985
+ # [1]: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/API_GetPolicy.html
1986
+ #
1987
+ # @option params [required, String] :name
1988
+ # The customer-assigned immutable name for the policy. Must be unique
1989
+ # within the account. This name is used for policy identification and
1990
+ # cannot be changed after creation.
1991
+ #
1992
+ # @option params [required, Types::PolicyDefinition] :definition
1993
+ # The Cedar policy statement that defines the access control rules. This
1994
+ # contains the actual policy logic written in Cedar policy language,
1995
+ # specifying effect (permit or forbid), principals, actions, resources,
1996
+ # and conditions for agent behavior control.
1997
+ #
1998
+ # @option params [String] :description
1999
+ # A human-readable description of the policy's purpose and
2000
+ # functionality (1-4,096 characters). This helps policy administrators
2001
+ # understand the policy's intent, business rules, and operational
2002
+ # scope. Use this field to document why the policy exists, what business
2003
+ # requirement it addresses, and any special considerations for
2004
+ # maintenance. Clear descriptions are essential for policy governance,
2005
+ # auditing, and troubleshooting.
2006
+ #
2007
+ # @option params [String] :validation_mode
2008
+ # The validation mode for the policy creation. Determines how Cedar
2009
+ # analyzer validation results are handled during policy creation.
2010
+ # FAIL\_ON\_ANY\_FINDINGS (default) runs the Cedar analyzer to validate
2011
+ # the policy against the Cedar schema and tool context, failing creation
2012
+ # if the analyzer detects any validation issues to ensure strict
2013
+ # conformance. IGNORE\_ALL\_FINDINGS runs the Cedar analyzer but allows
2014
+ # policy creation even if validation issues are detected, useful for
2015
+ # testing or when the policy schema is evolving. Use
2016
+ # FAIL\_ON\_ANY\_FINDINGS for production policies to ensure correctness,
2017
+ # and IGNORE\_ALL\_FINDINGS only when you understand and accept the
2018
+ # analyzer findings.
2019
+ #
2020
+ # @option params [required, String] :policy_engine_id
2021
+ # The identifier of the policy engine which contains this policy. Policy
2022
+ # engines group related policies and provide the execution context for
2023
+ # policy evaluation.
2024
+ #
2025
+ # @option params [String] :client_token
2026
+ # A unique, case-sensitive identifier to ensure the idempotency of the
2027
+ # request. The AWS SDK automatically generates this token, so you don't
2028
+ # need to provide it in most cases. If you retry a request with the same
2029
+ # client token, the service returns the same response without creating a
2030
+ # duplicate policy.
2031
+ #
2032
+ # **A suitable default value is auto-generated.** You should normally
2033
+ # not need to pass this option.**
2034
+ #
2035
+ # @return [Types::CreatePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2036
+ #
2037
+ # * {Types::CreatePolicyResponse#policy_id #policy_id} => String
2038
+ # * {Types::CreatePolicyResponse#name #name} => String
2039
+ # * {Types::CreatePolicyResponse#policy_engine_id #policy_engine_id} => String
2040
+ # * {Types::CreatePolicyResponse#definition #definition} => Types::PolicyDefinition
2041
+ # * {Types::CreatePolicyResponse#description #description} => String
2042
+ # * {Types::CreatePolicyResponse#created_at #created_at} => Time
2043
+ # * {Types::CreatePolicyResponse#updated_at #updated_at} => Time
2044
+ # * {Types::CreatePolicyResponse#policy_arn #policy_arn} => String
2045
+ # * {Types::CreatePolicyResponse#status #status} => String
2046
+ # * {Types::CreatePolicyResponse#status_reasons #status_reasons} => Array&lt;String&gt;
2047
+ #
2048
+ # @example Request syntax with placeholder values
2049
+ #
2050
+ # resp = client.create_policy({
2051
+ # name: "PolicyName", # required
2052
+ # definition: { # required
2053
+ # cedar: {
2054
+ # statement: "Statement", # required
2055
+ # },
2056
+ # },
2057
+ # description: "Description",
2058
+ # validation_mode: "FAIL_ON_ANY_FINDINGS", # accepts FAIL_ON_ANY_FINDINGS, IGNORE_ALL_FINDINGS
2059
+ # policy_engine_id: "ResourceId", # required
2060
+ # client_token: "ClientToken",
2061
+ # })
2062
+ #
2063
+ # @example Response structure
2064
+ #
2065
+ # resp.policy_id #=> String
2066
+ # resp.name #=> String
2067
+ # resp.policy_engine_id #=> String
2068
+ # resp.definition.cedar.statement #=> String
2069
+ # resp.description #=> String
2070
+ # resp.created_at #=> Time
2071
+ # resp.updated_at #=> Time
2072
+ # resp.policy_arn #=> String
2073
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
2074
+ # resp.status_reasons #=> Array
2075
+ # resp.status_reasons[0] #=> String
2076
+ #
2077
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreatePolicy AWS API Documentation
2078
+ #
2079
+ # @overload create_policy(params = {})
2080
+ # @param [Hash] params ({})
2081
+ def create_policy(params = {}, options = {})
2082
+ req = build_request(:create_policy, params)
2083
+ req.send_request(options)
2084
+ end
2085
+
2086
+ # Creates a new policy engine within the AgentCore Policy system. A
2087
+ # policy engine is a collection of policies that evaluates and
2088
+ # authorizes agent tool calls. When associated with Gateways (each
2089
+ # Gateway can be associated with at most one policy engine, but multiple
2090
+ # Gateways can be associated with the same engine), the policy engine
2091
+ # intercepts all agent requests and determines whether to allow or deny
2092
+ # each action based on the defined policies. This is an asynchronous
2093
+ # operation. Use the [GetPolicyEngine][1] operation to poll the `status`
2094
+ # field to track completion.
2095
+ #
2096
+ #
2097
+ #
2098
+ # [1]: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/API_GetPolicyEngine.html
2099
+ #
2100
+ # @option params [required, String] :name
2101
+ # The customer-assigned immutable name for the policy engine. This name
2102
+ # identifies the policy engine and cannot be changed after creation.
2103
+ #
2104
+ # @option params [String] :description
2105
+ # A human-readable description of the policy engine's purpose and scope
2106
+ # (1-4,096 characters). This helps administrators understand the policy
2107
+ # engine's role in the overall governance strategy. Document which
2108
+ # Gateway this engine will be associated with, what types of tools or
2109
+ # workflows it governs, and the team or service responsible for
2110
+ # maintaining it. Clear descriptions are essential when managing
2111
+ # multiple policy engines across different services or environments.
2112
+ #
2113
+ # @option params [String] :client_token
2114
+ # A unique, case-sensitive identifier that you provide to ensure the
2115
+ # idempotency of the request. If you retry a request with the same
2116
+ # client token, the service returns the same response without creating a
2117
+ # duplicate policy engine.
2118
+ #
2119
+ # **A suitable default value is auto-generated.** You should normally
2120
+ # not need to pass this option.**
2121
+ #
2122
+ # @return [Types::CreatePolicyEngineResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2123
+ #
2124
+ # * {Types::CreatePolicyEngineResponse#policy_engine_id #policy_engine_id} => String
2125
+ # * {Types::CreatePolicyEngineResponse#name #name} => String
2126
+ # * {Types::CreatePolicyEngineResponse#description #description} => String
2127
+ # * {Types::CreatePolicyEngineResponse#created_at #created_at} => Time
2128
+ # * {Types::CreatePolicyEngineResponse#updated_at #updated_at} => Time
2129
+ # * {Types::CreatePolicyEngineResponse#policy_engine_arn #policy_engine_arn} => String
2130
+ # * {Types::CreatePolicyEngineResponse#status #status} => String
2131
+ # * {Types::CreatePolicyEngineResponse#status_reasons #status_reasons} => Array&lt;String&gt;
2132
+ #
2133
+ # @example Request syntax with placeholder values
2134
+ #
2135
+ # resp = client.create_policy_engine({
2136
+ # name: "PolicyEngineName", # required
2137
+ # description: "Description",
2138
+ # client_token: "ClientToken",
2139
+ # })
2140
+ #
2141
+ # @example Response structure
2142
+ #
2143
+ # resp.policy_engine_id #=> String
2144
+ # resp.name #=> String
2145
+ # resp.description #=> String
2146
+ # resp.created_at #=> Time
2147
+ # resp.updated_at #=> Time
2148
+ # resp.policy_engine_arn #=> String
2149
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
2150
+ # resp.status_reasons #=> Array
2151
+ # resp.status_reasons[0] #=> String
2152
+ #
2153
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreatePolicyEngine AWS API Documentation
2154
+ #
2155
+ # @overload create_policy_engine(params = {})
2156
+ # @param [Hash] params ({})
2157
+ def create_policy_engine(params = {}, options = {})
2158
+ req = build_request(:create_policy_engine, params)
2159
+ req.send_request(options)
2160
+ end
2161
+
1633
2162
  # Creates a new workload identity.
1634
2163
  #
1635
2164
  # @option params [required, String] :name
@@ -1863,6 +2392,40 @@ module Aws::BedrockAgentCoreControl
1863
2392
  req.send_request(options)
1864
2393
  end
1865
2394
 
2395
+ # Deletes a custom evaluator. Builtin evaluators cannot be deleted. The
2396
+ # evaluator must not be referenced by any active online evaluation
2397
+ # configurations.
2398
+ #
2399
+ # @option params [required, String] :evaluator_id
2400
+ # The unique identifier of the evaluator to delete.
2401
+ #
2402
+ # @return [Types::DeleteEvaluatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2403
+ #
2404
+ # * {Types::DeleteEvaluatorResponse#evaluator_arn #evaluator_arn} => String
2405
+ # * {Types::DeleteEvaluatorResponse#evaluator_id #evaluator_id} => String
2406
+ # * {Types::DeleteEvaluatorResponse#status #status} => String
2407
+ #
2408
+ # @example Request syntax with placeholder values
2409
+ #
2410
+ # resp = client.delete_evaluator({
2411
+ # evaluator_id: "EvaluatorId", # required
2412
+ # })
2413
+ #
2414
+ # @example Response structure
2415
+ #
2416
+ # resp.evaluator_arn #=> String
2417
+ # resp.evaluator_id #=> String
2418
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
2419
+ #
2420
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteEvaluator AWS API Documentation
2421
+ #
2422
+ # @overload delete_evaluator(params = {})
2423
+ # @param [Hash] params ({})
2424
+ def delete_evaluator(params = {}, options = {})
2425
+ req = build_request(:delete_evaluator, params)
2426
+ req.send_request(options)
2427
+ end
2428
+
1866
2429
  # Deletes a gateway.
1867
2430
  #
1868
2431
  # @option params [required, String] :gateway_identifier
@@ -1996,51 +2559,221 @@ module Aws::BedrockAgentCoreControl
1996
2559
  req.send_request(options)
1997
2560
  end
1998
2561
 
1999
- # Deletes a workload identity.
2562
+ # Deletes an online evaluation configuration and stops any ongoing
2563
+ # evaluation processes associated with it.
2000
2564
  #
2001
- # @option params [required, String] :name
2002
- # The name of the workload identity to delete.
2565
+ # @option params [required, String] :online_evaluation_config_id
2566
+ # The unique identifier of the online evaluation configuration to
2567
+ # delete.
2003
2568
  #
2004
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2569
+ # @return [Types::DeleteOnlineEvaluationConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2570
+ #
2571
+ # * {Types::DeleteOnlineEvaluationConfigResponse#online_evaluation_config_arn #online_evaluation_config_arn} => String
2572
+ # * {Types::DeleteOnlineEvaluationConfigResponse#online_evaluation_config_id #online_evaluation_config_id} => String
2573
+ # * {Types::DeleteOnlineEvaluationConfigResponse#status #status} => String
2005
2574
  #
2006
2575
  # @example Request syntax with placeholder values
2007
2576
  #
2008
- # resp = client.delete_workload_identity({
2009
- # name: "WorkloadIdentityNameType", # required
2577
+ # resp = client.delete_online_evaluation_config({
2578
+ # online_evaluation_config_id: "OnlineEvaluationConfigId", # required
2010
2579
  # })
2011
2580
  #
2012
- # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteWorkloadIdentity AWS API Documentation
2581
+ # @example Response structure
2013
2582
  #
2014
- # @overload delete_workload_identity(params = {})
2583
+ # resp.online_evaluation_config_arn #=> String
2584
+ # resp.online_evaluation_config_id #=> String
2585
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
2586
+ #
2587
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteOnlineEvaluationConfig AWS API Documentation
2588
+ #
2589
+ # @overload delete_online_evaluation_config(params = {})
2015
2590
  # @param [Hash] params ({})
2016
- def delete_workload_identity(params = {}, options = {})
2017
- req = build_request(:delete_workload_identity, params)
2591
+ def delete_online_evaluation_config(params = {}, options = {})
2592
+ req = build_request(:delete_online_evaluation_config, params)
2018
2593
  req.send_request(options)
2019
2594
  end
2020
2595
 
2021
- # Gets an Amazon Bedrock AgentCore Runtime.
2596
+ # Deletes an existing policy from the AgentCore Policy system. Once
2597
+ # deleted, the policy can no longer be used for agent behavior control
2598
+ # and all references to it become invalid. This is an asynchronous
2599
+ # operation. Use the `GetPolicy` operation to poll the `status` field to
2600
+ # track completion.
2601
+ #
2602
+ # @option params [required, String] :policy_engine_id
2603
+ # The identifier of the policy engine that manages the policy to be
2604
+ # deleted. This ensures the policy is deleted from the correct policy
2605
+ # engine context.
2606
+ #
2607
+ # @option params [required, String] :policy_id
2608
+ # The unique identifier of the policy to be deleted. This must be a
2609
+ # valid policy ID that exists within the specified policy engine.
2610
+ #
2611
+ # @return [Types::DeletePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2612
+ #
2613
+ # * {Types::DeletePolicyResponse#policy_id #policy_id} => String
2614
+ # * {Types::DeletePolicyResponse#name #name} => String
2615
+ # * {Types::DeletePolicyResponse#policy_engine_id #policy_engine_id} => String
2616
+ # * {Types::DeletePolicyResponse#definition #definition} => Types::PolicyDefinition
2617
+ # * {Types::DeletePolicyResponse#description #description} => String
2618
+ # * {Types::DeletePolicyResponse#created_at #created_at} => Time
2619
+ # * {Types::DeletePolicyResponse#updated_at #updated_at} => Time
2620
+ # * {Types::DeletePolicyResponse#policy_arn #policy_arn} => String
2621
+ # * {Types::DeletePolicyResponse#status #status} => String
2622
+ # * {Types::DeletePolicyResponse#status_reasons #status_reasons} => Array&lt;String&gt;
2022
2623
  #
2023
- # @option params [required, String] :agent_runtime_id
2024
- # The unique identifier of the AgentCore Runtime to retrieve.
2624
+ # @example Request syntax with placeholder values
2025
2625
  #
2026
- # @option params [String] :agent_runtime_version
2027
- # The version of the AgentCore Runtime to retrieve.
2626
+ # resp = client.delete_policy({
2627
+ # policy_engine_id: "ResourceId", # required
2628
+ # policy_id: "ResourceId", # required
2629
+ # })
2028
2630
  #
2029
- # @return [Types::GetAgentRuntimeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2631
+ # @example Response structure
2030
2632
  #
2031
- # * {Types::GetAgentRuntimeResponse#agent_runtime_arn #agent_runtime_arn} => String
2032
- # * {Types::GetAgentRuntimeResponse#agent_runtime_name #agent_runtime_name} => String
2033
- # * {Types::GetAgentRuntimeResponse#agent_runtime_id #agent_runtime_id} => String
2034
- # * {Types::GetAgentRuntimeResponse#agent_runtime_version #agent_runtime_version} => String
2035
- # * {Types::GetAgentRuntimeResponse#created_at #created_at} => Time
2036
- # * {Types::GetAgentRuntimeResponse#last_updated_at #last_updated_at} => Time
2037
- # * {Types::GetAgentRuntimeResponse#role_arn #role_arn} => String
2038
- # * {Types::GetAgentRuntimeResponse#network_configuration #network_configuration} => Types::NetworkConfiguration
2039
- # * {Types::GetAgentRuntimeResponse#status #status} => String
2040
- # * {Types::GetAgentRuntimeResponse#lifecycle_configuration #lifecycle_configuration} => Types::LifecycleConfiguration
2041
- # * {Types::GetAgentRuntimeResponse#description #description} => String
2042
- # * {Types::GetAgentRuntimeResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
2043
- # * {Types::GetAgentRuntimeResponse#agent_runtime_artifact #agent_runtime_artifact} => Types::AgentRuntimeArtifact
2633
+ # resp.policy_id #=> String
2634
+ # resp.name #=> String
2635
+ # resp.policy_engine_id #=> String
2636
+ # resp.definition.cedar.statement #=> String
2637
+ # resp.description #=> String
2638
+ # resp.created_at #=> Time
2639
+ # resp.updated_at #=> Time
2640
+ # resp.policy_arn #=> String
2641
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
2642
+ # resp.status_reasons #=> Array
2643
+ # resp.status_reasons[0] #=> String
2644
+ #
2645
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeletePolicy AWS API Documentation
2646
+ #
2647
+ # @overload delete_policy(params = {})
2648
+ # @param [Hash] params ({})
2649
+ def delete_policy(params = {}, options = {})
2650
+ req = build_request(:delete_policy, params)
2651
+ req.send_request(options)
2652
+ end
2653
+
2654
+ # Deletes an existing policy engine from the AgentCore Policy system.
2655
+ # The policy engine must not have any associated policies before
2656
+ # deletion. Once deleted, the policy engine and all its configurations
2657
+ # become unavailable for policy management and evaluation. This is an
2658
+ # asynchronous operation. Use the `GetPolicyEngine` operation to poll
2659
+ # the `status` field to track completion.
2660
+ #
2661
+ # @option params [required, String] :policy_engine_id
2662
+ # The unique identifier of the policy engine to be deleted. This must be
2663
+ # a valid policy engine ID that exists within the account.
2664
+ #
2665
+ # @return [Types::DeletePolicyEngineResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2666
+ #
2667
+ # * {Types::DeletePolicyEngineResponse#policy_engine_id #policy_engine_id} => String
2668
+ # * {Types::DeletePolicyEngineResponse#name #name} => String
2669
+ # * {Types::DeletePolicyEngineResponse#description #description} => String
2670
+ # * {Types::DeletePolicyEngineResponse#created_at #created_at} => Time
2671
+ # * {Types::DeletePolicyEngineResponse#updated_at #updated_at} => Time
2672
+ # * {Types::DeletePolicyEngineResponse#policy_engine_arn #policy_engine_arn} => String
2673
+ # * {Types::DeletePolicyEngineResponse#status #status} => String
2674
+ # * {Types::DeletePolicyEngineResponse#status_reasons #status_reasons} => Array&lt;String&gt;
2675
+ #
2676
+ # @example Request syntax with placeholder values
2677
+ #
2678
+ # resp = client.delete_policy_engine({
2679
+ # policy_engine_id: "ResourceId", # required
2680
+ # })
2681
+ #
2682
+ # @example Response structure
2683
+ #
2684
+ # resp.policy_engine_id #=> String
2685
+ # resp.name #=> String
2686
+ # resp.description #=> String
2687
+ # resp.created_at #=> Time
2688
+ # resp.updated_at #=> Time
2689
+ # resp.policy_engine_arn #=> String
2690
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
2691
+ # resp.status_reasons #=> Array
2692
+ # resp.status_reasons[0] #=> String
2693
+ #
2694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeletePolicyEngine AWS API Documentation
2695
+ #
2696
+ # @overload delete_policy_engine(params = {})
2697
+ # @param [Hash] params ({})
2698
+ def delete_policy_engine(params = {}, options = {})
2699
+ req = build_request(:delete_policy_engine, params)
2700
+ req.send_request(options)
2701
+ end
2702
+
2703
+ # Deletes the resource-based policy for a specified resource.
2704
+ #
2705
+ # <note markdown="1"> This feature is currently available only for AgentCore Runtime and
2706
+ # Gateway.
2707
+ #
2708
+ # </note>
2709
+ #
2710
+ # @option params [required, String] :resource_arn
2711
+ # The Amazon Resource Name (ARN) of the resource for which to delete the
2712
+ # resource policy.
2713
+ #
2714
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2715
+ #
2716
+ # @example Request syntax with placeholder values
2717
+ #
2718
+ # resp = client.delete_resource_policy({
2719
+ # resource_arn: "BedrockAgentcoreResourceArn", # required
2720
+ # })
2721
+ #
2722
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteResourcePolicy AWS API Documentation
2723
+ #
2724
+ # @overload delete_resource_policy(params = {})
2725
+ # @param [Hash] params ({})
2726
+ def delete_resource_policy(params = {}, options = {})
2727
+ req = build_request(:delete_resource_policy, params)
2728
+ req.send_request(options)
2729
+ end
2730
+
2731
+ # Deletes a workload identity.
2732
+ #
2733
+ # @option params [required, String] :name
2734
+ # The name of the workload identity to delete.
2735
+ #
2736
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2737
+ #
2738
+ # @example Request syntax with placeholder values
2739
+ #
2740
+ # resp = client.delete_workload_identity({
2741
+ # name: "WorkloadIdentityNameType", # required
2742
+ # })
2743
+ #
2744
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteWorkloadIdentity AWS API Documentation
2745
+ #
2746
+ # @overload delete_workload_identity(params = {})
2747
+ # @param [Hash] params ({})
2748
+ def delete_workload_identity(params = {}, options = {})
2749
+ req = build_request(:delete_workload_identity, params)
2750
+ req.send_request(options)
2751
+ end
2752
+
2753
+ # Gets an Amazon Bedrock AgentCore Runtime.
2754
+ #
2755
+ # @option params [required, String] :agent_runtime_id
2756
+ # The unique identifier of the AgentCore Runtime to retrieve.
2757
+ #
2758
+ # @option params [String] :agent_runtime_version
2759
+ # The version of the AgentCore Runtime to retrieve.
2760
+ #
2761
+ # @return [Types::GetAgentRuntimeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2762
+ #
2763
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_arn #agent_runtime_arn} => String
2764
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_name #agent_runtime_name} => String
2765
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_id #agent_runtime_id} => String
2766
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_version #agent_runtime_version} => String
2767
+ # * {Types::GetAgentRuntimeResponse#created_at #created_at} => Time
2768
+ # * {Types::GetAgentRuntimeResponse#last_updated_at #last_updated_at} => Time
2769
+ # * {Types::GetAgentRuntimeResponse#role_arn #role_arn} => String
2770
+ # * {Types::GetAgentRuntimeResponse#network_configuration #network_configuration} => Types::NetworkConfiguration
2771
+ # * {Types::GetAgentRuntimeResponse#status #status} => String
2772
+ # * {Types::GetAgentRuntimeResponse#lifecycle_configuration #lifecycle_configuration} => Types::LifecycleConfiguration
2773
+ # * {Types::GetAgentRuntimeResponse#failure_reason #failure_reason} => String
2774
+ # * {Types::GetAgentRuntimeResponse#description #description} => String
2775
+ # * {Types::GetAgentRuntimeResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
2776
+ # * {Types::GetAgentRuntimeResponse#agent_runtime_artifact #agent_runtime_artifact} => Types::AgentRuntimeArtifact
2044
2777
  # * {Types::GetAgentRuntimeResponse#protocol_configuration #protocol_configuration} => Types::ProtocolConfiguration
2045
2778
  # * {Types::GetAgentRuntimeResponse#environment_variables #environment_variables} => Hash&lt;String,String&gt;
2046
2779
  # * {Types::GetAgentRuntimeResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
@@ -2070,6 +2803,7 @@ module Aws::BedrockAgentCoreControl
2070
2803
  # resp.status #=> String, one of "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "READY", "DELETING"
2071
2804
  # resp.lifecycle_configuration.idle_runtime_session_timeout #=> Integer
2072
2805
  # resp.lifecycle_configuration.max_lifetime #=> Integer
2806
+ # resp.failure_reason #=> String
2073
2807
  # resp.description #=> String
2074
2808
  # resp.workload_identity_details.workload_identity_arn #=> String
2075
2809
  # resp.agent_runtime_artifact.container_configuration.container_uri #=> String
@@ -2087,6 +2821,15 @@ module Aws::BedrockAgentCoreControl
2087
2821
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
2088
2822
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
2089
2823
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
2824
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
2825
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
2826
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
2827
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
2828
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
2829
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
2830
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
2831
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
2832
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
2090
2833
  # resp.request_header_configuration.request_header_allowlist #=> Array
2091
2834
  # resp.request_header_configuration.request_header_allowlist[0] #=> String
2092
2835
  #
@@ -2295,6 +3038,68 @@ module Aws::BedrockAgentCoreControl
2295
3038
  req.send_request(options)
2296
3039
  end
2297
3040
 
3041
+ # Retrieves detailed information about an evaluator, including its
3042
+ # configuration, status, and metadata. Works with both built-in and
3043
+ # custom evaluators.
3044
+ #
3045
+ # @option params [required, String] :evaluator_id
3046
+ # The unique identifier of the evaluator to retrieve. Can be a built-in
3047
+ # evaluator ID (e.g., Builtin.Helpfulness) or a custom evaluator ID.
3048
+ #
3049
+ # @return [Types::GetEvaluatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3050
+ #
3051
+ # * {Types::GetEvaluatorResponse#evaluator_arn #evaluator_arn} => String
3052
+ # * {Types::GetEvaluatorResponse#evaluator_id #evaluator_id} => String
3053
+ # * {Types::GetEvaluatorResponse#evaluator_name #evaluator_name} => String
3054
+ # * {Types::GetEvaluatorResponse#description #description} => String
3055
+ # * {Types::GetEvaluatorResponse#evaluator_config #evaluator_config} => Types::EvaluatorConfig
3056
+ # * {Types::GetEvaluatorResponse#level #level} => String
3057
+ # * {Types::GetEvaluatorResponse#status #status} => String
3058
+ # * {Types::GetEvaluatorResponse#created_at #created_at} => Time
3059
+ # * {Types::GetEvaluatorResponse#updated_at #updated_at} => Time
3060
+ # * {Types::GetEvaluatorResponse#locked_for_modification #locked_for_modification} => Boolean
3061
+ #
3062
+ # @example Request syntax with placeholder values
3063
+ #
3064
+ # resp = client.get_evaluator({
3065
+ # evaluator_id: "EvaluatorId", # required
3066
+ # })
3067
+ #
3068
+ # @example Response structure
3069
+ #
3070
+ # resp.evaluator_arn #=> String
3071
+ # resp.evaluator_id #=> String
3072
+ # resp.evaluator_name #=> String
3073
+ # resp.description #=> String
3074
+ # resp.evaluator_config.llm_as_a_judge.instructions #=> String
3075
+ # resp.evaluator_config.llm_as_a_judge.rating_scale.numerical #=> Array
3076
+ # resp.evaluator_config.llm_as_a_judge.rating_scale.numerical[0].definition #=> String
3077
+ # resp.evaluator_config.llm_as_a_judge.rating_scale.numerical[0].value #=> Float
3078
+ # resp.evaluator_config.llm_as_a_judge.rating_scale.numerical[0].label #=> String
3079
+ # resp.evaluator_config.llm_as_a_judge.rating_scale.categorical #=> Array
3080
+ # resp.evaluator_config.llm_as_a_judge.rating_scale.categorical[0].definition #=> String
3081
+ # resp.evaluator_config.llm_as_a_judge.rating_scale.categorical[0].label #=> String
3082
+ # resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.model_id #=> String
3083
+ # resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.max_tokens #=> Integer
3084
+ # resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.temperature #=> Float
3085
+ # resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.top_p #=> Float
3086
+ # resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.stop_sequences #=> Array
3087
+ # resp.evaluator_config.llm_as_a_judge.model_config.bedrock_evaluator_model_config.inference_config.stop_sequences[0] #=> String
3088
+ # resp.level #=> String, one of "TOOL_CALL", "TRACE", "SESSION"
3089
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
3090
+ # resp.created_at #=> Time
3091
+ # resp.updated_at #=> Time
3092
+ # resp.locked_for_modification #=> Boolean
3093
+ #
3094
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetEvaluator AWS API Documentation
3095
+ #
3096
+ # @overload get_evaluator(params = {})
3097
+ # @param [Hash] params ({})
3098
+ def get_evaluator(params = {}, options = {})
3099
+ req = build_request(:get_evaluator, params)
3100
+ req.send_request(options)
3101
+ end
3102
+
2298
3103
  # Retrieves information about a specific Gateway.
2299
3104
  #
2300
3105
  # @option params [required, String] :gateway_identifier
@@ -2318,6 +3123,7 @@ module Aws::BedrockAgentCoreControl
2318
3123
  # * {Types::GetGatewayResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
2319
3124
  # * {Types::GetGatewayResponse#kms_key_arn #kms_key_arn} => String
2320
3125
  # * {Types::GetGatewayResponse#interceptor_configurations #interceptor_configurations} => Array&lt;Types::GatewayInterceptorConfiguration&gt;
3126
+ # * {Types::GetGatewayResponse#policy_engine_configuration #policy_engine_configuration} => Types::GatewayPolicyEngineConfiguration
2321
3127
  # * {Types::GetGatewayResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
2322
3128
  # * {Types::GetGatewayResponse#exception_level #exception_level} => String
2323
3129
  #
@@ -2351,12 +3157,23 @@ module Aws::BedrockAgentCoreControl
2351
3157
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
2352
3158
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
2353
3159
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
3160
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
3161
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
3162
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
3163
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
3164
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
3165
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
3166
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
3167
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
3168
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
2354
3169
  # resp.kms_key_arn #=> String
2355
3170
  # resp.interceptor_configurations #=> Array
2356
3171
  # resp.interceptor_configurations[0].interceptor.lambda.arn #=> String
2357
3172
  # resp.interceptor_configurations[0].interception_points #=> Array
2358
3173
  # resp.interceptor_configurations[0].interception_points[0] #=> String, one of "REQUEST", "RESPONSE"
2359
3174
  # resp.interceptor_configurations[0].input_configuration.pass_request_headers #=> Boolean
3175
+ # resp.policy_engine_configuration.arn #=> String
3176
+ # resp.policy_engine_configuration.mode #=> String, one of "LOG_ONLY", "ENFORCE"
2360
3177
  # resp.workload_identity_details.workload_identity_arn #=> String
2361
3178
  # resp.exception_level #=> String, one of "DEBUG"
2362
3179
  #
@@ -2436,6 +3253,17 @@ module Aws::BedrockAgentCoreControl
2436
3253
  # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
2437
3254
  # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
2438
3255
  # resp.target_configuration.mcp.mcp_server.endpoint #=> String
3256
+ # resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
3257
+ # resp.target_configuration.mcp.api_gateway.stage #=> String
3258
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
3259
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
3260
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
3261
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
3262
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
3263
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
3264
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
3265
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
3266
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
2439
3267
  # resp.credential_provider_configurations #=> Array
2440
3268
  # resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY"
2441
3269
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
@@ -2443,6 +3271,8 @@ module Aws::BedrockAgentCoreControl
2443
3271
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
2444
3272
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
2445
3273
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
3274
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE"
3275
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
2446
3276
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
2447
3277
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
2448
3278
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
@@ -2490,17 +3320,27 @@ module Aws::BedrockAgentCoreControl
2490
3320
  # resp.memory.strategies[0].strategy_id #=> String
2491
3321
  # resp.memory.strategies[0].name #=> String
2492
3322
  # resp.memory.strategies[0].description #=> String
2493
- # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED"
3323
+ # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED", "EPISODIC_OVERRIDE"
2494
3324
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
2495
3325
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
2496
3326
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
2497
3327
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
3328
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.append_to_prompt #=> String
3329
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.model_id #=> String
2498
3330
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
2499
3331
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
2500
3332
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
2501
3333
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
2502
3334
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
2503
3335
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
3336
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.append_to_prompt #=> String
3337
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.model_id #=> String
3338
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.append_to_prompt #=> String
3339
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.model_id #=> String
3340
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces #=> Array
3341
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces[0] #=> String
3342
+ # resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces #=> Array
3343
+ # resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces[0] #=> String
2504
3344
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions #=> Array
2505
3345
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].message_based_trigger.message_count #=> Integer
2506
3346
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].token_based_trigger.token_count #=> Integer
@@ -2508,7 +3348,7 @@ module Aws::BedrockAgentCoreControl
2508
3348
  # resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.topic_arn #=> String
2509
3349
  # resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.payload_delivery_bucket_name #=> String
2510
3350
  # resp.memory.strategies[0].configuration.self_managed_configuration.historical_context_window_size #=> Integer
2511
- # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM"
3351
+ # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM", "EPISODIC"
2512
3352
  # resp.memory.strategies[0].namespaces #=> Array
2513
3353
  # resp.memory.strategies[0].namespaces[0] #=> String
2514
3354
  # resp.memory.strategies[0].created_at #=> Time
@@ -2651,6 +3491,290 @@ module Aws::BedrockAgentCoreControl
2651
3491
  req.send_request(options)
2652
3492
  end
2653
3493
 
3494
+ # Retrieves detailed information about an online evaluation
3495
+ # configuration, including its rules, data sources, evaluators, and
3496
+ # execution status.
3497
+ #
3498
+ # @option params [required, String] :online_evaluation_config_id
3499
+ # The unique identifier of the online evaluation configuration to
3500
+ # retrieve.
3501
+ #
3502
+ # @return [Types::GetOnlineEvaluationConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3503
+ #
3504
+ # * {Types::GetOnlineEvaluationConfigResponse#online_evaluation_config_arn #online_evaluation_config_arn} => String
3505
+ # * {Types::GetOnlineEvaluationConfigResponse#online_evaluation_config_id #online_evaluation_config_id} => String
3506
+ # * {Types::GetOnlineEvaluationConfigResponse#online_evaluation_config_name #online_evaluation_config_name} => String
3507
+ # * {Types::GetOnlineEvaluationConfigResponse#description #description} => String
3508
+ # * {Types::GetOnlineEvaluationConfigResponse#rule #rule} => Types::Rule
3509
+ # * {Types::GetOnlineEvaluationConfigResponse#data_source_config #data_source_config} => Types::DataSourceConfig
3510
+ # * {Types::GetOnlineEvaluationConfigResponse#evaluators #evaluators} => Array&lt;Types::EvaluatorReference&gt;
3511
+ # * {Types::GetOnlineEvaluationConfigResponse#output_config #output_config} => Types::OutputConfig
3512
+ # * {Types::GetOnlineEvaluationConfigResponse#evaluation_execution_role_arn #evaluation_execution_role_arn} => String
3513
+ # * {Types::GetOnlineEvaluationConfigResponse#status #status} => String
3514
+ # * {Types::GetOnlineEvaluationConfigResponse#execution_status #execution_status} => String
3515
+ # * {Types::GetOnlineEvaluationConfigResponse#created_at #created_at} => Time
3516
+ # * {Types::GetOnlineEvaluationConfigResponse#updated_at #updated_at} => Time
3517
+ # * {Types::GetOnlineEvaluationConfigResponse#failure_reason #failure_reason} => String
3518
+ #
3519
+ # @example Request syntax with placeholder values
3520
+ #
3521
+ # resp = client.get_online_evaluation_config({
3522
+ # online_evaluation_config_id: "OnlineEvaluationConfigId", # required
3523
+ # })
3524
+ #
3525
+ # @example Response structure
3526
+ #
3527
+ # resp.online_evaluation_config_arn #=> String
3528
+ # resp.online_evaluation_config_id #=> String
3529
+ # resp.online_evaluation_config_name #=> String
3530
+ # resp.description #=> String
3531
+ # resp.rule.sampling_config.sampling_percentage #=> Float
3532
+ # resp.rule.filters #=> Array
3533
+ # resp.rule.filters[0].key #=> String
3534
+ # resp.rule.filters[0].operator #=> String, one of "Equals", "NotEquals", "GreaterThan", "LessThan", "GreaterThanOrEqual", "LessThanOrEqual", "Contains", "NotContains"
3535
+ # resp.rule.filters[0].value.string_value #=> String
3536
+ # resp.rule.filters[0].value.double_value #=> Float
3537
+ # resp.rule.filters[0].value.boolean_value #=> Boolean
3538
+ # resp.rule.session_config.session_timeout_minutes #=> Integer
3539
+ # resp.data_source_config.cloud_watch_logs.log_group_names #=> Array
3540
+ # resp.data_source_config.cloud_watch_logs.log_group_names[0] #=> String
3541
+ # resp.data_source_config.cloud_watch_logs.service_names #=> Array
3542
+ # resp.data_source_config.cloud_watch_logs.service_names[0] #=> String
3543
+ # resp.evaluators #=> Array
3544
+ # resp.evaluators[0].evaluator_id #=> String
3545
+ # resp.output_config.cloud_watch_config.log_group_name #=> String
3546
+ # resp.evaluation_execution_role_arn #=> String
3547
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
3548
+ # resp.execution_status #=> String, one of "ENABLED", "DISABLED"
3549
+ # resp.created_at #=> Time
3550
+ # resp.updated_at #=> Time
3551
+ # resp.failure_reason #=> String
3552
+ #
3553
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetOnlineEvaluationConfig AWS API Documentation
3554
+ #
3555
+ # @overload get_online_evaluation_config(params = {})
3556
+ # @param [Hash] params ({})
3557
+ def get_online_evaluation_config(params = {}, options = {})
3558
+ req = build_request(:get_online_evaluation_config, params)
3559
+ req.send_request(options)
3560
+ end
3561
+
3562
+ # Retrieves detailed information about a specific policy within the
3563
+ # AgentCore Policy system. This operation returns the complete policy
3564
+ # definition, metadata, and current status, allowing administrators to
3565
+ # review and manage policy configurations.
3566
+ #
3567
+ # @option params [required, String] :policy_engine_id
3568
+ # The identifier of the policy engine that manages the policy to be
3569
+ # retrieved.
3570
+ #
3571
+ # @option params [required, String] :policy_id
3572
+ # The unique identifier of the policy to be retrieved. This must be a
3573
+ # valid policy ID that exists within the specified policy engine.
3574
+ #
3575
+ # @return [Types::GetPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3576
+ #
3577
+ # * {Types::GetPolicyResponse#policy_id #policy_id} => String
3578
+ # * {Types::GetPolicyResponse#name #name} => String
3579
+ # * {Types::GetPolicyResponse#policy_engine_id #policy_engine_id} => String
3580
+ # * {Types::GetPolicyResponse#definition #definition} => Types::PolicyDefinition
3581
+ # * {Types::GetPolicyResponse#description #description} => String
3582
+ # * {Types::GetPolicyResponse#created_at #created_at} => Time
3583
+ # * {Types::GetPolicyResponse#updated_at #updated_at} => Time
3584
+ # * {Types::GetPolicyResponse#policy_arn #policy_arn} => String
3585
+ # * {Types::GetPolicyResponse#status #status} => String
3586
+ # * {Types::GetPolicyResponse#status_reasons #status_reasons} => Array&lt;String&gt;
3587
+ #
3588
+ # @example Request syntax with placeholder values
3589
+ #
3590
+ # resp = client.get_policy({
3591
+ # policy_engine_id: "ResourceId", # required
3592
+ # policy_id: "ResourceId", # required
3593
+ # })
3594
+ #
3595
+ # @example Response structure
3596
+ #
3597
+ # resp.policy_id #=> String
3598
+ # resp.name #=> String
3599
+ # resp.policy_engine_id #=> String
3600
+ # resp.definition.cedar.statement #=> String
3601
+ # resp.description #=> String
3602
+ # resp.created_at #=> Time
3603
+ # resp.updated_at #=> Time
3604
+ # resp.policy_arn #=> String
3605
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
3606
+ # resp.status_reasons #=> Array
3607
+ # resp.status_reasons[0] #=> String
3608
+ #
3609
+ #
3610
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
3611
+ #
3612
+ # * policy_active
3613
+ # * policy_deleted
3614
+ #
3615
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetPolicy AWS API Documentation
3616
+ #
3617
+ # @overload get_policy(params = {})
3618
+ # @param [Hash] params ({})
3619
+ def get_policy(params = {}, options = {})
3620
+ req = build_request(:get_policy, params)
3621
+ req.send_request(options)
3622
+ end
3623
+
3624
+ # Retrieves detailed information about a specific policy engine within
3625
+ # the AgentCore Policy system. This operation returns the complete
3626
+ # policy engine configuration, metadata, and current status, allowing
3627
+ # administrators to review and manage policy engine settings.
3628
+ #
3629
+ # @option params [required, String] :policy_engine_id
3630
+ # The unique identifier of the policy engine to be retrieved. This must
3631
+ # be a valid policy engine ID that exists within the account.
3632
+ #
3633
+ # @return [Types::GetPolicyEngineResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3634
+ #
3635
+ # * {Types::GetPolicyEngineResponse#policy_engine_id #policy_engine_id} => String
3636
+ # * {Types::GetPolicyEngineResponse#name #name} => String
3637
+ # * {Types::GetPolicyEngineResponse#description #description} => String
3638
+ # * {Types::GetPolicyEngineResponse#created_at #created_at} => Time
3639
+ # * {Types::GetPolicyEngineResponse#updated_at #updated_at} => Time
3640
+ # * {Types::GetPolicyEngineResponse#policy_engine_arn #policy_engine_arn} => String
3641
+ # * {Types::GetPolicyEngineResponse#status #status} => String
3642
+ # * {Types::GetPolicyEngineResponse#status_reasons #status_reasons} => Array&lt;String&gt;
3643
+ #
3644
+ # @example Request syntax with placeholder values
3645
+ #
3646
+ # resp = client.get_policy_engine({
3647
+ # policy_engine_id: "ResourceId", # required
3648
+ # })
3649
+ #
3650
+ # @example Response structure
3651
+ #
3652
+ # resp.policy_engine_id #=> String
3653
+ # resp.name #=> String
3654
+ # resp.description #=> String
3655
+ # resp.created_at #=> Time
3656
+ # resp.updated_at #=> Time
3657
+ # resp.policy_engine_arn #=> String
3658
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
3659
+ # resp.status_reasons #=> Array
3660
+ # resp.status_reasons[0] #=> String
3661
+ #
3662
+ #
3663
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
3664
+ #
3665
+ # * policy_engine_active
3666
+ # * policy_engine_deleted
3667
+ #
3668
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetPolicyEngine AWS API Documentation
3669
+ #
3670
+ # @overload get_policy_engine(params = {})
3671
+ # @param [Hash] params ({})
3672
+ def get_policy_engine(params = {}, options = {})
3673
+ req = build_request(:get_policy_engine, params)
3674
+ req.send_request(options)
3675
+ end
3676
+
3677
+ # Retrieves information about a policy generation request within the
3678
+ # AgentCore Policy system. Policy generation converts natural language
3679
+ # descriptions into Cedar policy statements using AI-powered
3680
+ # translation, enabling non-technical users to create policies.
3681
+ #
3682
+ # @option params [required, String] :policy_generation_id
3683
+ # The unique identifier of the policy generation request to be
3684
+ # retrieved. This must be a valid generation ID from a previous
3685
+ # [StartPolicyGeneration][1] call.
3686
+ #
3687
+ #
3688
+ #
3689
+ # [1]: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/API_StartPolicyGeneration.html
3690
+ #
3691
+ # @option params [required, String] :policy_engine_id
3692
+ # The identifier of the policy engine associated with the policy
3693
+ # generation request. This provides the context for the generation
3694
+ # operation and schema validation.
3695
+ #
3696
+ # @return [Types::GetPolicyGenerationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3697
+ #
3698
+ # * {Types::GetPolicyGenerationResponse#policy_engine_id #policy_engine_id} => String
3699
+ # * {Types::GetPolicyGenerationResponse#policy_generation_id #policy_generation_id} => String
3700
+ # * {Types::GetPolicyGenerationResponse#name #name} => String
3701
+ # * {Types::GetPolicyGenerationResponse#policy_generation_arn #policy_generation_arn} => String
3702
+ # * {Types::GetPolicyGenerationResponse#resource #resource} => Types::Resource
3703
+ # * {Types::GetPolicyGenerationResponse#created_at #created_at} => Time
3704
+ # * {Types::GetPolicyGenerationResponse#updated_at #updated_at} => Time
3705
+ # * {Types::GetPolicyGenerationResponse#status #status} => String
3706
+ # * {Types::GetPolicyGenerationResponse#status_reasons #status_reasons} => Array&lt;String&gt;
3707
+ # * {Types::GetPolicyGenerationResponse#findings #findings} => String
3708
+ #
3709
+ # @example Request syntax with placeholder values
3710
+ #
3711
+ # resp = client.get_policy_generation({
3712
+ # policy_generation_id: "ResourceId", # required
3713
+ # policy_engine_id: "ResourceId", # required
3714
+ # })
3715
+ #
3716
+ # @example Response structure
3717
+ #
3718
+ # resp.policy_engine_id #=> String
3719
+ # resp.policy_generation_id #=> String
3720
+ # resp.name #=> String
3721
+ # resp.policy_generation_arn #=> String
3722
+ # resp.resource.arn #=> String
3723
+ # resp.created_at #=> Time
3724
+ # resp.updated_at #=> Time
3725
+ # resp.status #=> String, one of "GENERATING", "GENERATED", "GENERATE_FAILED", "DELETE_FAILED"
3726
+ # resp.status_reasons #=> Array
3727
+ # resp.status_reasons[0] #=> String
3728
+ # resp.findings #=> String
3729
+ #
3730
+ #
3731
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
3732
+ #
3733
+ # * policy_generation_completed
3734
+ #
3735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetPolicyGeneration AWS API Documentation
3736
+ #
3737
+ # @overload get_policy_generation(params = {})
3738
+ # @param [Hash] params ({})
3739
+ def get_policy_generation(params = {}, options = {})
3740
+ req = build_request(:get_policy_generation, params)
3741
+ req.send_request(options)
3742
+ end
3743
+
3744
+ # Retrieves the resource-based policy for a specified resource.
3745
+ #
3746
+ # <note markdown="1"> This feature is currently available only for AgentCore Runtime and
3747
+ # Gateway.
3748
+ #
3749
+ # </note>
3750
+ #
3751
+ # @option params [required, String] :resource_arn
3752
+ # The Amazon Resource Name (ARN) of the resource for which to retrieve
3753
+ # the resource policy.
3754
+ #
3755
+ # @return [Types::GetResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3756
+ #
3757
+ # * {Types::GetResourcePolicyResponse#policy #policy} => String
3758
+ #
3759
+ # @example Request syntax with placeholder values
3760
+ #
3761
+ # resp = client.get_resource_policy({
3762
+ # resource_arn: "BedrockAgentcoreResourceArn", # required
3763
+ # })
3764
+ #
3765
+ # @example Response structure
3766
+ #
3767
+ # resp.policy #=> String
3768
+ #
3769
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetResourcePolicy AWS API Documentation
3770
+ #
3771
+ # @overload get_resource_policy(params = {})
3772
+ # @param [Hash] params ({})
3773
+ def get_resource_policy(params = {}, options = {})
3774
+ req = build_request(:get_resource_policy, params)
3775
+ req.send_request(options)
3776
+ end
3777
+
2654
3778
  # Retrieves information about a token vault.
2655
3779
  #
2656
3780
  # @option params [String] :token_vault_id
@@ -2999,6 +4123,54 @@ module Aws::BedrockAgentCoreControl
2999
4123
  req.send_request(options)
3000
4124
  end
3001
4125
 
4126
+ # Lists all available evaluators, including both builtin evaluators
4127
+ # provided by the service and custom evaluators created by the user.
4128
+ #
4129
+ # @option params [String] :next_token
4130
+ # The pagination token from a previous request to retrieve the next page
4131
+ # of results.
4132
+ #
4133
+ # @option params [Integer] :max_results
4134
+ # The maximum number of evaluators to return in a single response.
4135
+ #
4136
+ # @return [Types::ListEvaluatorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4137
+ #
4138
+ # * {Types::ListEvaluatorsResponse#evaluators #evaluators} => Array&lt;Types::EvaluatorSummary&gt;
4139
+ # * {Types::ListEvaluatorsResponse#next_token #next_token} => String
4140
+ #
4141
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4142
+ #
4143
+ # @example Request syntax with placeholder values
4144
+ #
4145
+ # resp = client.list_evaluators({
4146
+ # next_token: "String",
4147
+ # max_results: 1,
4148
+ # })
4149
+ #
4150
+ # @example Response structure
4151
+ #
4152
+ # resp.evaluators #=> Array
4153
+ # resp.evaluators[0].evaluator_arn #=> String
4154
+ # resp.evaluators[0].evaluator_id #=> String
4155
+ # resp.evaluators[0].evaluator_name #=> String
4156
+ # resp.evaluators[0].description #=> String
4157
+ # resp.evaluators[0].evaluator_type #=> String, one of "Builtin", "Custom"
4158
+ # resp.evaluators[0].level #=> String, one of "TOOL_CALL", "TRACE", "SESSION"
4159
+ # resp.evaluators[0].status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
4160
+ # resp.evaluators[0].created_at #=> Time
4161
+ # resp.evaluators[0].updated_at #=> Time
4162
+ # resp.evaluators[0].locked_for_modification #=> Boolean
4163
+ # resp.next_token #=> String
4164
+ #
4165
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListEvaluators AWS API Documentation
4166
+ #
4167
+ # @overload list_evaluators(params = {})
4168
+ # @param [Hash] params ({})
4169
+ def list_evaluators(params = {}, options = {})
4170
+ req = build_request(:list_evaluators, params)
4171
+ req.send_request(options)
4172
+ end
4173
+
3002
4174
  # Lists all targets for a specific gateway.
3003
4175
  #
3004
4176
  # @option params [required, String] :gateway_identifier
@@ -3163,27 +4335,330 @@ module Aws::BedrockAgentCoreControl
3163
4335
  #
3164
4336
  # @example Request syntax with placeholder values
3165
4337
  #
3166
- # resp = client.list_oauth_2_credential_providers({
3167
- # next_token: "String",
4338
+ # resp = client.list_oauth_2_credential_providers({
4339
+ # next_token: "String",
4340
+ # max_results: 1,
4341
+ # })
4342
+ #
4343
+ # @example Response structure
4344
+ #
4345
+ # resp.credential_providers #=> Array
4346
+ # resp.credential_providers[0].name #=> String
4347
+ # resp.credential_providers[0].credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2", "AtlassianOauth2", "LinkedinOauth2", "XOauth2", "OktaOauth2", "OneLoginOauth2", "PingOneOauth2", "FacebookOauth2", "YandexOauth2", "RedditOauth2", "ZoomOauth2", "TwitchOauth2", "SpotifyOauth2", "DropboxOauth2", "NotionOauth2", "HubspotOauth2", "CyberArkOauth2", "FusionAuthOauth2", "Auth0Oauth2", "CognitoOauth2"
4348
+ # resp.credential_providers[0].credential_provider_arn #=> String
4349
+ # resp.credential_providers[0].created_time #=> Time
4350
+ # resp.credential_providers[0].last_updated_time #=> Time
4351
+ # resp.next_token #=> String
4352
+ #
4353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListOauth2CredentialProviders AWS API Documentation
4354
+ #
4355
+ # @overload list_oauth_2_credential_providers(params = {})
4356
+ # @param [Hash] params ({})
4357
+ def list_oauth_2_credential_providers(params = {}, options = {})
4358
+ req = build_request(:list_oauth_2_credential_providers, params)
4359
+ req.send_request(options)
4360
+ end
4361
+
4362
+ # Lists all online evaluation configurations in the account, providing
4363
+ # summary information about each configuration's status and settings.
4364
+ #
4365
+ # @option params [String] :next_token
4366
+ # The pagination token from a previous request to retrieve the next page
4367
+ # of results.
4368
+ #
4369
+ # @option params [Integer] :max_results
4370
+ # The maximum number of online evaluation configurations to return in a
4371
+ # single response.
4372
+ #
4373
+ # @return [Types::ListOnlineEvaluationConfigsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4374
+ #
4375
+ # * {Types::ListOnlineEvaluationConfigsResponse#online_evaluation_configs #online_evaluation_configs} => Array&lt;Types::OnlineEvaluationConfigSummary&gt;
4376
+ # * {Types::ListOnlineEvaluationConfigsResponse#next_token #next_token} => String
4377
+ #
4378
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4379
+ #
4380
+ # @example Request syntax with placeholder values
4381
+ #
4382
+ # resp = client.list_online_evaluation_configs({
4383
+ # next_token: "String",
4384
+ # max_results: 1,
4385
+ # })
4386
+ #
4387
+ # @example Response structure
4388
+ #
4389
+ # resp.online_evaluation_configs #=> Array
4390
+ # resp.online_evaluation_configs[0].online_evaluation_config_arn #=> String
4391
+ # resp.online_evaluation_configs[0].online_evaluation_config_id #=> String
4392
+ # resp.online_evaluation_configs[0].online_evaluation_config_name #=> String
4393
+ # resp.online_evaluation_configs[0].description #=> String
4394
+ # resp.online_evaluation_configs[0].status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
4395
+ # resp.online_evaluation_configs[0].execution_status #=> String, one of "ENABLED", "DISABLED"
4396
+ # resp.online_evaluation_configs[0].created_at #=> Time
4397
+ # resp.online_evaluation_configs[0].updated_at #=> Time
4398
+ # resp.online_evaluation_configs[0].failure_reason #=> String
4399
+ # resp.next_token #=> String
4400
+ #
4401
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListOnlineEvaluationConfigs AWS API Documentation
4402
+ #
4403
+ # @overload list_online_evaluation_configs(params = {})
4404
+ # @param [Hash] params ({})
4405
+ def list_online_evaluation_configs(params = {}, options = {})
4406
+ req = build_request(:list_online_evaluation_configs, params)
4407
+ req.send_request(options)
4408
+ end
4409
+
4410
+ # Retrieves a list of policies within the AgentCore Policy engine. This
4411
+ # operation supports pagination and filtering to help administrators
4412
+ # manage and discover policies across policy engines. Results can be
4413
+ # filtered by policy engine or resource associations.
4414
+ #
4415
+ # @option params [String] :next_token
4416
+ # A pagination token returned from a previous [ListPolicies][1] call.
4417
+ # Use this token to retrieve the next page of results when the response
4418
+ # is paginated.
4419
+ #
4420
+ #
4421
+ #
4422
+ # [1]: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/API_ListPolicies.html
4423
+ #
4424
+ # @option params [Integer] :max_results
4425
+ # The maximum number of policies to return in a single response. If not
4426
+ # specified, the default is 10 policies per page, with a maximum of 100
4427
+ # per page.
4428
+ #
4429
+ # @option params [required, String] :policy_engine_id
4430
+ # The identifier of the policy engine whose policies to retrieve.
4431
+ #
4432
+ # @option params [String] :target_resource_scope
4433
+ # Optional filter to list policies that apply to a specific resource
4434
+ # scope or resource type. This helps narrow down policy results to those
4435
+ # relevant for particular Amazon Web Services resources, agent tools, or
4436
+ # operational contexts within the policy engine ecosystem.
4437
+ #
4438
+ # @return [Types::ListPoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4439
+ #
4440
+ # * {Types::ListPoliciesResponse#policies #policies} => Array&lt;Types::Policy&gt;
4441
+ # * {Types::ListPoliciesResponse#next_token #next_token} => String
4442
+ #
4443
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4444
+ #
4445
+ # @example Request syntax with placeholder values
4446
+ #
4447
+ # resp = client.list_policies({
4448
+ # next_token: "NextToken",
4449
+ # max_results: 1,
4450
+ # policy_engine_id: "ResourceId", # required
4451
+ # target_resource_scope: "BedrockAgentcoreResourceArn",
4452
+ # })
4453
+ #
4454
+ # @example Response structure
4455
+ #
4456
+ # resp.policies #=> Array
4457
+ # resp.policies[0].policy_id #=> String
4458
+ # resp.policies[0].name #=> String
4459
+ # resp.policies[0].policy_engine_id #=> String
4460
+ # resp.policies[0].definition.cedar.statement #=> String
4461
+ # resp.policies[0].description #=> String
4462
+ # resp.policies[0].created_at #=> Time
4463
+ # resp.policies[0].updated_at #=> Time
4464
+ # resp.policies[0].policy_arn #=> String
4465
+ # resp.policies[0].status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
4466
+ # resp.policies[0].status_reasons #=> Array
4467
+ # resp.policies[0].status_reasons[0] #=> String
4468
+ # resp.next_token #=> String
4469
+ #
4470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListPolicies AWS API Documentation
4471
+ #
4472
+ # @overload list_policies(params = {})
4473
+ # @param [Hash] params ({})
4474
+ def list_policies(params = {}, options = {})
4475
+ req = build_request(:list_policies, params)
4476
+ req.send_request(options)
4477
+ end
4478
+
4479
+ # Retrieves a list of policy engines within the AgentCore Policy system.
4480
+ # This operation supports pagination to help administrators discover and
4481
+ # manage policy engines across their account. Each policy engine serves
4482
+ # as a container for related policies.
4483
+ #
4484
+ # @option params [String] :next_token
4485
+ # A pagination token returned from a previous [ListPolicyEngines][1]
4486
+ # call. Use this token to retrieve the next page of results when the
4487
+ # response is paginated.
4488
+ #
4489
+ #
4490
+ #
4491
+ # [1]: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/API_ListPolicyEngines.html
4492
+ #
4493
+ # @option params [Integer] :max_results
4494
+ # The maximum number of policy engines to return in a single response.
4495
+ # If not specified, the default is 10 policy engines per page, with a
4496
+ # maximum of 100 per page.
4497
+ #
4498
+ # @return [Types::ListPolicyEnginesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4499
+ #
4500
+ # * {Types::ListPolicyEnginesResponse#policy_engines #policy_engines} => Array&lt;Types::PolicyEngine&gt;
4501
+ # * {Types::ListPolicyEnginesResponse#next_token #next_token} => String
4502
+ #
4503
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4504
+ #
4505
+ # @example Request syntax with placeholder values
4506
+ #
4507
+ # resp = client.list_policy_engines({
4508
+ # next_token: "NextToken",
4509
+ # max_results: 1,
4510
+ # })
4511
+ #
4512
+ # @example Response structure
4513
+ #
4514
+ # resp.policy_engines #=> Array
4515
+ # resp.policy_engines[0].policy_engine_id #=> String
4516
+ # resp.policy_engines[0].name #=> String
4517
+ # resp.policy_engines[0].description #=> String
4518
+ # resp.policy_engines[0].created_at #=> Time
4519
+ # resp.policy_engines[0].updated_at #=> Time
4520
+ # resp.policy_engines[0].policy_engine_arn #=> String
4521
+ # resp.policy_engines[0].status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
4522
+ # resp.policy_engines[0].status_reasons #=> Array
4523
+ # resp.policy_engines[0].status_reasons[0] #=> String
4524
+ # resp.next_token #=> String
4525
+ #
4526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListPolicyEngines AWS API Documentation
4527
+ #
4528
+ # @overload list_policy_engines(params = {})
4529
+ # @param [Hash] params ({})
4530
+ def list_policy_engines(params = {}, options = {})
4531
+ req = build_request(:list_policy_engines, params)
4532
+ req.send_request(options)
4533
+ end
4534
+
4535
+ # Retrieves a list of generated policy assets from a policy generation
4536
+ # request within the AgentCore Policy system. This operation returns the
4537
+ # actual Cedar policies and related artifacts produced by the AI-powered
4538
+ # policy generation process, allowing users to review and select from
4539
+ # multiple generated policy options.
4540
+ #
4541
+ # @option params [required, String] :policy_generation_id
4542
+ # The unique identifier of the policy generation request whose assets
4543
+ # are to be retrieved. This must be a valid generation ID from a
4544
+ # previous [StartPolicyGeneration][1] call that has completed
4545
+ # processing.
4546
+ #
4547
+ #
4548
+ #
4549
+ # [1]: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/API_StartPolicyGeneration.html
4550
+ #
4551
+ # @option params [required, String] :policy_engine_id
4552
+ # The unique identifier of the policy engine associated with the policy
4553
+ # generation request. This provides the context for the generation
4554
+ # operation and ensures assets are retrieved from the correct policy
4555
+ # engine.
4556
+ #
4557
+ # @option params [String] :next_token
4558
+ # A pagination token returned from a previous
4559
+ # [ListPolicyGenerationAssets][1] call. Use this token to retrieve the
4560
+ # next page of assets when the response is paginated due to large
4561
+ # numbers of generated policy options.
4562
+ #
4563
+ #
4564
+ #
4565
+ # [1]: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/API_ListPolicyGenerationAssets.html
4566
+ #
4567
+ # @option params [Integer] :max_results
4568
+ # The maximum number of policy generation assets to return in a single
4569
+ # response. If not specified, the default is 10 assets per page, with a
4570
+ # maximum of 100 per page. This helps control response size when dealing
4571
+ # with policy generations that produce many alternative policy options.
4572
+ #
4573
+ # @return [Types::ListPolicyGenerationAssetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4574
+ #
4575
+ # * {Types::ListPolicyGenerationAssetsResponse#policy_generation_assets #policy_generation_assets} => Array&lt;Types::PolicyGenerationAsset&gt;
4576
+ # * {Types::ListPolicyGenerationAssetsResponse#next_token #next_token} => String
4577
+ #
4578
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4579
+ #
4580
+ # @example Request syntax with placeholder values
4581
+ #
4582
+ # resp = client.list_policy_generation_assets({
4583
+ # policy_generation_id: "ResourceId", # required
4584
+ # policy_engine_id: "ResourceId", # required
4585
+ # next_token: "NextToken",
4586
+ # max_results: 1,
4587
+ # })
4588
+ #
4589
+ # @example Response structure
4590
+ #
4591
+ # resp.policy_generation_assets #=> Array
4592
+ # resp.policy_generation_assets[0].policy_generation_asset_id #=> String
4593
+ # resp.policy_generation_assets[0].definition.cedar.statement #=> String
4594
+ # resp.policy_generation_assets[0].raw_text_fragment #=> String
4595
+ # resp.policy_generation_assets[0].findings #=> Array
4596
+ # resp.policy_generation_assets[0].findings[0].type #=> String, one of "VALID", "INVALID", "NOT_TRANSLATABLE", "ALLOW_ALL", "ALLOW_NONE", "DENY_ALL", "DENY_NONE"
4597
+ # resp.policy_generation_assets[0].findings[0].description #=> String
4598
+ # resp.next_token #=> String
4599
+ #
4600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListPolicyGenerationAssets AWS API Documentation
4601
+ #
4602
+ # @overload list_policy_generation_assets(params = {})
4603
+ # @param [Hash] params ({})
4604
+ def list_policy_generation_assets(params = {}, options = {})
4605
+ req = build_request(:list_policy_generation_assets, params)
4606
+ req.send_request(options)
4607
+ end
4608
+
4609
+ # Retrieves a list of policy generation requests within the AgentCore
4610
+ # Policy system. This operation supports pagination and filtering to
4611
+ # help track and manage AI-powered policy generation operations.
4612
+ #
4613
+ # @option params [String] :next_token
4614
+ # A pagination token for retrieving additional policy generations when
4615
+ # results are paginated.
4616
+ #
4617
+ # @option params [Integer] :max_results
4618
+ # The maximum number of policy generations to return in a single
4619
+ # response.
4620
+ #
4621
+ # @option params [required, String] :policy_engine_id
4622
+ # The identifier of the policy engine whose policy generations to
4623
+ # retrieve.
4624
+ #
4625
+ # @return [Types::ListPolicyGenerationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4626
+ #
4627
+ # * {Types::ListPolicyGenerationsResponse#policy_generations #policy_generations} => Array&lt;Types::PolicyGeneration&gt;
4628
+ # * {Types::ListPolicyGenerationsResponse#next_token #next_token} => String
4629
+ #
4630
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4631
+ #
4632
+ # @example Request syntax with placeholder values
4633
+ #
4634
+ # resp = client.list_policy_generations({
4635
+ # next_token: "NextToken",
3168
4636
  # max_results: 1,
4637
+ # policy_engine_id: "ResourceId", # required
3169
4638
  # })
3170
4639
  #
3171
4640
  # @example Response structure
3172
4641
  #
3173
- # resp.credential_providers #=> Array
3174
- # resp.credential_providers[0].name #=> String
3175
- # resp.credential_providers[0].credential_provider_vendor #=> String, one of "GoogleOauth2", "GithubOauth2", "SlackOauth2", "SalesforceOauth2", "MicrosoftOauth2", "CustomOauth2", "AtlassianOauth2", "LinkedinOauth2", "XOauth2", "OktaOauth2", "OneLoginOauth2", "PingOneOauth2", "FacebookOauth2", "YandexOauth2", "RedditOauth2", "ZoomOauth2", "TwitchOauth2", "SpotifyOauth2", "DropboxOauth2", "NotionOauth2", "HubspotOauth2", "CyberArkOauth2", "FusionAuthOauth2", "Auth0Oauth2", "CognitoOauth2"
3176
- # resp.credential_providers[0].credential_provider_arn #=> String
3177
- # resp.credential_providers[0].created_time #=> Time
3178
- # resp.credential_providers[0].last_updated_time #=> Time
4642
+ # resp.policy_generations #=> Array
4643
+ # resp.policy_generations[0].policy_engine_id #=> String
4644
+ # resp.policy_generations[0].policy_generation_id #=> String
4645
+ # resp.policy_generations[0].name #=> String
4646
+ # resp.policy_generations[0].policy_generation_arn #=> String
4647
+ # resp.policy_generations[0].resource.arn #=> String
4648
+ # resp.policy_generations[0].created_at #=> Time
4649
+ # resp.policy_generations[0].updated_at #=> Time
4650
+ # resp.policy_generations[0].status #=> String, one of "GENERATING", "GENERATED", "GENERATE_FAILED", "DELETE_FAILED"
4651
+ # resp.policy_generations[0].status_reasons #=> Array
4652
+ # resp.policy_generations[0].status_reasons[0] #=> String
4653
+ # resp.policy_generations[0].findings #=> String
3179
4654
  # resp.next_token #=> String
3180
4655
  #
3181
- # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListOauth2CredentialProviders AWS API Documentation
4656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListPolicyGenerations AWS API Documentation
3182
4657
  #
3183
- # @overload list_oauth_2_credential_providers(params = {})
4658
+ # @overload list_policy_generations(params = {})
3184
4659
  # @param [Hash] params ({})
3185
- def list_oauth_2_credential_providers(params = {}, options = {})
3186
- req = build_request(:list_oauth_2_credential_providers, params)
4660
+ def list_policy_generations(params = {}, options = {})
4661
+ req = build_request(:list_policy_generations, params)
3187
4662
  req.send_request(options)
3188
4663
  end
3189
4664
 
@@ -3260,6 +4735,45 @@ module Aws::BedrockAgentCoreControl
3260
4735
  req.send_request(options)
3261
4736
  end
3262
4737
 
4738
+ # Creates or updates a resource-based policy for a resource with the
4739
+ # specified resourceArn.
4740
+ #
4741
+ # <note markdown="1"> This feature is currently available only for AgentCore Runtime and
4742
+ # Gateway.
4743
+ #
4744
+ # </note>
4745
+ #
4746
+ # @option params [required, String] :resource_arn
4747
+ # The Amazon Resource Name (ARN) of the resource for which to create or
4748
+ # update the resource policy.
4749
+ #
4750
+ # @option params [required, String] :policy
4751
+ # The resource policy to create or update.
4752
+ #
4753
+ # @return [Types::PutResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4754
+ #
4755
+ # * {Types::PutResourcePolicyResponse#policy #policy} => String
4756
+ #
4757
+ # @example Request syntax with placeholder values
4758
+ #
4759
+ # resp = client.put_resource_policy({
4760
+ # resource_arn: "BedrockAgentcoreResourceArn", # required
4761
+ # policy: "ResourcePolicyBody", # required
4762
+ # })
4763
+ #
4764
+ # @example Response structure
4765
+ #
4766
+ # resp.policy #=> String
4767
+ #
4768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/PutResourcePolicy AWS API Documentation
4769
+ #
4770
+ # @overload put_resource_policy(params = {})
4771
+ # @param [Hash] params ({})
4772
+ def put_resource_policy(params = {}, options = {})
4773
+ req = build_request(:put_resource_policy, params)
4774
+ req.send_request(options)
4775
+ end
4776
+
3263
4777
  # Sets the customer master key (CMK) for a token vault.
3264
4778
  #
3265
4779
  # @option params [String] :token_vault_id
@@ -3301,6 +4815,102 @@ module Aws::BedrockAgentCoreControl
3301
4815
  req.send_request(options)
3302
4816
  end
3303
4817
 
4818
+ # Initiates the AI-powered generation of Cedar policies from natural
4819
+ # language descriptions within the AgentCore Policy system. This feature
4820
+ # enables both technical and non-technical users to create policies by
4821
+ # describing their authorization requirements in plain English, which is
4822
+ # then automatically translated into formal Cedar policy statements. The
4823
+ # generation process analyzes the natural language input along with the
4824
+ # Gateway's tool context to produce validated policy options. Generated
4825
+ # policy assets are automatically deleted after 7 days, so you should
4826
+ # review and create policies from the generated assets within this
4827
+ # timeframe. Once created, policies are permanent and not subject to
4828
+ # this expiration. Generated policies should be reviewed and tested in
4829
+ # log-only mode before deploying to production. Use this when you want
4830
+ # to describe policy intent naturally rather than learning Cedar syntax,
4831
+ # though generated policies may require refinement for complex
4832
+ # scenarios.
4833
+ #
4834
+ # @option params [required, String] :policy_engine_id
4835
+ # The identifier of the policy engine that provides the context for
4836
+ # policy generation. This engine's schema and tool context are used to
4837
+ # ensure generated policies are valid and applicable.
4838
+ #
4839
+ # @option params [required, Types::Resource] :resource
4840
+ # The resource information that provides context for policy generation.
4841
+ # This helps the AI understand the target resources and generate
4842
+ # appropriate access control rules.
4843
+ #
4844
+ # @option params [required, Types::Content] :content
4845
+ # The natural language description of the desired policy behavior. This
4846
+ # content is processed by AI to generate corresponding Cedar policy
4847
+ # statements that match the described intent.
4848
+ #
4849
+ # @option params [required, String] :name
4850
+ # A customer-assigned name for the policy generation request. This helps
4851
+ # track and identify generation operations, especially when running
4852
+ # multiple generations simultaneously.
4853
+ #
4854
+ # @option params [String] :client_token
4855
+ # A unique, case-sensitive identifier to ensure the idempotency of the
4856
+ # request. The AWS SDK automatically generates this token, so you don't
4857
+ # need to provide it in most cases. If you retry a request with the same
4858
+ # client token, the service returns the same response without starting a
4859
+ # duplicate generation.
4860
+ #
4861
+ # **A suitable default value is auto-generated.** You should normally
4862
+ # not need to pass this option.**
4863
+ #
4864
+ # @return [Types::StartPolicyGenerationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4865
+ #
4866
+ # * {Types::StartPolicyGenerationResponse#policy_engine_id #policy_engine_id} => String
4867
+ # * {Types::StartPolicyGenerationResponse#policy_generation_id #policy_generation_id} => String
4868
+ # * {Types::StartPolicyGenerationResponse#name #name} => String
4869
+ # * {Types::StartPolicyGenerationResponse#policy_generation_arn #policy_generation_arn} => String
4870
+ # * {Types::StartPolicyGenerationResponse#resource #resource} => Types::Resource
4871
+ # * {Types::StartPolicyGenerationResponse#created_at #created_at} => Time
4872
+ # * {Types::StartPolicyGenerationResponse#updated_at #updated_at} => Time
4873
+ # * {Types::StartPolicyGenerationResponse#status #status} => String
4874
+ # * {Types::StartPolicyGenerationResponse#status_reasons #status_reasons} => Array&lt;String&gt;
4875
+ # * {Types::StartPolicyGenerationResponse#findings #findings} => String
4876
+ #
4877
+ # @example Request syntax with placeholder values
4878
+ #
4879
+ # resp = client.start_policy_generation({
4880
+ # policy_engine_id: "ResourceId", # required
4881
+ # resource: { # required
4882
+ # arn: "BedrockAgentcoreResourceArn",
4883
+ # },
4884
+ # content: { # required
4885
+ # raw_text: "NaturalLanguage",
4886
+ # },
4887
+ # name: "PolicyGenerationName", # required
4888
+ # client_token: "ClientToken",
4889
+ # })
4890
+ #
4891
+ # @example Response structure
4892
+ #
4893
+ # resp.policy_engine_id #=> String
4894
+ # resp.policy_generation_id #=> String
4895
+ # resp.name #=> String
4896
+ # resp.policy_generation_arn #=> String
4897
+ # resp.resource.arn #=> String
4898
+ # resp.created_at #=> Time
4899
+ # resp.updated_at #=> Time
4900
+ # resp.status #=> String, one of "GENERATING", "GENERATED", "GENERATE_FAILED", "DELETE_FAILED"
4901
+ # resp.status_reasons #=> Array
4902
+ # resp.status_reasons[0] #=> String
4903
+ # resp.findings #=> String
4904
+ #
4905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/StartPolicyGeneration AWS API Documentation
4906
+ #
4907
+ # @overload start_policy_generation(params = {})
4908
+ # @param [Hash] params ({})
4909
+ def start_policy_generation(params = {}, options = {})
4910
+ req = build_request(:start_policy_generation, params)
4911
+ req.send_request(options)
4912
+ end
4913
+
3304
4914
  # The gateway targets.
3305
4915
  #
3306
4916
  # @option params [required, String] :gateway_identifier
@@ -3359,6 +4969,17 @@ module Aws::BedrockAgentCoreControl
3359
4969
  # resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
3360
4970
  # resp.targets[0].target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
3361
4971
  # resp.targets[0].target_configuration.mcp.mcp_server.endpoint #=> String
4972
+ # resp.targets[0].target_configuration.mcp.api_gateway.rest_api_id #=> String
4973
+ # resp.targets[0].target_configuration.mcp.api_gateway.stage #=> String
4974
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
4975
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
4976
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
4977
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
4978
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
4979
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
4980
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
4981
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
4982
+ # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
3362
4983
  # resp.targets[0].credential_provider_configurations #=> Array
3363
4984
  # resp.targets[0].credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY"
3364
4985
  # resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
@@ -3366,6 +4987,8 @@ module Aws::BedrockAgentCoreControl
3366
4987
  # resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
3367
4988
  # resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
3368
4989
  # resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
4990
+ # resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE"
4991
+ # resp.targets[0].credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
3369
4992
  # resp.targets[0].credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
3370
4993
  # resp.targets[0].credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
3371
4994
  # resp.targets[0].credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
@@ -3535,6 +5158,20 @@ module Aws::BedrockAgentCoreControl
3535
5158
  # discovery_url: "DiscoveryUrl", # required
3536
5159
  # allowed_audience: ["AllowedAudience"],
3537
5160
  # allowed_clients: ["AllowedClient"],
5161
+ # allowed_scopes: ["AllowedScopeType"],
5162
+ # custom_claims: [
5163
+ # {
5164
+ # inbound_token_claim_name: "InboundTokenClaimNameType", # required
5165
+ # inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
5166
+ # authorizing_claim_match_value: { # required
5167
+ # claim_match_value: { # required
5168
+ # match_value_string: "MatchValueString",
5169
+ # match_value_string_list: ["MatchValueString"],
5170
+ # },
5171
+ # claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
5172
+ # },
5173
+ # },
5174
+ # ],
3538
5175
  # },
3539
5176
  # },
3540
5177
  # request_header_configuration: {
@@ -3674,6 +5311,103 @@ module Aws::BedrockAgentCoreControl
3674
5311
  req.send_request(options)
3675
5312
  end
3676
5313
 
5314
+ # Updates a custom evaluator's configuration, description, or
5315
+ # evaluation level. Built-in evaluators cannot be updated. The evaluator
5316
+ # must not be locked for modification.
5317
+ #
5318
+ # @option params [String] :client_token
5319
+ # A unique, case-sensitive identifier to ensure that the API request
5320
+ # completes no more than one time. If you don't specify this field, a
5321
+ # value is randomly generated for you. If this token matches a previous
5322
+ # request, the service ignores the request, but doesn't return an
5323
+ # error. For more information, see [Ensuring idempotency][1].
5324
+ #
5325
+ # **A suitable default value is auto-generated.** You should normally
5326
+ # not need to pass this option.**
5327
+ #
5328
+ #
5329
+ #
5330
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
5331
+ #
5332
+ # @option params [required, String] :evaluator_id
5333
+ # The unique identifier of the evaluator to update.
5334
+ #
5335
+ # @option params [String] :description
5336
+ # The updated description of the evaluator.
5337
+ #
5338
+ # @option params [Types::EvaluatorConfig] :evaluator_config
5339
+ # The updated configuration for the evaluator, including LLM-as-a-Judge
5340
+ # settings with instructions, rating scale, and model configuration.
5341
+ #
5342
+ # @option params [String] :level
5343
+ # The updated evaluation level (`TOOL_CALL`, `TRACE`, or `SESSION`) that
5344
+ # determines the scope of evaluation.
5345
+ #
5346
+ # @return [Types::UpdateEvaluatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5347
+ #
5348
+ # * {Types::UpdateEvaluatorResponse#evaluator_arn #evaluator_arn} => String
5349
+ # * {Types::UpdateEvaluatorResponse#evaluator_id #evaluator_id} => String
5350
+ # * {Types::UpdateEvaluatorResponse#updated_at #updated_at} => Time
5351
+ # * {Types::UpdateEvaluatorResponse#status #status} => String
5352
+ #
5353
+ # @example Request syntax with placeholder values
5354
+ #
5355
+ # resp = client.update_evaluator({
5356
+ # client_token: "ClientToken",
5357
+ # evaluator_id: "EvaluatorId", # required
5358
+ # description: "EvaluatorDescription",
5359
+ # evaluator_config: {
5360
+ # llm_as_a_judge: {
5361
+ # instructions: "EvaluatorInstructions", # required
5362
+ # rating_scale: { # required
5363
+ # numerical: [
5364
+ # {
5365
+ # definition: "String", # required
5366
+ # value: 1.0, # required
5367
+ # label: "NumericalScaleDefinitionLabelString", # required
5368
+ # },
5369
+ # ],
5370
+ # categorical: [
5371
+ # {
5372
+ # definition: "String", # required
5373
+ # label: "CategoricalScaleDefinitionLabelString", # required
5374
+ # },
5375
+ # ],
5376
+ # },
5377
+ # model_config: { # required
5378
+ # bedrock_evaluator_model_config: {
5379
+ # model_id: "ModelId", # required
5380
+ # inference_config: {
5381
+ # max_tokens: 1,
5382
+ # temperature: 1.0,
5383
+ # top_p: 1.0,
5384
+ # stop_sequences: ["NonEmptyString"],
5385
+ # },
5386
+ # additional_model_request_fields: {
5387
+ # },
5388
+ # },
5389
+ # },
5390
+ # },
5391
+ # },
5392
+ # level: "TOOL_CALL", # accepts TOOL_CALL, TRACE, SESSION
5393
+ # })
5394
+ #
5395
+ # @example Response structure
5396
+ #
5397
+ # resp.evaluator_arn #=> String
5398
+ # resp.evaluator_id #=> String
5399
+ # resp.updated_at #=> Time
5400
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
5401
+ #
5402
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateEvaluator AWS API Documentation
5403
+ #
5404
+ # @overload update_evaluator(params = {})
5405
+ # @param [Hash] params ({})
5406
+ def update_evaluator(params = {}, options = {})
5407
+ req = build_request(:update_evaluator, params)
5408
+ req.send_request(options)
5409
+ end
5410
+
3677
5411
  # Updates an existing gateway.
3678
5412
  #
3679
5413
  # @option params [required, String] :gateway_identifier
@@ -3708,6 +5442,13 @@ module Aws::BedrockAgentCoreControl
3708
5442
  # @option params [Array<Types::GatewayInterceptorConfiguration>] :interceptor_configurations
3709
5443
  # The updated interceptor configurations for the gateway.
3710
5444
  #
5445
+ # @option params [Types::GatewayPolicyEngineConfiguration] :policy_engine_configuration
5446
+ # The updated policy engine configuration for the gateway. A policy
5447
+ # engine is a collection of policies that evaluates and authorizes agent
5448
+ # tool calls. When associated with a gateway, the policy engine
5449
+ # intercepts all agent requests and determines whether to allow or deny
5450
+ # each action based on the defined policies.
5451
+ #
3711
5452
  # @option params [String] :exception_level
3712
5453
  # The level of detail in error messages returned when invoking the
3713
5454
  # gateway.
@@ -3736,6 +5477,7 @@ module Aws::BedrockAgentCoreControl
3736
5477
  # * {Types::UpdateGatewayResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
3737
5478
  # * {Types::UpdateGatewayResponse#kms_key_arn #kms_key_arn} => String
3738
5479
  # * {Types::UpdateGatewayResponse#interceptor_configurations #interceptor_configurations} => Array&lt;Types::GatewayInterceptorConfiguration&gt;
5480
+ # * {Types::UpdateGatewayResponse#policy_engine_configuration #policy_engine_configuration} => Types::GatewayPolicyEngineConfiguration
3739
5481
  # * {Types::UpdateGatewayResponse#workload_identity_details #workload_identity_details} => Types::WorkloadIdentityDetails
3740
5482
  # * {Types::UpdateGatewayResponse#exception_level #exception_level} => String
3741
5483
  #
@@ -3760,6 +5502,20 @@ module Aws::BedrockAgentCoreControl
3760
5502
  # discovery_url: "DiscoveryUrl", # required
3761
5503
  # allowed_audience: ["AllowedAudience"],
3762
5504
  # allowed_clients: ["AllowedClient"],
5505
+ # allowed_scopes: ["AllowedScopeType"],
5506
+ # custom_claims: [
5507
+ # {
5508
+ # inbound_token_claim_name: "InboundTokenClaimNameType", # required
5509
+ # inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
5510
+ # authorizing_claim_match_value: { # required
5511
+ # claim_match_value: { # required
5512
+ # match_value_string: "MatchValueString",
5513
+ # match_value_string_list: ["MatchValueString"],
5514
+ # },
5515
+ # claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
5516
+ # },
5517
+ # },
5518
+ # ],
3763
5519
  # },
3764
5520
  # },
3765
5521
  # kms_key_arn: "KmsKeyArn",
@@ -3776,6 +5532,10 @@ module Aws::BedrockAgentCoreControl
3776
5532
  # },
3777
5533
  # },
3778
5534
  # ],
5535
+ # policy_engine_configuration: {
5536
+ # arn: "GatewayPolicyEngineArn", # required
5537
+ # mode: "LOG_ONLY", # required, accepts LOG_ONLY, ENFORCE
5538
+ # },
3779
5539
  # exception_level: "DEBUG", # accepts DEBUG
3780
5540
  # })
3781
5541
  #
@@ -3803,12 +5563,23 @@ module Aws::BedrockAgentCoreControl
3803
5563
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
3804
5564
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
3805
5565
  # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
5566
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
5567
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
5568
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
5569
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
5570
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
5571
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
5572
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
5573
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
5574
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
3806
5575
  # resp.kms_key_arn #=> String
3807
5576
  # resp.interceptor_configurations #=> Array
3808
5577
  # resp.interceptor_configurations[0].interceptor.lambda.arn #=> String
3809
5578
  # resp.interceptor_configurations[0].interception_points #=> Array
3810
5579
  # resp.interceptor_configurations[0].interception_points[0] #=> String, one of "REQUEST", "RESPONSE"
3811
5580
  # resp.interceptor_configurations[0].input_configuration.pass_request_headers #=> Boolean
5581
+ # resp.policy_engine_configuration.arn #=> String
5582
+ # resp.policy_engine_configuration.mode #=> String, one of "LOG_ONLY", "ENFORCE"
3812
5583
  # resp.workload_identity_details.workload_identity_arn #=> String
3813
5584
  # resp.exception_level #=> String, one of "DEBUG"
3814
5585
  #
@@ -3923,6 +5694,26 @@ module Aws::BedrockAgentCoreControl
3923
5694
  # mcp_server: {
3924
5695
  # endpoint: "McpServerTargetConfigurationEndpointString", # required
3925
5696
  # },
5697
+ # api_gateway: {
5698
+ # rest_api_id: "String", # required
5699
+ # stage: "String", # required
5700
+ # api_gateway_tool_configuration: { # required
5701
+ # tool_overrides: [
5702
+ # {
5703
+ # name: "String", # required
5704
+ # description: "String",
5705
+ # path: "String", # required
5706
+ # method: "GET", # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
5707
+ # },
5708
+ # ],
5709
+ # tool_filters: [ # required
5710
+ # {
5711
+ # filter_path: "String", # required
5712
+ # methods: ["GET"], # required, accepts GET, DELETE, HEAD, OPTIONS, PATCH, PUT, POST
5713
+ # },
5714
+ # ],
5715
+ # },
5716
+ # },
3926
5717
  # },
3927
5718
  # },
3928
5719
  # credential_provider_configurations: [
@@ -3935,6 +5726,8 @@ module Aws::BedrockAgentCoreControl
3935
5726
  # custom_parameters: {
3936
5727
  # "OAuthCustomParametersKey" => "OAuthCustomParametersValue",
3937
5728
  # },
5729
+ # grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS, AUTHORIZATION_CODE
5730
+ # default_return_url: "OAuthDefaultReturnUrl",
3938
5731
  # },
3939
5732
  # api_key_credential_provider: {
3940
5733
  # provider_arn: "ApiKeyCredentialProviderArn", # required
@@ -3985,6 +5778,17 @@ module Aws::BedrockAgentCoreControl
3985
5778
  # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.items #=> Types::SchemaDefinition
3986
5779
  # resp.target_configuration.mcp.lambda.tool_schema.inline_payload[0].output_schema.description #=> String
3987
5780
  # resp.target_configuration.mcp.mcp_server.endpoint #=> String
5781
+ # resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
5782
+ # resp.target_configuration.mcp.api_gateway.stage #=> String
5783
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
5784
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].name #=> String
5785
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].description #=> String
5786
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].path #=> String
5787
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides[0].method #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
5788
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters #=> Array
5789
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].filter_path #=> String
5790
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods #=> Array
5791
+ # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_filters[0].methods[0] #=> String, one of "GET", "DELETE", "HEAD", "OPTIONS", "PATCH", "PUT", "POST"
3988
5792
  # resp.credential_provider_configurations #=> Array
3989
5793
  # resp.credential_provider_configurations[0].credential_provider_type #=> String, one of "GATEWAY_IAM_ROLE", "OAUTH", "API_KEY"
3990
5794
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
@@ -3992,6 +5796,8 @@ module Aws::BedrockAgentCoreControl
3992
5796
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
3993
5797
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
3994
5798
  # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["OAuthCustomParametersKey"] #=> String
5799
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE"
5800
+ # resp.credential_provider_configurations[0].credential_provider.oauth_credential_provider.default_return_url #=> String
3995
5801
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.provider_arn #=> String
3996
5802
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_parameter_name #=> String
3997
5803
  # resp.credential_provider_configurations[0].credential_provider.api_key_credential_provider.credential_prefix #=> String
@@ -4095,6 +5901,21 @@ module Aws::BedrockAgentCoreControl
4095
5901
  # model_id: "String", # required
4096
5902
  # },
4097
5903
  # },
5904
+ # episodic_override: {
5905
+ # extraction: {
5906
+ # append_to_prompt: "Prompt", # required
5907
+ # model_id: "String", # required
5908
+ # },
5909
+ # consolidation: {
5910
+ # append_to_prompt: "Prompt", # required
5911
+ # model_id: "String", # required
5912
+ # },
5913
+ # reflection: {
5914
+ # append_to_prompt: "Prompt", # required
5915
+ # model_id: "String", # required
5916
+ # namespaces: ["Namespace"],
5917
+ # },
5918
+ # },
4098
5919
  # self_managed_configuration: {
4099
5920
  # trigger_conditions: [
4100
5921
  # {
@@ -4117,6 +5938,14 @@ module Aws::BedrockAgentCoreControl
4117
5938
  # },
4118
5939
  # },
4119
5940
  # },
5941
+ # episodic_memory_strategy: {
5942
+ # name: "Name", # required
5943
+ # description: "Description",
5944
+ # namespaces: ["Namespace"],
5945
+ # reflection_configuration: {
5946
+ # namespaces: ["Namespace"], # required
5947
+ # },
5948
+ # },
4120
5949
  # },
4121
5950
  # ],
4122
5951
  # modify_memory_strategies: [
@@ -4135,6 +5964,10 @@ module Aws::BedrockAgentCoreControl
4135
5964
  # append_to_prompt: "Prompt", # required
4136
5965
  # model_id: "String", # required
4137
5966
  # },
5967
+ # episodic_extraction_override: {
5968
+ # append_to_prompt: "Prompt", # required
5969
+ # model_id: "String", # required
5970
+ # },
4138
5971
  # },
4139
5972
  # },
4140
5973
  # consolidation: {
@@ -4151,6 +5984,22 @@ module Aws::BedrockAgentCoreControl
4151
5984
  # append_to_prompt: "Prompt", # required
4152
5985
  # model_id: "String", # required
4153
5986
  # },
5987
+ # episodic_consolidation_override: {
5988
+ # append_to_prompt: "Prompt", # required
5989
+ # model_id: "String", # required
5990
+ # },
5991
+ # },
5992
+ # },
5993
+ # reflection: {
5994
+ # episodic_reflection_configuration: {
5995
+ # namespaces: ["Namespace"], # required
5996
+ # },
5997
+ # custom_reflection_configuration: {
5998
+ # episodic_reflection_override: {
5999
+ # append_to_prompt: "Prompt", # required
6000
+ # model_id: "String", # required
6001
+ # namespaces: ["Namespace"],
6002
+ # },
4154
6003
  # },
4155
6004
  # },
4156
6005
  # self_managed_configuration: {
@@ -4201,17 +6050,27 @@ module Aws::BedrockAgentCoreControl
4201
6050
  # resp.memory.strategies[0].strategy_id #=> String
4202
6051
  # resp.memory.strategies[0].name #=> String
4203
6052
  # resp.memory.strategies[0].description #=> String
4204
- # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED"
6053
+ # resp.memory.strategies[0].configuration.type #=> String, one of "SEMANTIC_OVERRIDE", "SUMMARY_OVERRIDE", "USER_PREFERENCE_OVERRIDE", "SELF_MANAGED", "EPISODIC_OVERRIDE"
4205
6054
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.append_to_prompt #=> String
4206
6055
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.semantic_extraction_override.model_id #=> String
4207
6056
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.append_to_prompt #=> String
4208
6057
  # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.user_preference_extraction_override.model_id #=> String
6058
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.append_to_prompt #=> String
6059
+ # resp.memory.strategies[0].configuration.extraction.custom_extraction_configuration.episodic_extraction_override.model_id #=> String
4209
6060
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.append_to_prompt #=> String
4210
6061
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.semantic_consolidation_override.model_id #=> String
4211
6062
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.append_to_prompt #=> String
4212
6063
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.summary_consolidation_override.model_id #=> String
4213
6064
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.append_to_prompt #=> String
4214
6065
  # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.user_preference_consolidation_override.model_id #=> String
6066
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.append_to_prompt #=> String
6067
+ # resp.memory.strategies[0].configuration.consolidation.custom_consolidation_configuration.episodic_consolidation_override.model_id #=> String
6068
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.append_to_prompt #=> String
6069
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.model_id #=> String
6070
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces #=> Array
6071
+ # resp.memory.strategies[0].configuration.reflection.custom_reflection_configuration.episodic_reflection_override.namespaces[0] #=> String
6072
+ # resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces #=> Array
6073
+ # resp.memory.strategies[0].configuration.reflection.episodic_reflection_configuration.namespaces[0] #=> String
4215
6074
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions #=> Array
4216
6075
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].message_based_trigger.message_count #=> Integer
4217
6076
  # resp.memory.strategies[0].configuration.self_managed_configuration.trigger_conditions[0].token_based_trigger.token_count #=> Integer
@@ -4219,7 +6078,7 @@ module Aws::BedrockAgentCoreControl
4219
6078
  # resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.topic_arn #=> String
4220
6079
  # resp.memory.strategies[0].configuration.self_managed_configuration.invocation_configuration.payload_delivery_bucket_name #=> String
4221
6080
  # resp.memory.strategies[0].configuration.self_managed_configuration.historical_context_window_size #=> Integer
4222
- # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM"
6081
+ # resp.memory.strategies[0].type #=> String, one of "SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "CUSTOM", "EPISODIC"
4223
6082
  # resp.memory.strategies[0].namespaces #=> Array
4224
6083
  # resp.memory.strategies[0].namespaces[0] #=> String
4225
6084
  # resp.memory.strategies[0].created_at #=> Time
@@ -4416,6 +6275,254 @@ module Aws::BedrockAgentCoreControl
4416
6275
  req.send_request(options)
4417
6276
  end
4418
6277
 
6278
+ # Updates an online evaluation configuration's settings, including
6279
+ # rules, data sources, evaluators, and execution status. Changes take
6280
+ # effect immediately for ongoing evaluations.
6281
+ #
6282
+ # @option params [String] :client_token
6283
+ # A unique, case-sensitive identifier to ensure that the API request
6284
+ # completes no more than one time. If you don't specify this field, a
6285
+ # value is randomly generated for you. If this token matches a previous
6286
+ # request, the service ignores the request, but doesn't return an
6287
+ # error. For more information, see [Ensuring idempotency][1].
6288
+ #
6289
+ # **A suitable default value is auto-generated.** You should normally
6290
+ # not need to pass this option.**
6291
+ #
6292
+ #
6293
+ #
6294
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
6295
+ #
6296
+ # @option params [required, String] :online_evaluation_config_id
6297
+ # The unique identifier of the online evaluation configuration to
6298
+ # update.
6299
+ #
6300
+ # @option params [String] :description
6301
+ # The updated description of the online evaluation configuration.
6302
+ #
6303
+ # @option params [Types::Rule] :rule
6304
+ # The updated evaluation rule containing sampling configuration,
6305
+ # filters, and session settings.
6306
+ #
6307
+ # @option params [Types::DataSourceConfig] :data_source_config
6308
+ # The updated data source configuration specifying CloudWatch log groups
6309
+ # and service names to monitor.
6310
+ #
6311
+ # @option params [Array<Types::EvaluatorReference>] :evaluators
6312
+ # The updated list of evaluators to apply during online evaluation.
6313
+ #
6314
+ # @option params [String] :evaluation_execution_role_arn
6315
+ # The updated Amazon Resource Name (ARN) of the IAM role used for
6316
+ # evaluation execution.
6317
+ #
6318
+ # @option params [String] :execution_status
6319
+ # The updated execution status to enable or disable the online
6320
+ # evaluation.
6321
+ #
6322
+ # @return [Types::UpdateOnlineEvaluationConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6323
+ #
6324
+ # * {Types::UpdateOnlineEvaluationConfigResponse#online_evaluation_config_arn #online_evaluation_config_arn} => String
6325
+ # * {Types::UpdateOnlineEvaluationConfigResponse#online_evaluation_config_id #online_evaluation_config_id} => String
6326
+ # * {Types::UpdateOnlineEvaluationConfigResponse#updated_at #updated_at} => Time
6327
+ # * {Types::UpdateOnlineEvaluationConfigResponse#status #status} => String
6328
+ # * {Types::UpdateOnlineEvaluationConfigResponse#execution_status #execution_status} => String
6329
+ # * {Types::UpdateOnlineEvaluationConfigResponse#failure_reason #failure_reason} => String
6330
+ #
6331
+ # @example Request syntax with placeholder values
6332
+ #
6333
+ # resp = client.update_online_evaluation_config({
6334
+ # client_token: "ClientToken",
6335
+ # online_evaluation_config_id: "OnlineEvaluationConfigId", # required
6336
+ # description: "EvaluationConfigDescription",
6337
+ # rule: {
6338
+ # sampling_config: { # required
6339
+ # sampling_percentage: 1.0, # required
6340
+ # },
6341
+ # filters: [
6342
+ # {
6343
+ # key: "FilterKeyString", # required
6344
+ # operator: "Equals", # required, accepts Equals, NotEquals, GreaterThan, LessThan, GreaterThanOrEqual, LessThanOrEqual, Contains, NotContains
6345
+ # value: { # required
6346
+ # string_value: "FilterValueStringValueString",
6347
+ # double_value: 1.0,
6348
+ # boolean_value: false,
6349
+ # },
6350
+ # },
6351
+ # ],
6352
+ # session_config: {
6353
+ # session_timeout_minutes: 1, # required
6354
+ # },
6355
+ # },
6356
+ # data_source_config: {
6357
+ # cloud_watch_logs: {
6358
+ # log_group_names: ["LogGroupName"], # required
6359
+ # service_names: ["ServiceName"], # required
6360
+ # },
6361
+ # },
6362
+ # evaluators: [
6363
+ # {
6364
+ # evaluator_id: "EvaluatorId",
6365
+ # },
6366
+ # ],
6367
+ # evaluation_execution_role_arn: "RoleArn",
6368
+ # execution_status: "ENABLED", # accepts ENABLED, DISABLED
6369
+ # })
6370
+ #
6371
+ # @example Response structure
6372
+ #
6373
+ # resp.online_evaluation_config_arn #=> String
6374
+ # resp.online_evaluation_config_id #=> String
6375
+ # resp.updated_at #=> Time
6376
+ # resp.status #=> String, one of "ACTIVE", "CREATING", "CREATE_FAILED", "UPDATING", "UPDATE_FAILED", "DELETING"
6377
+ # resp.execution_status #=> String, one of "ENABLED", "DISABLED"
6378
+ # resp.failure_reason #=> String
6379
+ #
6380
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateOnlineEvaluationConfig AWS API Documentation
6381
+ #
6382
+ # @overload update_online_evaluation_config(params = {})
6383
+ # @param [Hash] params ({})
6384
+ def update_online_evaluation_config(params = {}, options = {})
6385
+ req = build_request(:update_online_evaluation_config, params)
6386
+ req.send_request(options)
6387
+ end
6388
+
6389
+ # Updates an existing policy within the AgentCore Policy system. This
6390
+ # operation allows modification of the policy description and definition
6391
+ # while maintaining the policy's identity. The updated policy is
6392
+ # validated against the Cedar schema before being applied. This is an
6393
+ # asynchronous operation. Use the `GetPolicy` operation to poll the
6394
+ # `status` field to track completion.
6395
+ #
6396
+ # @option params [required, String] :policy_engine_id
6397
+ # The identifier of the policy engine that manages the policy to be
6398
+ # updated. This ensures the policy is updated within the correct policy
6399
+ # engine context.
6400
+ #
6401
+ # @option params [required, String] :policy_id
6402
+ # The unique identifier of the policy to be updated. This must be a
6403
+ # valid policy ID that exists within the specified policy engine.
6404
+ #
6405
+ # @option params [String] :description
6406
+ # The new human-readable description for the policy. This optional field
6407
+ # allows updating the policy's documentation while keeping the same
6408
+ # policy logic.
6409
+ #
6410
+ # @option params [required, Types::PolicyDefinition] :definition
6411
+ # The new Cedar policy statement that defines the access control rules.
6412
+ # This replaces the existing policy definition with new logic while
6413
+ # maintaining the policy's identity.
6414
+ #
6415
+ # @option params [String] :validation_mode
6416
+ # The validation mode for the policy update. Determines how Cedar
6417
+ # analyzer validation results are handled during policy updates.
6418
+ # FAIL\_ON\_ANY\_FINDINGS runs the Cedar analyzer and fails the update
6419
+ # if validation issues are detected, ensuring the policy conforms to the
6420
+ # Cedar schema and tool context. IGNORE\_ALL\_FINDINGS runs the Cedar
6421
+ # analyzer but allows updates despite validation warnings. Use
6422
+ # FAIL\_ON\_ANY\_FINDINGS to ensure policy correctness during updates,
6423
+ # especially when modifying policy logic or conditions.
6424
+ #
6425
+ # @return [Types::UpdatePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6426
+ #
6427
+ # * {Types::UpdatePolicyResponse#policy_id #policy_id} => String
6428
+ # * {Types::UpdatePolicyResponse#name #name} => String
6429
+ # * {Types::UpdatePolicyResponse#policy_engine_id #policy_engine_id} => String
6430
+ # * {Types::UpdatePolicyResponse#definition #definition} => Types::PolicyDefinition
6431
+ # * {Types::UpdatePolicyResponse#description #description} => String
6432
+ # * {Types::UpdatePolicyResponse#created_at #created_at} => Time
6433
+ # * {Types::UpdatePolicyResponse#updated_at #updated_at} => Time
6434
+ # * {Types::UpdatePolicyResponse#policy_arn #policy_arn} => String
6435
+ # * {Types::UpdatePolicyResponse#status #status} => String
6436
+ # * {Types::UpdatePolicyResponse#status_reasons #status_reasons} => Array&lt;String&gt;
6437
+ #
6438
+ # @example Request syntax with placeholder values
6439
+ #
6440
+ # resp = client.update_policy({
6441
+ # policy_engine_id: "ResourceId", # required
6442
+ # policy_id: "ResourceId", # required
6443
+ # description: "Description",
6444
+ # definition: { # required
6445
+ # cedar: {
6446
+ # statement: "Statement", # required
6447
+ # },
6448
+ # },
6449
+ # validation_mode: "FAIL_ON_ANY_FINDINGS", # accepts FAIL_ON_ANY_FINDINGS, IGNORE_ALL_FINDINGS
6450
+ # })
6451
+ #
6452
+ # @example Response structure
6453
+ #
6454
+ # resp.policy_id #=> String
6455
+ # resp.name #=> String
6456
+ # resp.policy_engine_id #=> String
6457
+ # resp.definition.cedar.statement #=> String
6458
+ # resp.description #=> String
6459
+ # resp.created_at #=> Time
6460
+ # resp.updated_at #=> Time
6461
+ # resp.policy_arn #=> String
6462
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
6463
+ # resp.status_reasons #=> Array
6464
+ # resp.status_reasons[0] #=> String
6465
+ #
6466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdatePolicy AWS API Documentation
6467
+ #
6468
+ # @overload update_policy(params = {})
6469
+ # @param [Hash] params ({})
6470
+ def update_policy(params = {}, options = {})
6471
+ req = build_request(:update_policy, params)
6472
+ req.send_request(options)
6473
+ end
6474
+
6475
+ # Updates an existing policy engine within the AgentCore Policy system.
6476
+ # This operation allows modification of the policy engine description
6477
+ # while maintaining its identity. This is an asynchronous operation. Use
6478
+ # the `GetPolicyEngine` operation to poll the `status` field to track
6479
+ # completion.
6480
+ #
6481
+ # @option params [required, String] :policy_engine_id
6482
+ # The unique identifier of the policy engine to be updated.
6483
+ #
6484
+ # @option params [String] :description
6485
+ # The new description for the policy engine.
6486
+ #
6487
+ # @return [Types::UpdatePolicyEngineResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6488
+ #
6489
+ # * {Types::UpdatePolicyEngineResponse#policy_engine_id #policy_engine_id} => String
6490
+ # * {Types::UpdatePolicyEngineResponse#name #name} => String
6491
+ # * {Types::UpdatePolicyEngineResponse#description #description} => String
6492
+ # * {Types::UpdatePolicyEngineResponse#created_at #created_at} => Time
6493
+ # * {Types::UpdatePolicyEngineResponse#updated_at #updated_at} => Time
6494
+ # * {Types::UpdatePolicyEngineResponse#policy_engine_arn #policy_engine_arn} => String
6495
+ # * {Types::UpdatePolicyEngineResponse#status #status} => String
6496
+ # * {Types::UpdatePolicyEngineResponse#status_reasons #status_reasons} => Array&lt;String&gt;
6497
+ #
6498
+ # @example Request syntax with placeholder values
6499
+ #
6500
+ # resp = client.update_policy_engine({
6501
+ # policy_engine_id: "ResourceId", # required
6502
+ # description: "Description",
6503
+ # })
6504
+ #
6505
+ # @example Response structure
6506
+ #
6507
+ # resp.policy_engine_id #=> String
6508
+ # resp.name #=> String
6509
+ # resp.description #=> String
6510
+ # resp.created_at #=> Time
6511
+ # resp.updated_at #=> Time
6512
+ # resp.policy_engine_arn #=> String
6513
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
6514
+ # resp.status_reasons #=> Array
6515
+ # resp.status_reasons[0] #=> String
6516
+ #
6517
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdatePolicyEngine AWS API Documentation
6518
+ #
6519
+ # @overload update_policy_engine(params = {})
6520
+ # @param [Hash] params ({})
6521
+ def update_policy_engine(params = {}, options = {})
6522
+ req = build_request(:update_policy_engine, params)
6523
+ req.send_request(options)
6524
+ end
6525
+
4419
6526
  # Updates an existing workload identity.
4420
6527
  #
4421
6528
  # @option params [required, String] :name
@@ -4476,7 +6583,7 @@ module Aws::BedrockAgentCoreControl
4476
6583
  tracer: tracer
4477
6584
  )
4478
6585
  context[:gem_name] = 'aws-sdk-bedrockagentcorecontrol'
4479
- context[:gem_version] = '1.15.0'
6586
+ context[:gem_version] = '1.16.0'
4480
6587
  Seahorse::Client::Request.new(handlers, context)
4481
6588
  end
4482
6589
 
@@ -4542,9 +6649,14 @@ module Aws::BedrockAgentCoreControl
4542
6649
  # The following table lists the valid waiter names, the operations they call,
4543
6650
  # and the default `:delay` and `:max_attempts` values.
4544
6651
  #
4545
- # | waiter_name | params | :delay | :max_attempts |
4546
- # | -------------- | ------------------- | -------- | ------------- |
4547
- # | memory_created | {Client#get_memory} | 2 | 60 |
6652
+ # | waiter_name | params | :delay | :max_attempts |
6653
+ # | --------------------------- | ------------------------------ | -------- | ------------- |
6654
+ # | memory_created | {Client#get_memory} | 2 | 60 |
6655
+ # | policy_active | {Client#get_policy} | 2 | 60 |
6656
+ # | policy_deleted | {Client#get_policy} | 2 | 60 |
6657
+ # | policy_engine_active | {Client#get_policy_engine} | 2 | 60 |
6658
+ # | policy_engine_deleted | {Client#get_policy_engine} | 2 | 60 |
6659
+ # | policy_generation_completed | {Client#get_policy_generation} | 2 | 60 |
4548
6660
  #
4549
6661
  # @raise [Errors::FailureStateError] Raised when the waiter terminates
4550
6662
  # because the waiter has entered a state that it will not transition
@@ -4595,7 +6707,12 @@ module Aws::BedrockAgentCoreControl
4595
6707
 
4596
6708
  def waiters
4597
6709
  {
4598
- memory_created: Waiters::MemoryCreated
6710
+ memory_created: Waiters::MemoryCreated,
6711
+ policy_active: Waiters::PolicyActive,
6712
+ policy_deleted: Waiters::PolicyDeleted,
6713
+ policy_engine_active: Waiters::PolicyEngineActive,
6714
+ policy_engine_deleted: Waiters::PolicyEngineDeleted,
6715
+ policy_generation_completed: Waiters::PolicyGenerationCompleted
4599
6716
  }
4600
6717
  end
4601
6718