Registry API
Simple REST API for accessing the Robot Registry. Read-only endpoints are open. Write endpoints require an API key.
/api/v1/robots List all registered robots
Returns a paginated list of all robots in the registry. Supports filtering by manufacturer, verification_status, tags, and status.
Parameters
limit integer optional Maximum number of results (max 200) offset integer optional Pagination offset manufacturer string optional Filter by manufacturer name (exact match) verification_status string optional Filter by tier: community | verified | manufacturer | certified tags string optional Comma-separated list of tags (AND logic) Example Response
{
"total": 1,
"offset": 0,
"limit": 50,
"robots": [
{
"rrn": "RRN-00000001",
"name": "OpenCastor Bob",
"manufacturer": "ContinuonAI",
"verification_status": "community",
"status": "active",
"tags": ["rpi5", "hailo", "rcan-compliant"]
}
]
} /api/v1/robots/:rrn Get one robot by RRN
Returns the full registry record for a specific robot identified by its Robot Registration Number.
Parameters
rrn path required Robot Registration Number (e.g. RRN-00000001) Example Response
{
"rrn": "RRN-00000001",
"name": "OpenCastor Bob",
"manufacturer": "ContinuonAI",
"model": "opencastor-rpi5",
"description": "Reference implementation of an RCAN-compliant robot...",
"status": "active",
"production_year": 2026,
"specs": {
"compute": "Raspberry Pi 5 16GB + Hailo-8",
"sensors": ["OAK-D RGB+Depth", "Hailo-8 NPU"]
},
"verification_status": "community",
"ruri": "rcan://rcan.dev/continuonai/opencastor-rpi5/bob",
"tags": ["rpi5", "hailo", "oak-d", "rcan-compliant"],
"submitted_date": "2026-03-06"
} /api/v1/robots Register a new robot
Submit a new robot for RRN assignment. Returns a pending registration record. RRN is assigned within 1–3 business days.
Parameters
name string required Robot name manufacturer string required Manufacturer name model string required Model identifier description string required Robot description contact_email string required Contact for RRN delivery specs object optional Technical specifications ruri string optional RCAN Robot URI if applicable (RCAN v1.3+) tags array optional Classification tags Example Response
{
"status": "pending",
"submission_id": "sub_8f3k2m",
"message": "Registration received. RRN will be assigned within 1–3 business days.",
"submitted_at": "2026-03-12T14:22:00Z"
} /api/v1/metrics Registry statistics
Returns aggregate statistics about the registry.
Example Response
{
"total_robots": 1,
"by_verification_status": {
"community": 1,
"verified": 0,
"manufacturer": 0,
"certified": 0
},
"by_status": {
"active": 1,
"retired": 0,
"prototype": 0
},
"last_updated": "2026-03-06T00:00:00Z"
} /api/v1/resolve/:rrn Federated RRN resolution
Resolves an RRN using the federation protocol. Queries the most authoritative available node and returns the canonical record with its provenance chain.
Parameters
rrn path required Robot Registration Number to resolve full_chain boolean optional Include full federation provenance chain Example Response
{
"rrn": "RRN-00000001",
"resolved_from": "root.rrf.registry",
"canonical": true,
"record": { ... },
"chain": [
{ "node": "root.rrf.registry", "signed_at": "2026-03-06T00:00:00Z" }
]
} Authentication
GET endpoints are open (no authentication required). POST endpoints require an API key passed as a Bearer token:
Authorization: Bearer <your-api-key>
API keys are issued during the formation period. Submit a robot to request early access.