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" });

Refer to the ENSjs documentation for futher usage.