SKIP TO CONTENT
DAPPCHAIN
SESSIONVERIFYING

// PUBLIC DOCUMENTATION / SOURCE-CHECKED

READ THE REGISTRY. SHIP WITH EVIDENCE.

DappChain is a public directory for approved dapps across chains. Browse without login. Use Privy to propose, edit, and interact.

SHORT PATHBrowse → Sign in → Propose → Review
APIMIXED / PUBLIC + AUTH
MCPOPEN / READ-ONLY
REVIEWREVIEWER OR BOT KEY
METRICSDB DATA PENDING
01

START HERE

GETTING STARTED

  1. BROWSE. Open the public directory and inspect approved dapp records, chains, links, and versions.
  2. SIGN IN. Select SIGN IN. Privy verifies the session; protected requests use a Bearer access token.
  3. CONTRIBUTE. Open /submit to propose a new dapp or an update.
  4. INTERACT. Signed-in users can react, bookmark, and comment on approved dapps.
PRIVY SESSION / CURL
export PRIVY_TOKEN='<Privy access token>'
curl --fail-with-body \
  -H "Authorization: Bearer $PRIVY_TOKEN" \
  "$API_URL/v1/me"
02

ORDINARY PRIVY USERS

CONTRIBUTE

Any valid Privy user can propose a create or update. The API stores the proposal as pending; publication happens only after review.

Every update binds to the current dapp version. Keep the returned request ID and proposal hash for later review or support.

NEW DAPP / PENDING PROPOSAL
curl --fail-with-body -X POST \
  -H "Authorization: Bearer $PRIVY_TOKEN" \
  -H "Content-Type: application/json" \
  --data '{"operation":"create","body":{"name":"Example","slug":"example","websiteUrl":"https://example.org","category":"defi"}}' \
  "$API_URL/v1/requests"
SERVER ONLY

Bot keys can propose without a Privy account. Never place a bot key in browser code, a URL, or a public docs snippet.

03

CONTROLLED PUBLICATION

REVIEW

Review access belongs to a Privy user with the current reviewer role or to a valid configured bot key.

01PENDINGProposal stored and version-bound.
02CHECKEvidence can be ranked by an authorized reviewer.
03DECIDEApprove or reject with an optional reason.
04ARCHIVEAccepted snapshots may archive later; public reads do not wait for it.
04

WHO CAN DO WHAT

PERMISSIONS

ACTORREADWRITEREVIEW
Public visitorApproved dapps, filters, chains, public interactions
Privy userPublic reads + own protected dataPropose, edit, react, bookmark, comment
Privy reviewerAll permitted application readsReviewer actions + interactionsInspect, rank, approve, reject
Bot keyPublic reads + configured private readsPropose and interactInspect, rank, approve, reject
05

COPYABLE REFERENCE

API

Public discovery needs no credentials. Protected actions use Authorization: Bearer <Privy access token>. Bot authentication uses Authorization: ApiKey <raw key> on the server.

GET /v1/dappsPublic directory search and pagination.
GET /v1/dapps/by-slug/:slugPublic stable slug lookup.
GET /v1/filtersPublic chain and category choices.
POST /v1/requestsPrivy user or bot proposal.
POST /v1/requests/:id/decisionReviewer or bot decision.
GET /v1/app/metrics/dappsPublic route in code; current DB metrics foundation is pending.
PUBLIC READS
export API_URL=https://api.example.com
curl --fail-with-body "$API_URL/v1/dapps?limit=20"
curl --fail-with-body "$API_URL/v1/dapps/by-slug/$DAPP_SLUG"
06

PUBLIC DISCOVERY

MCP

POST /mcp is open and read-only. It exposes exactly two tools: search_dapps and get_dapp.

search_dappsSearch, filter, order, and paginate approved dapps.
get_dappRead one approved dapp by UUID.

MCP cannot submit proposals, inspect reviews, decide requests, mutate interactions, or trigger archival.

TOOLS / LIST
curl --fail-with-body -X POST \
  -H "Accept: application/json, text/event-stream" \
  -H "Content-Type: application/json" \
  -H "MCP-Protocol-Version: 2026-07-28" \
  -H "Mcp-Method: tools/list" \
  --data '{"jsonrpc":"2.0","id":"1","method":"tools/list","params":{}}' \
  "$API_URL/mcp"
07

SHORT ANSWERS

FAQ

Do I need an account to browse?

No. Approved dapp reads, filters, chains, public interactions, and MCP discovery are public.

How do I log in?

Select SIGN IN in the header and complete the Privy flow. The browser uses the resulting session for protected actions.

Is MCP closed?

No. MCP is open and read-only. The protected surfaces are proposal, review, and mutation routes.

Are metrics live?

The route and readers exist in code, but the current database has not applied the metrics snapshot table. Treat metrics data as pending until that migration is verified.

Can an ordinary user approve a proposal?

No. Approval requires reviewer permission or a valid configured bot key.

SOURCE RULE

Access labels and technical claims are checked against route guards, shared contracts, tests, and the configured database state before release.