Listing a Users Names

In a fair bit of cases you might want to show off all names that a user has. Due to the nature of how the ENS Protocol works under the hood this might be a slightly more difficult task. Luckily tooling has been written to accomodate for this and to make it easier.

TODO: Visual Demonstration of name enumeration

Why not all names?

ENS Resolution (read more here) relies on smart-contracts & external logic to resolve from name to address. This means that ahead of time we don't know what names a user has. Notable exceptions include first-layer .eth names, and wrapped names, these are on-chain, and indexable through scanning events on the appropriate contracts. Below you will find APIs for querying these names.

Guidelines

When using one of the methods described below it is generally recommended to allow users to input a name using an input box and to verify it resolves to the correct address upon user-completion.

Alchemy (read more)

The Alchemy platform has provided several endpoints for interacting with ENS names aswell as to query a list of names a user has.

Alchemy ENS

TODO: Code Snippet for the Graph

The Graph (read more)

The ENS Team has worked together closely with the graph to provide the ENS Subgraph. This subgraph indexes ENS name registrations & basic record info for names that are part of the [ETH Registrar]

For more information see why not all names are showing up.

Querying the Subgraph

TODO: Code Snippet for the Graph

Basement.xyz (read more)

Something cool about basement here.

For more information see why not all names are showing up.

Querying Basement

TODO: Code Snippet for the Graph