Skip to main content

Documentation Index

Fetch the complete documentation index at: https://kleros-mintlify-changelog-2026-05-12-1778458371.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

All Kleros subgraphs are deployed on The Graph. Use these endpoints to query Kleros data via GraphQL.
Subgraph endpoints on the decentralized network require a Graph API key. Get one at thegraph.com/studio. In template mappings you will see {{{graphApiKey}}} — this is injected at runtime by the Kleros SDK.

V2 Subgraphs (Arbitrum)

Core Subgraph (KlerosCore, courts, disputes, jurors, stakes)

EnvironmentNetworkStudio Page
MainnetArbitrum Onekleros-v2-coreneo
TestnetArbitrum Sepoliakleros-v2-core-testnet
DevnetArbitrum Sepoliakleros-v2-core-devnet
Decentralized network query URL pattern:
https://gateway.thegraph.com/api/{YOUR_API_KEY}/subgraphs/id/{SUBGRAPH_ID}
Get the SUBGRAPH_ID (deployment hash) from the Studio pages linked above — it is shown on the subgraph’s Overview tab.

Dispute Template Registry Subgraph

EnvironmentNetworkStudio Page
MainnetArbitrum Onekleros-v2-drt
TestnetArbitrum Sepoliakleros-v2-drt-arbisep-testnet

V2 Product Subgraphs

Escrow V2

EnvironmentNetworkSubgraph ID
MainnetArbitrum One96vpnRJbRVkzF6usMNYMMoziSZEfSwGEDpXNi2h9WBSW
DevnetArbitrum Sepolia3aZxYcZpZL5BuVhuUupqVrCV8VeNyZEvjmPXibyPHDFQ
Full query URL (mainnet):
https://gateway.thegraph.com/api/{YOUR_API_KEY}/subgraphs/id/96vpnRJbRVkzF6usMNYMMoziSZEfSwGEDpXNi2h9WBSW

Curate V2

Curate V2 subgraph is under active development. Check the curate-v2 repository for the latest deployment.

V1 Subgraphs (Legacy)

These index V1 Kleros products still in active use.

Curate V1

NetworkEndpoint
Ethereum Mainnethttps://thegraph.com/hosted-service/subgraph/kleros/curate
Gnosis Chainhttps://thegraph.com/hosted-service/subgraph/kleros/legacy-curate-xdai

Proof of Humanity V1

NetworkEndpoint
Ethereum Mainnethttps://thegraph.com/hosted-service/subgraph/kleros/proof-of-humanity-mainnet
You can also query PoH V1 directly: call isRegistered(address) on 0xC5E9dDebb09Cd64DfaCab4011A0D5cEDaf7c9BDb on Ethereum Mainnet.

Other V1 Products

For Escrow V1, Linguo, Tokens, and other legacy apps, see the Kleros subgraph list on GitHub.

Querying Subgraphs

All subgraphs expose a GraphQL API. Query them with any GraphQL client:
const SUBGRAPH_URL =
  `https://gateway.thegraph.com/api/${process.env.GRAPH_API_KEY}/subgraphs/id/96vpnRJbRVkzF6usMNYMMoziSZEfSwGEDpXNi2h9WBSW`;

const response = await fetch(SUBGRAPH_URL, {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    query: `{
      courts(first: 10) {
        id
        policy { policy }
        minStake
        timesPerPeriod
      }
    }`
  })
});

const { data } = await response.json();
Addresses in subgraph responses are always lowercase hex (no EIP-55 checksum). Always lowercase addresses in your query variables, or the subgraph will return no results.

Query Examples

Common GraphQL queries for disputes, courts, and jurors

Subgraph Overview

Architecture and local development setup