@aws-sdk/client-agent-registry-control 3.1121.0 → 3.1122.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.
@@ -1,11 +1,11 @@
1
- import type { AutoApprovalRule, ClaimMatchOperatorType, EndpointIpAddressType, InboundTokenClaimValueType, RecordType, RegistryAuthorizerType, RegistryFilterName, RegistryRecordCredentialProviderType, RegistryRecordFilterName, RegistryRecordOAuthGrantType, RegistryRecordStatus, RegistryStatus } from "./enums";
1
+ import type { AgentCoreGatewayProtocolType, AgentCoreRuntimeServerProtocol, AutoApprovalRule, AutoDetectionScope, AutoDetectionStatus, ClaimMatchOperatorType, EndpointIpAddressType, InboundTokenClaimValueType, ProvenanceRelation, RecordType, RegistryAuthorizerType, RegistryFilterName, RegistryRecordCredentialProviderType, RegistryRecordFilterName, RegistryRecordOAuthGrantType, RegistryRecordStatus, RegistryStatus, SourceType } from "./enums";
2
2
  /**
3
- * <p>The configuration for an IAM role credential provider that signs requests to a registry record's source with AWS Signature Version 4 (SigV4).</p>
3
+ * <p>The configuration for an IAM role credential provider that signs requests to a registry record's source with Amazon Web Services Signature Version 4 (SigV4).</p>
4
4
  * @public
5
5
  */
6
6
  export interface RegistryRecordIamCredentialProvider {
7
7
  /**
8
- * <p>The &amp;ARN; of the IAM role to assume for request signing.</p>
8
+ * <p>The Amazon Resource Name (ARN) of the IAM role to assume for request signing.</p>
9
9
  * @public
10
10
  */
11
11
  roleArn?: string | undefined;
@@ -15,7 +15,7 @@ export interface RegistryRecordIamCredentialProvider {
15
15
  */
16
16
  service?: string | undefined;
17
17
  /**
18
- * <p>The AWS Region to use for request signing. If not specified, the Region is derived from the source URL hostname, falling back to the Region of the registry.</p>
18
+ * <p>The Amazon Web Services Region to use for request signing. If not specified, the Region is derived from the source URL hostname, falling back to the Region of the registry.</p>
19
19
  * @public
20
20
  */
21
21
  region?: string | undefined;
@@ -26,7 +26,7 @@ export interface RegistryRecordIamCredentialProvider {
26
26
  */
27
27
  export interface RegistryRecordOAuthCredentialProvider {
28
28
  /**
29
- * <p>The &amp;ARN; of the OAuth 2.0 credential provider resource in Amazon Bedrock AgentCore Identity.</p>
29
+ * <p>The Amazon Resource Name (ARN) of the OAuth 2.0 credential provider resource in Amazon Bedrock AgentCore Identity.</p>
30
30
  * @public
31
31
  */
32
32
  providerArn: string | undefined;
@@ -155,12 +155,367 @@ export interface A2aAgentCardDescriptor {
155
155
  */
156
156
  source?: DescriptorSource | undefined;
157
157
  }
158
+ /**
159
+ * <p>The expected value used to match a claim. Exactly one member is set.</p>
160
+ * @public
161
+ */
162
+ export type ClaimMatchValueType = ClaimMatchValueType.MatchValueStringMember | ClaimMatchValueType.MatchValueStringListMember | ClaimMatchValueType.$UnknownMember;
163
+ /**
164
+ * @public
165
+ */
166
+ export declare namespace ClaimMatchValueType {
167
+ /**
168
+ * <p>A single string value to match the claim against.</p>
169
+ * @public
170
+ */
171
+ interface MatchValueStringMember {
172
+ matchValueString: string;
173
+ matchValueStringList?: never;
174
+ $unknown?: never;
175
+ }
176
+ /**
177
+ * <p>A list of string values to match the claim against.</p>
178
+ * @public
179
+ */
180
+ interface MatchValueStringListMember {
181
+ matchValueString?: never;
182
+ matchValueStringList: string[];
183
+ $unknown?: never;
184
+ }
185
+ /**
186
+ * @public
187
+ */
188
+ interface $UnknownMember {
189
+ matchValueString?: never;
190
+ matchValueStringList?: never;
191
+ $unknown: [string, any];
192
+ }
193
+ /**
194
+ * @deprecated unused in schema-serde mode.
195
+ *
196
+ */
197
+ interface Visitor<T> {
198
+ matchValueString: (value: string) => T;
199
+ matchValueStringList: (value: string[]) => T;
200
+ _: (name: string, value: any) => T;
201
+ }
202
+ }
203
+ /**
204
+ * <p>The value and match operator used to authorize a claim during JWT validation.</p>
205
+ * @public
206
+ */
207
+ export interface AuthorizingClaimMatchValueType {
208
+ /**
209
+ * <p>The expected value or values that the claim is compared against.</p>
210
+ * @public
211
+ */
212
+ claimMatchValue: ClaimMatchValueType | undefined;
213
+ /**
214
+ * <p>The operator used to compare the claim value against the expected value.</p>
215
+ * @public
216
+ */
217
+ claimMatchOperator: ClaimMatchOperatorType | undefined;
218
+ }
219
+ /**
220
+ * <p>A validation rule applied to a single claim of an inbound JWT.</p>
221
+ * @public
222
+ */
223
+ export interface CustomClaimValidationType {
224
+ /**
225
+ * <p>The name of the claim in the inbound token to validate.</p>
226
+ * @public
227
+ */
228
+ inboundTokenClaimName: string | undefined;
229
+ /**
230
+ * <p>The value type of the claim in the inbound token, either a string or an array of strings.</p>
231
+ * @public
232
+ */
233
+ inboundTokenClaimValueType: InboundTokenClaimValueType | undefined;
234
+ /**
235
+ * <p>The value and match operator used to authorize the claim.</p>
236
+ * @public
237
+ */
238
+ authorizingClaimMatchValue: AuthorizingClaimMatchValueType | undefined;
239
+ }
240
+ /**
241
+ * <p>A service-managed private endpoint provisioned within a customer VPC.</p>
242
+ * @public
243
+ */
244
+ export interface ManagedVpcResource {
245
+ /**
246
+ * <p>The identifier of the VPC in which the private endpoint is provisioned.</p>
247
+ * @public
248
+ */
249
+ vpcIdentifier: string | undefined;
250
+ /**
251
+ * <p>The identifiers of the subnets in which the private endpoint network interfaces are placed.</p>
252
+ * @public
253
+ */
254
+ subnetIds: string[] | undefined;
255
+ /**
256
+ * <p>The IP address type used by the private endpoint, either IPV4 or IPV6.</p>
257
+ * @public
258
+ */
259
+ endpointIpAddressType: EndpointIpAddressType | undefined;
260
+ /**
261
+ * <p>The identifiers of the security groups associated with the private endpoint network interfaces.</p>
262
+ * @public
263
+ */
264
+ securityGroupIds?: string[] | undefined;
265
+ /**
266
+ * <p>The tags applied to the service-managed VPC resource.</p>
267
+ * @public
268
+ */
269
+ tags?: Record<string, string> | undefined;
270
+ /**
271
+ * <p>The routing domain used to resolve traffic through the private endpoint.</p>
272
+ * @public
273
+ */
274
+ routingDomain?: string | undefined;
275
+ }
276
+ /**
277
+ * <p>A self-managed private endpoint backed by a VPC Lattice resource configuration. Exactly one member is set.</p>
278
+ * @public
279
+ */
280
+ export type SelfManagedLatticeResource = SelfManagedLatticeResource.ResourceConfigurationIdentifierMember | SelfManagedLatticeResource.$UnknownMember;
281
+ /**
282
+ * @public
283
+ */
284
+ export declare namespace SelfManagedLatticeResource {
285
+ /**
286
+ * <p>The identifier of the VPC Lattice resource configuration, specified as a resource configuration ID or ARN.</p>
287
+ * @public
288
+ */
289
+ interface ResourceConfigurationIdentifierMember {
290
+ resourceConfigurationIdentifier: string;
291
+ $unknown?: never;
292
+ }
293
+ /**
294
+ * @public
295
+ */
296
+ interface $UnknownMember {
297
+ resourceConfigurationIdentifier?: never;
298
+ $unknown: [string, any];
299
+ }
300
+ /**
301
+ * @deprecated unused in schema-serde mode.
302
+ *
303
+ */
304
+ interface Visitor<T> {
305
+ resourceConfigurationIdentifier: (value: string) => T;
306
+ _: (name: string, value: any) => T;
307
+ }
308
+ }
309
+ /**
310
+ * <p>A private network endpoint used to reach a resource over a private path. Exactly one member is set.</p>
311
+ * @public
312
+ */
313
+ export type PrivateEndpoint = PrivateEndpoint.ManagedVpcResourceMember | PrivateEndpoint.SelfManagedLatticeResourceMember | PrivateEndpoint.$UnknownMember;
314
+ /**
315
+ * @public
316
+ */
317
+ export declare namespace PrivateEndpoint {
318
+ /**
319
+ * <p>A private endpoint backed by a self-managed VPC Lattice resource configuration.</p>
320
+ * @public
321
+ */
322
+ interface SelfManagedLatticeResourceMember {
323
+ selfManagedLatticeResource: SelfManagedLatticeResource;
324
+ managedVpcResource?: never;
325
+ $unknown?: never;
326
+ }
327
+ /**
328
+ * <p>A private endpoint backed by a service-managed VPC resource.</p>
329
+ * @public
330
+ */
331
+ interface ManagedVpcResourceMember {
332
+ selfManagedLatticeResource?: never;
333
+ managedVpcResource: ManagedVpcResource;
334
+ $unknown?: never;
335
+ }
336
+ /**
337
+ * @public
338
+ */
339
+ interface $UnknownMember {
340
+ selfManagedLatticeResource?: never;
341
+ managedVpcResource?: never;
342
+ $unknown: [string, any];
343
+ }
344
+ /**
345
+ * @deprecated unused in schema-serde mode.
346
+ *
347
+ */
348
+ interface Visitor<T> {
349
+ selfManagedLatticeResource: (value: SelfManagedLatticeResource) => T;
350
+ managedVpcResource: (value: ManagedVpcResource) => T;
351
+ _: (name: string, value: any) => T;
352
+ }
353
+ }
354
+ /**
355
+ * <p>A mapping of a domain to the private endpoint used to reach it.</p>
356
+ * @public
357
+ */
358
+ export interface PrivateEndpointOverride {
359
+ /**
360
+ * <p>The domain name to which this private endpoint override applies.</p>
361
+ * @public
362
+ */
363
+ domain: string | undefined;
364
+ /**
365
+ * <p>The private endpoint used to reach the specified domain.</p>
366
+ * @public
367
+ */
368
+ privateEndpoint: PrivateEndpoint | undefined;
369
+ }
370
+ /**
371
+ * <p>Configuration for a custom JWT authorizer that validates inbound bearer tokens against an OpenID Connect identity provider.</p>
372
+ * @public
373
+ */
374
+ export interface CustomJWTAuthorizerConfiguration {
375
+ /**
376
+ * <p>The OpenID Connect discovery URL used to retrieve the identity provider's metadata and signing keys.</p>
377
+ * @public
378
+ */
379
+ discoveryUrl: string | undefined;
380
+ /**
381
+ * <p>The audience values accepted during JWT validation. A token is rejected if none of its audience claims match.</p>
382
+ * @public
383
+ */
384
+ allowedAudience?: string[] | undefined;
385
+ /**
386
+ * <p>The client identifiers accepted during JWT validation. A token is rejected if it was not issued to one of these clients.</p>
387
+ * @public
388
+ */
389
+ allowedClients?: string[] | undefined;
390
+ /**
391
+ * <p>The scopes accepted during JWT validation. A token is rejected if it does not carry one of these scopes.</p>
392
+ * @public
393
+ */
394
+ allowedScopes?: string[] | undefined;
395
+ /**
396
+ * <p>Additional custom claim validations applied to the inbound JWT.</p>
397
+ * @public
398
+ */
399
+ customClaims?: CustomClaimValidationType[] | undefined;
400
+ /**
401
+ * <p>The private endpoint used to reach the identity provider's discovery URL over a private network path.</p>
402
+ * @public
403
+ */
404
+ privateEndpoint?: PrivateEndpoint | undefined;
405
+ /**
406
+ * <p>Per-domain private endpoint overrides that route specific identity provider domains through distinct private endpoints.</p>
407
+ * @public
408
+ */
409
+ privateEndpointOverrides?: PrivateEndpointOverride[] | undefined;
410
+ }
411
+ /**
412
+ * <p>The authorizer configuration for a registry. Exactly one member is set.</p>
413
+ * @public
414
+ */
415
+ export type AuthorizerConfiguration = AuthorizerConfiguration.CustomJWTAuthorizerMember | AuthorizerConfiguration.$UnknownMember;
416
+ /**
417
+ * @public
418
+ */
419
+ export declare namespace AuthorizerConfiguration {
420
+ /**
421
+ * <p>Configuration for a custom JWT authorizer.</p>
422
+ * @public
423
+ */
424
+ interface CustomJWTAuthorizerMember {
425
+ customJWTAuthorizer: CustomJWTAuthorizerConfiguration;
426
+ $unknown?: never;
427
+ }
428
+ /**
429
+ * @public
430
+ */
431
+ interface $UnknownMember {
432
+ customJWTAuthorizer?: never;
433
+ $unknown: [string, any];
434
+ }
435
+ /**
436
+ * @deprecated unused in schema-serde mode.
437
+ *
438
+ */
439
+ interface Visitor<T> {
440
+ customJWTAuthorizer: (value: CustomJWTAuthorizerConfiguration) => T;
441
+ _: (name: string, value: any) => T;
442
+ }
443
+ }
444
+ /**
445
+ * Workload identity details associated with a source resource.
446
+ * @public
447
+ */
448
+ export interface WorkloadIdentityDetails {
449
+ /**
450
+ * <p>The Amazon Resource Name (ARN) of the workload identity associated with the source resource.</p>
451
+ * @public
452
+ */
453
+ workloadIdentityArn: string | undefined;
454
+ }
455
+ /**
456
+ * Source details for a record auto-detected from an AgentCore Gateway resource.
457
+ * @public
458
+ */
459
+ export interface AgentCoreGatewaySourceDetails {
460
+ /**
461
+ * The protocol type of an AgentCore Gateway.
462
+ * @public
463
+ */
464
+ protocolType?: AgentCoreGatewayProtocolType | undefined;
465
+ /**
466
+ * <p>The type of authorizer configured on the AgentCore Gateway resource that the registry record was detected from.</p>
467
+ * @public
468
+ */
469
+ authorizerType?: string | undefined;
470
+ /**
471
+ * <p>The authorizer configuration for a registry. Exactly one member is set.</p>
472
+ * @public
473
+ */
474
+ authorizerConfiguration?: AuthorizerConfiguration | undefined;
475
+ /**
476
+ * Workload identity details associated with a source resource.
477
+ * @public
478
+ */
479
+ workloadIdentityDetails?: WorkloadIdentityDetails | undefined;
480
+ }
481
+ /**
482
+ * Protocol configuration for an AgentCore Runtime.
483
+ * @public
484
+ */
485
+ export interface AgentCoreRuntimeProtocolConfiguration {
486
+ /**
487
+ * The server protocol used by an AgentCore Runtime.
488
+ * @public
489
+ */
490
+ serverProtocol?: AgentCoreRuntimeServerProtocol | undefined;
491
+ }
492
+ /**
493
+ * Source details for a record auto-detected from an AgentCore Runtime resource.
494
+ * @public
495
+ */
496
+ export interface AgentCoreRuntimeSourceDetails {
497
+ /**
498
+ * Protocol configuration for an AgentCore Runtime.
499
+ * @public
500
+ */
501
+ protocolConfiguration?: AgentCoreRuntimeProtocolConfiguration | undefined;
502
+ /**
503
+ * <p>The authorizer configuration for a registry. Exactly one member is set.</p>
504
+ * @public
505
+ */
506
+ authorizerConfiguration?: AuthorizerConfiguration | undefined;
507
+ /**
508
+ * Workload identity details associated with a source resource.
509
+ * @public
510
+ */
511
+ workloadIdentityDetails?: WorkloadIdentityDetails | undefined;
512
+ }
158
513
  /**
159
514
  * @public
160
515
  */
161
516
  export interface ListTagsForResourceRequest {
162
517
  /**
163
- * ARN of a taggable Agent Registry resource.
518
+ * <p>The Amazon Resource Name (ARN) of the resource to list tags for. Supported resources include registries and registry records.</p>
164
519
  * @public
165
520
  */
166
521
  resourceArn: string | undefined;
@@ -170,7 +525,7 @@ export interface ListTagsForResourceRequest {
170
525
  */
171
526
  export interface ListTagsForResourceResponse {
172
527
  /**
173
- * A map of tag keys to tag values returned by read operations (may be empty).
528
+ * <p>The tags currently associated with the resource, as a map of tag keys to tag values.</p>
174
529
  * @public
175
530
  */
176
531
  tags?: Record<string, string> | undefined;
@@ -244,29 +599,51 @@ export interface AgentSkillsDefinitionDescriptor {
244
599
  */
245
600
  additionalData?: AgentSkillsAdditionalData | undefined;
246
601
  }
602
+ /**
603
+ * <p>A registry record descriptor for the AG-UI (Agent-User Interaction) protocol.</p>
604
+ * @public
605
+ */
606
+ export interface AgUiDescriptor {
607
+ /**
608
+ * <p>The source configuration that defines where descriptor content is retrieved from.</p>
609
+ * @public
610
+ */
611
+ source?: DescriptorSource | undefined;
612
+ }
247
613
  /**
248
614
  * <p>Custom descriptor for user-defined content</p>
249
615
  * @public
250
616
  */
251
617
  export interface CustomDescriptor {
252
618
  /**
253
- * <p>Descriptor payload data</p>
619
+ * <p>The custom descriptor content, serialized as descriptor payload data.</p>
254
620
  * @public
255
621
  */
256
622
  data?: string | undefined;
257
623
  }
624
+ /**
625
+ * <p>A registry record descriptor for the HTTP protocol. This descriptor is source-only: its content is synchronized from the configured source URL rather than supplied inline.</p>
626
+ * @public
627
+ */
628
+ export interface HttpDescriptor {
629
+ /**
630
+ * <p>The source configuration that defines where descriptor content is retrieved from.</p>
631
+ * @public
632
+ */
633
+ source?: DescriptorSource | undefined;
634
+ }
258
635
  /**
259
636
  * <p>MCP tools descriptor containing tool definitions</p>
260
637
  * @public
261
638
  */
262
639
  export interface McpToolsDescriptor {
263
640
  /**
264
- * <p>Descriptor payload data</p>
641
+ * <p>The MCP tools descriptor content, serialized as descriptor payload data.</p>
265
642
  * @public
266
643
  */
267
644
  data?: string | undefined;
268
645
  /**
269
- * <p>Version of the descriptor type schema</p>
646
+ * <p>The schema version of the descriptor payload.</p>
270
647
  * @public
271
648
  */
272
649
  dataSchemaVersion?: string | undefined;
@@ -277,7 +654,7 @@ export interface McpToolsDescriptor {
277
654
  */
278
655
  export interface McpServerAdditionalData {
279
656
  /**
280
- * <p>MCP tools descriptor containing tool definitions</p>
657
+ * <p>The MCP tools descriptor that defines the tools exposed by the MCP server.</p>
281
658
  * @public
282
659
  */
283
660
  tools?: McpToolsDescriptor | undefined;
@@ -333,6 +710,87 @@ export interface Descriptors {
333
710
  * @public
334
711
  */
335
712
  custom?: CustomDescriptor | undefined;
713
+ /**
714
+ * <p>The HTTP descriptor, populated for records detected from an HTTP protocol source.</p>
715
+ * @public
716
+ */
717
+ http?: HttpDescriptor | undefined;
718
+ /**
719
+ * <p>The AG-UI descriptor, populated for records detected from an AG-UI protocol source.</p>
720
+ * @public
721
+ */
722
+ agui?: AgUiDescriptor | undefined;
723
+ }
724
+ /**
725
+ * <p>The details about the upstream source from which a registry record was detected. Exactly one member is populated, corresponding to the source type.</p>
726
+ * @public
727
+ */
728
+ export type SourceDetails = SourceDetails.AgentcoreGatewayMember | SourceDetails.AgentcoreRuntimeMember | SourceDetails.$UnknownMember;
729
+ /**
730
+ * @public
731
+ */
732
+ export declare namespace SourceDetails {
733
+ /**
734
+ * Source details for a record auto-detected from an AgentCore Runtime resource.
735
+ * @public
736
+ */
737
+ interface AgentcoreRuntimeMember {
738
+ agentcoreRuntime: AgentCoreRuntimeSourceDetails;
739
+ agentcoreGateway?: never;
740
+ $unknown?: never;
741
+ }
742
+ /**
743
+ * Source details for a record auto-detected from an AgentCore Gateway resource.
744
+ * @public
745
+ */
746
+ interface AgentcoreGatewayMember {
747
+ agentcoreRuntime?: never;
748
+ agentcoreGateway: AgentCoreGatewaySourceDetails;
749
+ $unknown?: never;
750
+ }
751
+ /**
752
+ * @public
753
+ */
754
+ interface $UnknownMember {
755
+ agentcoreRuntime?: never;
756
+ agentcoreGateway?: never;
757
+ $unknown: [string, any];
758
+ }
759
+ /**
760
+ * @deprecated unused in schema-serde mode.
761
+ *
762
+ */
763
+ interface Visitor<T> {
764
+ agentcoreRuntime: (value: AgentCoreRuntimeSourceDetails) => T;
765
+ agentcoreGateway: (value: AgentCoreGatewaySourceDetails) => T;
766
+ _: (name: string, value: any) => T;
767
+ }
768
+ }
769
+ /**
770
+ * One provenance entry describing the lineage of a registry record.
771
+ * @public
772
+ */
773
+ export interface Provenance {
774
+ /**
775
+ * The relationship between the registry record and its provenance source.
776
+ * @public
777
+ */
778
+ relation: ProvenanceRelation | undefined;
779
+ /**
780
+ * <p>The identifier of the upstream source that the registry record was detected from.</p>
781
+ * @public
782
+ */
783
+ sourceId: string | undefined;
784
+ /**
785
+ * <p>The type of the upstream source that the registry record was detected from.</p>
786
+ * @public
787
+ */
788
+ sourceType?: SourceType | undefined;
789
+ /**
790
+ * <p>Additional details about the upstream source that the registry record was detected from, such as the AgentCore Gateway or Runtime configuration. The populated member corresponds to the source type.</p>
791
+ * @public
792
+ */
793
+ sourceDetails?: SourceDetails | undefined;
336
794
  }
337
795
  /**
338
796
  * @public
@@ -378,6 +836,13 @@ export interface CreateRegistryRecordRequest {
378
836
  * @public
379
837
  */
380
838
  clientToken?: string | undefined;
839
+ /**
840
+ * List of provenance entries on a registry record. Capped at one entry today: a record carries a
841
+ * single DETECTED_FROM lineage. Modeled as a list so additional relations can be unlocked post-GA
842
+ * by raising this bound without a breaking shape change.
843
+ * @public
844
+ */
845
+ provenance?: Provenance[] | undefined;
381
846
  /**
382
847
  * <p>Tags to associate with the registry record</p>
383
848
  * @public
@@ -442,12 +907,12 @@ export interface GetRegistryRecordRequest {
442
907
  */
443
908
  export interface GetRegistryRecordResponse {
444
909
  /**
445
- * <p>The &amp;ARN; of the parent registry that owns the record.</p>
910
+ * <p>The Amazon Resource Name (ARN) of the parent registry that owns the record.</p>
446
911
  * @public
447
912
  */
448
913
  registryArn: string | undefined;
449
914
  /**
450
- * <p>The &amp;ARN; of the registry record.</p>
915
+ * <p>The Amazon Resource Name (ARN) of the registry record.</p>
451
916
  * @public
452
917
  */
453
918
  recordArn: string | undefined;
@@ -506,6 +971,23 @@ export interface GetRegistryRecordResponse {
506
971
  * @public
507
972
  */
508
973
  statusReason?: string | undefined;
974
+ /**
975
+ * List of provenance entries on a registry record. Capped at one entry today: a record carries a
976
+ * single DETECTED_FROM lineage. Modeled as a list so additional relations can be unlocked post-GA
977
+ * by raising this bound without a breaking shape change.
978
+ * @public
979
+ */
980
+ provenance?: Provenance[] | undefined;
981
+ /**
982
+ * <p>Specifies whether the registry record was created by auto-detection. <code>true</code> indicates the record was automatically created by the service based on the registry's auto-detection configuration; <code>false</code> indicates the record was created through a control-plane API call.</p>
983
+ * @public
984
+ */
985
+ createdByAutoDetection?: boolean | undefined;
986
+ /**
987
+ * <p>The ID of the Amazon Web Services account that created the registry record.</p>
988
+ * @public
989
+ */
990
+ createdBy?: string | undefined;
509
991
  }
510
992
  /**
511
993
  * <p>A single filter applied to a ListRegistryRecords request.</p>
@@ -533,20 +1015,42 @@ export interface ListRegistryRecordsRequest {
533
1015
  */
534
1016
  registryId: string | undefined;
535
1017
  /**
536
- * <p>Maximum number of records to return</p>
1018
+ * <p>Maximum number of records to return</p>
1019
+ * @public
1020
+ */
1021
+ maxResults?: number | undefined;
1022
+ /**
1023
+ * <p>Token for pagination</p>
1024
+ * @public
1025
+ */
1026
+ nextToken?: string | undefined;
1027
+ /**
1028
+ * <p>Filters to apply to the registry record list</p>
1029
+ * @public
1030
+ */
1031
+ filters?: RegistryRecordFilter[] | undefined;
1032
+ }
1033
+ /**
1034
+ * Condensed provenance entry for list results — the key triple only (no sourceDetails union).
1035
+ * Enough to display and client-side-filter lineage without the full-read config payload.
1036
+ * @public
1037
+ */
1038
+ export interface ProvenanceSummary {
1039
+ /**
1040
+ * The relationship between the registry record and its provenance source.
537
1041
  * @public
538
1042
  */
539
- maxResults?: number | undefined;
1043
+ relation: ProvenanceRelation | undefined;
540
1044
  /**
541
- * <p>Token for pagination</p>
1045
+ * <p>The identifier of the upstream source that the registry record was detected from.</p>
542
1046
  * @public
543
1047
  */
544
- nextToken?: string | undefined;
1048
+ sourceId: string | undefined;
545
1049
  /**
546
- * <p>Filters to apply to the registry record list</p>
1050
+ * <p>The type of the upstream source that the registry record was detected from.</p>
547
1051
  * @public
548
1052
  */
549
- filters?: RegistryRecordFilter[] | undefined;
1053
+ sourceType?: SourceType | undefined;
550
1054
  }
551
1055
  /**
552
1056
  * <p>A summary of a registry record returned by list operations. Contains identifying and lifecycle fields but omits descriptor content.</p>
@@ -554,12 +1058,12 @@ export interface ListRegistryRecordsRequest {
554
1058
  */
555
1059
  export interface RegistryRecordSummary {
556
1060
  /**
557
- * <p>The &amp;ARN; of the parent registry that owns the record.</p>
1061
+ * <p>The Amazon Resource Name (ARN) of the parent registry that owns the record.</p>
558
1062
  * @public
559
1063
  */
560
1064
  registryArn: string | undefined;
561
1065
  /**
562
- * <p>The &amp;ARN; of the registry record.</p>
1066
+ * <p>The Amazon Resource Name (ARN) of the registry record.</p>
563
1067
  * @public
564
1068
  */
565
1069
  recordArn: string | undefined;
@@ -608,6 +1112,22 @@ export interface RegistryRecordSummary {
608
1112
  * @public
609
1113
  */
610
1114
  updatedAt: Date | undefined;
1115
+ /**
1116
+ * <p>Specifies whether the registry record was created by auto-detection. <code>true</code> indicates the record was automatically created by the service based on the registry's auto-detection configuration; <code>false</code> indicates the record was created through a control-plane API call.</p>
1117
+ * @public
1118
+ */
1119
+ createdByAutoDetection?: boolean | undefined;
1120
+ /**
1121
+ * <p>The ID of the Amazon Web Services account that created the registry record.</p>
1122
+ * @public
1123
+ */
1124
+ createdBy?: string | undefined;
1125
+ /**
1126
+ * List of condensed provenance entries surfaced on RegistryRecordSummary. Mirrors ProvenanceList's
1127
+ * cardinality (one entry today); modeled as a list for forward-compatibility.
1128
+ * @public
1129
+ */
1130
+ provenanceSummaryList?: ProvenanceSummary[] | undefined;
611
1131
  }
612
1132
  /**
613
1133
  * <p>Response structure for listing registry records</p>
@@ -677,7 +1197,7 @@ export interface SubmitRegistryRecordForApprovalResponse {
677
1197
  */
678
1198
  export interface UpdatedDescription {
679
1199
  /**
680
- * <p>Description of the Resource</p>
1200
+ * <p>The value to set for this field. Omit the wrapper to leave the field unchanged.</p>
681
1201
  * @public
682
1202
  */
683
1203
  optionalValue?: string | undefined;
@@ -833,6 +1353,28 @@ export interface UpdatedAgentSkillsDefinitionDescriptor {
833
1353
  */
834
1354
  optionalValue?: UpdatedAgentSkillsDefinitionDescriptorFields | undefined;
835
1355
  }
1356
+ /**
1357
+ * <p>The set of AG-UI descriptor fields that can be individually updated.</p>
1358
+ * @public
1359
+ */
1360
+ export interface UpdatedAgUiDescriptorFields {
1361
+ /**
1362
+ * <p>The patch for the descriptor's source field.</p>
1363
+ * @public
1364
+ */
1365
+ source?: UpdatedDescriptorSource | undefined;
1366
+ }
1367
+ /**
1368
+ * <p>The AG-UI descriptor patch wrapper. Omit to leave the descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.</p>
1369
+ * @public
1370
+ */
1371
+ export interface UpdatedAgUiDescriptor {
1372
+ /**
1373
+ * <p>The value to set for this field. Omit the wrapper to leave the field unchanged.</p>
1374
+ * @public
1375
+ */
1376
+ optionalValue?: UpdatedAgUiDescriptorFields | undefined;
1377
+ }
836
1378
  /**
837
1379
  * <p>The set of custom descriptor fields that can be individually updated.</p>
838
1380
  * @public
@@ -855,6 +1397,28 @@ export interface UpdatedCustomDescriptor {
855
1397
  */
856
1398
  optionalValue?: UpdatedCustomDescriptorFields | undefined;
857
1399
  }
1400
+ /**
1401
+ * <p>The set of HTTP descriptor fields that can be individually updated.</p>
1402
+ * @public
1403
+ */
1404
+ export interface UpdatedHttpDescriptorFields {
1405
+ /**
1406
+ * <p>The patch for the descriptor's source field.</p>
1407
+ * @public
1408
+ */
1409
+ source?: UpdatedDescriptorSource | undefined;
1410
+ }
1411
+ /**
1412
+ * <p>The HTTP descriptor patch wrapper. Omit to leave the descriptor unchanged; supply an empty object to remove it; supply optionalValue to patch its fields.</p>
1413
+ * @public
1414
+ */
1415
+ export interface UpdatedHttpDescriptor {
1416
+ /**
1417
+ * <p>The value to set for this field. Omit the wrapper to leave the field unchanged.</p>
1418
+ * @public
1419
+ */
1420
+ optionalValue?: UpdatedHttpDescriptorFields | undefined;
1421
+ }
858
1422
  /**
859
1423
  * <p>The set of MCP tools descriptor fields that can be individually updated.</p>
860
1424
  * @public
@@ -966,6 +1530,16 @@ export interface UpdatedDescriptorsFields {
966
1530
  * @public
967
1531
  */
968
1532
  custom?: UpdatedCustomDescriptor | undefined;
1533
+ /**
1534
+ * <p>The patch for the HTTP descriptor.</p>
1535
+ * @public
1536
+ */
1537
+ http?: UpdatedHttpDescriptor | undefined;
1538
+ /**
1539
+ * <p>The patch for the AG-UI descriptor.</p>
1540
+ * @public
1541
+ */
1542
+ agui?: UpdatedAgUiDescriptor | undefined;
969
1543
  }
970
1544
  /**
971
1545
  * <p>The top-level descriptors patch wrapper used in UpdateRegistryRecord. Omit to leave the current descriptors unchanged; supply an empty object to clear them; supply optionalValue to apply a per-field patch.</p>
@@ -1031,442 +1605,196 @@ export interface UpdateRegistryRecordRequest {
1031
1605
  /**
1032
1606
  * <p>The updated version of the registry record. Omit to leave the version unchanged.</p>
1033
1607
  * @public
1034
- */
1035
- recordVersion?: string | undefined;
1036
- /**
1037
- * <p>Whether to trigger synchronization of the record's descriptor content from its source</p>
1038
- * @public
1039
- */
1040
- triggerSynchronization?: boolean | undefined;
1041
- }
1042
- /**
1043
- * <p>Response structure for updating a registry record</p>
1044
- * @public
1045
- */
1046
- export interface UpdateRegistryRecordResponse {
1047
- /**
1048
- * <p>The &amp;ARN; of the parent registry that owns the record.</p>
1049
- * @public
1050
- */
1051
- registryArn: string | undefined;
1052
- /**
1053
- * <p>The &amp;ARN; of the registry record.</p>
1054
- * @public
1055
- */
1056
- recordArn: string | undefined;
1057
- /**
1058
- * <p>The unique identifier of the registry record.</p>
1059
- * @public
1060
- */
1061
- recordId: string | undefined;
1062
- /**
1063
- * <p>The name of the registry record. Names are unique within a registry.</p>
1064
- * @public
1065
- */
1066
- name: string | undefined;
1067
- /**
1068
- * <p>The human-readable display name of the registry record.</p>
1069
- * @public
1070
- */
1071
- displayName?: string | undefined;
1072
- /**
1073
- * <p>A description of the registry record.</p>
1074
- * @public
1075
- */
1076
- description?: string | undefined;
1077
- /**
1078
- * <p>The type of the registry record, such as MCP, AGENT, SKILL, or CUSTOM.</p>
1079
- * @public
1080
- */
1081
- recordType: RecordType | undefined;
1082
- /**
1083
- * <p>The typed descriptors that define the content of the registry record.</p>
1084
- * @public
1085
- */
1086
- descriptors?: Descriptors | undefined;
1087
- /**
1088
- * <p>The version identifier of the registry record.</p>
1089
- * @public
1090
- */
1091
- recordVersion?: string | undefined;
1092
- /**
1093
- * <p>The lifecycle status of the registry record.</p>
1094
- * @public
1095
- */
1096
- status: RegistryRecordStatus | undefined;
1097
- /**
1098
- * <p>The timestamp when the registry record was created.</p>
1099
- * @public
1100
- */
1101
- createdAt: Date | undefined;
1102
- /**
1103
- * <p>The timestamp when the registry record was last updated.</p>
1104
- * @public
1105
- */
1106
- updatedAt: Date | undefined;
1107
- /**
1108
- * <p>The reason for the current status. Typically populated when the status indicates a failure state.</p>
1109
- * @public
1110
- */
1111
- statusReason?: string | undefined;
1112
- }
1113
- /**
1114
- * @public
1115
- */
1116
- export interface UpdateRegistryRecordStatusRequest {
1117
- /**
1118
- * <p>The identifier of the registry containing the record (ARN or ID)</p>
1119
- * @public
1120
- */
1121
- registryId: string | undefined;
1122
- /**
1123
- * <p>The identifier of the registry record to update the status of (ARN or ID)</p>
1124
- * @public
1125
- */
1126
- recordId: string | undefined;
1127
- /**
1128
- * <p>The target status for the registry record</p>
1129
- * @public
1130
- */
1131
- status: RegistryRecordStatus | undefined;
1132
- /**
1133
- * <p>The reason for the status change, for example why the record was approved, rejected, or deprecated</p>
1134
- * @public
1135
- */
1136
- statusReason: string | undefined;
1137
- }
1138
- /**
1139
- * <p>Response structure for updating a registry record status</p>
1140
- * @public
1141
- */
1142
- export interface UpdateRegistryRecordStatusResponse {
1143
- /**
1144
- * <p>The ARN of the registry</p>
1145
- * @public
1146
- */
1147
- registryArn: string | undefined;
1148
- /**
1149
- * <p>The ARN of the registry record</p>
1150
- * @public
1151
- */
1152
- recordArn: string | undefined;
1153
- /**
1154
- * <p>The ID of the registry record</p>
1155
- * @public
1156
- */
1157
- recordId: string | undefined;
1158
- /**
1159
- * <p>The resulting status of the registry record</p>
1160
- * @public
1161
- */
1162
- status: RegistryRecordStatus | undefined;
1163
- /**
1164
- * <p>The reason for the status change</p>
1165
- * @public
1166
- */
1167
- statusReason: string | undefined;
1168
- /**
1169
- * <p>The timestamp when the record was last updated</p>
1170
- * @public
1171
- */
1172
- updatedAt: Date | undefined;
1173
- }
1174
- /**
1175
- * <p>Configuration for the registry's record approval workflow. Controls whether records submitted for approval require manual review before they become approved and discoverable, or are auto-approved. When no auto-approval rules are configured, submitted records require manual review.</p>
1176
- * @public
1177
- */
1178
- export interface ApprovalConfiguration {
1179
- /**
1180
- * <p>The rules that determine which registry records are automatically approved on submission. When omitted or empty, submitted records require manual review.</p>
1181
- * @public
1182
- */
1183
- autoApprovalRules?: AutoApprovalRule[] | undefined;
1184
- }
1185
- /**
1186
- * <p>The expected value used to match a claim. Exactly one member is set.</p>
1187
- * @public
1188
- */
1189
- export type ClaimMatchValueType = ClaimMatchValueType.MatchValueStringMember | ClaimMatchValueType.MatchValueStringListMember | ClaimMatchValueType.$UnknownMember;
1190
- /**
1191
- * @public
1192
- */
1193
- export declare namespace ClaimMatchValueType {
1194
- /**
1195
- * <p>A single string value to match the claim against.</p>
1196
- * @public
1197
- */
1198
- interface MatchValueStringMember {
1199
- matchValueString: string;
1200
- matchValueStringList?: never;
1201
- $unknown?: never;
1202
- }
1203
- /**
1204
- * <p>A list of string values to match the claim against.</p>
1205
- * @public
1206
- */
1207
- interface MatchValueStringListMember {
1208
- matchValueString?: never;
1209
- matchValueStringList: string[];
1210
- $unknown?: never;
1211
- }
1212
- /**
1213
- * @public
1214
- */
1215
- interface $UnknownMember {
1216
- matchValueString?: never;
1217
- matchValueStringList?: never;
1218
- $unknown: [string, any];
1219
- }
1220
- /**
1221
- * @deprecated unused in schema-serde mode.
1222
- *
1223
- */
1224
- interface Visitor<T> {
1225
- matchValueString: (value: string) => T;
1226
- matchValueStringList: (value: string[]) => T;
1227
- _: (name: string, value: any) => T;
1228
- }
1229
- }
1230
- /**
1231
- * <p>The value and match operator used to authorize a claim during JWT validation.</p>
1232
- * @public
1233
- */
1234
- export interface AuthorizingClaimMatchValueType {
1608
+ */
1609
+ recordVersion?: string | undefined;
1235
1610
  /**
1236
- * <p>The expected value or values that the claim is compared against.</p>
1611
+ * <p>Whether to trigger synchronization of the record's descriptor content from its source</p>
1237
1612
  * @public
1238
1613
  */
1239
- claimMatchValue: ClaimMatchValueType | undefined;
1614
+ triggerSynchronization?: boolean | undefined;
1240
1615
  /**
1241
- * <p>The operator used to compare the claim value against the expected value.</p>
1616
+ * List of provenance entries on a registry record. Capped at one entry today: a record carries a
1617
+ * single DETECTED_FROM lineage. Modeled as a list so additional relations can be unlocked post-GA
1618
+ * by raising this bound without a breaking shape change.
1242
1619
  * @public
1243
1620
  */
1244
- claimMatchOperator: ClaimMatchOperatorType | undefined;
1621
+ provenance?: Provenance[] | undefined;
1245
1622
  }
1246
1623
  /**
1247
- * <p>A validation rule applied to a single claim of an inbound JWT.</p>
1624
+ * <p>Response structure for updating a registry record</p>
1248
1625
  * @public
1249
1626
  */
1250
- export interface CustomClaimValidationType {
1627
+ export interface UpdateRegistryRecordResponse {
1251
1628
  /**
1252
- * <p>The name of the claim in the inbound token to validate.</p>
1629
+ * <p>The Amazon Resource Name (ARN) of the parent registry that owns the record.</p>
1253
1630
  * @public
1254
1631
  */
1255
- inboundTokenClaimName: string | undefined;
1632
+ registryArn: string | undefined;
1256
1633
  /**
1257
- * <p>The value type of the claim in the inbound token, either a string or an array of strings.</p>
1634
+ * <p>The Amazon Resource Name (ARN) of the registry record.</p>
1258
1635
  * @public
1259
1636
  */
1260
- inboundTokenClaimValueType: InboundTokenClaimValueType | undefined;
1637
+ recordArn: string | undefined;
1261
1638
  /**
1262
- * <p>The value and match operator used to authorize the claim.</p>
1639
+ * <p>The unique identifier of the registry record.</p>
1263
1640
  * @public
1264
1641
  */
1265
- authorizingClaimMatchValue: AuthorizingClaimMatchValueType | undefined;
1266
- }
1267
- /**
1268
- * <p>A service-managed private endpoint provisioned within a customer VPC.</p>
1269
- * @public
1270
- */
1271
- export interface ManagedVpcResource {
1642
+ recordId: string | undefined;
1272
1643
  /**
1273
- * <p>The identifier of the VPC in which the private endpoint is provisioned.</p>
1644
+ * <p>The name of the registry record. Names are unique within a registry.</p>
1274
1645
  * @public
1275
1646
  */
1276
- vpcIdentifier: string | undefined;
1647
+ name: string | undefined;
1277
1648
  /**
1278
- * <p>The identifiers of the subnets in which the private endpoint network interfaces are placed.</p>
1649
+ * <p>The human-readable display name of the registry record.</p>
1279
1650
  * @public
1280
1651
  */
1281
- subnetIds: string[] | undefined;
1652
+ displayName?: string | undefined;
1282
1653
  /**
1283
- * <p>The IP address type used by the private endpoint, either IPV4 or IPV6.</p>
1654
+ * <p>A description of the registry record.</p>
1284
1655
  * @public
1285
1656
  */
1286
- endpointIpAddressType: EndpointIpAddressType | undefined;
1657
+ description?: string | undefined;
1287
1658
  /**
1288
- * <p>The identifiers of the security groups associated with the private endpoint network interfaces.</p>
1659
+ * <p>The type of the registry record, such as MCP, AGENT, SKILL, or CUSTOM.</p>
1289
1660
  * @public
1290
1661
  */
1291
- securityGroupIds?: string[] | undefined;
1662
+ recordType: RecordType | undefined;
1292
1663
  /**
1293
- * A map of tag keys to tag values.
1664
+ * <p>The typed descriptors that define the content of the registry record.</p>
1294
1665
  * @public
1295
1666
  */
1296
- tags?: Record<string, string> | undefined;
1667
+ descriptors?: Descriptors | undefined;
1297
1668
  /**
1298
- * <p>The routing domain used to resolve traffic through the private endpoint.</p>
1669
+ * <p>The version identifier of the registry record.</p>
1299
1670
  * @public
1300
1671
  */
1301
- routingDomain?: string | undefined;
1302
- }
1303
- /**
1304
- * <p>A self-managed private endpoint backed by a VPC Lattice resource configuration. Exactly one member is set.</p>
1305
- * @public
1306
- */
1307
- export type SelfManagedLatticeResource = SelfManagedLatticeResource.ResourceConfigurationIdentifierMember | SelfManagedLatticeResource.$UnknownMember;
1308
- /**
1309
- * @public
1310
- */
1311
- export declare namespace SelfManagedLatticeResource {
1672
+ recordVersion?: string | undefined;
1312
1673
  /**
1313
- * <p>The identifier of the VPC Lattice resource configuration, specified as a resource configuration ID or ARN.</p>
1674
+ * <p>The lifecycle status of the registry record.</p>
1314
1675
  * @public
1315
1676
  */
1316
- interface ResourceConfigurationIdentifierMember {
1317
- resourceConfigurationIdentifier: string;
1318
- $unknown?: never;
1319
- }
1677
+ status: RegistryRecordStatus | undefined;
1320
1678
  /**
1679
+ * <p>The timestamp when the registry record was created.</p>
1321
1680
  * @public
1322
1681
  */
1323
- interface $UnknownMember {
1324
- resourceConfigurationIdentifier?: never;
1325
- $unknown: [string, any];
1326
- }
1682
+ createdAt: Date | undefined;
1327
1683
  /**
1328
- * @deprecated unused in schema-serde mode.
1329
- *
1684
+ * <p>The timestamp when the registry record was last updated.</p>
1685
+ * @public
1330
1686
  */
1331
- interface Visitor<T> {
1332
- resourceConfigurationIdentifier: (value: string) => T;
1333
- _: (name: string, value: any) => T;
1334
- }
1335
- }
1336
- /**
1337
- * <p>A private network endpoint used to reach a resource over a private path. Exactly one member is set.</p>
1338
- * @public
1339
- */
1340
- export type PrivateEndpoint = PrivateEndpoint.ManagedVpcResourceMember | PrivateEndpoint.SelfManagedLatticeResourceMember | PrivateEndpoint.$UnknownMember;
1341
- /**
1342
- * @public
1343
- */
1344
- export declare namespace PrivateEndpoint {
1687
+ updatedAt: Date | undefined;
1345
1688
  /**
1346
- * <p>A private endpoint backed by a self-managed VPC Lattice resource configuration.</p>
1689
+ * <p>The reason for the current status. Typically populated when the status indicates a failure state.</p>
1347
1690
  * @public
1348
1691
  */
1349
- interface SelfManagedLatticeResourceMember {
1350
- selfManagedLatticeResource: SelfManagedLatticeResource;
1351
- managedVpcResource?: never;
1352
- $unknown?: never;
1353
- }
1692
+ statusReason?: string | undefined;
1354
1693
  /**
1355
- * <p>A private endpoint backed by a service-managed VPC resource.</p>
1694
+ * List of provenance entries on a registry record. Capped at one entry today: a record carries a
1695
+ * single DETECTED_FROM lineage. Modeled as a list so additional relations can be unlocked post-GA
1696
+ * by raising this bound without a breaking shape change.
1356
1697
  * @public
1357
1698
  */
1358
- interface ManagedVpcResourceMember {
1359
- selfManagedLatticeResource?: never;
1360
- managedVpcResource: ManagedVpcResource;
1361
- $unknown?: never;
1362
- }
1699
+ provenance?: Provenance[] | undefined;
1363
1700
  /**
1701
+ * <p>Specifies whether the registry record was created by auto-detection. <code>true</code> indicates the record was automatically created by the service based on the registry's auto-detection configuration; <code>false</code> indicates the record was created through a control-plane API call.</p>
1364
1702
  * @public
1365
1703
  */
1366
- interface $UnknownMember {
1367
- selfManagedLatticeResource?: never;
1368
- managedVpcResource?: never;
1369
- $unknown: [string, any];
1370
- }
1704
+ createdByAutoDetection?: boolean | undefined;
1371
1705
  /**
1372
- * @deprecated unused in schema-serde mode.
1373
- *
1706
+ * <p>The ID of the Amazon Web Services account that created the registry record.</p>
1707
+ * @public
1374
1708
  */
1375
- interface Visitor<T> {
1376
- selfManagedLatticeResource: (value: SelfManagedLatticeResource) => T;
1377
- managedVpcResource: (value: ManagedVpcResource) => T;
1378
- _: (name: string, value: any) => T;
1379
- }
1709
+ createdBy?: string | undefined;
1380
1710
  }
1381
1711
  /**
1382
- * <p>A mapping of a domain to the private endpoint used to reach it.</p>
1383
1712
  * @public
1384
1713
  */
1385
- export interface PrivateEndpointOverride {
1714
+ export interface UpdateRegistryRecordStatusRequest {
1386
1715
  /**
1387
- * <p>The domain name to which this private endpoint override applies.</p>
1716
+ * <p>The identifier of the registry containing the record (ARN or ID)</p>
1388
1717
  * @public
1389
1718
  */
1390
- domain: string | undefined;
1719
+ registryId: string | undefined;
1391
1720
  /**
1392
- * <p>The private endpoint used to reach the specified domain.</p>
1721
+ * <p>The identifier of the registry record to update the status of (ARN or ID)</p>
1393
1722
  * @public
1394
1723
  */
1395
- privateEndpoint: PrivateEndpoint | undefined;
1724
+ recordId: string | undefined;
1725
+ /**
1726
+ * <p>The target status for the registry record</p>
1727
+ * @public
1728
+ */
1729
+ status: RegistryRecordStatus | undefined;
1730
+ /**
1731
+ * <p>The reason for the status change, for example why the record was approved, rejected, or deprecated</p>
1732
+ * @public
1733
+ */
1734
+ statusReason: string | undefined;
1396
1735
  }
1397
1736
  /**
1398
- * <p>Configuration for a custom JWT authorizer that validates inbound bearer tokens against an OpenID Connect identity provider.</p>
1737
+ * <p>Response structure for updating a registry record status</p>
1399
1738
  * @public
1400
1739
  */
1401
- export interface CustomJWTAuthorizerConfiguration {
1402
- /**
1403
- * <p>The OpenID Connect discovery URL used to retrieve the identity provider's metadata and signing keys.</p>
1404
- * @public
1405
- */
1406
- discoveryUrl: string | undefined;
1740
+ export interface UpdateRegistryRecordStatusResponse {
1407
1741
  /**
1408
- * <p>The audience values accepted during JWT validation. A token is rejected if none of its audience claims match.</p>
1742
+ * <p>The ARN of the registry</p>
1409
1743
  * @public
1410
1744
  */
1411
- allowedAudience?: string[] | undefined;
1745
+ registryArn: string | undefined;
1412
1746
  /**
1413
- * <p>The client identifiers accepted during JWT validation. A token is rejected if it was not issued to one of these clients.</p>
1747
+ * <p>The ARN of the registry record</p>
1414
1748
  * @public
1415
1749
  */
1416
- allowedClients?: string[] | undefined;
1750
+ recordArn: string | undefined;
1417
1751
  /**
1418
- * <p>The scopes accepted during JWT validation. A token is rejected if it does not carry one of these scopes.</p>
1752
+ * <p>The ID of the registry record</p>
1419
1753
  * @public
1420
1754
  */
1421
- allowedScopes?: string[] | undefined;
1755
+ recordId: string | undefined;
1422
1756
  /**
1423
- * <p>Additional custom claim validations applied to the inbound JWT.</p>
1757
+ * <p>The resulting status of the registry record</p>
1424
1758
  * @public
1425
1759
  */
1426
- customClaims?: CustomClaimValidationType[] | undefined;
1760
+ status: RegistryRecordStatus | undefined;
1427
1761
  /**
1428
- * <p>The private endpoint used to reach the identity provider's discovery URL over a private network path.</p>
1762
+ * <p>The reason for the status change</p>
1429
1763
  * @public
1430
1764
  */
1431
- privateEndpoint?: PrivateEndpoint | undefined;
1765
+ statusReason: string | undefined;
1432
1766
  /**
1433
- * <p>Per-domain private endpoint overrides that route specific identity provider domains through distinct private endpoints.</p>
1767
+ * <p>The timestamp when the record was last updated</p>
1434
1768
  * @public
1435
1769
  */
1436
- privateEndpointOverrides?: PrivateEndpointOverride[] | undefined;
1770
+ updatedAt: Date | undefined;
1437
1771
  }
1438
1772
  /**
1439
- * <p>The authorizer configuration for a registry. Exactly one member is set.</p>
1773
+ * <p>Configuration for the registry's record approval workflow. Controls whether records submitted for approval require manual review before they become approved and discoverable, or are auto-approved. When no auto-approval rules are configured, submitted records require manual review.</p>
1440
1774
  * @public
1441
1775
  */
1442
- export type AuthorizerConfiguration = AuthorizerConfiguration.CustomJWTAuthorizerMember | AuthorizerConfiguration.$UnknownMember;
1776
+ export interface ApprovalConfiguration {
1777
+ /**
1778
+ * <p>The rules that determine which registry records are automatically approved on submission. When omitted or empty, submitted records require manual review.</p>
1779
+ * @public
1780
+ */
1781
+ autoApprovalRules?: AutoApprovalRule[] | undefined;
1782
+ }
1443
1783
  /**
1784
+ * <p>The customer-defined auto-detection settings for a registry.</p>
1444
1785
  * @public
1445
1786
  */
1446
- export declare namespace AuthorizerConfiguration {
1787
+ export interface AutoDetectionConfiguration {
1447
1788
  /**
1448
- * <p>Configuration for a custom JWT authorizer.</p>
1789
+ * <p>The source from which resources are detected. For example, <code>ORGANIZATION</code> sources resources from all member accounts of an Amazon Web Services organization.</p>
1449
1790
  * @public
1450
1791
  */
1451
- interface CustomJWTAuthorizerMember {
1452
- customJWTAuthorizer: CustomJWTAuthorizerConfiguration;
1453
- $unknown?: never;
1454
- }
1792
+ scope: AutoDetectionScope | undefined;
1455
1793
  /**
1794
+ * <p>Specifies whether auto-detection is requested for the registry. Setting this to <code>true</code> is necessary but not sufficient for auto-detection to become active; the preconditions of the configured scope must also be met.</p>
1456
1795
  * @public
1457
1796
  */
1458
- interface $UnknownMember {
1459
- customJWTAuthorizer?: never;
1460
- $unknown: [string, any];
1461
- }
1462
- /**
1463
- * @deprecated unused in schema-serde mode.
1464
- *
1465
- */
1466
- interface Visitor<T> {
1467
- customJWTAuthorizer: (value: CustomJWTAuthorizerConfiguration) => T;
1468
- _: (name: string, value: any) => T;
1469
- }
1797
+ enabled: boolean | undefined;
1470
1798
  }
1471
1799
  /**
1472
1800
  * <p>Discovery configuration for the registry. Controls how consumers are authorized to search the registry and invoke its MCP endpoint.</p>
@@ -1484,6 +1812,17 @@ export interface DiscoveryConfiguration {
1484
1812
  */
1485
1813
  authorizerType?: RegistryAuthorizerType | undefined;
1486
1814
  }
1815
+ /**
1816
+ * <p>The server-side encryption configuration for a registry. Specifies a customer-managed Amazon Web Services KMS key used to encrypt the registry's content.</p>
1817
+ * @public
1818
+ */
1819
+ export interface EncryptionConfiguration {
1820
+ /**
1821
+ * <p>The Amazon Resource Name (ARN) of the customer-managed Amazon Web Services KMS key used to encrypt the registry's content. The key must be a symmetric encryption key in the same Amazon Web Services account and Region as the registry.</p>
1822
+ * @public
1823
+ */
1824
+ kmsKeyArn: string | undefined;
1825
+ }
1487
1826
  /**
1488
1827
  * <p>Request structure for creating a registry</p>
1489
1828
  * @public
@@ -1499,13 +1838,18 @@ export interface CreateRegistryRequest {
1499
1838
  * @public
1500
1839
  */
1501
1840
  description?: string | undefined;
1841
+ /**
1842
+ * <p>The optional server-side encryption configuration for the registry. When you provide this field, the specified customer-managed Amazon Web Services KMS key encrypts the registry's content. Omit this field to use an Amazon Web Services-owned encryption key. You cannot change the encryption configuration after registry creation.</p>
1843
+ * @public
1844
+ */
1845
+ encryptionConfiguration?: EncryptionConfiguration | undefined;
1502
1846
  /**
1503
1847
  * <p>Discovery configuration for the registry</p>
1504
1848
  * @public
1505
1849
  */
1506
1850
  discoveryConfiguration?: DiscoveryConfiguration | undefined;
1507
1851
  /**
1508
- * <p>Client token for idempotency</p>
1852
+ * <p>A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the service ignores the request, but does not return an error.</p>
1509
1853
  * @public
1510
1854
  */
1511
1855
  clientToken?: string | undefined;
@@ -1519,6 +1863,11 @@ export interface CreateRegistryRequest {
1519
1863
  * @public
1520
1864
  */
1521
1865
  approvalConfiguration?: ApprovalConfiguration | undefined;
1866
+ /**
1867
+ * <p>The optional auto-detection configuration for the registry. When provided, the registry is automatically populated with resources discovered according to the configuration. Omit this field for registries whose records are managed exclusively through the Agent Registry Control API.</p>
1868
+ * @public
1869
+ */
1870
+ autoDetectionConfiguration?: AutoDetectionConfiguration | undefined;
1522
1871
  }
1523
1872
  /**
1524
1873
  * <p>Response structure for creating a registry</p>
@@ -1564,6 +1913,27 @@ export interface GetRegistryRequest {
1564
1913
  */
1565
1914
  registryId: string | undefined;
1566
1915
  }
1916
+ /**
1917
+ * <p>The auto-detection properties for a registry, including the requested configuration and the current detection status. When auto-detection is enabled and the scope preconditions are met, the registry is automatically populated with discovered resources.</p>
1918
+ * @public
1919
+ */
1920
+ export interface AutoDetection {
1921
+ /**
1922
+ * <p>The auto-detection settings that control how resources are discovered for the registry.</p>
1923
+ * @public
1924
+ */
1925
+ configuration: AutoDetectionConfiguration | undefined;
1926
+ /**
1927
+ * <p>The current auto-detection status. <code>ACTIVE</code> indicates that the registry is actively being populated with detected resources. <code>INACTIVE</code> indicates that the preconditions required at the configured scope are not currently met.</p>
1928
+ * @public
1929
+ */
1930
+ status: AutoDetectionStatus | undefined;
1931
+ /**
1932
+ * <p>A human-readable explanation of the current auto-detection status. Typically populated when the status requires additional context.</p>
1933
+ * @public
1934
+ */
1935
+ statusReason?: string | undefined;
1936
+ }
1567
1937
  /**
1568
1938
  * <p>Response structure for getting a registry</p>
1569
1939
  * @public
@@ -1594,6 +1964,11 @@ export interface GetRegistryResponse {
1594
1964
  * @public
1595
1965
  */
1596
1966
  discoveryConfiguration?: DiscoveryConfiguration | undefined;
1967
+ /**
1968
+ * <p>The server-side encryption configuration for the registry. Appears only when a customer-managed Amazon Web Services KMS key encrypts the registry.</p>
1969
+ * @public
1970
+ */
1971
+ encryptionConfiguration?: EncryptionConfiguration | undefined;
1597
1972
  /**
1598
1973
  * <p>Approval configuration for registry records</p>
1599
1974
  * @public
@@ -1609,6 +1984,11 @@ export interface GetRegistryResponse {
1609
1984
  * @public
1610
1985
  */
1611
1986
  statusReason?: string | undefined;
1987
+ /**
1988
+ * <p>The registry's auto-detection properties, including the requested configuration and the current detection status. Present only when auto-detection was configured for the registry.</p>
1989
+ * @public
1990
+ */
1991
+ autoDetection?: AutoDetection | undefined;
1612
1992
  /**
1613
1993
  * <p>The timestamp when the registry was created</p>
1614
1994
  * @public
@@ -1697,6 +2077,11 @@ export interface RegistrySummary {
1697
2077
  * @public
1698
2078
  */
1699
2079
  statusReason?: string | undefined;
2080
+ /**
2081
+ * <p>The registry's auto-detection properties, including the requested configuration and the current detection status. Present only when auto-detection was configured for the registry.</p>
2082
+ * @public
2083
+ */
2084
+ autoDetection?: AutoDetection | undefined;
1700
2085
  /**
1701
2086
  * <p>The timestamp when the registry was created</p>
1702
2087
  * @public
@@ -1735,6 +2120,17 @@ export interface UpdatedApprovalConfiguration {
1735
2120
  */
1736
2121
  optionalValue?: ApprovalConfiguration | undefined;
1737
2122
  }
2123
+ /**
2124
+ * <p>A wrapper for updating the auto-detection configuration of a registry with PATCH semantics. Include this wrapper to replace the auto-detection configuration with the specified value. Omit it to leave the auto-detection configuration unchanged. To clear the configuration, include the wrapper with a null <code>optionalValue</code>.</p>
2125
+ * @public
2126
+ */
2127
+ export interface UpdatedAutoDetectionConfiguration {
2128
+ /**
2129
+ * <p>The value to set for this field. Omit the wrapper to leave the field unchanged.</p>
2130
+ * @public
2131
+ */
2132
+ optionalValue?: AutoDetectionConfiguration | undefined;
2133
+ }
1738
2134
  /**
1739
2135
  * <p>Wrapper for updating an optional authorizer configuration with PATCH semantics.</p>
1740
2136
  * @public
@@ -1787,6 +2183,11 @@ export interface UpdateRegistryRequest {
1787
2183
  * @public
1788
2184
  */
1789
2185
  approvalConfiguration?: UpdatedApprovalConfiguration | undefined;
2186
+ /**
2187
+ * <p>The updated auto-detection configuration for the registry, with PATCH semantics. Omit this field to leave the current configuration unchanged. Supply an empty wrapper to unset it. Supply <code>optionalValue</code> to replace it.</p>
2188
+ * @public
2189
+ */
2190
+ autoDetectionConfiguration?: UpdatedAutoDetectionConfiguration | undefined;
1790
2191
  }
1791
2192
  /**
1792
2193
  * <p>Response structure for updating a registry</p>
@@ -1818,6 +2219,11 @@ export interface UpdateRegistryResponse {
1818
2219
  * @public
1819
2220
  */
1820
2221
  discoveryConfiguration?: DiscoveryConfiguration | undefined;
2222
+ /**
2223
+ * <p>The server-side encryption configuration for the registry. Appears only when a customer-managed Amazon Web Services KMS key encrypts the registry.</p>
2224
+ * @public
2225
+ */
2226
+ encryptionConfiguration?: EncryptionConfiguration | undefined;
1821
2227
  /**
1822
2228
  * <p>Approval configuration for registry records</p>
1823
2229
  * @public
@@ -1833,6 +2239,11 @@ export interface UpdateRegistryResponse {
1833
2239
  * @public
1834
2240
  */
1835
2241
  statusReason?: string | undefined;
2242
+ /**
2243
+ * <p>The registry's auto-detection properties, including the requested configuration and the current detection status. Present only when auto-detection was configured for the registry.</p>
2244
+ * @public
2245
+ */
2246
+ autoDetection?: AutoDetection | undefined;
1836
2247
  /**
1837
2248
  * <p>The timestamp when the registry was created</p>
1838
2249
  * @public
@@ -1849,12 +2260,12 @@ export interface UpdateRegistryResponse {
1849
2260
  */
1850
2261
  export interface TagResourceRequest {
1851
2262
  /**
1852
- * ARN of a taggable Agent Registry resource.
2263
+ * <p>The Amazon Resource Name (ARN) of the resource to tag. Supported resources include registries and registry records.</p>
1853
2264
  * @public
1854
2265
  */
1855
2266
  resourceArn: string | undefined;
1856
2267
  /**
1857
- * A map of tag keys to tag values.
2268
+ * <p>The tags to apply to the resource, as a map of tag keys to tag values. Tag keys must be unique within the request.</p>
1858
2269
  * @public
1859
2270
  */
1860
2271
  tags: Record<string, string> | undefined;
@@ -1869,12 +2280,12 @@ export interface TagResourceResponse {
1869
2280
  */
1870
2281
  export interface UntagResourceRequest {
1871
2282
  /**
1872
- * ARN of a taggable Agent Registry resource.
2283
+ * <p>The Amazon Resource Name (ARN) of the resource to remove tags from. Supported resources include registries and registry records.</p>
1873
2284
  * @public
1874
2285
  */
1875
2286
  resourceArn: string | undefined;
1876
2287
  /**
1877
- * A list of tag keys.
2288
+ * <p>The keys of the tags to remove from the resource. Tags with keys not included in this list remain on the resource.</p>
1878
2289
  * @public
1879
2290
  */
1880
2291
  tagKeys: string[] | undefined;