# ENS Data — the simplest way to get ENS records as JSON Source: https://ensdata.net ## Summary ENS Data is a free service that returns Ethereum Name Service text records for a wallet address or ENS name as JSON, with no API key required; a request is made by appending the address or name to ensdata.net. Emoji, subdomains and offchain names are supported, and reverse lookups from an address return its primary ENS and that name's records. The service also offers endpoints for avatars and content hashes, adds image URLs for NFT records, and can match addresses to Farcaster profiles or show ENS expiry dates through query parameters. Full records are cached for 72 hours, and only Ethereum Mainnet is currently supported. ## Article Look up Ethereum Name Service text records for any address and get them back in convenient JSON format. Is there an API? Append the wallet address or ENS after ensdata.net, that’s it. You don’t need any API keys. Example: ensdata.net/lochie.ethensdata.net/0xd55Ab78034FcB6349830d0CfdFEFB6A8051d2685ensdata.net/👽👽👽.ethensdata.net/jack.w.eth.idensdata.net/gregskril.nfty.eth Is this free to use? Yes, it’s free for everyone thanks to ENS Small Grants. If you wanna support this project send some eth to ens.pug.eth Can this API return an ENS if I give it a wallet address? Yep, it will return the ENS associated with that address, a primary ENS, and records for that primary ENS. Emoji + subdomains + offchain names are supported. What if I only want to get the avatar? Setting up your own decentralized infra can be a pain, so I got you covered with a special endpoint. https://ensdata.net/media/avatar/dwr.ethhttps://ensdata.net/media/avatar/0xE7bd51Dc30d4bDc9FDdD42eA7c0a283590C9D416 What if I only want to get the content hash? There is a special endpoint for that too. It always returns fresh data without caching. https://ensdata.net/content-hash/v1rtl.eth What about those pesky EIP155:1/ERC721 NFT records? When NFTs are detected, the response will include an additional key with an appended _url at the end which points to a CDN that hosts the image. Example: "cover": "eip155:1/erc721:0x1e4c...cfff/89" will produce an extra field of "cover_url": "https://gateway.pinata.cloud/ipfs/bafy...nsoe" You can render that extra URL as an image or do it yourself and set up your own data provider / CDN that handles the original NFT record. Can you match a wallet address or ENS to a Farcaster profile? Yes, but only if that address or ENS is associated with a Farcaster profile. You also need to use a special ?farcaster=true parameter. https://ensdata.net/dwr.eth?farcaster=true Can I also get the expiry date for an ENS? Use the special ?expiry=true parameter. https://ensdata.net/pugson.eth?expiry=true How fresh is this data? Full records are cached for 72 hours. If you need this data to be more up to date, let me know on Twitter or Telegram and we can work something out. Getting rate limited? If you need to make more queries without getting rate limited, message me on Twitter or Telegram and we can work something out. Which networks are supported? Only Ethereum Mainnet is supported right now. How can I get notified about API changes? Subscribe to this Telegram channel for development updates. Or if you’re one of those weirdos that do not use Telegram, you can preview it on the web.