Feed it an IDL, get a typed API in minutes. Postgres tables, REST endpoints, and WebSocket subscriptions — auto-generated from your program's events.
From IDL to production API in minutes, not weeks.
Upload your Anchor IDL, get PostgreSQL tables with correct types for every event field. No manual migrations.
Auto-generated endpoints with filtering, pagination, and sorting. Query events by any field out of the box.
WebSocket subscriptions push events the moment they land on-chain. Sub-second for dashboards and bots.
Each project gets its own schema and endpoints. One account, unlimited indexers, zero interference.
Paste or upload your Anchor IDL file. Uho parses every event type and field automatically.
Tables are created, indexing starts immediately. Historical backfill runs in parallel.
Hit your REST endpoints or open a WebSocket. Filter, paginate, aggregate — production-ready.
Uho isn't just developer-friendly — it's agent-friendly. Structured responses, introspectable schemas, and webhook-driven workflows make it the ideal data layer for autonomous Solana agents.
Every endpoint returns typed JSON that agents can parse without extraction. No HTML scraping, no guessing.
Push events to your agent's endpoint in real-time. Build reactive workflows without polling.
Agents can discover available events, fields, and types via the /schema endpoint. Self-documenting APIs.
// Your agent queries Uho directly
const events = await fetch(
"https://api.uhoindexing.com/v1/my_program" +
"/events/SwapExecuted" +
"?where=amount.gte:1000" +
"&order=slot.desc&limit=10"
);
// Typed, structured, zero parsing
const { data } = await events.json();
// → [{ user, amount, slot, tx, ... }]
// Or subscribe to real-time events
const ws = new WebSocket(
"wss://api.uhoindexing.com/v1/my_program/ws"
);
ws.send(JSON.stringify({
subscribe: "SwapExecuted",
filter: { amount: { gte: 1000 } }
}));No infrastructure to manage. No subgraph manifests. No YAML configs. Just your IDL and two commands.
Open source · Free tier available · No credit card required