MAINNET · 6 CONTRACTS · LIVE

One API for every robot on Earth.

Robot ID Tech is open, neutral infrastructure that gives every robot a permanent, programmable identity on Ethereum — the way ENS is infrastructure for human-readable names. Integrate once via a single API key and keep full control of your product and brand.

IdentityAI / voice intentAutonomous paymentsCapability attestationFirmware verification
UNIT RECORD · SPECIMEN
ENS Identity
sn-a1b2c3.boston-dynamics.robot-id.eth
Status OPERATIONAL
Firmwarev3.2.1 · signed ✓
Capability14 kg · zone A
Owner0x7a3f…c21d
Token#001042 · soulbound
ERC-721 · ERC-5192 · ERC-2981RESOLVED VIA CCIP-READ
LIVE · CHAIN
0
Robots on-chain
VERIFIED
0
Source-verified contracts
USDC
0
Subscription tiers
SCALE
OEMs supported
§ 01 Why it exists

Every robot needs an identity it doesn’t own.

Serial numbers live in a manufacturer’s private database. The moment a robot is resold, re-deployed, or audited, that identity is unverifiable to anyone else. robot-id.eth makes a robot’s identity public infrastructure: neutral, permanent, and provable by anyone — without any single company owning the registry.

For OEMs

Ship trust, not just hardware

Issue a verifiable identity, capability record, and firmware policy per unit. One integration covers your entire catalog and every robot you’ve ever made.

Boston Dynamics · Unitree · Figure · Agility-class
For operators & fleets

Control what robots can do

On-chain spend limits and an immutable intent log mean a robot can act autonomously without ever exceeding the mandate you set.

Warehouses · inspection · logistics · service
For insurers & regulators

Verify without trusting

Check a robot’s certified payload, operating zone, or human-interaction rating against an on-chain Merkle root — independently of the manufacturer.

Underwriting · compliance · resale due-diligence
§ 02 Architecture

Infrastructure, not an app.

robot-id.eth is the protocol layer beneath every OEM’s own product. You keep your UX, your brand, and your customer relationship — the protocol handles identity, settlement, and verification underneath.

Layer 3
OEM applications
Your app, your brand — full UX control
MobileFleet consoleProvisioning line
Layer 2
robot-id.eth protocol
Identity · Intent · Payments · Capability · OTA · Subscriptions
IdentityIntentPaymentsCapabilityOTA
Layer 1
Ethereum + ENS
Settlement · NameWrapper subnames · CCIP-Read resolution
MainnetNameWrapperUSDC
§ 03 The five modules

Five modules. One key.

Narrow by design. No battery passports, charging registries, V2G, or carbon credits — just what a robot needs to be a first-class, verifiable on-chain citizen.

01

Robot Identity

A permanent, programmable NFT identity per unit — ERC-721 with optional ERC-5192 soulbound lock and ERC-2981 royalties. The serial is stored as a privacy-preserving keccak256 hash, yet stays independently verifiable. Each unit resolves to SN-X.mfr.robot-id.eth and always points to its current owner.

OEMs get a tamper-proof birth certificate per robot; owners get a portable, tradable identity.
02

AI / Voice Intent

On-chain authorization and an immutable audit log for every AI-agent or voice command. The ROS2-bridge adapter maps natural-language intents to ROS2 action goals, checks them against the robot’s spend rules, and records each as executed or rejected — with the reason. Alexa, Google Assistant, and custom-LLM adapters ship too.

Operators get a provable record of who told the robot to do what — for safety, disputes, compliance.
03

Autonomous Payments

An ERC-4337 smart-account wallet per robot. The owner sets rules once — per-action ceiling, daily cap, approved-vendor allowlist, hard per-tx maximum — and the contract enforces them forever. A robot can pay a charging dock or vendor autonomously, but never exceed its mandate.

Fleets let robots transact without handing a hot wallet unlimited spend.
04

Capability Attestation

OEM-signed, append-only records of what a robot is authorized to do: max_payload_kg, operating_zone, max_speed_mps, human_interaction_certified. Full certificates live on IPFS, anchored on-chain by a Merkle root. Any insurer, regulator, or buyer can verify a claim against the latest root without trusting the OEM.

The robotics analog of a safety datasheet — verifiable, portable, audit-ready.
05

Firmware Verification

An ECDSA + Merkle over-the-air gate. Before a robot accepts an update, its controller verifies the firmware signature against the manufacturer’s registered key and cross-checks the version against the unit’s on-chain firmwareVersion to reject downgrades and replay attacks.

Stops unsigned or rolled-back firmware from ever reaching a deployed unit.
§ 04 Integration

How an OEM integrates.

From subscription to a fully-identified fleet in five steps. Every write is returned as an unsigned transaction you sign with your own wallet or multisig — the protocol never holds your keys.

1 unitup to 100,000 serials → one Merkle root → one transactionno per-unit fee · gas only
01

Subscribe in USDC

Connect a wallet, approve USDC, call subscribe(tier). The on-chain event provisions your API key and mfr.robot-id.eth namespace automatically.

02

Pre-authorize a batch

Submit up to 100,000 serials off-chain. The API builds a Merkle tree; you commit one root via submitRoot. One tx authorizes your whole run.

03

Units claim identity

Each robot calls claimWithProof(…) to mint its NFT — soulbound or transferable, your choice. No per-unit fee; gas only.

04

Attest & secure

Sign capability attestations (payload, zone, certs) and register your firmware-signing key. Set each AgentWallet’s spend rules once.

05

Resolve & operate

SN-X.mfr.robot-id.eth resolves to the current owner via CCIP-Read. Robots route intents and payments — under the limits you set.

§ 05 Live audit log

ROS2 intent, authorized on-chain.

Most robot OEMs run ROS2, so the lead adapter is ros2-bridge. Every command is classified, checked against the robot’s AgentWallet limits, routed to a ROS2 action goal, and recorded as an immutable audit entry — executed or rejected, with the reason.

IntentRouter · boston-dynamics.robot-id.eth
12:04:01 EXECUTED/robot/navigate_to_dock · “go charge at dock B” · 0 ETH
12:04:09 EXECUTED/robot/authorize_payment · vendor 0x9f…a1 · 0.05 ETH
12:04:15 REJECTEDLimitsExceeded · 8.0 ETH > per-action ceiling
12:04:22 REJECTEDRateLimited · intent flood guard
12:04:30 EXECUTED/robot/start_inspection · “patrol warehouse-01” · 0 ETH
12:04:38 EXECUTED/robot/return_to_base · task queue empty · 0 ETH
12:04:44 REJECTEDVendorNotAllowed · 0x3c…7e not on allowlist
§ 06 Developers

Built for robotics developers.

A REST + GraphQL + WebSocket API, an OpenAPI spec with Swagger UI, and typed SDKs. Reads go straight to chain via viem + Alchemy — no caching layer between you and the truth.

ros2_intent.ts · @robot-id/intent-sdk
import { RobotIntentPlugin } from '@robot-id/intent-sdk'

const plugin = new RobotIntentPlugin({
  robotId: 1n,
  apiKey: process.env.ROBOT_ID_KEY,
  adapter: 'ros2-bridge',   // alexa | google-assistant | custom-llm
})

const ack = await plugin.handleUtterance(
  "Authorize payment for charging dock B and log the task")
// → classify intent → check AgentWallet limits
// → IntentRouter.submitIntent → return ack
GET
/api/v1/robots/:tokenId
Live identity + current owner, read straight from chain
POST
/api/v1/robots
Register a single unit (returns an unsigned tx to sign)
POST
/api/v1/robots/batch/preauthorize
Up to 100,000 serials → a single Merkle root
GET
/api/v1/robots/batch/:id/proof/:serial
A unit’s claim proof (public)
GET
/api/v1/capability/:robotId
Latest capability attestations
POST
/api/v1/intent
Submit an AI/voice intent through IntentRouter
GET
/api/v1/ota/:robotId/verify
Verify a firmware signature + version
GET
/api/v1/subscription/:addr
Subscription status, tier, and expiry
§ 07 ENS naming

Every robot, a name.

On a paid subscription your OEM namespace is provisioned under robot-id.eth via ENS NameWrapper. Units resolve through a CCIP-Read gateway that reads ownerOf live — so a name always points to the robot’s current holder, even after resale, with zero gas per transfer.

robot-id.eth← protocol root (treasury)
└─boston-dynamics.robot-id.eth← OEM namespace · granted on subscription
├─sn-a1b2c3.boston-dynamics.robot-id.eth← a unit
└─warehouse-01.boston-dynamics.robot-id.eth← a site / fleet grouping
resolves via CCIP-Read → 0x7a3f…c21d (current NFT holder)
unitree.robot-id.ethfigure.robot-id.ethagility.robot-id.eth
§ 08 Live contracts

Live, source-verified contracts.

Six contracts on Ethereum mainnet, each verified on Etherscan. 53 tests cover every state-changing path, plus a forked-mainnet integration suite that exercises the real USDC token — because we launch on mainnet, not a testnet.

Source-verified on mainnet53 tests passingForked-mainnet USDC suite
ContractRoleAddress
RobotIdentityERC-721 · ERC-5192 · ERC-2981 · Merkle batch claim0xEebf76b88B31bEcc
AgentWalletERC-4337 smart account · on-chain spend rules0xE7C6703b45c6f6d8
IntentRouterAI/voice authorization + immutable audit log0xE7C6703b45c6f6d8
CapabilityRegistryOEM-signed, append-only attestations0x602C50Ac193aeD5f
OTAVerifierFirmware signature gate · downgrade reject0x8442f404B95a7D0f
SubscriptionUSDC tiers · drives key + namespace provisioning0xfd9A0F30F3C1635F
§ 09 Pricing

On-chain USDC subscriptions.

No registration fees — minting a unit costs gas only. Revenue is the subscription alone, paid in USDC and settled on-chain. Subscribing auto-provisions your API key and your mfr.robot-id.eth namespace.

Connect wallet · subscribe ↳ connect, approve USDC, and subscribe on the key page
Small Manufacturer
$5,000 / mo
1,000,000 / mo · 300 / min
  • ✓ *.mfr namespace
  • Basic intent adapters
  • REST · GraphQL · WS
Subscribe in USDC
Enterprise
$12,500 / mo
Unlimited · 5,000 / min
  • ✓ + multi-chain
  • White-label
  • Dedicated SLA
Subscribe in USDC

Give your robots an identity that outlives your database.

Integrate once. Identify every unit you’ve ever made. Keep full control.