Permissions By Contract
Roles and users granted on resources for a registrar or registry contract.
Run in ENSAdmin
Open an interactive playground to execute this query on our sepolia-v2
ENSNode instance.
query PermissionsByContract(
$contract: AccountIdInput!
) {
permissions(by: { contract: $contract }) {
resources {
edges {
node {
resource
users {
edges {
node {
id
user { address }
roles
}
}
}
}
}
}
events { totalCount edges { node { topics data timestamp } } }
}
} {
"contract": {
"chainId": 99911155111,
"address": "0x26e5e80e8f36607ef401443fb34eea363c86e8f7"
}
} {
"data": {
"permissions": {
"events": {
"totalCount": 1,
"edges": [
{
"node": {
"topics": [
"0x0d35bf721a39b614de00ca5038e1deb0cb0c69a278645e83405a7226cf80ba3c",
"0x0000000000000000000000000000000000000000000000000000000000000000",
"0x000000000000000000000000ffffffffff52d316b7bd028358089bc8066b8f80"
],
"data": "0x00000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111111111111111111111111111111111111",
"timestamp": "1777666931"
}
}
]
},
"resources": {
"edges": [
{
"node": {
"resource": "0",
"users": {
"edges": [
{
"node": {
"id": "99911155111-0x26e5e80e8f36607ef401443fb34eea363c86e8f7-0-0xffffffffff52d316b7bd028358089bc8066b8f80",
"roles": "7719472615821079694904732333912527190217998977709370935963838933860875309329",
"user": {
"address": "0xffffffffff52d316b7bd028358089bc8066b8f80"
}
}
}
]
}
}
}
]
}
}
}
} # POST JSON to your ENSNode Omnigraph endpoint (same path enssdk uses).
curl -sS -X POST "https://api.v2-sepolia.ensnode.io/api/omnigraph" \
-H "Content-Type: application/json" \
-d @- <<'EOF'
{
"query": "query PermissionsByContract( $contract: AccountIdInput! ) { permissions(by: { contract: $contract }) { resources { edges { node { resource users { edges { node { id user { address } roles } } } } } } events { totalCount edges { node { topics data timestamp } } } } }",
"variables": {
"contract": {
"chainId": 99911155111,
"address": "0x26e5e80e8f36607ef401443fb34eea363c86e8f7"
}
}
}
EOF
ENS Omnigraph GraphQL
query PermissionsByContract( $contract: AccountIdInput!) { permissions(by: { contract: $contract }) { resources { edges { node { resource users { edges { node { id user { address } roles } } } } } } events { totalCount edges { node { topics data timestamp } } } }}Payload and transport examples
{ "contract": { "chainId": 99911155111, "address": "0x26e5e80e8f36607ef401443fb34eea363c86e8f7" }}
Response is an illustrative snapshot; live data depends on your ENSNode instance. The curl tab shows a POST to
https://api.v2-sepolia.ensnode.io/api/omnigraph
Back to Examples