aws-sdk-bedrockagentcorecontrol 1.36.0 → 1.38.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.
@@ -1479,6 +1479,7 @@ module Aws::BedrockAgentCoreControl
1479
1479
  # },
1480
1480
  # inline_payload: "InlinePayload",
1481
1481
  # },
1482
+ # listing_mode: "DEFAULT", # accepts DEFAULT, DYNAMIC
1482
1483
  # },
1483
1484
  # api_gateway: {
1484
1485
  # rest_api_id: "String", # required
@@ -1591,6 +1592,7 @@ module Aws::BedrockAgentCoreControl
1591
1592
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
1592
1593
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.bucket_owner_account_id #=> String
1593
1594
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
1595
+ # resp.target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
1594
1596
  # resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
1595
1597
  # resp.target_configuration.mcp.api_gateway.stage #=> String
1596
1598
  # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
@@ -2422,6 +2424,255 @@ module Aws::BedrockAgentCoreControl
2422
2424
  req.send_request(options)
2423
2425
  end
2424
2426
 
2427
+ # Creates a new registry in your Amazon Web Services account. A registry
2428
+ # serves as a centralized catalog for organizing and managing registry
2429
+ # records, including MCP servers, A2A agents, agent skills, and custom
2430
+ # resource types.
2431
+ #
2432
+ # If you specify `CUSTOM_JWT` as the `authorizerType`, you must provide
2433
+ # an `authorizerConfiguration`.
2434
+ #
2435
+ # @option params [required, String] :name
2436
+ # The name of the registry. The name must be unique within your account
2437
+ # and can contain alphanumeric characters and underscores.
2438
+ #
2439
+ # @option params [String] :description
2440
+ # A description of the registry.
2441
+ #
2442
+ # @option params [String] :authorizer_type
2443
+ # The type of authorizer to use for the registry. This controls the
2444
+ # authorization method for the Search and Invoke APIs used by consumers,
2445
+ # and does not affect the standard CRUDL APIs for registry and registry
2446
+ # record management used by administrators.
2447
+ #
2448
+ # * `CUSTOM_JWT` - Authorize with a bearer token.
2449
+ #
2450
+ # * `AWS_IAM` - Authorize with your Amazon Web Services IAM credentials.
2451
+ #
2452
+ # @option params [Types::AuthorizerConfiguration] :authorizer_configuration
2453
+ # The authorizer configuration for the registry. Required if
2454
+ # `authorizerType` is `CUSTOM_JWT`. For details, see the
2455
+ # `AuthorizerConfiguration` data type.
2456
+ #
2457
+ # @option params [String] :client_token
2458
+ # A unique, case-sensitive identifier to ensure that the API request
2459
+ # completes no more than one time. If you don't specify this field, a
2460
+ # value is randomly generated for you. If this token matches a previous
2461
+ # request, the service ignores the request, but doesn't return an
2462
+ # error. For more information, see [Ensuring idempotency][1].
2463
+ #
2464
+ # **A suitable default value is auto-generated.** You should normally
2465
+ # not need to pass this option.**
2466
+ #
2467
+ #
2468
+ #
2469
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
2470
+ #
2471
+ # @option params [Types::ApprovalConfiguration] :approval_configuration
2472
+ # The approval configuration for registry records. Controls whether
2473
+ # records require explicit approval before becoming active. See the
2474
+ # `ApprovalConfiguration` data type for supported configuration options.
2475
+ #
2476
+ # @return [Types::CreateRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2477
+ #
2478
+ # * {Types::CreateRegistryResponse#registry_arn #registry_arn} => String
2479
+ #
2480
+ # @example Request syntax with placeholder values
2481
+ #
2482
+ # resp = client.create_registry({
2483
+ # name: "RegistryName", # required
2484
+ # description: "Description",
2485
+ # authorizer_type: "CUSTOM_JWT", # accepts CUSTOM_JWT, AWS_IAM
2486
+ # authorizer_configuration: {
2487
+ # custom_jwt_authorizer: {
2488
+ # discovery_url: "DiscoveryUrl", # required
2489
+ # allowed_audience: ["AllowedAudience"],
2490
+ # allowed_clients: ["AllowedClient"],
2491
+ # allowed_scopes: ["AllowedScopeType"],
2492
+ # custom_claims: [
2493
+ # {
2494
+ # inbound_token_claim_name: "InboundTokenClaimNameType", # required
2495
+ # inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
2496
+ # authorizing_claim_match_value: { # required
2497
+ # claim_match_value: { # required
2498
+ # match_value_string: "MatchValueString",
2499
+ # match_value_string_list: ["MatchValueString"],
2500
+ # },
2501
+ # claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
2502
+ # },
2503
+ # },
2504
+ # ],
2505
+ # },
2506
+ # },
2507
+ # client_token: "ClientToken",
2508
+ # approval_configuration: {
2509
+ # auto_approval: false,
2510
+ # },
2511
+ # })
2512
+ #
2513
+ # @example Response structure
2514
+ #
2515
+ # resp.registry_arn #=> String
2516
+ #
2517
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateRegistry AWS API Documentation
2518
+ #
2519
+ # @overload create_registry(params = {})
2520
+ # @param [Hash] params ({})
2521
+ def create_registry(params = {}, options = {})
2522
+ req = build_request(:create_registry, params)
2523
+ req.send_request(options)
2524
+ end
2525
+
2526
+ # Creates a new registry record within the specified registry. A
2527
+ # registry record represents an individual AI resource's metadata in
2528
+ # the registry. This could be an MCP server (and associated tools), A2A
2529
+ # agent, agent skill, or a custom resource with a custom schema.
2530
+ #
2531
+ # The record is processed asynchronously and returns HTTP 202 Accepted.
2532
+ #
2533
+ # @option params [required, String] :registry_id
2534
+ # The identifier of the registry where the record will be created. You
2535
+ # can specify either the Amazon Resource Name (ARN) or the ID of the
2536
+ # registry.
2537
+ #
2538
+ # @option params [required, String] :name
2539
+ # The name of the registry record.
2540
+ #
2541
+ # @option params [String] :description
2542
+ # A description of the registry record.
2543
+ #
2544
+ # @option params [required, String] :descriptor_type
2545
+ # The descriptor type of the registry record.
2546
+ #
2547
+ # * `MCP` - Model Context Protocol descriptor for MCP-compatible servers
2548
+ # and tools.
2549
+ #
2550
+ # * `A2A` - Agent-to-Agent protocol descriptor.
2551
+ #
2552
+ # * `CUSTOM` - Custom descriptor type for resources such as APIs, Lambda
2553
+ # functions, or servers not conforming to a standard protocol.
2554
+ #
2555
+ # * `AGENT_SKILLS` - Agent skills descriptor for defining agent skill
2556
+ # definitions.
2557
+ #
2558
+ # @option params [Types::Descriptors] :descriptors
2559
+ # The descriptor-type-specific configuration containing the resource
2560
+ # schema and metadata. The structure of this field depends on the
2561
+ # `descriptorType` you specify.
2562
+ #
2563
+ # @option params [String] :record_version
2564
+ # The version of the registry record. Use this to track different
2565
+ # versions of the record's content.
2566
+ #
2567
+ # @option params [String] :synchronization_type
2568
+ # The type of synchronization to use for keeping the record metadata up
2569
+ # to date from an external source. Possible values include `FROM_URL`
2570
+ # and `NONE`.
2571
+ #
2572
+ # @option params [Types::SynchronizationConfiguration] :synchronization_configuration
2573
+ # The configuration for synchronizing registry record metadata from an
2574
+ # external source, such as a URL-based MCP server.
2575
+ #
2576
+ # @option params [String] :client_token
2577
+ # A unique, case-sensitive identifier to ensure that the API request
2578
+ # completes no more than one time. If you don't specify this field, a
2579
+ # value is randomly generated for you. If this token matches a previous
2580
+ # request, the service ignores the request, but doesn't return an
2581
+ # error. For more information, see [Ensuring idempotency][1].
2582
+ #
2583
+ # **A suitable default value is auto-generated.** You should normally
2584
+ # not need to pass this option.**
2585
+ #
2586
+ #
2587
+ #
2588
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
2589
+ #
2590
+ # @return [Types::CreateRegistryRecordResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2591
+ #
2592
+ # * {Types::CreateRegistryRecordResponse#record_arn #record_arn} => String
2593
+ # * {Types::CreateRegistryRecordResponse#status #status} => String
2594
+ #
2595
+ # @example Request syntax with placeholder values
2596
+ #
2597
+ # resp = client.create_registry_record({
2598
+ # registry_id: "RegistryIdentifier", # required
2599
+ # name: "RegistryRecordName", # required
2600
+ # description: "Description",
2601
+ # descriptor_type: "MCP", # required, accepts MCP, A2A, CUSTOM, AGENT_SKILLS
2602
+ # descriptors: {
2603
+ # mcp: {
2604
+ # server: {
2605
+ # schema_version: "SchemaVersion",
2606
+ # inline_content: "InlineContent",
2607
+ # },
2608
+ # tools: {
2609
+ # protocol_version: "SchemaVersion",
2610
+ # inline_content: "InlineContent",
2611
+ # },
2612
+ # },
2613
+ # a2a: {
2614
+ # agent_card: {
2615
+ # schema_version: "SchemaVersion",
2616
+ # inline_content: "InlineContent",
2617
+ # },
2618
+ # },
2619
+ # custom: {
2620
+ # inline_content: "InlineContent",
2621
+ # },
2622
+ # agent_skills: {
2623
+ # skill_md: {
2624
+ # inline_content: "InlineContent",
2625
+ # },
2626
+ # skill_definition: {
2627
+ # schema_version: "SchemaVersion",
2628
+ # inline_content: "InlineContent",
2629
+ # },
2630
+ # },
2631
+ # },
2632
+ # record_version: "RegistryRecordVersion",
2633
+ # synchronization_type: "URL", # accepts URL
2634
+ # synchronization_configuration: {
2635
+ # from_url: {
2636
+ # url: "McpServerUrl", # required
2637
+ # credential_provider_configurations: [
2638
+ # {
2639
+ # credential_provider_type: "OAUTH", # required, accepts OAUTH, IAM
2640
+ # credential_provider: { # required
2641
+ # oauth_credential_provider: {
2642
+ # provider_arn: "CredentialProviderArn", # required
2643
+ # grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS
2644
+ # scopes: ["String"],
2645
+ # custom_parameters: {
2646
+ # "String" => "String",
2647
+ # },
2648
+ # },
2649
+ # iam_credential_provider: {
2650
+ # role_arn: "IamRoleArn",
2651
+ # service: "IamSigningServiceName",
2652
+ # region: "IamSigningRegion",
2653
+ # },
2654
+ # },
2655
+ # },
2656
+ # ],
2657
+ # },
2658
+ # },
2659
+ # client_token: "ClientToken",
2660
+ # })
2661
+ #
2662
+ # @example Response structure
2663
+ #
2664
+ # resp.record_arn #=> String
2665
+ # resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
2666
+ #
2667
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/CreateRegistryRecord AWS API Documentation
2668
+ #
2669
+ # @overload create_registry_record(params = {})
2670
+ # @param [Hash] params ({})
2671
+ def create_registry_record(params = {}, options = {})
2672
+ req = build_request(:create_registry_record, params)
2673
+ req.send_request(options)
2674
+ end
2675
+
2425
2676
  # Creates a new workload identity.
2426
2677
  #
2427
2678
  # @option params [required, String] :name
@@ -3016,6 +3267,66 @@ module Aws::BedrockAgentCoreControl
3016
3267
  req.send_request(options)
3017
3268
  end
3018
3269
 
3270
+ # Deletes a registry. The registry must contain zero records before it
3271
+ # can be deleted. This operation initiates the deletion process
3272
+ # asynchronously.
3273
+ #
3274
+ # @option params [required, String] :registry_id
3275
+ # The identifier of the registry to delete. You can specify either the
3276
+ # Amazon Resource Name (ARN) or the ID of the registry.
3277
+ #
3278
+ # @return [Types::DeleteRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3279
+ #
3280
+ # * {Types::DeleteRegistryResponse#status #status} => String
3281
+ #
3282
+ # @example Request syntax with placeholder values
3283
+ #
3284
+ # resp = client.delete_registry({
3285
+ # registry_id: "RegistryIdentifier", # required
3286
+ # })
3287
+ #
3288
+ # @example Response structure
3289
+ #
3290
+ # resp.status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
3291
+ #
3292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteRegistry AWS API Documentation
3293
+ #
3294
+ # @overload delete_registry(params = {})
3295
+ # @param [Hash] params ({})
3296
+ def delete_registry(params = {}, options = {})
3297
+ req = build_request(:delete_registry, params)
3298
+ req.send_request(options)
3299
+ end
3300
+
3301
+ # Deletes a registry record. The record's status transitions to
3302
+ # `DELETING` and the record is removed asynchronously.
3303
+ #
3304
+ # @option params [required, String] :registry_id
3305
+ # The identifier of the registry containing the record. You can specify
3306
+ # either the Amazon Resource Name (ARN) or the ID of the registry.
3307
+ #
3308
+ # @option params [required, String] :record_id
3309
+ # The identifier of the registry record to delete. You can specify
3310
+ # either the Amazon Resource Name (ARN) or the ID of the record.
3311
+ #
3312
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3313
+ #
3314
+ # @example Request syntax with placeholder values
3315
+ #
3316
+ # resp = client.delete_registry_record({
3317
+ # registry_id: "RegistryIdentifier", # required
3318
+ # record_id: "RecordIdentifier", # required
3319
+ # })
3320
+ #
3321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/DeleteRegistryRecord AWS API Documentation
3322
+ #
3323
+ # @overload delete_registry_record(params = {})
3324
+ # @param [Hash] params ({})
3325
+ def delete_registry_record(params = {}, options = {})
3326
+ req = build_request(:delete_registry_record, params)
3327
+ req.send_request(options)
3328
+ end
3329
+
3019
3330
  # Deletes the resource-based policy for a specified resource.
3020
3331
  #
3021
3332
  # <note markdown="1"> This feature is currently available only for AgentCore Runtime and
@@ -3641,6 +3952,7 @@ module Aws::BedrockAgentCoreControl
3641
3952
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
3642
3953
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.bucket_owner_account_id #=> String
3643
3954
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
3955
+ # resp.target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
3644
3956
  # resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
3645
3957
  # resp.target_configuration.mcp.api_gateway.stage #=> String
3646
3958
  # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
@@ -4172,6 +4484,148 @@ module Aws::BedrockAgentCoreControl
4172
4484
  req.send_request(options)
4173
4485
  end
4174
4486
 
4487
+ # Retrieves information about a specific registry.
4488
+ #
4489
+ # @option params [required, String] :registry_id
4490
+ # The identifier of the registry to retrieve. You can specify either the
4491
+ # Amazon Resource Name (ARN) or the ID of the registry.
4492
+ #
4493
+ # @return [Types::GetRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4494
+ #
4495
+ # * {Types::GetRegistryResponse#name #name} => String
4496
+ # * {Types::GetRegistryResponse#description #description} => String
4497
+ # * {Types::GetRegistryResponse#registry_id #registry_id} => String
4498
+ # * {Types::GetRegistryResponse#registry_arn #registry_arn} => String
4499
+ # * {Types::GetRegistryResponse#authorizer_type #authorizer_type} => String
4500
+ # * {Types::GetRegistryResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
4501
+ # * {Types::GetRegistryResponse#approval_configuration #approval_configuration} => Types::ApprovalConfiguration
4502
+ # * {Types::GetRegistryResponse#status #status} => String
4503
+ # * {Types::GetRegistryResponse#status_reason #status_reason} => String
4504
+ # * {Types::GetRegistryResponse#created_at #created_at} => Time
4505
+ # * {Types::GetRegistryResponse#updated_at #updated_at} => Time
4506
+ #
4507
+ # @example Request syntax with placeholder values
4508
+ #
4509
+ # resp = client.get_registry({
4510
+ # registry_id: "RegistryIdentifier", # required
4511
+ # })
4512
+ #
4513
+ # @example Response structure
4514
+ #
4515
+ # resp.name #=> String
4516
+ # resp.description #=> String
4517
+ # resp.registry_id #=> String
4518
+ # resp.registry_arn #=> String
4519
+ # resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
4520
+ # resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
4521
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
4522
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
4523
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
4524
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
4525
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
4526
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
4527
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
4528
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
4529
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
4530
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
4531
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
4532
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
4533
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
4534
+ # resp.approval_configuration.auto_approval #=> Boolean
4535
+ # resp.status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
4536
+ # resp.status_reason #=> String
4537
+ # resp.created_at #=> Time
4538
+ # resp.updated_at #=> Time
4539
+ #
4540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetRegistry AWS API Documentation
4541
+ #
4542
+ # @overload get_registry(params = {})
4543
+ # @param [Hash] params ({})
4544
+ def get_registry(params = {}, options = {})
4545
+ req = build_request(:get_registry, params)
4546
+ req.send_request(options)
4547
+ end
4548
+
4549
+ # Retrieves information about a specific registry record.
4550
+ #
4551
+ # @option params [required, String] :registry_id
4552
+ # The identifier of the registry containing the record. You can specify
4553
+ # either the Amazon Resource Name (ARN) or the ID of the registry.
4554
+ #
4555
+ # @option params [required, String] :record_id
4556
+ # The identifier of the registry record to retrieve. You can specify
4557
+ # either the Amazon Resource Name (ARN) or the ID of the record.
4558
+ #
4559
+ # @return [Types::GetRegistryRecordResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4560
+ #
4561
+ # * {Types::GetRegistryRecordResponse#registry_arn #registry_arn} => String
4562
+ # * {Types::GetRegistryRecordResponse#record_arn #record_arn} => String
4563
+ # * {Types::GetRegistryRecordResponse#record_id #record_id} => String
4564
+ # * {Types::GetRegistryRecordResponse#name #name} => String
4565
+ # * {Types::GetRegistryRecordResponse#description #description} => String
4566
+ # * {Types::GetRegistryRecordResponse#descriptor_type #descriptor_type} => String
4567
+ # * {Types::GetRegistryRecordResponse#descriptors #descriptors} => Types::Descriptors
4568
+ # * {Types::GetRegistryRecordResponse#record_version #record_version} => String
4569
+ # * {Types::GetRegistryRecordResponse#status #status} => String
4570
+ # * {Types::GetRegistryRecordResponse#created_at #created_at} => Time
4571
+ # * {Types::GetRegistryRecordResponse#updated_at #updated_at} => Time
4572
+ # * {Types::GetRegistryRecordResponse#status_reason #status_reason} => String
4573
+ # * {Types::GetRegistryRecordResponse#synchronization_type #synchronization_type} => String
4574
+ # * {Types::GetRegistryRecordResponse#synchronization_configuration #synchronization_configuration} => Types::SynchronizationConfiguration
4575
+ #
4576
+ # @example Request syntax with placeholder values
4577
+ #
4578
+ # resp = client.get_registry_record({
4579
+ # registry_id: "RegistryIdentifier", # required
4580
+ # record_id: "RecordIdentifier", # required
4581
+ # })
4582
+ #
4583
+ # @example Response structure
4584
+ #
4585
+ # resp.registry_arn #=> String
4586
+ # resp.record_arn #=> String
4587
+ # resp.record_id #=> String
4588
+ # resp.name #=> String
4589
+ # resp.description #=> String
4590
+ # resp.descriptor_type #=> String, one of "MCP", "A2A", "CUSTOM", "AGENT_SKILLS"
4591
+ # resp.descriptors.mcp.server.schema_version #=> String
4592
+ # resp.descriptors.mcp.server.inline_content #=> String
4593
+ # resp.descriptors.mcp.tools.protocol_version #=> String
4594
+ # resp.descriptors.mcp.tools.inline_content #=> String
4595
+ # resp.descriptors.a2a.agent_card.schema_version #=> String
4596
+ # resp.descriptors.a2a.agent_card.inline_content #=> String
4597
+ # resp.descriptors.custom.inline_content #=> String
4598
+ # resp.descriptors.agent_skills.skill_md.inline_content #=> String
4599
+ # resp.descriptors.agent_skills.skill_definition.schema_version #=> String
4600
+ # resp.descriptors.agent_skills.skill_definition.inline_content #=> String
4601
+ # resp.record_version #=> String
4602
+ # resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
4603
+ # resp.created_at #=> Time
4604
+ # resp.updated_at #=> Time
4605
+ # resp.status_reason #=> String
4606
+ # resp.synchronization_type #=> String, one of "URL"
4607
+ # resp.synchronization_configuration.from_url.url #=> String
4608
+ # resp.synchronization_configuration.from_url.credential_provider_configurations #=> Array
4609
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider_type #=> String, one of "OAUTH", "IAM"
4610
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
4611
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS"
4612
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
4613
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
4614
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
4615
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["String"] #=> String
4616
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.role_arn #=> String
4617
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
4618
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String
4619
+ #
4620
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/GetRegistryRecord AWS API Documentation
4621
+ #
4622
+ # @overload get_registry_record(params = {})
4623
+ # @param [Hash] params ({})
4624
+ def get_registry_record(params = {}, options = {})
4625
+ req = build_request(:get_registry_record, params)
4626
+ req.send_request(options)
4627
+ end
4628
+
4175
4629
  # Retrieves the resource-based policy for a specified resource.
4176
4630
  #
4177
4631
  # <note markdown="1"> This feature is currently available only for AgentCore Runtime and
@@ -5148,6 +5602,140 @@ module Aws::BedrockAgentCoreControl
5148
5602
  req.send_request(options)
5149
5603
  end
5150
5604
 
5605
+ # Lists all registries in the account. You can optionally filter results
5606
+ # by status using the `status` parameter.
5607
+ #
5608
+ # @option params [Integer] :max_results
5609
+ # The maximum number of results to return in the response. If the total
5610
+ # number of results is greater than this value, use the token returned
5611
+ # in the response in the `nextToken` field when making another request
5612
+ # to return the next batch of results.
5613
+ #
5614
+ # @option params [String] :next_token
5615
+ # If the total number of results is greater than the `maxResults` value
5616
+ # provided in the request, enter the token returned in the `nextToken`
5617
+ # field in the response in this field to return the next batch of
5618
+ # results.
5619
+ #
5620
+ # @option params [String] :status
5621
+ # Filter registries by their current status. Possible values include
5622
+ # `CREATING`, `READY`, `UPDATING`, `CREATE_FAILED`, `UPDATE_FAILED`,
5623
+ # `DELETING`, and `DELETE_FAILED`.
5624
+ #
5625
+ # @return [Types::ListRegistriesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5626
+ #
5627
+ # * {Types::ListRegistriesResponse#registries #registries} => Array&lt;Types::RegistrySummary&gt;
5628
+ # * {Types::ListRegistriesResponse#next_token #next_token} => String
5629
+ #
5630
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5631
+ #
5632
+ # @example Request syntax with placeholder values
5633
+ #
5634
+ # resp = client.list_registries({
5635
+ # max_results: 1,
5636
+ # next_token: "NextToken",
5637
+ # status: "CREATING", # accepts CREATING, READY, UPDATING, CREATE_FAILED, UPDATE_FAILED, DELETING, DELETE_FAILED
5638
+ # })
5639
+ #
5640
+ # @example Response structure
5641
+ #
5642
+ # resp.registries #=> Array
5643
+ # resp.registries[0].name #=> String
5644
+ # resp.registries[0].description #=> String
5645
+ # resp.registries[0].registry_id #=> String
5646
+ # resp.registries[0].registry_arn #=> String
5647
+ # resp.registries[0].authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
5648
+ # resp.registries[0].status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
5649
+ # resp.registries[0].status_reason #=> String
5650
+ # resp.registries[0].created_at #=> Time
5651
+ # resp.registries[0].updated_at #=> Time
5652
+ # resp.next_token #=> String
5653
+ #
5654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListRegistries AWS API Documentation
5655
+ #
5656
+ # @overload list_registries(params = {})
5657
+ # @param [Hash] params ({})
5658
+ def list_registries(params = {}, options = {})
5659
+ req = build_request(:list_registries, params)
5660
+ req.send_request(options)
5661
+ end
5662
+
5663
+ # Lists registry records within a registry. You can optionally filter
5664
+ # results using the `name`, `status`, and `descriptorType` parameters.
5665
+ # When multiple filters are specified, they are combined using AND
5666
+ # logic.
5667
+ #
5668
+ # @option params [required, String] :registry_id
5669
+ # The identifier of the registry to list records from. You can specify
5670
+ # either the Amazon Resource Name (ARN) or the ID of the registry.
5671
+ #
5672
+ # @option params [Integer] :max_results
5673
+ # The maximum number of results to return in the response. If the total
5674
+ # number of results is greater than this value, use the token returned
5675
+ # in the response in the `nextToken` field when making another request
5676
+ # to return the next batch of results.
5677
+ #
5678
+ # @option params [String] :next_token
5679
+ # If the total number of results is greater than the `maxResults` value
5680
+ # provided in the request, enter the token returned in the `nextToken`
5681
+ # field in the response in this field to return the next batch of
5682
+ # results.
5683
+ #
5684
+ # @option params [String] :name
5685
+ # Filter registry records by name.
5686
+ #
5687
+ # @option params [String] :status
5688
+ # Filter registry records by their current status. Possible values
5689
+ # include `CREATING`, `DRAFT`, `APPROVED`, `PENDING_APPROVAL`,
5690
+ # `REJECTED`, `DEPRECATED`, `UPDATING`, `CREATE_FAILED`, and
5691
+ # `UPDATE_FAILED`.
5692
+ #
5693
+ # @option params [String] :descriptor_type
5694
+ # Filter registry records by their descriptor type. Possible values are
5695
+ # `MCP`, `A2A`, `CUSTOM`, and `AGENT_SKILLS`.
5696
+ #
5697
+ # @return [Types::ListRegistryRecordsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5698
+ #
5699
+ # * {Types::ListRegistryRecordsResponse#registry_records #registry_records} => Array&lt;Types::RegistryRecordSummary&gt;
5700
+ # * {Types::ListRegistryRecordsResponse#next_token #next_token} => String
5701
+ #
5702
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5703
+ #
5704
+ # @example Request syntax with placeholder values
5705
+ #
5706
+ # resp = client.list_registry_records({
5707
+ # registry_id: "RegistryIdentifier", # required
5708
+ # max_results: 1,
5709
+ # next_token: "NextToken",
5710
+ # name: "RegistryRecordName",
5711
+ # status: "DRAFT", # accepts DRAFT, PENDING_APPROVAL, APPROVED, REJECTED, DEPRECATED, CREATING, UPDATING, CREATE_FAILED, UPDATE_FAILED
5712
+ # descriptor_type: "MCP", # accepts MCP, A2A, CUSTOM, AGENT_SKILLS
5713
+ # })
5714
+ #
5715
+ # @example Response structure
5716
+ #
5717
+ # resp.registry_records #=> Array
5718
+ # resp.registry_records[0].registry_arn #=> String
5719
+ # resp.registry_records[0].record_arn #=> String
5720
+ # resp.registry_records[0].record_id #=> String
5721
+ # resp.registry_records[0].name #=> String
5722
+ # resp.registry_records[0].description #=> String
5723
+ # resp.registry_records[0].descriptor_type #=> String, one of "MCP", "A2A", "CUSTOM", "AGENT_SKILLS"
5724
+ # resp.registry_records[0].record_version #=> String
5725
+ # resp.registry_records[0].status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
5726
+ # resp.registry_records[0].created_at #=> Time
5727
+ # resp.registry_records[0].updated_at #=> Time
5728
+ # resp.next_token #=> String
5729
+ #
5730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/ListRegistryRecords AWS API Documentation
5731
+ #
5732
+ # @overload list_registry_records(params = {})
5733
+ # @param [Hash] params ({})
5734
+ def list_registry_records(params = {}, options = {})
5735
+ req = build_request(:list_registry_records, params)
5736
+ req.send_request(options)
5737
+ end
5738
+
5151
5739
  # Lists the tags associated with the specified resource.
5152
5740
  #
5153
5741
  # <note markdown="1"> This feature is currently available only for AgentCore Runtime,
@@ -5397,6 +5985,50 @@ module Aws::BedrockAgentCoreControl
5397
5985
  req.send_request(options)
5398
5986
  end
5399
5987
 
5988
+ # Submits a registry record for approval. This transitions the record
5989
+ # from `DRAFT` status to `PENDING_APPROVAL` status. If the registry has
5990
+ # auto-approval enabled, the record is automatically approved.
5991
+ #
5992
+ # @option params [required, String] :registry_id
5993
+ # The identifier of the registry containing the record. You can specify
5994
+ # either the Amazon Resource Name (ARN) or the ID of the registry.
5995
+ #
5996
+ # @option params [required, String] :record_id
5997
+ # The identifier of the registry record to submit for approval. You can
5998
+ # specify either the Amazon Resource Name (ARN) or the ID of the record.
5999
+ #
6000
+ # @return [Types::SubmitRegistryRecordForApprovalResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6001
+ #
6002
+ # * {Types::SubmitRegistryRecordForApprovalResponse#registry_arn #registry_arn} => String
6003
+ # * {Types::SubmitRegistryRecordForApprovalResponse#record_arn #record_arn} => String
6004
+ # * {Types::SubmitRegistryRecordForApprovalResponse#record_id #record_id} => String
6005
+ # * {Types::SubmitRegistryRecordForApprovalResponse#status #status} => String
6006
+ # * {Types::SubmitRegistryRecordForApprovalResponse#updated_at #updated_at} => Time
6007
+ #
6008
+ # @example Request syntax with placeholder values
6009
+ #
6010
+ # resp = client.submit_registry_record_for_approval({
6011
+ # registry_id: "RegistryIdentifier", # required
6012
+ # record_id: "RecordIdentifier", # required
6013
+ # })
6014
+ #
6015
+ # @example Response structure
6016
+ #
6017
+ # resp.registry_arn #=> String
6018
+ # resp.record_arn #=> String
6019
+ # resp.record_id #=> String
6020
+ # resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
6021
+ # resp.updated_at #=> Time
6022
+ #
6023
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/SubmitRegistryRecordForApproval AWS API Documentation
6024
+ #
6025
+ # @overload submit_registry_record_for_approval(params = {})
6026
+ # @param [Hash] params ({})
6027
+ def submit_registry_record_for_approval(params = {}, options = {})
6028
+ req = build_request(:submit_registry_record_for_approval, params)
6029
+ req.send_request(options)
6030
+ end
6031
+
5400
6032
  # Synchronizes the gateway targets by fetching the latest tool
5401
6033
  # definitions from the target endpoints.
5402
6034
  #
@@ -5468,6 +6100,7 @@ module Aws::BedrockAgentCoreControl
5468
6100
  # resp.targets[0].target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
5469
6101
  # resp.targets[0].target_configuration.mcp.mcp_server.mcp_tool_schema.s3.bucket_owner_account_id #=> String
5470
6102
  # resp.targets[0].target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
6103
+ # resp.targets[0].target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
5471
6104
  # resp.targets[0].target_configuration.mcp.api_gateway.rest_api_id #=> String
5472
6105
  # resp.targets[0].target_configuration.mcp.api_gateway.stage #=> String
5473
6106
  # resp.targets[0].target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
@@ -6266,6 +6899,7 @@ module Aws::BedrockAgentCoreControl
6266
6899
  # },
6267
6900
  # inline_payload: "InlinePayload",
6268
6901
  # },
6902
+ # listing_mode: "DEFAULT", # accepts DEFAULT, DYNAMIC
6269
6903
  # },
6270
6904
  # api_gateway: {
6271
6905
  # rest_api_id: "String", # required
@@ -6378,6 +7012,7 @@ module Aws::BedrockAgentCoreControl
6378
7012
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.uri #=> String
6379
7013
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.s3.bucket_owner_account_id #=> String
6380
7014
  # resp.target_configuration.mcp.mcp_server.mcp_tool_schema.inline_payload #=> String
7015
+ # resp.target_configuration.mcp.mcp_server.listing_mode #=> String, one of "DEFAULT", "DYNAMIC"
6381
7016
  # resp.target_configuration.mcp.api_gateway.rest_api_id #=> String
6382
7017
  # resp.target_configuration.mcp.api_gateway.stage #=> String
6383
7018
  # resp.target_configuration.mcp.api_gateway.api_gateway_tool_configuration.tool_overrides #=> Array
@@ -7198,6 +7833,376 @@ module Aws::BedrockAgentCoreControl
7198
7833
  req.send_request(options)
7199
7834
  end
7200
7835
 
7836
+ # Updates an existing registry. This operation uses PATCH semantics, so
7837
+ # you only need to specify the fields you want to change.
7838
+ #
7839
+ # @option params [required, String] :registry_id
7840
+ # The identifier of the registry to update. You can specify either the
7841
+ # Amazon Resource Name (ARN) or the ID of the registry.
7842
+ #
7843
+ # @option params [String] :name
7844
+ # The updated name of the registry.
7845
+ #
7846
+ # @option params [Types::UpdatedDescription] :description
7847
+ # The updated description of the registry. To clear the description,
7848
+ # include the `UpdatedDescription` wrapper with `optionalValue` not
7849
+ # specified.
7850
+ #
7851
+ # @option params [Types::UpdatedAuthorizerConfiguration] :authorizer_configuration
7852
+ # The updated authorizer configuration for the registry. Changing the
7853
+ # authorizer configuration can break existing consumers of the registry
7854
+ # who are using the authorization type prior to the update.
7855
+ #
7856
+ # @option params [Types::UpdatedApprovalConfiguration] :approval_configuration
7857
+ # The updated approval configuration for registry records. The updated
7858
+ # configuration only affects new records that move to `PENDING_APPROVAL`
7859
+ # status after the change. Existing records already in
7860
+ # `PENDING_APPROVAL` status are not affected.
7861
+ #
7862
+ # @return [Types::UpdateRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7863
+ #
7864
+ # * {Types::UpdateRegistryResponse#name #name} => String
7865
+ # * {Types::UpdateRegistryResponse#description #description} => String
7866
+ # * {Types::UpdateRegistryResponse#registry_id #registry_id} => String
7867
+ # * {Types::UpdateRegistryResponse#registry_arn #registry_arn} => String
7868
+ # * {Types::UpdateRegistryResponse#authorizer_type #authorizer_type} => String
7869
+ # * {Types::UpdateRegistryResponse#authorizer_configuration #authorizer_configuration} => Types::AuthorizerConfiguration
7870
+ # * {Types::UpdateRegistryResponse#approval_configuration #approval_configuration} => Types::ApprovalConfiguration
7871
+ # * {Types::UpdateRegistryResponse#status #status} => String
7872
+ # * {Types::UpdateRegistryResponse#status_reason #status_reason} => String
7873
+ # * {Types::UpdateRegistryResponse#created_at #created_at} => Time
7874
+ # * {Types::UpdateRegistryResponse#updated_at #updated_at} => Time
7875
+ #
7876
+ # @example Request syntax with placeholder values
7877
+ #
7878
+ # resp = client.update_registry({
7879
+ # registry_id: "RegistryIdentifier", # required
7880
+ # name: "RegistryName",
7881
+ # description: {
7882
+ # optional_value: "Description",
7883
+ # },
7884
+ # authorizer_configuration: {
7885
+ # optional_value: {
7886
+ # custom_jwt_authorizer: {
7887
+ # discovery_url: "DiscoveryUrl", # required
7888
+ # allowed_audience: ["AllowedAudience"],
7889
+ # allowed_clients: ["AllowedClient"],
7890
+ # allowed_scopes: ["AllowedScopeType"],
7891
+ # custom_claims: [
7892
+ # {
7893
+ # inbound_token_claim_name: "InboundTokenClaimNameType", # required
7894
+ # inbound_token_claim_value_type: "STRING", # required, accepts STRING, STRING_ARRAY
7895
+ # authorizing_claim_match_value: { # required
7896
+ # claim_match_value: { # required
7897
+ # match_value_string: "MatchValueString",
7898
+ # match_value_string_list: ["MatchValueString"],
7899
+ # },
7900
+ # claim_match_operator: "EQUALS", # required, accepts EQUALS, CONTAINS, CONTAINS_ANY
7901
+ # },
7902
+ # },
7903
+ # ],
7904
+ # },
7905
+ # },
7906
+ # },
7907
+ # approval_configuration: {
7908
+ # optional_value: {
7909
+ # auto_approval: false,
7910
+ # },
7911
+ # },
7912
+ # })
7913
+ #
7914
+ # @example Response structure
7915
+ #
7916
+ # resp.name #=> String
7917
+ # resp.description #=> String
7918
+ # resp.registry_id #=> String
7919
+ # resp.registry_arn #=> String
7920
+ # resp.authorizer_type #=> String, one of "CUSTOM_JWT", "AWS_IAM"
7921
+ # resp.authorizer_configuration.custom_jwt_authorizer.discovery_url #=> String
7922
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience #=> Array
7923
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_audience[0] #=> String
7924
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients #=> Array
7925
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_clients[0] #=> String
7926
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes #=> Array
7927
+ # resp.authorizer_configuration.custom_jwt_authorizer.allowed_scopes[0] #=> String
7928
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims #=> Array
7929
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_name #=> String
7930
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].inbound_token_claim_value_type #=> String, one of "STRING", "STRING_ARRAY"
7931
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string #=> String
7932
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list #=> Array
7933
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_value.match_value_string_list[0] #=> String
7934
+ # resp.authorizer_configuration.custom_jwt_authorizer.custom_claims[0].authorizing_claim_match_value.claim_match_operator #=> String, one of "EQUALS", "CONTAINS", "CONTAINS_ANY"
7935
+ # resp.approval_configuration.auto_approval #=> Boolean
7936
+ # resp.status #=> String, one of "CREATING", "READY", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED", "DELETING", "DELETE_FAILED"
7937
+ # resp.status_reason #=> String
7938
+ # resp.created_at #=> Time
7939
+ # resp.updated_at #=> Time
7940
+ #
7941
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateRegistry AWS API Documentation
7942
+ #
7943
+ # @overload update_registry(params = {})
7944
+ # @param [Hash] params ({})
7945
+ def update_registry(params = {}, options = {})
7946
+ req = build_request(:update_registry, params)
7947
+ req.send_request(options)
7948
+ end
7949
+
7950
+ # Updates an existing registry record. This operation uses PATCH
7951
+ # semantics, so you only need to specify the fields you want to change.
7952
+ # The update is processed asynchronously and returns HTTP 202 Accepted.
7953
+ #
7954
+ # @option params [required, String] :registry_id
7955
+ # The identifier of the registry containing the record. You can specify
7956
+ # either the Amazon Resource Name (ARN) or the ID of the registry.
7957
+ #
7958
+ # @option params [required, String] :record_id
7959
+ # The identifier of the registry record to update. You can specify
7960
+ # either the Amazon Resource Name (ARN) or the ID of the record.
7961
+ #
7962
+ # @option params [String] :name
7963
+ # The updated name for the registry record.
7964
+ #
7965
+ # @option params [Types::UpdatedDescription] :description
7966
+ # The updated description for the registry record. To clear the
7967
+ # description, include the `UpdatedDescription` wrapper with
7968
+ # `optionalValue` not specified.
7969
+ #
7970
+ # @option params [String] :descriptor_type
7971
+ # The updated descriptor type for the registry record. Changing the
7972
+ # descriptor type may require updating the `descriptors` field to match
7973
+ # the new type's schema requirements.
7974
+ #
7975
+ # @option params [Types::UpdatedDescriptors] :descriptors
7976
+ # The updated descriptor-type-specific configuration containing the
7977
+ # resource schema and metadata. Uses PATCH semantics where individual
7978
+ # descriptor fields can be updated independently.
7979
+ #
7980
+ # @option params [String] :record_version
7981
+ # The version of the registry record for optimistic locking. If
7982
+ # provided, it must match the current version of the record. The service
7983
+ # automatically increments the version after a successful update.
7984
+ #
7985
+ # @option params [Types::UpdatedSynchronizationType] :synchronization_type
7986
+ # The updated synchronization type for the registry record.
7987
+ #
7988
+ # @option params [Types::UpdatedSynchronizationConfiguration] :synchronization_configuration
7989
+ # The updated synchronization configuration for the registry record.
7990
+ #
7991
+ # @option params [Boolean] :trigger_synchronization
7992
+ # Whether to trigger synchronization using the stored or provided
7993
+ # configuration. When set to `true`, the service will synchronize the
7994
+ # record metadata from the configured external source.
7995
+ #
7996
+ # @return [Types::UpdateRegistryRecordResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7997
+ #
7998
+ # * {Types::UpdateRegistryRecordResponse#registry_arn #registry_arn} => String
7999
+ # * {Types::UpdateRegistryRecordResponse#record_arn #record_arn} => String
8000
+ # * {Types::UpdateRegistryRecordResponse#record_id #record_id} => String
8001
+ # * {Types::UpdateRegistryRecordResponse#name #name} => String
8002
+ # * {Types::UpdateRegistryRecordResponse#description #description} => String
8003
+ # * {Types::UpdateRegistryRecordResponse#descriptor_type #descriptor_type} => String
8004
+ # * {Types::UpdateRegistryRecordResponse#descriptors #descriptors} => Types::Descriptors
8005
+ # * {Types::UpdateRegistryRecordResponse#record_version #record_version} => String
8006
+ # * {Types::UpdateRegistryRecordResponse#status #status} => String
8007
+ # * {Types::UpdateRegistryRecordResponse#created_at #created_at} => Time
8008
+ # * {Types::UpdateRegistryRecordResponse#updated_at #updated_at} => Time
8009
+ # * {Types::UpdateRegistryRecordResponse#status_reason #status_reason} => String
8010
+ # * {Types::UpdateRegistryRecordResponse#synchronization_type #synchronization_type} => String
8011
+ # * {Types::UpdateRegistryRecordResponse#synchronization_configuration #synchronization_configuration} => Types::SynchronizationConfiguration
8012
+ #
8013
+ # @example Request syntax with placeholder values
8014
+ #
8015
+ # resp = client.update_registry_record({
8016
+ # registry_id: "RegistryIdentifier", # required
8017
+ # record_id: "RecordIdentifier", # required
8018
+ # name: "RegistryRecordName",
8019
+ # description: {
8020
+ # optional_value: "Description",
8021
+ # },
8022
+ # descriptor_type: "MCP", # accepts MCP, A2A, CUSTOM, AGENT_SKILLS
8023
+ # descriptors: {
8024
+ # optional_value: {
8025
+ # mcp: {
8026
+ # optional_value: {
8027
+ # server: {
8028
+ # optional_value: {
8029
+ # schema_version: "SchemaVersion",
8030
+ # inline_content: "InlineContent",
8031
+ # },
8032
+ # },
8033
+ # tools: {
8034
+ # optional_value: {
8035
+ # protocol_version: "SchemaVersion",
8036
+ # inline_content: "InlineContent",
8037
+ # },
8038
+ # },
8039
+ # },
8040
+ # },
8041
+ # a2a: {
8042
+ # optional_value: {
8043
+ # agent_card: {
8044
+ # schema_version: "SchemaVersion",
8045
+ # inline_content: "InlineContent",
8046
+ # },
8047
+ # },
8048
+ # },
8049
+ # custom: {
8050
+ # optional_value: {
8051
+ # inline_content: "InlineContent",
8052
+ # },
8053
+ # },
8054
+ # agent_skills: {
8055
+ # optional_value: {
8056
+ # skill_md: {
8057
+ # optional_value: {
8058
+ # inline_content: "InlineContent",
8059
+ # },
8060
+ # },
8061
+ # skill_definition: {
8062
+ # optional_value: {
8063
+ # schema_version: "SchemaVersion",
8064
+ # inline_content: "InlineContent",
8065
+ # },
8066
+ # },
8067
+ # },
8068
+ # },
8069
+ # },
8070
+ # },
8071
+ # record_version: "RegistryRecordVersion",
8072
+ # synchronization_type: {
8073
+ # optional_value: "URL", # accepts URL
8074
+ # },
8075
+ # synchronization_configuration: {
8076
+ # optional_value: {
8077
+ # from_url: {
8078
+ # url: "McpServerUrl", # required
8079
+ # credential_provider_configurations: [
8080
+ # {
8081
+ # credential_provider_type: "OAUTH", # required, accepts OAUTH, IAM
8082
+ # credential_provider: { # required
8083
+ # oauth_credential_provider: {
8084
+ # provider_arn: "CredentialProviderArn", # required
8085
+ # grant_type: "CLIENT_CREDENTIALS", # accepts CLIENT_CREDENTIALS
8086
+ # scopes: ["String"],
8087
+ # custom_parameters: {
8088
+ # "String" => "String",
8089
+ # },
8090
+ # },
8091
+ # iam_credential_provider: {
8092
+ # role_arn: "IamRoleArn",
8093
+ # service: "IamSigningServiceName",
8094
+ # region: "IamSigningRegion",
8095
+ # },
8096
+ # },
8097
+ # },
8098
+ # ],
8099
+ # },
8100
+ # },
8101
+ # },
8102
+ # trigger_synchronization: false,
8103
+ # })
8104
+ #
8105
+ # @example Response structure
8106
+ #
8107
+ # resp.registry_arn #=> String
8108
+ # resp.record_arn #=> String
8109
+ # resp.record_id #=> String
8110
+ # resp.name #=> String
8111
+ # resp.description #=> String
8112
+ # resp.descriptor_type #=> String, one of "MCP", "A2A", "CUSTOM", "AGENT_SKILLS"
8113
+ # resp.descriptors.mcp.server.schema_version #=> String
8114
+ # resp.descriptors.mcp.server.inline_content #=> String
8115
+ # resp.descriptors.mcp.tools.protocol_version #=> String
8116
+ # resp.descriptors.mcp.tools.inline_content #=> String
8117
+ # resp.descriptors.a2a.agent_card.schema_version #=> String
8118
+ # resp.descriptors.a2a.agent_card.inline_content #=> String
8119
+ # resp.descriptors.custom.inline_content #=> String
8120
+ # resp.descriptors.agent_skills.skill_md.inline_content #=> String
8121
+ # resp.descriptors.agent_skills.skill_definition.schema_version #=> String
8122
+ # resp.descriptors.agent_skills.skill_definition.inline_content #=> String
8123
+ # resp.record_version #=> String
8124
+ # resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
8125
+ # resp.created_at #=> Time
8126
+ # resp.updated_at #=> Time
8127
+ # resp.status_reason #=> String
8128
+ # resp.synchronization_type #=> String, one of "URL"
8129
+ # resp.synchronization_configuration.from_url.url #=> String
8130
+ # resp.synchronization_configuration.from_url.credential_provider_configurations #=> Array
8131
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider_type #=> String, one of "OAUTH", "IAM"
8132
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.provider_arn #=> String
8133
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.grant_type #=> String, one of "CLIENT_CREDENTIALS"
8134
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes #=> Array
8135
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.scopes[0] #=> String
8136
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters #=> Hash
8137
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.oauth_credential_provider.custom_parameters["String"] #=> String
8138
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.role_arn #=> String
8139
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.service #=> String
8140
+ # resp.synchronization_configuration.from_url.credential_provider_configurations[0].credential_provider.iam_credential_provider.region #=> String
8141
+ #
8142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateRegistryRecord AWS API Documentation
8143
+ #
8144
+ # @overload update_registry_record(params = {})
8145
+ # @param [Hash] params ({})
8146
+ def update_registry_record(params = {}, options = {})
8147
+ req = build_request(:update_registry_record, params)
8148
+ req.send_request(options)
8149
+ end
8150
+
8151
+ # Updates the status of a registry record. Use this operation to
8152
+ # approve, reject, or deprecate a registry record.
8153
+ #
8154
+ # @option params [required, String] :registry_id
8155
+ # The identifier of the registry containing the record. You can specify
8156
+ # either the Amazon Resource Name (ARN) or the ID of the registry.
8157
+ #
8158
+ # @option params [required, String] :record_id
8159
+ # The identifier of the registry record to update the status for. You
8160
+ # can specify either the Amazon Resource Name (ARN) or the ID of the
8161
+ # record.
8162
+ #
8163
+ # @option params [required, String] :status
8164
+ # The target status for the registry record.
8165
+ #
8166
+ # @option params [required, String] :status_reason
8167
+ # The reason for the status change, such as why the record was approved
8168
+ # or rejected.
8169
+ #
8170
+ # @return [Types::UpdateRegistryRecordStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8171
+ #
8172
+ # * {Types::UpdateRegistryRecordStatusResponse#registry_arn #registry_arn} => String
8173
+ # * {Types::UpdateRegistryRecordStatusResponse#record_arn #record_arn} => String
8174
+ # * {Types::UpdateRegistryRecordStatusResponse#record_id #record_id} => String
8175
+ # * {Types::UpdateRegistryRecordStatusResponse#status #status} => String
8176
+ # * {Types::UpdateRegistryRecordStatusResponse#status_reason #status_reason} => String
8177
+ # * {Types::UpdateRegistryRecordStatusResponse#updated_at #updated_at} => Time
8178
+ #
8179
+ # @example Request syntax with placeholder values
8180
+ #
8181
+ # resp = client.update_registry_record_status({
8182
+ # registry_id: "RegistryIdentifier", # required
8183
+ # record_id: "RecordIdentifier", # required
8184
+ # status: "DRAFT", # required, accepts DRAFT, PENDING_APPROVAL, APPROVED, REJECTED, DEPRECATED, CREATING, UPDATING, CREATE_FAILED, UPDATE_FAILED
8185
+ # status_reason: "UpdateRegistryRecordStatusRequestStatusReasonString", # required
8186
+ # })
8187
+ #
8188
+ # @example Response structure
8189
+ #
8190
+ # resp.registry_arn #=> String
8191
+ # resp.record_arn #=> String
8192
+ # resp.record_id #=> String
8193
+ # resp.status #=> String, one of "DRAFT", "PENDING_APPROVAL", "APPROVED", "REJECTED", "DEPRECATED", "CREATING", "UPDATING", "CREATE_FAILED", "UPDATE_FAILED"
8194
+ # resp.status_reason #=> String
8195
+ # resp.updated_at #=> Time
8196
+ #
8197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-control-2023-06-05/UpdateRegistryRecordStatus AWS API Documentation
8198
+ #
8199
+ # @overload update_registry_record_status(params = {})
8200
+ # @param [Hash] params ({})
8201
+ def update_registry_record_status(params = {}, options = {})
8202
+ req = build_request(:update_registry_record_status, params)
8203
+ req.send_request(options)
8204
+ end
8205
+
7201
8206
  # Updates an existing workload identity.
7202
8207
  #
7203
8208
  # @option params [required, String] :name
@@ -7258,7 +8263,7 @@ module Aws::BedrockAgentCoreControl
7258
8263
  tracer: tracer
7259
8264
  )
7260
8265
  context[:gem_name] = 'aws-sdk-bedrockagentcorecontrol'
7261
- context[:gem_version] = '1.36.0'
8266
+ context[:gem_version] = '1.38.0'
7262
8267
  Seahorse::Client::Request.new(handlers, context)
7263
8268
  end
7264
8269