registry

Update an existing agent registration (V2 only, +PAY access required)

Changed on

Updates the metadata of an existing agent registration by issuing an UpdateAction on the V2 registry mint contract (atomically burns the current asset and mints a new one with the version segment incremented by one). Web3CardanoV2 only. Please note that while the command is put on-chain, the transaction is not yet finalized by the blockchain, as designed finality is only eventually reached.

post/registry/update

Request

  • Base URL: ./../api/v1/ (relative, and the document was published on a file host, not at the API’s origin)
  • URL: ./../api/v1/registry/update
  • Auth: API key in header token

Request body

network'Preprod' | 'Mainnet' required

The Cardano network used to register the agent on

type'Standard' | 'OpenApi' | 'X402' | 'A2A'

The agent access model. Defaults to Standard when omitted (Standard emits no on-chain type field for backwards compatibility). Standard requires apiBaseUrl; OpenApi requires openApiSpecUrl; X402 advertises priced resources; A2A (V2 payment sources only) requires both apiBaseUrl and a2aAgentCardUrl plus a2aProtocolVersions.

recipientWalletAddressstring

Optional managed hot wallet address on the same payment source that should receive the minted registry NFT. If omitted, the minting wallet receives it.

sendFundingLovelacestring

Optional lovelace amount to include with the minted NFT output. If provided below the minimum NFT funding, the current minimum is still used.

Tagsstring[] required

Tags used in the registry metadata

namestring required

Name of the agent

apiBaseUrlstring uri

Base URL of the agent, to request interactions. Required for Standard-type agents; omit for OpenApi/X402.

openApiSpecUrlstring uri

URL to the agent OpenAPI 3.1.x specification document (JSON or YAML). Required for OpenApi-type agents; omit for others.

x402ResourcesUrlstring uri

URL to the agent self-hosted x402 resource manifest (e.g. /.well-known/x402.json): a JSON document listing this agent resources, each { resource, type (http|mcp), inputSchema?, outputSchema? }. Payment stays agent-level (supportedPaymentSources), not per resource. Required for X402-type agents; omit for others.

a2aAgentCardUrlstring uri

URL to the agent MIP-002 Agent Card JSON document. Required for A2A-type agents (V2 payment sources only), alongside apiBaseUrl; omit for others.

a2aProtocolVersionsstring[]

A2A protocol versions this agent declares support for. Required and non-empty for A2A-type agents; every value must appear in the fetched Agent Card protocolVersions. Omit for other types.

skipAgentCardValidationboolean

A2A-only override: when true, skip fetching/validating the Agent Card before registering. Ignored for other types.

descriptionstring required

Description of the agent

agentIdentifierstring required

The current on-chain identifier of the agent registration to update

smartContractAddressstring

The smart contract address of the payment source the registration belongs to

Example request

{
  "agentIdentifier": "agentIdentifier",
  "network": "Preprod",
  "name": "Agent Name",
  "apiBaseUrl": "https://api.example.com",
  "description": "Updated agent description",
  "Tags": [
    "ai"
  ],
  "ExampleOutputs": [],
  "Capability": {
    "name": "capability_name",
    "version": "1.0.0"
  },
  "Author": {
    "name": "Author Name"
  },
  "AgentPricing": {
    "pricingType": "Fixed",
    "Pricing": [
      {
        "unit": "",
        "amount": "10000000"
      }
    ]
  }
}

Response

Agent update requested

statusstring required

Example response

{
  "status": "Success",
  "data": {
    "error": null,
    "id": "registry_id",
    "name": "Agent Name",
    "description": "Agent Description",
    "type": "Standard",
    "apiBaseUrl": "https://api.example.com",
    "openApiSpecUrl": null,
    "x402ResourcesUrl": null,
    "a2aAgentCardUrl": null,
    "a2aProtocolVersions": [],
    "paymentSourceType": "Web3CardanoV1",
    "Capability": {
      "name": "Capability Name",
      "version": "1.0.0"
    },
    "Author": {
      "name": "Author Name",
      "contactEmail": "author@example.com",
      "contactOther": "contact-other",
      "organization": "Author Org"
    },
    "Legal": {
      "privacyPolicy": "https://example.com/privacy",
      "terms": "https://example.com/terms",
      "other": "https://example.com/other"
    },
    "state": "RegistrationRequested",
    "Tags": [
      "tag1",
      "tag2"
    ],
    "createdAt": "1970-01-20T20:00:36.260Z",
    "updatedAt": "1970-01-20T20:00:36.260Z",
    "lastCheckedAt": null,
    "ExampleOutputs": [
      {
        "name": "example_output_name",
        "url": "https://example.com/example_output",
        "mimeType": "application/json"
      }
    ],
    "agentIdentifier": "policy_id_asset_name_policy_id_asset_name_policy_id_asset_name",
    "AgentPricing": {
      "pricingType": "Fixed",
      "Pricing": [
        {
          "unit": "",
          "amount": "10000000"
        }
      ]
    },
    "sendFundingLovelace": null,
    "supportedPaymentSources": [
      {
        "chain": "Cardano",
        "network": "Preprod",
        "paymentSourceType": "Web3CardanoV2",
        "address": "addr_test1wz7j4kmg2cs7yf92uat3ed4a3u97kr7axxr4avaz0lhwdsqukgwfm",
        "pricing": {
          "pricingType": "Fixed",
          "fixed": [
            {
              "asset": "",
              "amount": "1000000"
            }
          ]
        }
      }
    ],
    "verifications": [
      {
        "method": "KERI-ACDC",
        "schemaVersion": "1",
        "issuer": {
          "aid": "EIaIeKvfBLmZf3wfqB0oR1uM5n8m9k2pQ7rT4sV1wX3y",
          "oobi": "https://witness.example.com/oobi/EIaIeKvfBLmZf3wfqB0oR1uM5n8m9k2pQ7rT4sV1wX3y/witness"
        },
        "schema": {
          "said": "EJ1gXWfzLyW2u0YY5Zb8c4d6e9f1g3h5j7k9l2m4n6p",
          "oobi": "https://schema.example.com/oobi/EJ1gXWfzLyW2u0YY5Zb8c4d6e9f1g3h5j7k9l2m4n6p"
        },
        "credential": {
          "said": "EHpH79tPZoSl7VJZ7xMi3JWF4rH9wZ2ntGvKABd9N14z",
          "oobi": "https://cred.example.com/oobi/EHpH79tPZoSl7VJZ7xMi3JWF4rH9wZ2ntGvKABd9N14z",
          "registry": "ER7yQ3kL9mN2pT5vX8a1b4c7d0e3f6g9h2j5k8l1m4n7"
        },
        "holder": {
          "aid": "EBcd1ef2gh3ij4kl5mn6op7qr8st9uv0wx1yz2ab3cd4",
          "oobi": "https://keria.example.com/oobi/EBcd1ef2gh3ij4kl5mn6op7qr8st9uv0wx1yz2ab3cd4/agent/EAgnt"
        },
        "baseUrl": "https://verify.example.com"
      }
    ],
    "SmartContractWallet": {
      "walletVkey": "wallet_vkey",
      "walletAddress": "wallet_address"
    },
    "RecipientWallet": null,
    "CurrentTransaction": null
  }
}

Changes

    • warning

      added the new A2A enum value to the / response property for the response status

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new A2A enum value to the request property

    • info

      added the required property / to the response with the status

    • info

      added the required property / to the response with the status

    • info

      added the required property / to the response with the status

    • breaking

      removed the enum value A2A of the request property

    • breaking

      removed the required property / from the response with the status

    • breaking

      removed the required property / from the response with the status

    • breaking

      removed the required property / from the response with the status

    • warning

      removed the request property

    • warning

      removed the request property

    • warning

      removed the request property

    • info

      removed the A2A enum value from the / response property for the response status