Hello from Web3.bio Profile APIs

The Web3.bio Profile APIs enable developers to easily and quickly integrate Web3 universal profiles from Ethereum (ENS), Lens Protocol, Farcaster, .bit and Next.ID into their applications. These APIs are already integrated into Web3.bio search and profile services.

Profile Avatar
Stani
0x7241...9dff
Building @LensProtocol & @AaveAave
Profile Avatar
dwr.eth
0xd702...8ff2
Working on Farcaster and Warpcast.
Profile Avatar
vitalik.eth
0xd8da...6045
Profile Avatar
nick.eth
0xb8c2...67d5
Lead developer of ENS & Ethereum Foundation alum. Certified rat tickler. he/him.

This documentation describes the publicly available endpoints of the Web3.bio Profile API, which is a set of RESTful JSON APIs. It explains how to use them and what they return. Currently, the APIs are offered for free to assist developers in getting started with Web3 profiles. We will do our best to maintain uptime.

API Endpoints

The main public API endpoint domain for Web3.bio Profile APIs is api.web3.bio, and the testnet domain is api-staging.web3.bio.

GET
https://api.web3.bio/profile/{identity}
Retrieve universal profiles across platforms
GET
https://api.web3.bio/profile/ens/{identity}
Retrieve an ENS profile
GET
https://api.web3.bio/profile/lens/{identity}
Retrieve a Lens profile
GET
https://api.web3.bio/profile/farcaster/{identity}
Retrieve a Farcaster profile
GET
https://api.web3.bio/profile/dotbit/{identity}
Retrieve a .bit profile

Universal Profile API

Retrieve Universal profiles across platforms

GET
https://api.web3.bio/profile/{identity}

Parameter

  • identity string - An Ethereum address, an ENS domain, a Lens handle, a Farcaster username (ends with .farcaster), a .bit domain, or a Next.ID address.

Examples

Responses

// https://api.web3.bio/profile/0xd8da6bf26964af9d7eed9e03e53415d37aa96045
// https://api.web3.bio/profile/vitalik.eth
[ { "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "identity": "vitalik.eth", "platform": "ENS", "displayName": "vitalik.eth", "avatar": "https://cdn.simplehash.com/assets/db17eebeede377614b156126590d5e4c521a80fef6bdce78e8e6563b4526b417.gif", "email": null, "description": null, "location": null, "header": null, "links": { "website": { "link": "https://vitalik.ca", "handle": "vitalik.ca" } }, "addresses": { "eth": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" } }, { "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "identity": "vbuterin", "platform": "farcaster", "displayName": "Vitalik Buterin", "avatar": "https://i.imgur.com/gF9Yaeg.jpg", "email": null, "description": "hullo", "location": null, "header": null, "links": { "farcaster": { "link": "https://warpcast.com/vbuterin", "handle": "vbuterin" } } }, { "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "identity": "vitalik.lens", "platform": "lens", "displayName": "Vitalik Buterin", "avatar": "https://ik.imagekit.io/lens/media-snapshot/d2762e3b5f2532c648feec96bf590923ea6c3783fee428cbb694936ce62962e0.jpg", "email": null, "description": "Ethereum Fable of the Dragon Tyrant (not mine but it's important): https://www.youtube.com/watch?v=cZYNADOHhVY Abolish daylight savings time and leap seconds", "header": "", "links": { "lenster": { "link": "https://lenster.xyz/u/vitalik", "handle": "vitalik" } } } ]

ENS Profile API

Retrieve an ENS profile

GET
https://api.web3.bio/profile/ens/{identity}

Parameter

  • identity string - An Ethereum address or an ENS domain.

Examples

Responses

// https://api.web3.bio/profile/ens/0xd8da6bf26964af9d7eed9e03e53415d37aa96045 
// https://api.web3.bio/profile/ens/vitalik.eth
{ "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "identity": "vitalik.eth", "platform": "ENS", "displayName": "vitalik.eth", "avatar": "https://cdn.simplehash.com/assets/db17eebeede377614b156126590d5e4c521a80fef6bdce78e8e6563b4526b417.gif", "email": null, "description": null, "location": null, "header": null, "links": { "website": { "link": "https://vitalik.ca", "handle": "vitalik.ca" } }, "addresses": { "eth": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" } }

Lens Profile API

Retrieve a Lens profile

GET
https://api.web3.bio/profile/lens/{identity}

Parameter

  • identity string - An Ethereum/Polygon address or a Lens handle.

Examples

// https://api.web3.bio/profile/lens/0x7241dddec3a6af367882eaf9651b87e1c7549dff
// https://api.web3.bio/profile/lens/stani.lens
{ "address": "0x7241dddec3a6af367882eaf9651b87e1c7549dff", "identity": "stani.lens", "platform": "lens", "displayName": "Stani", "avatar": "https://ik.imagekit.io/lens/media-snapshot/e3adfb7046a549480a92c63de2d431f1ced8e516ea285970267c4dc24f941856.png", "email": null, "description": "Building @LensProtocol & @AaveAave", "header": "https://ik.imagekit.io/lens/media-snapshot/692020434413dd88dd96a93f9df08cfefd0a3b84abba5772c14a2f56ac01b0cd.jpg", "links": { "lenster": { "link": "https://lenster.xyz/u/stani", "handle": "stani" }, "website": { "link": "https://lens.xyz", "handle": "lens.xyz" } } }

Farcaster Profile API

Retrieve a Farcaster profile

GET
https://api.web3.bio/profile/farcaster/{identity}

Parameter

  • identity string - An Ethereum address or a Farcaster username.

Examples

// https://api.web3.bio/profile/farcaster/0x934b510d4c9103e6a87aef13b816fb080286d649
// https://api.web3.bio/profile/farcaster/suji
{ "address": "0x934b510d4c9103e6a87aef13b816fb080286d649", "identity": "suji", "platform": "farcaster", "displayName": "Suji Yan", "avatar": "https://i.seadn.io/gae/ILVYPJ4U951KDc4F2XszloLR0CyAS7odjfr_8GjnrRT-Mdw_BPOMZOou4MStp-imxIIUGoysFZImHAksLQMzcOy1zGIC8T6gxqx-jg?w=500&auto=format", "email": null, "description": "Mask.io / suji_yan.twitter", "location": null, "header": null, "links": { "farcaster": { "link": "https://warpcast.com/suji", "handle": "suji" }, "twitter": { "link": "https://twitter.com/suji_yan", "handle": "suji_yan" } } }

.bit Profile API

Retrieve a .bit profile

GET
https://api.web3.bio/profile/dotbit/{identity}

Parameter

  • identity string - An Ethereum address or a .bit username.

Examples

// https://api.web3.bio/profile/dotbit/0xfa8fa9cf58eaff86aa208366a14d69de87867f1d
// https://api.web3.bio/profile/dotbit/bestcase.bit
{ "address": "0xfa8fa9cf58eaff86aa208366a14d69de87867f1d", "identity": "bestcase.bit", "platform": "dotbit", "displayName": "bestcase.bit", "avatar": "https://uploads-ssl.webflow.com/621ed3ca24af847de76a2dae/635cf43497c26382c70e1c15_bestcase.jpg", "description": ".bit is a brand dedicated to assist every single individual and community to unleash their potential and discover more possibilities through the development of self-sovereign identity. .bit (https://did.id) is also a product which is the only cross-chain unified DID protocol, based on the unique technical architecture, .bit provides services for more than Web3 users. .bit is able to verify signatures by different asymmetric cryptographic algorithms, which allow users to manage and control their .bit accounts with public chain addresses, email addresses, even customized passcodes and biometric data from mobile devices. .bit determines to build the most practical and applicable suite of infrastructural tools, safeguarding the endowed right of identity sovereignty for each bit of the world.", "location": null, "header": null, "links": { "twitter": { "handle": "dotbitHQ", "link": "https://twitter.com/dotbitHQ" }, "github": { "handle": "dotbitHQ", "link": "https://github.com/dotbitHQ" }, "discord": { "handle": "did", "link": "https://discord.com/invite/did" }, "website": { "handle": "www.did.id", "link": "https://www.did.id/" }, "nostr": { "handle": "npub1y0epuwrv23vcue2g5ft8armwdsjfd4dy6frzwmw72y847d3v2ahq7vh2ag", "link": "https://snort.social/p/npub1y0epuwrv23vcue2g5ft8armwdsjfd4dy6frzwmw72y847d3v2ahq7vh2ag" } }, "addresses": { "btc": "3gcu7eghuqanqxun2osmx1bavcvvcsjrrc", "doge": "dcuu7pt2dj1u3wzyysvcmwegps3vp81pzj", "bsc": "0xfa8fa9cf58eaff86aa208366a14d69de87867f1d", "polygon": "0xb2e895579b2ace78e2de99af2d4820e3922b932f", "dot": "15w9dugwzz8sqvpzry46j4lrrd8ttdfnx2qqf4arm6jqn2rn", "ltc": "lef4g3y8ydpyjurtbdg2zsboxzyxcuqfvf", "ckb": "ckb1qzfhdsa4syv599s2s3nfrctwga70g0tu07n9gpnun9ydlngf5vsnwqgrl286nn6catlcd23qsdn2zntfm6rcvlcaq0agl2w0tr40lp42yzpkdg2dd80g0pnlr5whhswq", "eth": "0xfa8fa9cf58eaff86aa208366a14d69de87867f1d", "trx": "tkxhn9yswcnk2c39lewdne4dcl8xnee2nf" } }

Status and Errors

Successful responses are indicated with a 200 HTTP status code.

Error responses are served with a non-200-series HTTP code, specifically 404 or 500. Typical error responses contain an error node indicating a human-readable description of the error.

// https://api.web3.bio/profile/web3bio_example.eth
{ "address": null, "identity": "web3bio_example.eth", "platform": "ENS", "error": "Not Found" }

Release Notes

We are gradually making updates to Web3.bio Profile APIs. You may expect new features, improvements and bug fixes. If you have any feedback on the features or want to report a bug, please reach out to us on Web3.bio Twitter or Telegram group.

🔮 August Update

  • Feature Added .bit query support to the Profile APIs.
  • Update Added ENS username support in the Farcaster Profile API.

🎊 July Update

  • Feature Added Next.ID query support to the Profile APIs.

🎁 June Update

  • Feature Added Universal Profile API. Developers can retrieve universal profiles across supported platforms with a single query.

🎉 May Update

  • Feature Added Ethereum Name Service (ENS), Lens, and Farcaster support to the Profile APIs.