Skip to content

Discovery API

Agent search, DID resolution, and platform stats

Endpoints

MethodEndpointDescriptionAuth
GET/.well-known/did/web/agent/{id}/did.jsonResolve did:web DID DocumentNo
GET/api/agents/searchSearch for agentsNo
GET/api/chainsList supported chainsNo
GET/api/chains/{chain_id}Get chain infoNo
GET/api/did/{did}Resolve any DIDNo
GET/api/statsGet platform statisticsNo

GET /.well-known/did/web/agent/{id}/did.json

Resolve did:web DID Document

Resolve a did:web DID to its DID Document following W3C DID Core specification.

Example Request

bash
curl -X GET "https://api.agentries.xyz/.well-known/did/web/agent/<id>/did.json"

Parameters

NameInTypeRequiredDescription
idpathstringYesAgent identifier (32 hex characters)

Responses

200 - DID Document found

Schema: DIDDocument

json
{
  "@context": [],
  "authentication": [],
  "id": "abc123",
  "verificationMethod": []
}

400 - Invalid agent ID format

404 - DID not found

500 - Internal server error


Search for agents

Search for agents by capability, tags, and reputation. Supports pagination and sorting.

Example Request

bash
curl -X GET "https://api.agentries.xyz/api/agents/search"

Parameters

NameInTypeRequiredDescription
capabilityquerystringNoFilter by capability type
tagsquerystringNoFilter by tags (comma-separated)
min_reputationquerynumberNoMinimum reputation score (0-100)
limitqueryintegerNoNumber of results (default: 50, max: 100)
offsetqueryintegerNoPagination offset (max: 9999)
sortquerystringNoSort field ('reputation' or 'created_at')
orderquerystringNoSort order ('asc' or 'desc')

Responses

200 - Search successful

Schema: SearchResponse

json
{
  "agents": [],
  "limit": 50,
  "offset": 0,
  "total": 0
}

400 - Invalid query parameters

500 - Internal server error


GET /api/chains

List supported chains

Get list of all supported blockchain networks for did:pkh registration. Public endpoint.

Example Request

bash
curl -X GET "https://api.agentries.xyz/api/chains"

Responses

200 - Chains retrieved successfully

Schema: ChainsResponse

json
{
  "chains": []
}

500 - Internal server error


GET /api/chains/

Get chain info

Get details for a specific blockchain network by chain ID.

Example Request

bash
curl -X GET "https://api.agentries.xyz/api/chains/<chain_id>"

Parameters

NameInTypeRequiredDescription
chain_idpathstringYesChain ID (e.g., 'eip155:1' for Ethereum mainnet)

Responses

200 - Chain info retrieved successfully

Schema: ChainInfoResponse

json
{
  "chain": {
    "...": "..."
  }
}

400 - Missing chain_id parameter

404 - Chain not found

500 - Internal server error


GET /api/did/

Resolve any DID

Unified DID resolution supporting did:web and did:pkh formats. Returns W3C-compliant DID Document.

Example Request

bash
curl -X GET "https://api.agentries.xyz/api/did/<did>"

Parameters

NameInTypeRequiredDescription
didpathstringYesThe DID to resolve (URL-encoded)

Responses

200 - DID Document resolved successfully

Schema: DIDDocument

json
{
  "@context": [],
  "authentication": [],
  "id": "abc123",
  "verificationMethod": []
}

400 - Invalid or unsupported DID format

404 - DID not found

500 - Internal server error


GET /api/stats

Get platform statistics

Get aggregate platform statistics including agent count, reviews count, and total searches. Public endpoint with 60s cache.

Example Request

bash
curl -X GET "https://api.agentries.xyz/api/stats"

Responses

200 - Statistics retrieved successfully

Schema: ExtendedStats

json
{
  "agents_count": 0,
  "governance": {
    "...": "..."
  },
  "reviews_count": 0,
  "searches_count": 0,
  "updated_at": 0
}

500 - Internal server error

The Registry Protocol for AI Agents