CreateRegistryRecord
Creates a registry record within a registry. A registry record describes a discoverable resource, such as an MCP server, an agent, an agent skill, or a custom resource. Creation is asynchronous: the record is returned with the CREATING status while it is processed.
Request Syntax
POST /registries/registryId/records HTTP/1.1
Content-type: application/json
{
"clientToken": "string",
"description": "string",
"descriptors": {
"a2aAgentCard": {
"data": "string",
"dataSchemaVersion": "string",
"source": {
"fromUrl": {
"credentialProviderConfigurations": [
{
"credentialProvider": { ... },
"credentialProviderType": "string"
}
],
"url": "string"
}
}
},
"agentSkillsDefinition": {
"additionalData": {
"skillMd": {
"data": "string",
"dataSchemaVersion": "string",
"source": {
"fromUrl": {
"credentialProviderConfigurations": [
{
"credentialProvider": { ... },
"credentialProviderType": "string"
}
],
"url": "string"
}
}
}
},
"data": "string",
"dataSchemaVersion": "string"
},
"custom": {
"data": "string"
},
"mcpServer": {
"additionalData": {
"tools": {
"data": "string",
"dataSchemaVersion": "string"
}
},
"data": "string",
"dataSchemaVersion": "string",
"source": {
"fromUrl": {
"credentialProviderConfigurations": [
{
"credentialProvider": { ... },
"credentialProviderType": "string"
}
],
"url": "string"
}
}
}
},
"displayName": "string",
"name": "string",
"recordType": "string",
"recordVersion": "string",
"tags": {
"string" : "string"
}
}
URI Request Parameters
The request uses the following URI parameters.
- registryId
-
The identifier of the registry in which to create the record (ARN or ID)
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
(arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/)?[a-zA-Z0-9]{12,16}Required: Yes
Request Body
The request accepts the following data in JSON format.
- clientToken
-
Client token for idempotency
Type: String
Length Constraints: Minimum length of 33. Maximum length of 256.
Pattern:
[a-zA-Z0-9](-*[a-zA-Z0-9]){0,256}Required: No
- description
-
The description of the registry record
Type: String
Length Constraints: Minimum length of 1. Maximum length of 4096.
Required: No
- descriptors
-
The typed descriptor content for the registry record
Type: Descriptors object
Required: Yes
- displayName
-
The human-readable display name of the registry record
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Required: No
- name
-
The name of the registry record
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern:
[a-zA-Z0-9][a-zA-Z0-9_\-\.\/]*Required: Yes
- recordType
-
The type of the registry record, which determines the descriptor format
Type: String
Valid Values:
MCP | AGENT | CUSTOM | SKILLRequired: Yes
- recordVersion
-
The version of the registry record
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern:
[a-zA-Z0-9.-]+Required: No
-
Tags to associate with the registry record
Type: String to string map
Map Entries: Maximum number of 50 items.
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Key Pattern:
[a-zA-Z0-9\s._:/=+@-]*Value Length Constraints: Minimum length of 0. Maximum length of 256.
Value Pattern:
[a-zA-Z0-9\s._:/=+@-]*Required: No
Response Syntax
HTTP/1.1 202
Content-type: application/json
{
"recordArn": "string",
"status": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 202 response.
The following data is returned in JSON format by the service.
- recordArn
-
The ARN of the created registry record
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
arn:aws(-[^:]+)?:agent-registry:[a-z0-9-]+:[0-9]{12}:registry/[a-zA-Z0-9]{12,16}/record/[a-zA-Z0-9]{12} - status
-
The status of the registry record, set to CREATING while the asynchronous workflow is in progress
Type: String
Valid Values:
DRAFT | PENDING_APPROVAL | APPROVED | REJECTED | DEPRECATED | CREATING | UPDATING | CREATE_FAILED | UPDATE_FAILED
Errors
For information about the errors that are common to all actions, see Common Error Types.
- AccessDeniedException
-
The caller is not authorized to perform the requested action.
HTTP Status Code: 403
- ConflictException
-
The request conflicts with the current state of the resource.
HTTP Status Code: 409
- InternalServerException
-
The request failed due to an unexpected internal error; the caller may retry.
HTTP Status Code: 500
- ResourceNotFoundException
-
The requested resource was not found.
HTTP Status Code: 404
- ServiceQuotaExceededException
-
The request would exceed a service quota.
HTTP Status Code: 402
- ThrottlingException
-
The request was denied due to request throttling; the caller may retry after a delay.
HTTP Status Code: 429
- ValidationException
-
The request failed validation of one or more input fields.
- fieldList
-
The list of input fields that failed validation.
- reason
-
The reason the request failed validation.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: