ENS Social Graph
Discover social connections, shared communities, and relationship graphs built from ENS data.
Endpointsโ
| Endpoint | Description | Price |
|---|---|---|
GET /api/social/ens/{name}/connections | Social connections | $0.02 |
GET /api/social/ens/{name}/communities | Shared communities | $0.02 |
GET /api/social/ens/{name}/similar | Similar profiles | $0.02 |
GET /api/social/ens/mutual | Mutual connections | $0.02 |
GET /api/social/ens/{name}/connectionsโ
Discover social connections from ENS text records and on-chain activity.
Connection Sourcesโ
- ENS text records โ Twitter, GitHub, Discord, Telegram
- NFT communities โ Shared collections
- DAO memberships โ Governance token holders
- On-chain interactions โ Transaction history
Requestโ
curl https://api.web3identity.com/api/social/ens/vitalik.eth/connections
Responseโ
{
"name": "vitalik.eth",
"connections": {
"twitter": {
"handle": "VitalikButerin",
"verified": true,
"followers": 5200000
},
"github": {
"username": "vbuterin",
"verified": true,
"repos": 89,
"followers": 12000
},
"farcaster": {
"fid": 5650,
"username": "vitalik.eth",
"followers": 450000
},
"lens": {
"handle": "vitalik.lens",
"profileId": "0x0a",
"followers": 125000
},
"telegram": null,
"discord": null
},
"linkedAddresses": [
"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
],
"score": {
"connectivity": 95,
"verification": 85
}
}
SDKโ
const connections = await client.getENSConnections('vitalik.eth');
GET /api/social/ens/{name}/communitiesโ
Find communities and groups associated with an ENS name.
Requestโ
curl https://api.web3identity.com/api/social/ens/vitalik.eth/communities
Responseโ
{
"name": "vitalik.eth",
"communities": {
"nfts": [
{
"collection": "CryptoPunks",
"contract": "0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB",
"count": 2,
"floorPrice": 45.5
}
],
"daos": [
{
"name": "ENS DAO",
"token": "ENS",
"votingPower": 100000,
"delegatedTo": null
},
{
"name": "Gitcoin",
"token": "GTC",
"votingPower": 50000
}
],
"protocols": [
{ "name": "Uniswap", "activity": "high" },
{ "name": "Aave", "activity": "medium" }
]
}
}
GET /api/social/ens/{name}/similarโ
Find similar profiles based on communities, interests, and on-chain activity.
Requestโ
curl "https://api.web3identity.com/api/social/ens/vitalik.eth/similar?limit=10"
Responseโ
{
"name": "vitalik.eth",
"similar": [
{
"name": "nick.eth",
"address": "0xb8c2C29ee19D8307cb7255e1Cd9CbDE883A267d5",
"similarity": 0.89,
"sharedCommunities": ["ENS DAO", "CryptoPunks"],
"sharedInterests": ["ethereum", "cryptography"]
},
{
"name": "brantly.eth",
"address": "0x983110309620D911731Ac0932219af06091b6744",
"similarity": 0.85,
"sharedCommunities": ["ENS DAO"],
"sharedInterests": ["ens", "identity"]
}
],
"count": 10
}
Query Parametersโ
| Param | Type | Default | Description |
|---|---|---|---|
limit | number | 10 | Max results (1-50) |
minSimilarity | number | 0.5 | Minimum score (0-1) |
includeReasons | boolean | false | Include why similar |
GET /api/social/ens/mutualโ
Find mutual connections between two ENS names.
Requestโ
curl "https://api.web3identity.com/api/social/ens/mutual?names=vitalik.eth,nick.eth"
Responseโ
{
"names": ["vitalik.eth", "nick.eth"],
"mutual": {
"communities": [
{ "name": "ENS DAO", "type": "dao" },
{ "name": "CryptoPunks", "type": "nft" }
],
"followers": {
"twitter": ["ethereum", "ensdomains"],
"farcaster": ["dwr.eth", "v"]
},
"transactions": {
"count": 3,
"lastInteraction": "2025-12-15T00:00:00Z"
}
},
"connectionStrength": 0.78
}
Social Scoreโ
GET /api/social/ens/{name}/scoreโ
Calculate social credibility score based on connections.
curl https://api.web3identity.com/api/social/ens/vitalik.eth/score
{
"name": "vitalik.eth",
"scores": {
"overall": 98,
"components": {
"verification": 100,
"connectivity": 95,
"activity": 92,
"reputation": 100,
"longevity": 100
}
},
"badges": [
{ "name": "OG", "description": "ENS registered before 2019" },
{ "name": "Verified", "description": "All social accounts verified" },
{ "name": "Whale", "description": "Significant on-chain holdings" },
{ "name": "Builder", "description": "Active GitHub contributions" }
]
}
Network Analysisโ
GET /api/social/ens/{name}/networkโ
Get the social network graph (who follows who).
curl "https://api.web3identity.com/api/social/ens/vitalik.eth/network?depth=2"
{
"center": "vitalik.eth",
"nodes": [
{ "id": "vitalik.eth", "depth": 0 },
{ "id": "nick.eth", "depth": 1 },
{ "id": "brantly.eth", "depth": 1 },
{ "id": "gregskril.eth", "depth": 2 }
],
"edges": [
{ "from": "vitalik.eth", "to": "nick.eth", "type": "follows", "platform": "farcaster" },
{ "from": "nick.eth", "to": "brantly.eth", "type": "follows", "platform": "twitter" }
],
"stats": {
"totalNodes": 4,
"totalEdges": 3,
"depth": 2
}
}
Verification Statusโ
GET /api/social/ens/{name}/verifyโ
Check which social accounts are cryptographically verified.
curl https://api.web3identity.com/api/social/ens/vitalik.eth/verify
{
"name": "vitalik.eth",
"verifications": {
"twitter": {
"handle": "VitalikButerin",
"verified": true,
"method": "tweet-signature",
"verifiedAt": "2023-01-15T00:00:00Z"
},
"github": {
"username": "vbuterin",
"verified": true,
"method": "gist-signature",
"verifiedAt": "2023-01-10T00:00:00Z"
},
"farcaster": {
"username": "vitalik.eth",
"verified": true,
"method": "wallet-connection"
}
},
"trustScore": 100
}
SDK Examplesโ
JavaScriptโ
import { Web3IdentityClient } from '@web3identity/sdk';
const client = new Web3IdentityClient();
// Get social connections
const connections = await client.getENSConnections('vitalik.eth');
// Find similar profiles
const similar = await client.findSimilarProfiles('vitalik.eth', {
limit: 20,
minSimilarity: 0.7
});
// Check mutual connections
const mutual = await client.getMutualConnections(
'vitalik.eth',
'nick.eth'
);
// Get social graph
const network = await client.getENSNetwork('vitalik.eth', {
depth: 2
});
Pythonโ
from web3identity import Client
client = Client()
# Get connections
connections = client.get_ens_connections('vitalik.eth')
# Find similar
similar = client.find_similar('vitalik.eth', limit=20)
Errorsโ
| Code | HTTP | Description |
|---|---|---|
NAME_NOT_FOUND | 404 | ENS name not registered |
NO_SOCIAL_DATA | 404 | No social records found |
DEPTH_EXCEEDED | 400 | Network depth too deep (max 3) |
Related Endpointsโ
- Farcaster โ Farcaster social data
- Lens Protocol โ Lens social graph
- ENS Resolution โ ENS profiles
- Text Records โ ENS text records