aws-sdk-agentregistrycontrol 1.0.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.
@@ -0,0 +1,2308 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::AgentRegistryControl
11
+ module Types
12
+
13
+ # Descriptor that defines the content of an A2A (Agent-to-Agent) agent
14
+ # card registry record. The content is validated against the A2A
15
+ # protocol schema.
16
+ #
17
+ # @!attribute [rw] data
18
+ # The A2A agent card content, serialized as descriptor payload data.
19
+ # @return [String]
20
+ #
21
+ # @!attribute [rw] data_schema_version
22
+ # The schema version of the descriptor payload.
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] source
26
+ # The optional source configuration used to synchronize the A2A agent
27
+ # card descriptor content.
28
+ # @return [Types::DescriptorSource]
29
+ #
30
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/A2aAgentCardDescriptor AWS API Documentation
31
+ #
32
+ class A2aAgentCardDescriptor < Struct.new(
33
+ :data,
34
+ :data_schema_version,
35
+ :source)
36
+ SENSITIVE = [:data]
37
+ include Aws::Structure
38
+ end
39
+
40
+ # The caller is not authorized to perform the requested action.
41
+ #
42
+ # @!attribute [rw] message
43
+ # @return [String]
44
+ #
45
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/AccessDeniedException AWS API Documentation
46
+ #
47
+ class AccessDeniedException < Struct.new(
48
+ :message)
49
+ SENSITIVE = []
50
+ include Aws::Structure
51
+ end
52
+
53
+ # Additional data associated with an agent skills definition descriptor.
54
+ #
55
+ # @!attribute [rw] skill_md
56
+ # The markdown skill content associated with an agent skills
57
+ # definition.
58
+ # @return [Types::AgentSkillsMdDescriptor]
59
+ #
60
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/AgentSkillsAdditionalData AWS API Documentation
61
+ #
62
+ class AgentSkillsAdditionalData < Struct.new(
63
+ :skill_md)
64
+ SENSITIVE = []
65
+ include Aws::Structure
66
+ end
67
+
68
+ # Descriptor that defines an agent skills registry record and its
69
+ # associated content.
70
+ #
71
+ # @!attribute [rw] data
72
+ # The agent skills definition content, serialized as descriptor
73
+ # payload data.
74
+ # @return [String]
75
+ #
76
+ # @!attribute [rw] data_schema_version
77
+ # The schema version of the descriptor payload.
78
+ # @return [String]
79
+ #
80
+ # @!attribute [rw] additional_data
81
+ # Additional data associated with the agent skills definition
82
+ # descriptor.
83
+ # @return [Types::AgentSkillsAdditionalData]
84
+ #
85
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/AgentSkillsDefinitionDescriptor AWS API Documentation
86
+ #
87
+ class AgentSkillsDefinitionDescriptor < Struct.new(
88
+ :data,
89
+ :data_schema_version,
90
+ :additional_data)
91
+ SENSITIVE = [:data]
92
+ include Aws::Structure
93
+ end
94
+
95
+ # Markdown-format descriptor containing an agent skills document.
96
+ #
97
+ # @!attribute [rw] data
98
+ # The agent skills markdown content, serialized as descriptor payload
99
+ # data.
100
+ # @return [String]
101
+ #
102
+ # @!attribute [rw] data_schema_version
103
+ # The schema version of the descriptor payload.
104
+ # @return [String]
105
+ #
106
+ # @!attribute [rw] source
107
+ # The optional source configuration used to synchronize the agent
108
+ # skills markdown content.
109
+ # @return [Types::DescriptorSource]
110
+ #
111
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/AgentSkillsMdDescriptor AWS API Documentation
112
+ #
113
+ class AgentSkillsMdDescriptor < Struct.new(
114
+ :data,
115
+ :data_schema_version,
116
+ :source)
117
+ SENSITIVE = [:data]
118
+ include Aws::Structure
119
+ end
120
+
121
+ # Configuration for the registry's record approval workflow. Controls
122
+ # whether records submitted for approval require manual review before
123
+ # they become approved and discoverable, or are auto-approved. When no
124
+ # auto-approval rules are configured, submitted records require manual
125
+ # review.
126
+ #
127
+ # @!attribute [rw] auto_approval_rules
128
+ # The rules that determine which registry records are automatically
129
+ # approved on submission. When omitted or empty, submitted records
130
+ # require manual review.
131
+ # @return [Array<String>]
132
+ #
133
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ApprovalConfiguration AWS API Documentation
134
+ #
135
+ class ApprovalConfiguration < Struct.new(
136
+ :auto_approval_rules)
137
+ SENSITIVE = []
138
+ include Aws::Structure
139
+ end
140
+
141
+ # The authorizer configuration for a registry. Exactly one member is
142
+ # set.
143
+ #
144
+ # @note AuthorizerConfiguration is a union - when making an API calls you must set exactly one of the members.
145
+ #
146
+ # @note AuthorizerConfiguration is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of AuthorizerConfiguration corresponding to the set member.
147
+ #
148
+ # @!attribute [rw] custom_jwt_authorizer
149
+ # Configuration for a custom JWT authorizer.
150
+ # @return [Types::CustomJWTAuthorizerConfiguration]
151
+ #
152
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/AuthorizerConfiguration AWS API Documentation
153
+ #
154
+ class AuthorizerConfiguration < Struct.new(
155
+ :custom_jwt_authorizer,
156
+ :unknown)
157
+ SENSITIVE = []
158
+ include Aws::Structure
159
+ include Aws::Structure::Union
160
+
161
+ class CustomJwtAuthorizer < AuthorizerConfiguration; end
162
+ class Unknown < AuthorizerConfiguration; end
163
+ end
164
+
165
+ # The value and match operator used to authorize a claim during JWT
166
+ # validation.
167
+ #
168
+ # @!attribute [rw] claim_match_value
169
+ # The expected value or values that the claim is compared against.
170
+ # @return [Types::ClaimMatchValueType]
171
+ #
172
+ # @!attribute [rw] claim_match_operator
173
+ # The operator used to compare the claim value against the expected
174
+ # value.
175
+ # @return [String]
176
+ #
177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/AuthorizingClaimMatchValueType AWS API Documentation
178
+ #
179
+ class AuthorizingClaimMatchValueType < Struct.new(
180
+ :claim_match_value,
181
+ :claim_match_operator)
182
+ SENSITIVE = []
183
+ include Aws::Structure
184
+ end
185
+
186
+ # The expected value used to match a claim. Exactly one member is set.
187
+ #
188
+ # @note ClaimMatchValueType is a union - when making an API calls you must set exactly one of the members.
189
+ #
190
+ # @note ClaimMatchValueType is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ClaimMatchValueType corresponding to the set member.
191
+ #
192
+ # @!attribute [rw] match_value_string
193
+ # A single string value to match the claim against.
194
+ # @return [String]
195
+ #
196
+ # @!attribute [rw] match_value_string_list
197
+ # A list of string values to match the claim against.
198
+ # @return [Array<String>]
199
+ #
200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ClaimMatchValueType AWS API Documentation
201
+ #
202
+ class ClaimMatchValueType < Struct.new(
203
+ :match_value_string,
204
+ :match_value_string_list,
205
+ :unknown)
206
+ SENSITIVE = []
207
+ include Aws::Structure
208
+ include Aws::Structure::Union
209
+
210
+ class MatchValueString < ClaimMatchValueType; end
211
+ class MatchValueStringList < ClaimMatchValueType; end
212
+ class Unknown < ClaimMatchValueType; end
213
+ end
214
+
215
+ # The request conflicts with the current state of the resource.
216
+ #
217
+ # @!attribute [rw] message
218
+ # @return [String]
219
+ #
220
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ConflictException AWS API Documentation
221
+ #
222
+ class ConflictException < Struct.new(
223
+ :message)
224
+ SENSITIVE = []
225
+ include Aws::Structure
226
+ end
227
+
228
+ # @!attribute [rw] registry_id
229
+ # The identifier of the registry in which to create the record (ARN or
230
+ # ID)
231
+ # @return [String]
232
+ #
233
+ # @!attribute [rw] name
234
+ # The name of the registry record
235
+ # @return [String]
236
+ #
237
+ # @!attribute [rw] display_name
238
+ # The human-readable display name of the registry record
239
+ # @return [String]
240
+ #
241
+ # @!attribute [rw] description
242
+ # The description of the registry record
243
+ # @return [String]
244
+ #
245
+ # @!attribute [rw] record_type
246
+ # The type of the registry record, which determines the descriptor
247
+ # format
248
+ # @return [String]
249
+ #
250
+ # @!attribute [rw] descriptors
251
+ # The typed descriptor content for the registry record
252
+ # @return [Types::Descriptors]
253
+ #
254
+ # @!attribute [rw] record_version
255
+ # The version of the registry record
256
+ # @return [String]
257
+ #
258
+ # @!attribute [rw] client_token
259
+ # Client token for idempotency
260
+ #
261
+ # **A suitable default value is auto-generated.** You should normally
262
+ # not need to pass this option.
263
+ # @return [String]
264
+ #
265
+ # @!attribute [rw] tags
266
+ # Tags to associate with the registry record
267
+ # @return [Hash<String,String>]
268
+ #
269
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/CreateRegistryRecordRequest AWS API Documentation
270
+ #
271
+ class CreateRegistryRecordRequest < Struct.new(
272
+ :registry_id,
273
+ :name,
274
+ :display_name,
275
+ :description,
276
+ :record_type,
277
+ :descriptors,
278
+ :record_version,
279
+ :client_token,
280
+ :tags)
281
+ SENSITIVE = [:description]
282
+ include Aws::Structure
283
+ end
284
+
285
+ # Response structure for creating a registry record
286
+ #
287
+ # @!attribute [rw] record_arn
288
+ # The ARN of the created registry record
289
+ # @return [String]
290
+ #
291
+ # @!attribute [rw] status
292
+ # The status of the registry record, set to CREATING while the
293
+ # asynchronous workflow is in progress
294
+ # @return [String]
295
+ #
296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/CreateRegistryRecordResponse AWS API Documentation
297
+ #
298
+ class CreateRegistryRecordResponse < Struct.new(
299
+ :record_arn,
300
+ :status)
301
+ SENSITIVE = []
302
+ include Aws::Structure
303
+ end
304
+
305
+ # Request structure for creating a registry
306
+ #
307
+ # @!attribute [rw] name
308
+ # The name of the registry
309
+ # @return [String]
310
+ #
311
+ # @!attribute [rw] description
312
+ # The description of the registry
313
+ # @return [String]
314
+ #
315
+ # @!attribute [rw] discovery_configuration
316
+ # Discovery configuration for the registry
317
+ # @return [Types::DiscoveryConfiguration]
318
+ #
319
+ # @!attribute [rw] client_token
320
+ # Client token for idempotency
321
+ #
322
+ # **A suitable default value is auto-generated.** You should normally
323
+ # not need to pass this option.
324
+ # @return [String]
325
+ #
326
+ # @!attribute [rw] tags
327
+ # Tags to associate with the registry
328
+ # @return [Hash<String,String>]
329
+ #
330
+ # @!attribute [rw] approval_configuration
331
+ # Approval configuration for registry records
332
+ # @return [Types::ApprovalConfiguration]
333
+ #
334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/CreateRegistryRequest AWS API Documentation
335
+ #
336
+ class CreateRegistryRequest < Struct.new(
337
+ :name,
338
+ :description,
339
+ :discovery_configuration,
340
+ :client_token,
341
+ :tags,
342
+ :approval_configuration)
343
+ SENSITIVE = [:description]
344
+ include Aws::Structure
345
+ end
346
+
347
+ # Response structure for creating a registry
348
+ #
349
+ # @!attribute [rw] registry_arn
350
+ # The ARN of the created registry
351
+ # @return [String]
352
+ #
353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/CreateRegistryResponse AWS API Documentation
354
+ #
355
+ class CreateRegistryResponse < Struct.new(
356
+ :registry_arn)
357
+ SENSITIVE = []
358
+ include Aws::Structure
359
+ end
360
+
361
+ # A validation rule applied to a single claim of an inbound JWT.
362
+ #
363
+ # @!attribute [rw] inbound_token_claim_name
364
+ # The name of the claim in the inbound token to validate.
365
+ # @return [String]
366
+ #
367
+ # @!attribute [rw] inbound_token_claim_value_type
368
+ # The value type of the claim in the inbound token, either a string or
369
+ # an array of strings.
370
+ # @return [String]
371
+ #
372
+ # @!attribute [rw] authorizing_claim_match_value
373
+ # The value and match operator used to authorize the claim.
374
+ # @return [Types::AuthorizingClaimMatchValueType]
375
+ #
376
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/CustomClaimValidationType AWS API Documentation
377
+ #
378
+ class CustomClaimValidationType < Struct.new(
379
+ :inbound_token_claim_name,
380
+ :inbound_token_claim_value_type,
381
+ :authorizing_claim_match_value)
382
+ SENSITIVE = []
383
+ include Aws::Structure
384
+ end
385
+
386
+ # Custom descriptor for user-defined content
387
+ #
388
+ # @!attribute [rw] data
389
+ # Descriptor payload data
390
+ # @return [String]
391
+ #
392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/CustomDescriptor AWS API Documentation
393
+ #
394
+ class CustomDescriptor < Struct.new(
395
+ :data)
396
+ SENSITIVE = [:data]
397
+ include Aws::Structure
398
+ end
399
+
400
+ # Configuration for a custom JWT authorizer that validates inbound
401
+ # bearer tokens against an OpenID Connect identity provider.
402
+ #
403
+ # @!attribute [rw] discovery_url
404
+ # The OpenID Connect discovery URL used to retrieve the identity
405
+ # provider's metadata and signing keys.
406
+ # @return [String]
407
+ #
408
+ # @!attribute [rw] allowed_audience
409
+ # The audience values accepted during JWT validation. A token is
410
+ # rejected if none of its audience claims match.
411
+ # @return [Array<String>]
412
+ #
413
+ # @!attribute [rw] allowed_clients
414
+ # The client identifiers accepted during JWT validation. A token is
415
+ # rejected if it was not issued to one of these clients.
416
+ # @return [Array<String>]
417
+ #
418
+ # @!attribute [rw] allowed_scopes
419
+ # The scopes accepted during JWT validation. A token is rejected if it
420
+ # does not carry one of these scopes.
421
+ # @return [Array<String>]
422
+ #
423
+ # @!attribute [rw] custom_claims
424
+ # Additional custom claim validations applied to the inbound JWT.
425
+ # @return [Array<Types::CustomClaimValidationType>]
426
+ #
427
+ # @!attribute [rw] private_endpoint
428
+ # The private endpoint used to reach the identity provider's
429
+ # discovery URL over a private network path.
430
+ # @return [Types::PrivateEndpoint]
431
+ #
432
+ # @!attribute [rw] private_endpoint_overrides
433
+ # Per-domain private endpoint overrides that route specific identity
434
+ # provider domains through distinct private endpoints.
435
+ # @return [Array<Types::PrivateEndpointOverride>]
436
+ #
437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/CustomJWTAuthorizerConfiguration AWS API Documentation
438
+ #
439
+ class CustomJWTAuthorizerConfiguration < Struct.new(
440
+ :discovery_url,
441
+ :allowed_audience,
442
+ :allowed_clients,
443
+ :allowed_scopes,
444
+ :custom_claims,
445
+ :private_endpoint,
446
+ :private_endpoint_overrides)
447
+ SENSITIVE = []
448
+ include Aws::Structure
449
+ end
450
+
451
+ # @!attribute [rw] registry_id
452
+ # The identifier of the registry containing the record (ARN or ID)
453
+ # @return [String]
454
+ #
455
+ # @!attribute [rw] record_id
456
+ # The identifier of the registry record to delete (ARN or ID)
457
+ # @return [String]
458
+ #
459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/DeleteRegistryRecordRequest AWS API Documentation
460
+ #
461
+ class DeleteRegistryRecordRequest < Struct.new(
462
+ :registry_id,
463
+ :record_id)
464
+ SENSITIVE = []
465
+ include Aws::Structure
466
+ end
467
+
468
+ # Response structure for deleting a registry record
469
+ #
470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/DeleteRegistryRecordResponse AWS API Documentation
471
+ #
472
+ class DeleteRegistryRecordResponse < Aws::EmptyStructure; end
473
+
474
+ # Request structure for deleting a registry
475
+ #
476
+ # @!attribute [rw] registry_id
477
+ # The identifier of the registry to delete (ARN or ID)
478
+ # @return [String]
479
+ #
480
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/DeleteRegistryRequest AWS API Documentation
481
+ #
482
+ class DeleteRegistryRequest < Struct.new(
483
+ :registry_id)
484
+ SENSITIVE = []
485
+ include Aws::Structure
486
+ end
487
+
488
+ # Response structure for deleting a registry
489
+ #
490
+ # @!attribute [rw] status
491
+ # Current status of the registry, set to DELETING when deletion is
492
+ # initiated
493
+ # @return [String]
494
+ #
495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/DeleteRegistryResponse AWS API Documentation
496
+ #
497
+ class DeleteRegistryResponse < Struct.new(
498
+ :status)
499
+ SENSITIVE = []
500
+ include Aws::Structure
501
+ end
502
+
503
+ # The source configuration that defines where descriptor content is
504
+ # retrieved from.
505
+ #
506
+ # @!attribute [rw] from_url
507
+ # URL-based descriptor source, populated when descriptor content is
508
+ # synchronized from a URL.
509
+ # @return [Types::DescriptorSourceFromUrl]
510
+ #
511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/DescriptorSource AWS API Documentation
512
+ #
513
+ class DescriptorSource < Struct.new(
514
+ :from_url)
515
+ SENSITIVE = []
516
+ include Aws::Structure
517
+ end
518
+
519
+ # URL-based descriptor source configuration, with credential provider
520
+ # configurations for authenticated URL retrieval.
521
+ #
522
+ # @!attribute [rw] url
523
+ # The URL from which the descriptor content is retrieved.
524
+ # @return [String]
525
+ #
526
+ # @!attribute [rw] credential_provider_configurations
527
+ # The credential providers used to authenticate when fetching
528
+ # descriptor content from the source URL.
529
+ # @return [Array<Types::RegistryRecordCredentialProviderConfiguration>]
530
+ #
531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/DescriptorSourceFromUrl AWS API Documentation
532
+ #
533
+ class DescriptorSourceFromUrl < Struct.new(
534
+ :url,
535
+ :credential_provider_configurations)
536
+ SENSITIVE = []
537
+ include Aws::Structure
538
+ end
539
+
540
+ # The typed set of descriptors for a registry record. Exactly one
541
+ # descriptor field is populated based on the record type.
542
+ #
543
+ # @!attribute [rw] mcp_server
544
+ # The MCP server descriptor, populated when the record type is MCP.
545
+ # @return [Types::McpServerDescriptor]
546
+ #
547
+ # @!attribute [rw] a2a_agent_card
548
+ # The A2A agent card descriptor, populated when the record type is
549
+ # AGENT.
550
+ # @return [Types::A2aAgentCardDescriptor]
551
+ #
552
+ # @!attribute [rw] agent_skills_definition
553
+ # The agent skills definition descriptor, populated when the record
554
+ # type is SKILL.
555
+ # @return [Types::AgentSkillsDefinitionDescriptor]
556
+ #
557
+ # @!attribute [rw] custom
558
+ # The custom descriptor, populated when the record type is CUSTOM.
559
+ # @return [Types::CustomDescriptor]
560
+ #
561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/Descriptors AWS API Documentation
562
+ #
563
+ class Descriptors < Struct.new(
564
+ :mcp_server,
565
+ :a2a_agent_card,
566
+ :agent_skills_definition,
567
+ :custom)
568
+ SENSITIVE = []
569
+ include Aws::Structure
570
+ end
571
+
572
+ # Discovery configuration for the registry. Controls how consumers are
573
+ # authorized to search the registry and invoke its MCP endpoint.
574
+ #
575
+ # @!attribute [rw] authorizer_configuration
576
+ # The authorizer configuration for the registry. Required when
577
+ # authorizerType is CUSTOM\_JWT.
578
+ # @return [Types::AuthorizerConfiguration]
579
+ #
580
+ # @!attribute [rw] authorizer_type
581
+ # The type of authorizer that controls how consumers access the
582
+ # registry's search and MCP invoke operations.
583
+ # @return [String]
584
+ #
585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/DiscoveryConfiguration AWS API Documentation
586
+ #
587
+ class DiscoveryConfiguration < Struct.new(
588
+ :authorizer_configuration,
589
+ :authorizer_type)
590
+ SENSITIVE = []
591
+ include Aws::Structure
592
+ end
593
+
594
+ # @!attribute [rw] registry_id
595
+ # The identifier of the registry containing the record (ARN or ID)
596
+ # @return [String]
597
+ #
598
+ # @!attribute [rw] record_id
599
+ # The identifier of the registry record to retrieve (ARN or ID)
600
+ # @return [String]
601
+ #
602
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/GetRegistryRecordRequest AWS API Documentation
603
+ #
604
+ class GetRegistryRecordRequest < Struct.new(
605
+ :registry_id,
606
+ :record_id)
607
+ SENSITIVE = []
608
+ include Aws::Structure
609
+ end
610
+
611
+ # Response structure for retrieving a registry record
612
+ #
613
+ # @!attribute [rw] registry_arn
614
+ # The &amp;ARN; of the parent registry that owns the record.
615
+ # @return [String]
616
+ #
617
+ # @!attribute [rw] record_arn
618
+ # The &amp;ARN; of the registry record.
619
+ # @return [String]
620
+ #
621
+ # @!attribute [rw] record_id
622
+ # The unique identifier of the registry record.
623
+ # @return [String]
624
+ #
625
+ # @!attribute [rw] name
626
+ # The name of the registry record. Names are unique within a registry.
627
+ # @return [String]
628
+ #
629
+ # @!attribute [rw] display_name
630
+ # The human-readable display name of the registry record.
631
+ # @return [String]
632
+ #
633
+ # @!attribute [rw] description
634
+ # A description of the registry record.
635
+ # @return [String]
636
+ #
637
+ # @!attribute [rw] record_type
638
+ # The type of the registry record, such as MCP, AGENT, SKILL, or
639
+ # CUSTOM.
640
+ # @return [String]
641
+ #
642
+ # @!attribute [rw] descriptors
643
+ # The typed descriptors that define the content of the registry
644
+ # record.
645
+ # @return [Types::Descriptors]
646
+ #
647
+ # @!attribute [rw] record_version
648
+ # The version identifier of the registry record.
649
+ # @return [String]
650
+ #
651
+ # @!attribute [rw] status
652
+ # The lifecycle status of the registry record.
653
+ # @return [String]
654
+ #
655
+ # @!attribute [rw] created_at
656
+ # The timestamp when the registry record was created.
657
+ # @return [Time]
658
+ #
659
+ # @!attribute [rw] updated_at
660
+ # The timestamp when the registry record was last updated.
661
+ # @return [Time]
662
+ #
663
+ # @!attribute [rw] status_reason
664
+ # The reason for the current status. Typically populated when the
665
+ # status indicates a failure state.
666
+ # @return [String]
667
+ #
668
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/GetRegistryRecordResponse AWS API Documentation
669
+ #
670
+ class GetRegistryRecordResponse < Struct.new(
671
+ :registry_arn,
672
+ :record_arn,
673
+ :record_id,
674
+ :name,
675
+ :display_name,
676
+ :description,
677
+ :record_type,
678
+ :descriptors,
679
+ :record_version,
680
+ :status,
681
+ :created_at,
682
+ :updated_at,
683
+ :status_reason)
684
+ SENSITIVE = [:description]
685
+ include Aws::Structure
686
+ end
687
+
688
+ # Request structure for getting a registry
689
+ #
690
+ # @!attribute [rw] registry_id
691
+ # The identifier of the registry to retrieve (ARN or ID)
692
+ # @return [String]
693
+ #
694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/GetRegistryRequest AWS API Documentation
695
+ #
696
+ class GetRegistryRequest < Struct.new(
697
+ :registry_id)
698
+ SENSITIVE = []
699
+ include Aws::Structure
700
+ end
701
+
702
+ # Response structure for getting a registry
703
+ #
704
+ # @!attribute [rw] name
705
+ # The name of the registry
706
+ # @return [String]
707
+ #
708
+ # @!attribute [rw] description
709
+ # The description of the registry
710
+ # @return [String]
711
+ #
712
+ # @!attribute [rw] registry_id
713
+ # The unique identifier of the registry
714
+ # @return [String]
715
+ #
716
+ # @!attribute [rw] registry_arn
717
+ # The ARN of the registry
718
+ # @return [String]
719
+ #
720
+ # @!attribute [rw] discovery_configuration
721
+ # Discovery configuration for the registry
722
+ # @return [Types::DiscoveryConfiguration]
723
+ #
724
+ # @!attribute [rw] approval_configuration
725
+ # Approval configuration for registry records
726
+ # @return [Types::ApprovalConfiguration]
727
+ #
728
+ # @!attribute [rw] status
729
+ # Current status of the registry
730
+ # @return [String]
731
+ #
732
+ # @!attribute [rw] status_reason
733
+ # The reason for the current status. Typically populated when the
734
+ # status indicates a failure state.
735
+ # @return [String]
736
+ #
737
+ # @!attribute [rw] created_at
738
+ # The timestamp when the registry was created
739
+ # @return [Time]
740
+ #
741
+ # @!attribute [rw] updated_at
742
+ # The timestamp when the registry was last updated
743
+ # @return [Time]
744
+ #
745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/GetRegistryResponse AWS API Documentation
746
+ #
747
+ class GetRegistryResponse < Struct.new(
748
+ :name,
749
+ :description,
750
+ :registry_id,
751
+ :registry_arn,
752
+ :discovery_configuration,
753
+ :approval_configuration,
754
+ :status,
755
+ :status_reason,
756
+ :created_at,
757
+ :updated_at)
758
+ SENSITIVE = [:description]
759
+ include Aws::Structure
760
+ end
761
+
762
+ # The request failed due to an unexpected internal error; the caller may
763
+ # retry.
764
+ #
765
+ # @!attribute [rw] message
766
+ # @return [String]
767
+ #
768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/InternalServerException AWS API Documentation
769
+ #
770
+ class InternalServerException < Struct.new(
771
+ :message)
772
+ SENSITIVE = []
773
+ include Aws::Structure
774
+ end
775
+
776
+ # Request structure for listing registries
777
+ #
778
+ # @!attribute [rw] max_results
779
+ # Maximum number of results to return
780
+ # @return [Integer]
781
+ #
782
+ # @!attribute [rw] next_token
783
+ # Token for pagination
784
+ # @return [String]
785
+ #
786
+ # @!attribute [rw] filters
787
+ # Filters to apply to the registry list
788
+ # @return [Array<Types::RegistryFilter>]
789
+ #
790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ListRegistriesRequest AWS API Documentation
791
+ #
792
+ class ListRegistriesRequest < Struct.new(
793
+ :max_results,
794
+ :next_token,
795
+ :filters)
796
+ SENSITIVE = []
797
+ include Aws::Structure
798
+ end
799
+
800
+ # Response structure for listing registries
801
+ #
802
+ # @!attribute [rw] registries
803
+ # List of registry summaries
804
+ # @return [Array<Types::RegistrySummary>]
805
+ #
806
+ # @!attribute [rw] next_token
807
+ # Token for next page of results
808
+ # @return [String]
809
+ #
810
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ListRegistriesResponse AWS API Documentation
811
+ #
812
+ class ListRegistriesResponse < Struct.new(
813
+ :registries,
814
+ :next_token)
815
+ SENSITIVE = []
816
+ include Aws::Structure
817
+ end
818
+
819
+ # @!attribute [rw] registry_id
820
+ # The identifier of the registry to list records from (ARN or ID)
821
+ # @return [String]
822
+ #
823
+ # @!attribute [rw] max_results
824
+ # Maximum number of records to return
825
+ # @return [Integer]
826
+ #
827
+ # @!attribute [rw] next_token
828
+ # Token for pagination
829
+ # @return [String]
830
+ #
831
+ # @!attribute [rw] filters
832
+ # Filters to apply to the registry record list
833
+ # @return [Array<Types::RegistryRecordFilter>]
834
+ #
835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ListRegistryRecordsRequest AWS API Documentation
836
+ #
837
+ class ListRegistryRecordsRequest < Struct.new(
838
+ :registry_id,
839
+ :max_results,
840
+ :next_token,
841
+ :filters)
842
+ SENSITIVE = []
843
+ include Aws::Structure
844
+ end
845
+
846
+ # Response structure for listing registry records
847
+ #
848
+ # @!attribute [rw] registry_records
849
+ # List of registry record summaries
850
+ # @return [Array<Types::RegistryRecordSummary>]
851
+ #
852
+ # @!attribute [rw] next_token
853
+ # Token for next page of results
854
+ # @return [String]
855
+ #
856
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ListRegistryRecordsResponse AWS API Documentation
857
+ #
858
+ class ListRegistryRecordsResponse < Struct.new(
859
+ :registry_records,
860
+ :next_token)
861
+ SENSITIVE = []
862
+ include Aws::Structure
863
+ end
864
+
865
+ # @!attribute [rw] resource_arn
866
+ # ARN of a taggable Agent Registry resource.
867
+ # @return [String]
868
+ #
869
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ListTagsForResourceRequest AWS API Documentation
870
+ #
871
+ class ListTagsForResourceRequest < Struct.new(
872
+ :resource_arn)
873
+ SENSITIVE = []
874
+ include Aws::Structure
875
+ end
876
+
877
+ # @!attribute [rw] tags
878
+ # A map of tag keys to tag values returned by read operations (may be
879
+ # empty).
880
+ # @return [Hash<String,String>]
881
+ #
882
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ListTagsForResourceResponse AWS API Documentation
883
+ #
884
+ class ListTagsForResourceResponse < Struct.new(
885
+ :tags)
886
+ SENSITIVE = []
887
+ include Aws::Structure
888
+ end
889
+
890
+ # A service-managed private endpoint provisioned within a customer VPC.
891
+ #
892
+ # @!attribute [rw] vpc_identifier
893
+ # The identifier of the VPC in which the private endpoint is
894
+ # provisioned.
895
+ # @return [String]
896
+ #
897
+ # @!attribute [rw] subnet_ids
898
+ # The identifiers of the subnets in which the private endpoint network
899
+ # interfaces are placed.
900
+ # @return [Array<String>]
901
+ #
902
+ # @!attribute [rw] endpoint_ip_address_type
903
+ # The IP address type used by the private endpoint, either IPV4 or
904
+ # IPV6.
905
+ # @return [String]
906
+ #
907
+ # @!attribute [rw] security_group_ids
908
+ # The identifiers of the security groups associated with the private
909
+ # endpoint network interfaces.
910
+ # @return [Array<String>]
911
+ #
912
+ # @!attribute [rw] tags
913
+ # A map of tag keys to tag values.
914
+ # @return [Hash<String,String>]
915
+ #
916
+ # @!attribute [rw] routing_domain
917
+ # The routing domain used to resolve traffic through the private
918
+ # endpoint.
919
+ # @return [String]
920
+ #
921
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ManagedVpcResource AWS API Documentation
922
+ #
923
+ class ManagedVpcResource < Struct.new(
924
+ :vpc_identifier,
925
+ :subnet_ids,
926
+ :endpoint_ip_address_type,
927
+ :security_group_ids,
928
+ :tags,
929
+ :routing_domain)
930
+ SENSITIVE = []
931
+ include Aws::Structure
932
+ end
933
+
934
+ # Additional data for an MCP server descriptor
935
+ #
936
+ # @!attribute [rw] tools
937
+ # MCP tools descriptor containing tool definitions
938
+ # @return [Types::McpToolsDescriptor]
939
+ #
940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/McpServerAdditionalData AWS API Documentation
941
+ #
942
+ class McpServerAdditionalData < Struct.new(
943
+ :tools)
944
+ SENSITIVE = []
945
+ include Aws::Structure
946
+ end
947
+
948
+ # Descriptor that defines the content of an MCP (Model Context Protocol)
949
+ # server registry record, including the server definition and its tool
950
+ # definitions. The content is validated against the MCP protocol schema.
951
+ #
952
+ # @!attribute [rw] data
953
+ # The MCP server descriptor content, serialized as descriptor payload
954
+ # data.
955
+ # @return [String]
956
+ #
957
+ # @!attribute [rw] data_schema_version
958
+ # The schema version of the descriptor payload.
959
+ # @return [String]
960
+ #
961
+ # @!attribute [rw] additional_data
962
+ # Additional data associated with the MCP server descriptor, such as
963
+ # tool definitions.
964
+ # @return [Types::McpServerAdditionalData]
965
+ #
966
+ # @!attribute [rw] source
967
+ # The optional source configuration used to synchronize the MCP server
968
+ # descriptor content.
969
+ # @return [Types::DescriptorSource]
970
+ #
971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/McpServerDescriptor AWS API Documentation
972
+ #
973
+ class McpServerDescriptor < Struct.new(
974
+ :data,
975
+ :data_schema_version,
976
+ :additional_data,
977
+ :source)
978
+ SENSITIVE = [:data]
979
+ include Aws::Structure
980
+ end
981
+
982
+ # MCP tools descriptor containing tool definitions
983
+ #
984
+ # @!attribute [rw] data
985
+ # Descriptor payload data
986
+ # @return [String]
987
+ #
988
+ # @!attribute [rw] data_schema_version
989
+ # Version of the descriptor type schema
990
+ # @return [String]
991
+ #
992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/McpToolsDescriptor AWS API Documentation
993
+ #
994
+ class McpToolsDescriptor < Struct.new(
995
+ :data,
996
+ :data_schema_version)
997
+ SENSITIVE = [:data]
998
+ include Aws::Structure
999
+ end
1000
+
1001
+ # A private network endpoint used to reach a resource over a private
1002
+ # path. Exactly one member is set.
1003
+ #
1004
+ # @note PrivateEndpoint is a union - when making an API calls you must set exactly one of the members.
1005
+ #
1006
+ # @note PrivateEndpoint is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of PrivateEndpoint corresponding to the set member.
1007
+ #
1008
+ # @!attribute [rw] self_managed_lattice_resource
1009
+ # A private endpoint backed by a self-managed VPC Lattice resource
1010
+ # configuration.
1011
+ # @return [Types::SelfManagedLatticeResource]
1012
+ #
1013
+ # @!attribute [rw] managed_vpc_resource
1014
+ # A private endpoint backed by a service-managed VPC resource.
1015
+ # @return [Types::ManagedVpcResource]
1016
+ #
1017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/PrivateEndpoint AWS API Documentation
1018
+ #
1019
+ class PrivateEndpoint < Struct.new(
1020
+ :self_managed_lattice_resource,
1021
+ :managed_vpc_resource,
1022
+ :unknown)
1023
+ SENSITIVE = []
1024
+ include Aws::Structure
1025
+ include Aws::Structure::Union
1026
+
1027
+ class SelfManagedLatticeResource < PrivateEndpoint; end
1028
+ class ManagedVpcResource < PrivateEndpoint; end
1029
+ class Unknown < PrivateEndpoint; end
1030
+ end
1031
+
1032
+ # A mapping of a domain to the private endpoint used to reach it.
1033
+ #
1034
+ # @!attribute [rw] domain
1035
+ # The domain name to which this private endpoint override applies.
1036
+ # @return [String]
1037
+ #
1038
+ # @!attribute [rw] private_endpoint
1039
+ # The private endpoint used to reach the specified domain.
1040
+ # @return [Types::PrivateEndpoint]
1041
+ #
1042
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/PrivateEndpointOverride AWS API Documentation
1043
+ #
1044
+ class PrivateEndpointOverride < Struct.new(
1045
+ :domain,
1046
+ :private_endpoint)
1047
+ SENSITIVE = []
1048
+ include Aws::Structure
1049
+ end
1050
+
1051
+ # A single filter applied to a ListRegistries request.
1052
+ #
1053
+ # @!attribute [rw] name
1054
+ # The attribute to filter on
1055
+ # @return [String]
1056
+ #
1057
+ # @!attribute [rw] values
1058
+ # The values to match for the attribute
1059
+ # @return [Array<String>]
1060
+ #
1061
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistryFilter AWS API Documentation
1062
+ #
1063
+ class RegistryFilter < Struct.new(
1064
+ :name,
1065
+ :values)
1066
+ SENSITIVE = []
1067
+ include Aws::Structure
1068
+ end
1069
+
1070
+ # A credential provider configuration that specifies how to authenticate
1071
+ # when fetching descriptor content from a registry record's source URL.
1072
+ #
1073
+ # @!attribute [rw] credential_provider_type
1074
+ # The type of credential provider.
1075
+ # @return [String]
1076
+ #
1077
+ # @!attribute [rw] credential_provider
1078
+ # The credential provider details corresponding to the specified
1079
+ # credential provider type.
1080
+ # @return [Types::RegistryRecordCredentialProviderUnion]
1081
+ #
1082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistryRecordCredentialProviderConfiguration AWS API Documentation
1083
+ #
1084
+ class RegistryRecordCredentialProviderConfiguration < Struct.new(
1085
+ :credential_provider_type,
1086
+ :credential_provider)
1087
+ SENSITIVE = []
1088
+ include Aws::Structure
1089
+ end
1090
+
1091
+ # The credential provider details for a registry record. Exactly one
1092
+ # member is populated, matching the configured credential provider type.
1093
+ #
1094
+ # @note RegistryRecordCredentialProviderUnion is a union - when making an API calls you must set exactly one of the members.
1095
+ #
1096
+ # @note RegistryRecordCredentialProviderUnion is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of RegistryRecordCredentialProviderUnion corresponding to the set member.
1097
+ #
1098
+ # @!attribute [rw] oauth_credential_provider
1099
+ # The OAuth 2.0 credential provider details.
1100
+ # @return [Types::RegistryRecordOAuthCredentialProvider]
1101
+ #
1102
+ # @!attribute [rw] iam_credential_provider
1103
+ # The IAM role credential provider details.
1104
+ # @return [Types::RegistryRecordIamCredentialProvider]
1105
+ #
1106
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistryRecordCredentialProviderUnion AWS API Documentation
1107
+ #
1108
+ class RegistryRecordCredentialProviderUnion < Struct.new(
1109
+ :oauth_credential_provider,
1110
+ :iam_credential_provider,
1111
+ :unknown)
1112
+ SENSITIVE = []
1113
+ include Aws::Structure
1114
+ include Aws::Structure::Union
1115
+
1116
+ class OauthCredentialProvider < RegistryRecordCredentialProviderUnion; end
1117
+ class IamCredentialProvider < RegistryRecordCredentialProviderUnion; end
1118
+ class Unknown < RegistryRecordCredentialProviderUnion; end
1119
+ end
1120
+
1121
+ # A single filter applied to a ListRegistryRecords request.
1122
+ #
1123
+ # @!attribute [rw] name
1124
+ # The attribute to filter on
1125
+ # @return [String]
1126
+ #
1127
+ # @!attribute [rw] values
1128
+ # The values to match for the attribute
1129
+ # @return [Array<String>]
1130
+ #
1131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistryRecordFilter AWS API Documentation
1132
+ #
1133
+ class RegistryRecordFilter < Struct.new(
1134
+ :name,
1135
+ :values)
1136
+ SENSITIVE = []
1137
+ include Aws::Structure
1138
+ end
1139
+
1140
+ # The configuration for an IAM role credential provider that signs
1141
+ # requests to a registry record's source with AWS Signature Version 4
1142
+ # (SigV4).
1143
+ #
1144
+ # @!attribute [rw] role_arn
1145
+ # The &amp;ARN; of the IAM role to assume for request signing.
1146
+ # @return [String]
1147
+ #
1148
+ # @!attribute [rw] service
1149
+ # The service name to use for request signing, such as execute-api.
1150
+ # @return [String]
1151
+ #
1152
+ # @!attribute [rw] region
1153
+ # The AWS Region to use for request signing. If not specified, the
1154
+ # Region is derived from the source URL hostname, falling back to the
1155
+ # Region of the registry.
1156
+ # @return [String]
1157
+ #
1158
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistryRecordIamCredentialProvider AWS API Documentation
1159
+ #
1160
+ class RegistryRecordIamCredentialProvider < Struct.new(
1161
+ :role_arn,
1162
+ :service,
1163
+ :region)
1164
+ SENSITIVE = []
1165
+ include Aws::Structure
1166
+ end
1167
+
1168
+ # The configuration for an OAuth 2.0 credential provider that
1169
+ # authenticates requests to a registry record's source.
1170
+ #
1171
+ # @!attribute [rw] provider_arn
1172
+ # The &amp;ARN; of the OAuth 2.0 credential provider resource in
1173
+ # Amazon Bedrock AgentCore Identity.
1174
+ # @return [String]
1175
+ #
1176
+ # @!attribute [rw] grant_type
1177
+ # The OAuth 2.0 grant type used to obtain access tokens.
1178
+ # @return [String]
1179
+ #
1180
+ # @!attribute [rw] scopes
1181
+ # The OAuth 2.0 scopes to request when obtaining access tokens.
1182
+ # @return [Array<String>]
1183
+ #
1184
+ # @!attribute [rw] custom_parameters
1185
+ # Additional parameters to include in the OAuth 2.0 token request.
1186
+ # @return [Hash<String,String>]
1187
+ #
1188
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistryRecordOAuthCredentialProvider AWS API Documentation
1189
+ #
1190
+ class RegistryRecordOAuthCredentialProvider < Struct.new(
1191
+ :provider_arn,
1192
+ :grant_type,
1193
+ :scopes,
1194
+ :custom_parameters)
1195
+ SENSITIVE = []
1196
+ include Aws::Structure
1197
+ end
1198
+
1199
+ # A summary of a registry record returned by list operations. Contains
1200
+ # identifying and lifecycle fields but omits descriptor content.
1201
+ #
1202
+ # @!attribute [rw] registry_arn
1203
+ # The &amp;ARN; of the parent registry that owns the record.
1204
+ # @return [String]
1205
+ #
1206
+ # @!attribute [rw] record_arn
1207
+ # The &amp;ARN; of the registry record.
1208
+ # @return [String]
1209
+ #
1210
+ # @!attribute [rw] record_id
1211
+ # The unique identifier of the registry record.
1212
+ # @return [String]
1213
+ #
1214
+ # @!attribute [rw] name
1215
+ # The name of the registry record. Names are unique within a registry.
1216
+ # @return [String]
1217
+ #
1218
+ # @!attribute [rw] display_name
1219
+ # The human-readable display name of the registry record.
1220
+ # @return [String]
1221
+ #
1222
+ # @!attribute [rw] description
1223
+ # A description of the registry record.
1224
+ # @return [String]
1225
+ #
1226
+ # @!attribute [rw] record_type
1227
+ # The type of the registry record, such as MCP, AGENT, SKILL, or
1228
+ # CUSTOM.
1229
+ # @return [String]
1230
+ #
1231
+ # @!attribute [rw] record_version
1232
+ # The version identifier of the registry record.
1233
+ # @return [String]
1234
+ #
1235
+ # @!attribute [rw] status
1236
+ # The lifecycle status of the registry record.
1237
+ # @return [String]
1238
+ #
1239
+ # @!attribute [rw] created_at
1240
+ # The timestamp when the registry record was created.
1241
+ # @return [Time]
1242
+ #
1243
+ # @!attribute [rw] updated_at
1244
+ # The timestamp when the registry record was last updated.
1245
+ # @return [Time]
1246
+ #
1247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistryRecordSummary AWS API Documentation
1248
+ #
1249
+ class RegistryRecordSummary < Struct.new(
1250
+ :registry_arn,
1251
+ :record_arn,
1252
+ :record_id,
1253
+ :name,
1254
+ :display_name,
1255
+ :description,
1256
+ :record_type,
1257
+ :record_version,
1258
+ :status,
1259
+ :created_at,
1260
+ :updated_at)
1261
+ SENSITIVE = [:description]
1262
+ include Aws::Structure
1263
+ end
1264
+
1265
+ # Registry summary for list operations
1266
+ #
1267
+ # @!attribute [rw] name
1268
+ # Registry name
1269
+ # @return [String]
1270
+ #
1271
+ # @!attribute [rw] description
1272
+ # Registry description
1273
+ # @return [String]
1274
+ #
1275
+ # @!attribute [rw] registry_id
1276
+ # Unique registry identifier
1277
+ # @return [String]
1278
+ #
1279
+ # @!attribute [rw] registry_arn
1280
+ # Registry Amazon Resource Name
1281
+ # @return [String]
1282
+ #
1283
+ # @!attribute [rw] discovery_configuration
1284
+ # Discovery configuration for the registry
1285
+ # @return [Types::DiscoveryConfiguration]
1286
+ #
1287
+ # @!attribute [rw] status
1288
+ # Current status of the registry
1289
+ # @return [String]
1290
+ #
1291
+ # @!attribute [rw] status_reason
1292
+ # The reason for the current status. Typically populated when the
1293
+ # status indicates a failure state.
1294
+ # @return [String]
1295
+ #
1296
+ # @!attribute [rw] created_at
1297
+ # The timestamp when the registry was created
1298
+ # @return [Time]
1299
+ #
1300
+ # @!attribute [rw] updated_at
1301
+ # The timestamp when the registry was last updated
1302
+ # @return [Time]
1303
+ #
1304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/RegistrySummary AWS API Documentation
1305
+ #
1306
+ class RegistrySummary < Struct.new(
1307
+ :name,
1308
+ :description,
1309
+ :registry_id,
1310
+ :registry_arn,
1311
+ :discovery_configuration,
1312
+ :status,
1313
+ :status_reason,
1314
+ :created_at,
1315
+ :updated_at)
1316
+ SENSITIVE = [:description]
1317
+ include Aws::Structure
1318
+ end
1319
+
1320
+ # The requested resource was not found.
1321
+ #
1322
+ # @!attribute [rw] message
1323
+ # @return [String]
1324
+ #
1325
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ResourceNotFoundException AWS API Documentation
1326
+ #
1327
+ class ResourceNotFoundException < Struct.new(
1328
+ :message)
1329
+ SENSITIVE = []
1330
+ include Aws::Structure
1331
+ end
1332
+
1333
+ # A self-managed private endpoint backed by a VPC Lattice resource
1334
+ # configuration. Exactly one member is set.
1335
+ #
1336
+ # @note SelfManagedLatticeResource is a union - when making an API calls you must set exactly one of the members.
1337
+ #
1338
+ # @note SelfManagedLatticeResource is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of SelfManagedLatticeResource corresponding to the set member.
1339
+ #
1340
+ # @!attribute [rw] resource_configuration_identifier
1341
+ # The identifier of the VPC Lattice resource configuration, specified
1342
+ # as a resource configuration ID or ARN.
1343
+ # @return [String]
1344
+ #
1345
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/SelfManagedLatticeResource AWS API Documentation
1346
+ #
1347
+ class SelfManagedLatticeResource < Struct.new(
1348
+ :resource_configuration_identifier,
1349
+ :unknown)
1350
+ SENSITIVE = []
1351
+ include Aws::Structure
1352
+ include Aws::Structure::Union
1353
+
1354
+ class ResourceConfigurationIdentifier < SelfManagedLatticeResource; end
1355
+ class Unknown < SelfManagedLatticeResource; end
1356
+ end
1357
+
1358
+ # The request would exceed a service quota.
1359
+ #
1360
+ # @!attribute [rw] message
1361
+ # @return [String]
1362
+ #
1363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ServiceQuotaExceededException AWS API Documentation
1364
+ #
1365
+ class ServiceQuotaExceededException < Struct.new(
1366
+ :message)
1367
+ SENSITIVE = []
1368
+ include Aws::Structure
1369
+ end
1370
+
1371
+ # @!attribute [rw] registry_id
1372
+ # The identifier of the registry containing the record (ARN or ID)
1373
+ # @return [String]
1374
+ #
1375
+ # @!attribute [rw] record_id
1376
+ # The identifier of the registry record to submit for approval (ARN or
1377
+ # ID)
1378
+ # @return [String]
1379
+ #
1380
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/SubmitRegistryRecordForApprovalRequest AWS API Documentation
1381
+ #
1382
+ class SubmitRegistryRecordForApprovalRequest < Struct.new(
1383
+ :registry_id,
1384
+ :record_id)
1385
+ SENSITIVE = []
1386
+ include Aws::Structure
1387
+ end
1388
+
1389
+ # Response structure for submitting a registry record for approval
1390
+ #
1391
+ # @!attribute [rw] registry_arn
1392
+ # The ARN of the registry
1393
+ # @return [String]
1394
+ #
1395
+ # @!attribute [rw] record_arn
1396
+ # The ARN of the registry record
1397
+ # @return [String]
1398
+ #
1399
+ # @!attribute [rw] record_id
1400
+ # The ID of the registry record
1401
+ # @return [String]
1402
+ #
1403
+ # @!attribute [rw] status
1404
+ # The resulting status of the registry record
1405
+ # @return [String]
1406
+ #
1407
+ # @!attribute [rw] updated_at
1408
+ # The timestamp when the record was last updated
1409
+ # @return [Time]
1410
+ #
1411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/SubmitRegistryRecordForApprovalResponse AWS API Documentation
1412
+ #
1413
+ class SubmitRegistryRecordForApprovalResponse < Struct.new(
1414
+ :registry_arn,
1415
+ :record_arn,
1416
+ :record_id,
1417
+ :status,
1418
+ :updated_at)
1419
+ SENSITIVE = []
1420
+ include Aws::Structure
1421
+ end
1422
+
1423
+ # @!attribute [rw] resource_arn
1424
+ # ARN of a taggable Agent Registry resource.
1425
+ # @return [String]
1426
+ #
1427
+ # @!attribute [rw] tags
1428
+ # A map of tag keys to tag values.
1429
+ # @return [Hash<String,String>]
1430
+ #
1431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/TagResourceRequest AWS API Documentation
1432
+ #
1433
+ class TagResourceRequest < Struct.new(
1434
+ :resource_arn,
1435
+ :tags)
1436
+ SENSITIVE = []
1437
+ include Aws::Structure
1438
+ end
1439
+
1440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/TagResourceResponse AWS API Documentation
1441
+ #
1442
+ class TagResourceResponse < Aws::EmptyStructure; end
1443
+
1444
+ # The request was denied due to request throttling; the caller may retry
1445
+ # after a delay.
1446
+ #
1447
+ # @!attribute [rw] message
1448
+ # @return [String]
1449
+ #
1450
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ThrottlingException AWS API Documentation
1451
+ #
1452
+ class ThrottlingException < Struct.new(
1453
+ :message)
1454
+ SENSITIVE = []
1455
+ include Aws::Structure
1456
+ end
1457
+
1458
+ # @!attribute [rw] resource_arn
1459
+ # ARN of a taggable Agent Registry resource.
1460
+ # @return [String]
1461
+ #
1462
+ # @!attribute [rw] tag_keys
1463
+ # A list of tag keys.
1464
+ # @return [Array<String>]
1465
+ #
1466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UntagResourceRequest AWS API Documentation
1467
+ #
1468
+ class UntagResourceRequest < Struct.new(
1469
+ :resource_arn,
1470
+ :tag_keys)
1471
+ SENSITIVE = []
1472
+ include Aws::Structure
1473
+ end
1474
+
1475
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UntagResourceResponse AWS API Documentation
1476
+ #
1477
+ class UntagResourceResponse < Aws::EmptyStructure; end
1478
+
1479
+ # @!attribute [rw] registry_id
1480
+ # The identifier of the registry containing the record (ARN or ID)
1481
+ # @return [String]
1482
+ #
1483
+ # @!attribute [rw] record_id
1484
+ # The identifier of the registry record to update (ARN or ID)
1485
+ # @return [String]
1486
+ #
1487
+ # @!attribute [rw] name
1488
+ # The updated name of the registry record. Omit to leave the name
1489
+ # unchanged.
1490
+ # @return [String]
1491
+ #
1492
+ # @!attribute [rw] display_name
1493
+ # The updated display name of the registry record. Omit to leave the
1494
+ # display name unchanged; provide an empty wrapper to unset it.
1495
+ # @return [Types::UpdatedDisplayName]
1496
+ #
1497
+ # @!attribute [rw] description
1498
+ # The updated description of the registry record. Omit to leave the
1499
+ # description unchanged; provide an empty wrapper to unset it.
1500
+ # @return [Types::UpdatedDescription]
1501
+ #
1502
+ # @!attribute [rw] record_type
1503
+ # The updated type of the registry record. Omit to leave the record
1504
+ # type unchanged.
1505
+ # @return [String]
1506
+ #
1507
+ # @!attribute [rw] descriptors
1508
+ # The updated typed descriptor content for the registry record. Omit
1509
+ # to leave the descriptors unchanged.
1510
+ # @return [Types::UpdatedDescriptors]
1511
+ #
1512
+ # @!attribute [rw] record_version
1513
+ # The updated version of the registry record. Omit to leave the
1514
+ # version unchanged.
1515
+ # @return [String]
1516
+ #
1517
+ # @!attribute [rw] trigger_synchronization
1518
+ # Whether to trigger synchronization of the record's descriptor
1519
+ # content from its source
1520
+ # @return [Boolean]
1521
+ #
1522
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdateRegistryRecordRequest AWS API Documentation
1523
+ #
1524
+ class UpdateRegistryRecordRequest < Struct.new(
1525
+ :registry_id,
1526
+ :record_id,
1527
+ :name,
1528
+ :display_name,
1529
+ :description,
1530
+ :record_type,
1531
+ :descriptors,
1532
+ :record_version,
1533
+ :trigger_synchronization)
1534
+ SENSITIVE = []
1535
+ include Aws::Structure
1536
+ end
1537
+
1538
+ # Response structure for updating a registry record
1539
+ #
1540
+ # @!attribute [rw] registry_arn
1541
+ # The &amp;ARN; of the parent registry that owns the record.
1542
+ # @return [String]
1543
+ #
1544
+ # @!attribute [rw] record_arn
1545
+ # The &amp;ARN; of the registry record.
1546
+ # @return [String]
1547
+ #
1548
+ # @!attribute [rw] record_id
1549
+ # The unique identifier of the registry record.
1550
+ # @return [String]
1551
+ #
1552
+ # @!attribute [rw] name
1553
+ # The name of the registry record. Names are unique within a registry.
1554
+ # @return [String]
1555
+ #
1556
+ # @!attribute [rw] display_name
1557
+ # The human-readable display name of the registry record.
1558
+ # @return [String]
1559
+ #
1560
+ # @!attribute [rw] description
1561
+ # A description of the registry record.
1562
+ # @return [String]
1563
+ #
1564
+ # @!attribute [rw] record_type
1565
+ # The type of the registry record, such as MCP, AGENT, SKILL, or
1566
+ # CUSTOM.
1567
+ # @return [String]
1568
+ #
1569
+ # @!attribute [rw] descriptors
1570
+ # The typed descriptors that define the content of the registry
1571
+ # record.
1572
+ # @return [Types::Descriptors]
1573
+ #
1574
+ # @!attribute [rw] record_version
1575
+ # The version identifier of the registry record.
1576
+ # @return [String]
1577
+ #
1578
+ # @!attribute [rw] status
1579
+ # The lifecycle status of the registry record.
1580
+ # @return [String]
1581
+ #
1582
+ # @!attribute [rw] created_at
1583
+ # The timestamp when the registry record was created.
1584
+ # @return [Time]
1585
+ #
1586
+ # @!attribute [rw] updated_at
1587
+ # The timestamp when the registry record was last updated.
1588
+ # @return [Time]
1589
+ #
1590
+ # @!attribute [rw] status_reason
1591
+ # The reason for the current status. Typically populated when the
1592
+ # status indicates a failure state.
1593
+ # @return [String]
1594
+ #
1595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdateRegistryRecordResponse AWS API Documentation
1596
+ #
1597
+ class UpdateRegistryRecordResponse < Struct.new(
1598
+ :registry_arn,
1599
+ :record_arn,
1600
+ :record_id,
1601
+ :name,
1602
+ :display_name,
1603
+ :description,
1604
+ :record_type,
1605
+ :descriptors,
1606
+ :record_version,
1607
+ :status,
1608
+ :created_at,
1609
+ :updated_at,
1610
+ :status_reason)
1611
+ SENSITIVE = [:description]
1612
+ include Aws::Structure
1613
+ end
1614
+
1615
+ # @!attribute [rw] registry_id
1616
+ # The identifier of the registry containing the record (ARN or ID)
1617
+ # @return [String]
1618
+ #
1619
+ # @!attribute [rw] record_id
1620
+ # The identifier of the registry record to update the status of (ARN
1621
+ # or ID)
1622
+ # @return [String]
1623
+ #
1624
+ # @!attribute [rw] status
1625
+ # The target status for the registry record
1626
+ # @return [String]
1627
+ #
1628
+ # @!attribute [rw] status_reason
1629
+ # The reason for the status change, for example why the record was
1630
+ # approved, rejected, or deprecated
1631
+ # @return [String]
1632
+ #
1633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdateRegistryRecordStatusRequest AWS API Documentation
1634
+ #
1635
+ class UpdateRegistryRecordStatusRequest < Struct.new(
1636
+ :registry_id,
1637
+ :record_id,
1638
+ :status,
1639
+ :status_reason)
1640
+ SENSITIVE = []
1641
+ include Aws::Structure
1642
+ end
1643
+
1644
+ # Response structure for updating a registry record status
1645
+ #
1646
+ # @!attribute [rw] registry_arn
1647
+ # The ARN of the registry
1648
+ # @return [String]
1649
+ #
1650
+ # @!attribute [rw] record_arn
1651
+ # The ARN of the registry record
1652
+ # @return [String]
1653
+ #
1654
+ # @!attribute [rw] record_id
1655
+ # The ID of the registry record
1656
+ # @return [String]
1657
+ #
1658
+ # @!attribute [rw] status
1659
+ # The resulting status of the registry record
1660
+ # @return [String]
1661
+ #
1662
+ # @!attribute [rw] status_reason
1663
+ # The reason for the status change
1664
+ # @return [String]
1665
+ #
1666
+ # @!attribute [rw] updated_at
1667
+ # The timestamp when the record was last updated
1668
+ # @return [Time]
1669
+ #
1670
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdateRegistryRecordStatusResponse AWS API Documentation
1671
+ #
1672
+ class UpdateRegistryRecordStatusResponse < Struct.new(
1673
+ :registry_arn,
1674
+ :record_arn,
1675
+ :record_id,
1676
+ :status,
1677
+ :status_reason,
1678
+ :updated_at)
1679
+ SENSITIVE = []
1680
+ include Aws::Structure
1681
+ end
1682
+
1683
+ # Request structure for updating a registry
1684
+ #
1685
+ # @!attribute [rw] registry_id
1686
+ # The identifier of the registry to update (ARN or ID)
1687
+ # @return [String]
1688
+ #
1689
+ # @!attribute [rw] name
1690
+ # The updated name of the registry
1691
+ # @return [String]
1692
+ #
1693
+ # @!attribute [rw] description
1694
+ # The updated description of the registry
1695
+ # @return [Types::UpdatedDescription]
1696
+ #
1697
+ # @!attribute [rw] discovery_configuration
1698
+ # The updated discovery configuration. Changing the discovery
1699
+ # authorization can break existing consumers that rely on the previous
1700
+ # authorization type.
1701
+ # @return [Types::UpdatedDiscoveryConfiguration]
1702
+ #
1703
+ # @!attribute [rw] approval_configuration
1704
+ # The updated approval configuration. The change applies only to
1705
+ # records that move to PENDING\_APPROVAL after the update; records
1706
+ # already in PENDING\_APPROVAL are unaffected.
1707
+ # @return [Types::UpdatedApprovalConfiguration]
1708
+ #
1709
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdateRegistryRequest AWS API Documentation
1710
+ #
1711
+ class UpdateRegistryRequest < Struct.new(
1712
+ :registry_id,
1713
+ :name,
1714
+ :description,
1715
+ :discovery_configuration,
1716
+ :approval_configuration)
1717
+ SENSITIVE = []
1718
+ include Aws::Structure
1719
+ end
1720
+
1721
+ # Response structure for updating a registry
1722
+ #
1723
+ # @!attribute [rw] name
1724
+ # The name of the registry
1725
+ # @return [String]
1726
+ #
1727
+ # @!attribute [rw] description
1728
+ # The description of the registry
1729
+ # @return [String]
1730
+ #
1731
+ # @!attribute [rw] registry_id
1732
+ # The unique identifier of the registry
1733
+ # @return [String]
1734
+ #
1735
+ # @!attribute [rw] registry_arn
1736
+ # The ARN of the registry
1737
+ # @return [String]
1738
+ #
1739
+ # @!attribute [rw] discovery_configuration
1740
+ # Discovery configuration for the registry
1741
+ # @return [Types::DiscoveryConfiguration]
1742
+ #
1743
+ # @!attribute [rw] approval_configuration
1744
+ # Approval configuration for registry records
1745
+ # @return [Types::ApprovalConfiguration]
1746
+ #
1747
+ # @!attribute [rw] status
1748
+ # Current status of the registry
1749
+ # @return [String]
1750
+ #
1751
+ # @!attribute [rw] status_reason
1752
+ # The reason for the current status. Typically populated when the
1753
+ # status indicates a failure state.
1754
+ # @return [String]
1755
+ #
1756
+ # @!attribute [rw] created_at
1757
+ # The timestamp when the registry was created
1758
+ # @return [Time]
1759
+ #
1760
+ # @!attribute [rw] updated_at
1761
+ # The timestamp when the registry was last updated
1762
+ # @return [Time]
1763
+ #
1764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdateRegistryResponse AWS API Documentation
1765
+ #
1766
+ class UpdateRegistryResponse < Struct.new(
1767
+ :name,
1768
+ :description,
1769
+ :registry_id,
1770
+ :registry_arn,
1771
+ :discovery_configuration,
1772
+ :approval_configuration,
1773
+ :status,
1774
+ :status_reason,
1775
+ :created_at,
1776
+ :updated_at)
1777
+ SENSITIVE = [:description]
1778
+ include Aws::Structure
1779
+ end
1780
+
1781
+ # The A2A agent card descriptor patch wrapper. Omit to leave the
1782
+ # descriptor unchanged; supply an empty object to remove it; supply
1783
+ # optionalValue to patch its fields.
1784
+ #
1785
+ # @!attribute [rw] optional_value
1786
+ # The value to set for this field. Omit the wrapper to leave the field
1787
+ # unchanged.
1788
+ # @return [Types::UpdatedA2aAgentCardDescriptorFields]
1789
+ #
1790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedA2aAgentCardDescriptor AWS API Documentation
1791
+ #
1792
+ class UpdatedA2aAgentCardDescriptor < Struct.new(
1793
+ :optional_value)
1794
+ SENSITIVE = []
1795
+ include Aws::Structure
1796
+ end
1797
+
1798
+ # The set of A2A agent card descriptor fields that can be individually
1799
+ # updated.
1800
+ #
1801
+ # @!attribute [rw] data
1802
+ # The patch for the descriptor's data field.
1803
+ # @return [Types::UpdatedDescriptorData]
1804
+ #
1805
+ # @!attribute [rw] data_schema_version
1806
+ # The patch for the descriptor's data schema version field.
1807
+ # @return [Types::UpdatedDataSchemaVersion]
1808
+ #
1809
+ # @!attribute [rw] source
1810
+ # The patch for the descriptor's source field.
1811
+ # @return [Types::UpdatedDescriptorSource]
1812
+ #
1813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedA2aAgentCardDescriptorFields AWS API Documentation
1814
+ #
1815
+ class UpdatedA2aAgentCardDescriptorFields < Struct.new(
1816
+ :data,
1817
+ :data_schema_version,
1818
+ :source)
1819
+ SENSITIVE = []
1820
+ include Aws::Structure
1821
+ end
1822
+
1823
+ # The agent skills additional-data patch wrapper. Omit to leave the
1824
+ # additional data unchanged; supply an empty object to remove it; supply
1825
+ # optionalValue to patch its fields.
1826
+ #
1827
+ # @!attribute [rw] optional_value
1828
+ # The value to set for this field. Omit the wrapper to leave the field
1829
+ # unchanged.
1830
+ # @return [Types::UpdatedAgentSkillsAdditionalDataFields]
1831
+ #
1832
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedAgentSkillsAdditionalData AWS API Documentation
1833
+ #
1834
+ class UpdatedAgentSkillsAdditionalData < Struct.new(
1835
+ :optional_value)
1836
+ SENSITIVE = []
1837
+ include Aws::Structure
1838
+ end
1839
+
1840
+ # The set of agent skills additional-data fields that can be
1841
+ # individually updated.
1842
+ #
1843
+ # @!attribute [rw] skill_md
1844
+ # The patch for the agent skills markdown descriptor field.
1845
+ # @return [Types::UpdatedAgentSkillsMdDescriptor]
1846
+ #
1847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedAgentSkillsAdditionalDataFields AWS API Documentation
1848
+ #
1849
+ class UpdatedAgentSkillsAdditionalDataFields < Struct.new(
1850
+ :skill_md)
1851
+ SENSITIVE = []
1852
+ include Aws::Structure
1853
+ end
1854
+
1855
+ # The agent skills definition descriptor patch wrapper. Omit to leave
1856
+ # the descriptor unchanged; supply an empty object to remove it; supply
1857
+ # optionalValue to patch its fields.
1858
+ #
1859
+ # @!attribute [rw] optional_value
1860
+ # The value to set for this field. Omit the wrapper to leave the field
1861
+ # unchanged.
1862
+ # @return [Types::UpdatedAgentSkillsDefinitionDescriptorFields]
1863
+ #
1864
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedAgentSkillsDefinitionDescriptor AWS API Documentation
1865
+ #
1866
+ class UpdatedAgentSkillsDefinitionDescriptor < Struct.new(
1867
+ :optional_value)
1868
+ SENSITIVE = []
1869
+ include Aws::Structure
1870
+ end
1871
+
1872
+ # The set of agent skills definition descriptor fields that can be
1873
+ # individually updated.
1874
+ #
1875
+ # @!attribute [rw] data
1876
+ # The patch for the descriptor's data field.
1877
+ # @return [Types::UpdatedDescriptorData]
1878
+ #
1879
+ # @!attribute [rw] data_schema_version
1880
+ # The patch for the descriptor's data schema version field.
1881
+ # @return [Types::UpdatedDataSchemaVersion]
1882
+ #
1883
+ # @!attribute [rw] additional_data
1884
+ # The patch for the descriptor's additional data field.
1885
+ # @return [Types::UpdatedAgentSkillsAdditionalData]
1886
+ #
1887
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedAgentSkillsDefinitionDescriptorFields AWS API Documentation
1888
+ #
1889
+ class UpdatedAgentSkillsDefinitionDescriptorFields < Struct.new(
1890
+ :data,
1891
+ :data_schema_version,
1892
+ :additional_data)
1893
+ SENSITIVE = []
1894
+ include Aws::Structure
1895
+ end
1896
+
1897
+ # The agent skills markdown descriptor patch wrapper. Omit to leave the
1898
+ # descriptor unchanged; supply an empty object to remove it; supply
1899
+ # optionalValue to patch its fields.
1900
+ #
1901
+ # @!attribute [rw] optional_value
1902
+ # The value to set for this field. Omit the wrapper to leave the field
1903
+ # unchanged.
1904
+ # @return [Types::UpdatedAgentSkillsMdDescriptorFields]
1905
+ #
1906
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedAgentSkillsMdDescriptor AWS API Documentation
1907
+ #
1908
+ class UpdatedAgentSkillsMdDescriptor < Struct.new(
1909
+ :optional_value)
1910
+ SENSITIVE = []
1911
+ include Aws::Structure
1912
+ end
1913
+
1914
+ # The set of agent skills markdown descriptor fields that can be
1915
+ # individually updated.
1916
+ #
1917
+ # @!attribute [rw] data
1918
+ # The patch for the descriptor's data field.
1919
+ # @return [Types::UpdatedDescriptorData]
1920
+ #
1921
+ # @!attribute [rw] data_schema_version
1922
+ # The patch for the descriptor's data schema version field.
1923
+ # @return [Types::UpdatedDataSchemaVersion]
1924
+ #
1925
+ # @!attribute [rw] source
1926
+ # The patch for the descriptor's source field.
1927
+ # @return [Types::UpdatedDescriptorSource]
1928
+ #
1929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedAgentSkillsMdDescriptorFields AWS API Documentation
1930
+ #
1931
+ class UpdatedAgentSkillsMdDescriptorFields < Struct.new(
1932
+ :data,
1933
+ :data_schema_version,
1934
+ :source)
1935
+ SENSITIVE = []
1936
+ include Aws::Structure
1937
+ end
1938
+
1939
+ # A wrapper for updating the approval configuration of a registry.
1940
+ # Include this wrapper to replace the approval configuration with the
1941
+ # specified value; omit it to leave the approval configuration
1942
+ # unchanged.
1943
+ #
1944
+ # @!attribute [rw] optional_value
1945
+ # The value to set for this field. Omit the wrapper to leave the field
1946
+ # unchanged.
1947
+ # @return [Types::ApprovalConfiguration]
1948
+ #
1949
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedApprovalConfiguration AWS API Documentation
1950
+ #
1951
+ class UpdatedApprovalConfiguration < Struct.new(
1952
+ :optional_value)
1953
+ SENSITIVE = []
1954
+ include Aws::Structure
1955
+ end
1956
+
1957
+ # Wrapper for updating an optional authorizer configuration with PATCH
1958
+ # semantics.
1959
+ #
1960
+ # @!attribute [rw] optional_value
1961
+ # The new authorizer configuration to set. Omit to leave the existing
1962
+ # configuration unchanged.
1963
+ # @return [Types::AuthorizerConfiguration]
1964
+ #
1965
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedAuthorizerConfiguration AWS API Documentation
1966
+ #
1967
+ class UpdatedAuthorizerConfiguration < Struct.new(
1968
+ :optional_value)
1969
+ SENSITIVE = []
1970
+ include Aws::Structure
1971
+ end
1972
+
1973
+ # The custom descriptor patch wrapper. Omit to leave the descriptor
1974
+ # unchanged; supply an empty object to remove it; supply optionalValue
1975
+ # to patch its fields.
1976
+ #
1977
+ # @!attribute [rw] optional_value
1978
+ # The value to set for this field. Omit the wrapper to leave the field
1979
+ # unchanged.
1980
+ # @return [Types::UpdatedCustomDescriptorFields]
1981
+ #
1982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedCustomDescriptor AWS API Documentation
1983
+ #
1984
+ class UpdatedCustomDescriptor < Struct.new(
1985
+ :optional_value)
1986
+ SENSITIVE = []
1987
+ include Aws::Structure
1988
+ end
1989
+
1990
+ # The set of custom descriptor fields that can be individually updated.
1991
+ #
1992
+ # @!attribute [rw] data
1993
+ # The patch for the descriptor's data field.
1994
+ # @return [Types::UpdatedDescriptorData]
1995
+ #
1996
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedCustomDescriptorFields AWS API Documentation
1997
+ #
1998
+ class UpdatedCustomDescriptorFields < Struct.new(
1999
+ :data)
2000
+ SENSITIVE = []
2001
+ include Aws::Structure
2002
+ end
2003
+
2004
+ # Leaf patch wrapper for a descriptor's data schema version. Omit to
2005
+ # leave unchanged; supply an empty object to unset; supply optionalValue
2006
+ # to set.
2007
+ #
2008
+ # @!attribute [rw] optional_value
2009
+ # The value to set for this field. Omit the wrapper to leave the field
2010
+ # unchanged.
2011
+ # @return [String]
2012
+ #
2013
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDataSchemaVersion AWS API Documentation
2014
+ #
2015
+ class UpdatedDataSchemaVersion < Struct.new(
2016
+ :optional_value)
2017
+ SENSITIVE = []
2018
+ include Aws::Structure
2019
+ end
2020
+
2021
+ # Wrapper for updating an optional Description field with PATCH
2022
+ # semantics
2023
+ #
2024
+ # @!attribute [rw] optional_value
2025
+ # Description of the Resource
2026
+ # @return [String]
2027
+ #
2028
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDescription AWS API Documentation
2029
+ #
2030
+ class UpdatedDescription < Struct.new(
2031
+ :optional_value)
2032
+ SENSITIVE = [:optional_value]
2033
+ include Aws::Structure
2034
+ end
2035
+
2036
+ # Leaf patch wrapper for descriptor data. Omit to leave unchanged;
2037
+ # supply an empty object to unset; supply optionalValue to set.
2038
+ #
2039
+ # @!attribute [rw] optional_value
2040
+ # The value to set for this field. Omit the wrapper to leave the field
2041
+ # unchanged.
2042
+ # @return [String]
2043
+ #
2044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDescriptorData AWS API Documentation
2045
+ #
2046
+ class UpdatedDescriptorData < Struct.new(
2047
+ :optional_value)
2048
+ SENSITIVE = [:optional_value]
2049
+ include Aws::Structure
2050
+ end
2051
+
2052
+ # Leaf patch wrapper for a descriptor's source configuration. Omit to
2053
+ # leave unchanged; supply an empty object to unset; supply optionalValue
2054
+ # to set.
2055
+ #
2056
+ # @!attribute [rw] optional_value
2057
+ # The value to set for this field. Omit the wrapper to leave the field
2058
+ # unchanged.
2059
+ # @return [Types::DescriptorSource]
2060
+ #
2061
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDescriptorSource AWS API Documentation
2062
+ #
2063
+ class UpdatedDescriptorSource < Struct.new(
2064
+ :optional_value)
2065
+ SENSITIVE = []
2066
+ include Aws::Structure
2067
+ end
2068
+
2069
+ # The top-level descriptors patch wrapper used in UpdateRegistryRecord.
2070
+ # Omit to leave the current descriptors unchanged; supply an empty
2071
+ # object to clear them; supply optionalValue to apply a per-field patch.
2072
+ #
2073
+ # @!attribute [rw] optional_value
2074
+ # The value to set for this field. Omit the wrapper to leave the field
2075
+ # unchanged.
2076
+ # @return [Types::UpdatedDescriptorsFields]
2077
+ #
2078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDescriptors AWS API Documentation
2079
+ #
2080
+ class UpdatedDescriptors < Struct.new(
2081
+ :optional_value)
2082
+ SENSITIVE = []
2083
+ include Aws::Structure
2084
+ end
2085
+
2086
+ # The patchable descriptor fields applied during an UpdateRegistryRecord
2087
+ # call. Each field is independently patchable.
2088
+ #
2089
+ # @!attribute [rw] mcp_server
2090
+ # The patch for the MCP server descriptor.
2091
+ # @return [Types::UpdatedMcpServerDescriptor]
2092
+ #
2093
+ # @!attribute [rw] a2a_agent_card
2094
+ # The patch for the A2A agent card descriptor.
2095
+ # @return [Types::UpdatedA2aAgentCardDescriptor]
2096
+ #
2097
+ # @!attribute [rw] agent_skills_definition
2098
+ # The patch for the agent skills definition descriptor.
2099
+ # @return [Types::UpdatedAgentSkillsDefinitionDescriptor]
2100
+ #
2101
+ # @!attribute [rw] custom
2102
+ # The patch for the custom descriptor.
2103
+ # @return [Types::UpdatedCustomDescriptor]
2104
+ #
2105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDescriptorsFields AWS API Documentation
2106
+ #
2107
+ class UpdatedDescriptorsFields < Struct.new(
2108
+ :mcp_server,
2109
+ :a2a_agent_card,
2110
+ :agent_skills_definition,
2111
+ :custom)
2112
+ SENSITIVE = []
2113
+ include Aws::Structure
2114
+ end
2115
+
2116
+ # The discovery configuration fields to update on a registry. Omit this
2117
+ # structure to leave the discovery configuration unchanged.
2118
+ #
2119
+ # @!attribute [rw] authorizer_configuration
2120
+ # Authorization configuration for the registry, with PATCH semantics
2121
+ # @return [Types::UpdatedAuthorizerConfiguration]
2122
+ #
2123
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDiscoveryConfiguration AWS API Documentation
2124
+ #
2125
+ class UpdatedDiscoveryConfiguration < Struct.new(
2126
+ :authorizer_configuration)
2127
+ SENSITIVE = []
2128
+ include Aws::Structure
2129
+ end
2130
+
2131
+ # Leaf patch wrapper for a registry record's display name. Omit to
2132
+ # leave unchanged; supply an empty object to unset; supply optionalValue
2133
+ # to set.
2134
+ #
2135
+ # @!attribute [rw] optional_value
2136
+ # The value to set for this field. Omit the wrapper to leave the field
2137
+ # unchanged.
2138
+ # @return [String]
2139
+ #
2140
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedDisplayName AWS API Documentation
2141
+ #
2142
+ class UpdatedDisplayName < Struct.new(
2143
+ :optional_value)
2144
+ SENSITIVE = []
2145
+ include Aws::Structure
2146
+ end
2147
+
2148
+ # The MCP server additional-data patch wrapper. Omit to leave the
2149
+ # additional data unchanged; supply an empty object to remove it; supply
2150
+ # optionalValue to patch its fields.
2151
+ #
2152
+ # @!attribute [rw] optional_value
2153
+ # The value to set for this field. Omit the wrapper to leave the field
2154
+ # unchanged.
2155
+ # @return [Types::UpdatedMcpServerAdditionalDataFields]
2156
+ #
2157
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedMcpServerAdditionalData AWS API Documentation
2158
+ #
2159
+ class UpdatedMcpServerAdditionalData < Struct.new(
2160
+ :optional_value)
2161
+ SENSITIVE = []
2162
+ include Aws::Structure
2163
+ end
2164
+
2165
+ # The set of MCP server additional-data fields that can be individually
2166
+ # updated.
2167
+ #
2168
+ # @!attribute [rw] tools
2169
+ # The patch for the MCP tools descriptor field.
2170
+ # @return [Types::UpdatedMcpToolsDescriptor]
2171
+ #
2172
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedMcpServerAdditionalDataFields AWS API Documentation
2173
+ #
2174
+ class UpdatedMcpServerAdditionalDataFields < Struct.new(
2175
+ :tools)
2176
+ SENSITIVE = []
2177
+ include Aws::Structure
2178
+ end
2179
+
2180
+ # The MCP server descriptor patch wrapper. Omit to leave the descriptor
2181
+ # unchanged; supply an empty object to remove it; supply optionalValue
2182
+ # to patch its fields.
2183
+ #
2184
+ # @!attribute [rw] optional_value
2185
+ # The value to set for this field. Omit the wrapper to leave the field
2186
+ # unchanged.
2187
+ # @return [Types::UpdatedMcpServerDescriptorFields]
2188
+ #
2189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedMcpServerDescriptor AWS API Documentation
2190
+ #
2191
+ class UpdatedMcpServerDescriptor < Struct.new(
2192
+ :optional_value)
2193
+ SENSITIVE = []
2194
+ include Aws::Structure
2195
+ end
2196
+
2197
+ # The set of MCP server descriptor fields that can be individually
2198
+ # updated.
2199
+ #
2200
+ # @!attribute [rw] data
2201
+ # The patch for the descriptor's data field.
2202
+ # @return [Types::UpdatedDescriptorData]
2203
+ #
2204
+ # @!attribute [rw] data_schema_version
2205
+ # The patch for the descriptor's data schema version field.
2206
+ # @return [Types::UpdatedDataSchemaVersion]
2207
+ #
2208
+ # @!attribute [rw] source
2209
+ # The patch for the descriptor's source field.
2210
+ # @return [Types::UpdatedDescriptorSource]
2211
+ #
2212
+ # @!attribute [rw] additional_data
2213
+ # The patch for the descriptor's additional data field.
2214
+ # @return [Types::UpdatedMcpServerAdditionalData]
2215
+ #
2216
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedMcpServerDescriptorFields AWS API Documentation
2217
+ #
2218
+ class UpdatedMcpServerDescriptorFields < Struct.new(
2219
+ :data,
2220
+ :data_schema_version,
2221
+ :source,
2222
+ :additional_data)
2223
+ SENSITIVE = []
2224
+ include Aws::Structure
2225
+ end
2226
+
2227
+ # The MCP tools descriptor patch wrapper. Omit to leave the tools
2228
+ # descriptor unchanged; supply an empty object to remove it; supply
2229
+ # optionalValue to patch its fields.
2230
+ #
2231
+ # @!attribute [rw] optional_value
2232
+ # The value to set for this field. Omit the wrapper to leave the field
2233
+ # unchanged.
2234
+ # @return [Types::UpdatedMcpToolsDescriptorFields]
2235
+ #
2236
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedMcpToolsDescriptor AWS API Documentation
2237
+ #
2238
+ class UpdatedMcpToolsDescriptor < Struct.new(
2239
+ :optional_value)
2240
+ SENSITIVE = []
2241
+ include Aws::Structure
2242
+ end
2243
+
2244
+ # The set of MCP tools descriptor fields that can be individually
2245
+ # updated.
2246
+ #
2247
+ # @!attribute [rw] data
2248
+ # The patch for the descriptor's data field.
2249
+ # @return [Types::UpdatedDescriptorData]
2250
+ #
2251
+ # @!attribute [rw] data_schema_version
2252
+ # The patch for the descriptor's data schema version field.
2253
+ # @return [Types::UpdatedDataSchemaVersion]
2254
+ #
2255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/UpdatedMcpToolsDescriptorFields AWS API Documentation
2256
+ #
2257
+ class UpdatedMcpToolsDescriptorFields < Struct.new(
2258
+ :data,
2259
+ :data_schema_version)
2260
+ SENSITIVE = []
2261
+ include Aws::Structure
2262
+ end
2263
+
2264
+ # The request failed validation of one or more input fields.
2265
+ #
2266
+ # @!attribute [rw] message
2267
+ # @return [String]
2268
+ #
2269
+ # @!attribute [rw] reason
2270
+ # The reason the request failed validation.
2271
+ # @return [String]
2272
+ #
2273
+ # @!attribute [rw] field_list
2274
+ # The list of input fields that failed validation.
2275
+ # @return [Array<Types::ValidationExceptionField>]
2276
+ #
2277
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ValidationException AWS API Documentation
2278
+ #
2279
+ class ValidationException < Struct.new(
2280
+ :message,
2281
+ :reason,
2282
+ :field_list)
2283
+ SENSITIVE = []
2284
+ include Aws::Structure
2285
+ end
2286
+
2287
+ # Describes a single input field that failed validation.
2288
+ #
2289
+ # @!attribute [rw] name
2290
+ # The name of the field that failed validation.
2291
+ # @return [String]
2292
+ #
2293
+ # @!attribute [rw] message
2294
+ # A description of why the field failed validation.
2295
+ # @return [String]
2296
+ #
2297
+ # @see http://docs.aws.amazon.com/goto/WebAPI/agent-registry-control-2025-12-01/ValidationExceptionField AWS API Documentation
2298
+ #
2299
+ class ValidationExceptionField < Struct.new(
2300
+ :name,
2301
+ :message)
2302
+ SENSITIVE = []
2303
+ include Aws::Structure
2304
+ end
2305
+
2306
+ end
2307
+ end
2308
+