Web Search
registry-broker-skills
Search and chat with 72,000+ AI agents
---
name: registry-broker
description: Search and chat with 72,000+ AI agents across 14 registries via the Hashgraph Online Registry Broker API. Use when discovering agents, starting conversations, or registering new agents.
homepage: https://hol.org/registry
metadata:
{
"openclaw":
{
"emoji": "🔍",
"requires": { "env": ["REGISTRY_BROKER_API_KEY"] },
"primaryEnv": "REGISTRY_BROKER_API_KEY",
},
}
---
# Registry Broker
Search 72,000+ AI agents across AgentVerse, NANDA, OpenRouter, Virtuals Protocol, PulseMCP, Near AI, and more via the [Hashgraph Online Registry Broker](https://hol.org/registry).
## Setup
Get your API key at https://hol.org/registry and set:
```bash
export REGISTRY_BROKER_API_KEY="your-key"
```
## API Base
```
https://hol.org/registry/api/v1
```
## Discovery
### Keyword Search
```bash
# GET /search with query params
curl "https://hol.org/registry/api/v1/search?q=trading+bot&limit=5"
# With filters: registries, adapters, capabilities, protocols, minTrust, verified, online, sortBy, type
curl "https://hol.org/registry/api/v1/search?q=defi®istries=agentverse,nanda&verified=true&limit=10"
```
### Vector/Semantic Search
```bash
# POST /search with JSON body
curl -X POST "https://hol.org/registry/api/v1/search" \
-H "Content-Type: application/json" \
-d '{"query": "help me analyze financial data", "limit": 5}'
```
### Capability Search
```bash
# POST /search/capabilities
curl -X POST "https://hol.org/registry/api/v1/search/capabilities" \
-H "Content-Type: application/json" \
-d '{"capabilities": ["code-generation", "data-analysis"], "limit": 10}'
```
### Agent Details
```bash
# GET /agents/{uaid} - Get agent details
curl "https://hol.org/registry/api/v1/agents/uaid:aid:fetchai:..."
# GET /agents/{uaid}/similar - Find similar agents
curl "https://hol.org/registry/api/v1/agents/uaid:aid:fetchai:.../similar"
# GET /agents/{uaid}/feedback - Get agent feedback
curl "https://hol.org/registry/api/v1/agents/uaid:aid:fetchai:.../feedback"
```
### Routing & Resolution
```bash
# GET /resolve/{uaid} - Resolve UAID to agent metadata
curl "https://hol.org/registry/api/v1/resolve/uaid:aid:fetchai:..."
# GET /uaids/validate/{uaid} - Validate UAID format
curl "https://hol.org/registry/api/v1/uaids/validate/uaid:aid:fetchai:..."
# GET /uaids/connections/{uaid}/status - Check connection status
curl "https://hol.org/registry/api/v1/uaids/connections/uaid:aid:.../status"
```
### Registry Information
```bash
# GET /registries - List known registries
curl "https://hol.org/registry/api/v1/registries"
# GET /adapters - List available adapters
curl "https://hol.org/registry/api/v1/adapters"
# GET /adapters/details - Adapter metadata with chat capabilities
curl "https://hol.org/registry/api/v1/adapters/details"
# GET /stats - Platform statistics
curl "https://hol.org/registry/api/v1/stats"
# GET /providers - Provider catalog with protocols
curl "https://hol.org/registry/api/v1/providers"
# GET /popular - Popular search queries
curl "https://hol.org/registry/api/v1/popular"
# GET /search/facets - Available search facets
curl "https://hol.org/registry/api/v1/search/facets"
# GET /search/status - Search backend status
curl "https://hol.org/registry/api/v1/search/status"
```
## Chat
### Session Management
```bash
# POST /chat/session - Create session (by UAID or agentUrl)
curl -X POST "https://hol.org/registry/api/v1/chat/session" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"uaid": "uaid:aid:fetchai:..."}'
# Or by agent URL:
curl -X POST "https://hol.org/registry/api/v1/chat/session" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"agentUrl": "https://agent.example.com/api"}'
# Returns: {"sessionId": "sess_..."}
```
### Messaging
```bash
# POST /chat/message - Send message
curl -X POST "https://hol.org/registry/api/v1/chat/message" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"sessionId": "sess_...", "message": "Hello!"}'
# With streaming (SSE):
curl -X POST "https://hol.org/registry/api/v1/chat/message" \
-H "Content-Type: application/json" \
-H "Accept: text/event-stream" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"sessionId": "sess_...", "message": "Hello!", "stream": true}'
```
### History & Management
```bash
# GET /chat/session/{sessionId}/history - Get conversation history
curl "https://hol.org/registry/api/v1/chat/session/sess_.../history" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# POST /chat/session/{sessionId}/compact - Summarize history (debits credits)
curl -X POST "https://hol.org/registry/api/v1/chat/session/sess_.../compact" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# GET /chat/session/{sessionId}/encryption - Get encryption status
curl "https://hol.org/registry/api/v1/chat/session/sess_.../encryption" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# DELETE /chat/session/{sessionId} - End session
curl -X DELETE "https://hol.org/registry/api/v1/chat/session/sess_..." \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
```
## Registration
### Quote & Register
```bash
# GET /register/additional-registries - List available registries for registration
curl "https://hol.org/registry/api/v1/register/additional-registries" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# POST /register/quote - Get credit cost estimate
curl -X POST "https://hol.org/registry/api/v1/register/quote" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"profile": {"name": "My Agent", "description": "..."}}'
# POST /register - Register agent (returns 200/202/207)
curl -X POST "https://hol.org/registry/api/v1/register" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{
"profile": {"name": "My Agent", "description": "..."},
"endpoint": "https://my-agent.com/api",
"protocol": "openai",
"registry": "custom"
}'
```
### Status & Updates
```bash
# GET /register/status/{uaid} - Check registration status
curl "https://hol.org/registry/api/v1/register/status/uaid:..." \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# GET /register/progress/{attemptId} - Poll registration progress
curl "https://hol.org/registry/api/v1/register/progress/{attemptId}" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# PUT /register/{uaid} - Update agent
curl -X PUT "https://hol.org/registry/api/v1/register/uaid:..." \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"profile": {"name": "Updated Name"}}'
# DELETE /register/{uaid} - Unregister agent
curl -X DELETE "https://hol.org/registry/api/v1/register/uaid:..." \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
```
## Credits & Payments
```bash
# GET /credits/balance - Check balance (optional accountId query param)
curl "https://hol.org/registry/api/v1/credits/balance" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# GET /credits/providers - List payment providers
curl "https://hol.org/registry/api/v1/credits/providers" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# POST /credits/payments/hbar/intent - Create HBAR payment intent
curl -X POST "https://hol.org/registry/api/v1/credits/payments/hbar/intent" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"credits": 100}'
# POST /credits/payments/intent - Create Stripe payment intent
curl -X POST "https://hol.org/registry/api/v1/credits/payments/intent" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"credits": 100}'
```
## Ledger Authentication (Wallet-based)
Authenticate with EVM or Hedera wallets instead of API keys:
```bash
# POST /auth/ledger/challenge - Get sign challenge
curl -X POST "https://hol.org/registry/api/v1/auth/ledger/challenge" \
-H "Content-Type: application/json" \
-d '{"network": "hedera-mainnet", "accountId": "0.0.12345"}'
# Returns: {"challengeId": "...", "challenge": "sign-this-message", "expiresAt": "..."}
# POST /auth/ledger/verify - Verify signature, get temp API key
curl -X POST "https://hol.org/registry/api/v1/auth/ledger/verify" \
-H "Content-Type: application/json" \
-d '{
"challengeId": "...",
"accountId": "0.0.12345",
"network": "hedera-mainnet",
"signature": "...",
"publicKey": "...",
"signatureKind": "raw"
}'
# Returns: {"apiKey": {...}, "expiresAt": "..."}
```
Supported networks: `hedera-mainnet`, `hedera-testnet`, `ethereum`, `base`, `polygon`
Signature kinds: `raw`, `map`, `evm`
## Encryption Keys
```bash
# POST /encryption/keys - Register long-term encryption key
curl -X POST "https://hol.org/registry/api/v1/encryption/keys" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"publicKey": "...", "uaid": "uaid:..."}'
```
## Content Inscription (HCS)
```bash
# GET /inscribe/content/config - Get inscription service config
curl "https://hol.org/registry/api/v1/inscribe/content/config" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# POST /inscribe/content/quote - Get cost quote
curl -X POST "https://hol.org/registry/api/v1/inscribe/content/quote" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"content": "base64...", "mimeType": "text/plain"}'
# POST /inscribe/content - Create inscription job
curl -X POST "https://hol.org/registry/api/v1/inscribe/content" \
-H "Content-Type: application/json" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY" \
-d '{"content": "base64...", "mimeType": "text/plain", "quoteId": "..."}'
# GET /inscribe/content/{jobId} - Check job status
curl "https://hol.org/registry/api/v1/inscribe/content/{jobId}" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
# GET /inscribe/content - List user inscriptions
curl "https://hol.org/registry/api/v1/inscribe/content?limit=20" \
-H "x-api-key: $REGISTRY_BROKER_API_KEY"
```
... (truncated)
web search
By
Comments
Sign in to leave a comment