Skip to main content

Query DAOs

This page covers all the ways to fetch DAO data from the DAO Café GraphQL API. Endpoint: https://dao.cafe/graphql

Get All DAOs

Fetch a paginated list of all DAOs, ordered by creation date.
query GetAllDAOs {
  daos(limit: 10, orderBy: "createdAt", orderDirection: "desc") {
    items {
      id
      name
      tokenSymbol
      proposalCount
      totalVoters
      manager
      chainId
    }
  }
}

Pagination

Use limit and offset for pagination:
query GetDAOsPage2 {
  daos(limit: 10, offset: 10, orderBy: "createdAt", orderDirection: "desc") {
    items {
      id
      name
    }
  }
}

Get DAO by ID

Fetch a single DAO using its composite ID (chainId_governorAddress).
query GetDAOById {
  dao(id: "8453_0x1234567890abcdef1234567890abcdef12345678") {
    id
    name
    governor
    token
    timelock
    tokenName
    tokenSymbol
    totalSupply
    proposalCount
    totalVoters
    votingDelay
    votingPeriod
    proposalThreshold
    createdAt
  }
}

Get DAOs by Manager Address

Find all DAOs managed by a specific address. Useful for finding DAOs controlled by external systems or specific wallets.
query GetDAOsByManager {
  daos(where: { manager: "0xYourManagerAddress" }) {
    items {
      id
      name
      governor
      token
      chainId
    }
  }
}

With Variables

query GetDAOsByManager($managerAddress: String!) {
  daos(where: { manager: $managerAddress }) {
    items {
      id
      name
      token
      governor
    }
  }
}
Variables:
{
  "managerAddress": "0x1234567890abcdef1234567890abcdef12345678"
}

Get DAO by Token Address

Find a DAO by its governance token contract address.
query GetDAOByToken {
  daos(where: { token: "0xTokenAddress", chainId: 8453 }) {
    items {
      id
      name
      governor
      totalVoters
      proposalCount
    }
  }
}

With Variables

query GetDAOByToken($tokenAddress: String!, $chainId: Int!) {
  daos(where: { token: $tokenAddress, chainId: $chainId }) {
    items {
      id
      name
      governor
      totalVoters
    }
  }
}

Get DAO by Governor Address

Find a DAO by its governor contract address.
query GetDAOByGovernor {
  daos(where: { governor: "0xGovernorAddress", chainId: 8453 }) {
    items {
      id
      name
      token
      timelock
      manager
    }
  }
}
Since the DAO ID is chainId_governorAddress, you can also use dao(id: "chainId_governorAddress") directly.

Get DAOs by Chain ID

Filter DAOs by network.

Base Mainnet Only

query GetBaseDAOs {
  daos(where: { chainId: 8453 }) {
    items {
      id
      name
      tokenSymbol
      proposalCount
    }
  }
}

Sepolia Testnet Only

query GetSepoliaDAOs {
  daos(where: { chainId: 11155111 }) {
    items {
      id
      name
      tokenSymbol
    }
  }
}

Fetch a DAO along with its proposals, votes, or token holders.

DAO with Proposals

query GetDAOWithProposals {
  dao(id: "8453_0xGovernorAddress") {
    id
    name
    proposalCount
    proposals(limit: 5, orderBy: "createdAt", orderDirection: "desc") {
      items {
        id
        description
        state
        forVotes
        againstVotes
        voteStart
        voteEnd
      }
    }
  }
}

DAO with Token Holders

query GetDAOWithHolders {
  dao(id: "8453_0xGovernorAddress") {
    id
    name
    totalVoters
    tokenHolders(limit: 10, orderBy: "votes", orderDirection: "desc") {
      items {
        holder
        balance
        votes
      }
    }
  }
}

DAO with Delegates

query GetDAOWithDelegates {
  dao(id: "8453_0xGovernorAddress") {
    id
    name
    delegates(limit: 10) {
      items {
        delegator
        toDelegate
        updatedAt
      }
    }
  }
}

Available DAO Fields Reference

Here’s a complete list of fields you can query on a DAO:
FieldTypeDescription
idStringComposite ID: chainId_governorAddress
chainIdIntNetwork chain ID
governorAddressGovernor contract
tokenAddressGovernance token
timelockAddressTimelock controller
creatorAddressDAO creator
nameStringDAO name
tokenNameStringToken name
tokenSymbolStringToken symbol
totalSupplyBigIntTotal token supply
proposalCountIntTotal proposals
totalVotersIntAddresses with votes
managerAddressManager (optional)
votingDelayBigIntDelay before voting
votingPeriodBigIntVoting duration
proposalThresholdBigIntTokens to propose
quorumNumeratorBigIntQuorum % numerator
createdAtBigIntCreation timestamp
blockNumberBigIntCreation block
transactionHashHexCreation tx hash