Skip to content

Using ENSNode with ENSjs

To use ENSNode with @ensdomains/ensjs, follow the ENSjs documentation for custom subgraph URIs, replacing the subgraph URI with your ENSNode’s subgraph-compatible api endpoint.

import { http, createClient } from 'viem'
import { mainnet } from 'viem/chains'
import { addEnsContracts } from '@ensdomains/ensjs'
import { getSubgraphRecords } from '@ensdomains/ensjs/subgraph'
const mainnetWithEns = addEnsContracts(mainnet)
const chain = {
...mainnetWithEns,
subgraphs: {
ens: {
// use the NameHash-hosted 'alpha' instance subgraph-compatible responses with (mainnet, Base, and Linea) names
url: 'https://api.alpha.ensnode.io/subgraph',
// or use your own local instance
// url: 'http://localhost:42069/subgraph',
},
},
}
const client = createClient({
chain,
transport: http(),
})
const names = await getNamesForAddress(client, { name: 'validator.eth' })

ENSjs Documentation

Refer to the ENSjs documentation for futher usage.