3

Using the https://ens.domains/ is there a way to query the ENS name service using an API endpoint and get a JSON response? I want to be able to integrate these eth addresses into my application.

2 Answers 2

0

Cindercloud has a rest-endpoint which is specifically designed for this.

Documentation on this endpoint can be found here.

7
  • that requires signing up for that service. etherscan.io/enslookup -- etherscan has a free lookup tool, but i'm not sure how to output the json api Jun 10, 2019 at 16:19
  • Instead of using the rapidapi endpoint, you can also use api.cinder.cloud. It's rate limited, but free.
    – Qkyrie
    Jun 11, 2019 at 8:19
  • Looks like you own that api restpoint, hence the bias. thanks anyways. I want to just do a simple call to retrieve what a .eth domain resolves to. why is it so difficult to do? Jun 11, 2019 at 14:45
  • I do indeed. It's not that difficult, it's just calling the ENSResolver contract on chain with the correct data, but you asked for an API endpoint which returns a json result and I happen to have something like that, which is why I proposed it as a solution :)
    – Qkyrie
    Jun 12, 2019 at 14:13
  • Do I need to install any other js libraries or sign up for some token key id? Jun 12, 2019 at 15:24
5

Old question, but this was the first result on Google. Since 2019, Cloudflare now hosts a free Ethereum web resolver. You can read more here: https://blog.cloudflare.com/cloudflare-distributed-web-resolver/

The ethers.js project is a fantastic, easy to use, web-ready Ethereum client that supports many providers, one of which being a CloudflareProvider (https://docs.ethers.io/v5/api/providers/api-providers/#CloudflareProvider)

So resolving an ENS address to a wallet address is now as easy as:

(Last updated November 22, 2023)

  1. Install ethers.js, with npm for example:
npm install ethers

  1. Import the module:
import { ethers } from 'ethers'
  1. Resolve:
const provider = new ethers.CloudflareProvider()
const address = await provider.resolveName('vitalik.eth')
console.log(address)

// Outputs 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045

Happy coding :)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.