ENSv2 Readiness
Build with the ENS Omnigraph today and your app will support ENSv2 the moment it launches — with zero downtime or code changes.
Historical limitations of building on ENS
Section titled “Historical limitations of building on ENS”Full access to ENS data formerly required two separate data fetching strategies working in parallel:
- ENS resolution — RPC calls with CCIP-read support for offchain data (e.g. via a popular package such as
viemorwagmi) to perform forward or reverse ENS resolution. - Indexed ENS data — the ENS Subgraph for indexed ENS data, such as discovering names owned by an address and all other ENS state outside of ENS resolutions.
Neither system alone was complete.
- ENS resolution gives you resolver records, but no access to all the other state about ENS! ENS Resolutions as exposed through popular libraries such as
viemandwagmiare also painfully “close to the metal”, putting the burden on app developers to learn and carefully implement complex details about interpreting raw values returned by the ENS protocol. - The Subgraph gives you queryable indexed ENS data but has critical limitations, including:
- The Subgraph is single-chain.
- The Subgraph has no support for ENSv2’s fundamental data model changes.
- The Subgraph cannot perform ENS resolutions.
- The Subgraph doesn’t understand key implementation details of the ENS protocol such as ENSIP-10, ENSIP-19, ENS name normalization (ENSIP-15), etc.
- The Subgraph exposes too many internal implementation detail complexities of ENS for app developers.
In the past, apps building on ENS have had to live with these split fetching strategies, their limitations, and their downstream complexities. And we should note, with ENSv2, the complexity of ENS’s onchain state space meaningfully increases.
How ENSNode solves this
Section titled “How ENSNode solves this”The Unigraph Data Model — ENSIndexer offers the unigraph plugin, which builds a unified polymorphic indexed data model in ENSDb of multiple ENSv1 Nametrees (the ENSv1 onchain state model found in the ENS root registry, Basenames on Base, Lineanames on Linea, 3DNS on Optimism, etc.), and the ENSv2 Namegraph (the ENSv2 onchain state model that ENSv1 domains may optionally be upgraded to, which allows for dynamic reconfiguration of the name hierarchy, including possible cycles and infinite aliases).
The Omnigraph API — The ENS Omnigraph API is delivered by ENSApi and builds upon and refines the Unigraph data model held in ENSDb. The Omnigraph API provides a highly tailored, fully typed GraphQL API that understands ENS protocol implementation details—including ENSIP-10, ENSIP-15, ENSIP-19, and much more—so that you can focus on building your app (and not all the internal implementation complexities of the ENS protocol).
Accelerated ENS Resolution — The ENS Omnigraph API, through ENSApi, internally implements the ENS Universal Resolver on top of the indexed ENS Unigraph data model in ENSDb. We refer to this idea as “ENS Protocol Acceleration”. For cases where ENS Resolution requires offchain data, ENSApi internally performs the CCIP-read operations on your behalf to ensure every resolution request accurately follows all ENS protocol standards. No need for any RPC calls in your app, and your ENS resolutions for indexed names could speed up by an order of magnitude or more!
What You Need to Do
Section titled “What You Need to Do”Resolving Records — If you’re resolving ENS names, you need to ensure that your resolve RPC calls go to the new UniversalResolverV2 contract, when it is deployed or risk stale and incorrect records. This update is usually handled behind the scenes by updating viem or wagmi, just make sure to update in time!
Instead, you can resolve records via ENSNode, and enjoy automatic support for ENSv2 when it launches while instantly benefitting from ENS Protocol Acceleration, dramatically reducing resolution duration for indexed names.
Querying ENS Data — If you’re querying ENS names via an indexed service like the legacy Subgraph, you need to update to an ENSv2-ready indexer like ENSNode; after ENSv2 launches, data served by the Subgraph (and any ENSv1-only indexers) will be instantly out of date.
Pick Your Integration
Section titled “Pick Your Integration”ENSNode meets you wherever you are — drop-in React components, a typed TypeScript SDK, raw GraphQL, direct ENSDb access, CLI tooling, or AI agent integration. Pick the surface that fits your stack and ship ENSv2-ready code today.