Skip to main content

Getting started

The Anticapture REST API serves DAO governance analytics over HTTPS with JSON responses. This page covers everything you need for a first request.

Base URL

https://gateful.up.railway.app

The interactive OpenAPI spec is served at /docs/json, the same spec this documentation is generated from.

Authentication

All endpoints require a bearer token (contact the Anticapture team for an API key):

Authorization: Bearer <your-anticapture-token>

DAO scoping

Most endpoints are scoped to a single DAO via a path parameter: lowercase identifiers such as ens, uni, or arb:

GET /{dao}/proposals
GET /{dao}/treasury/total
GET /{dao}/accounts/{address}/delegations

List the supported DAOs (and their identifiers) with GET /daos.

Your first request

Fetch the three most recent ENS proposals:

curl -H "Authorization: Bearer $ANTICAPTURE_TOKEN" \
"https://gateful.up.railway.app/ens/proposals?limit=3&orderDirection=desc"

Pagination

List endpoints paginate with skip and limit query parameters:

# Second page of 20 proposals
curl -H "Authorization: Bearer $ANTICAPTURE_TOKEN" \
"https://gateful.up.railway.app/ens/proposals?skip=20&limit=20"

Each endpoint's reference page documents its exact parameters, defaults, and maximums.

Conventions

  • Token amounts are returned as raw values in the token's native decimals (18 for most governance tokens); divide accordingly for display.
  • Addresses are hex-encoded Ethereum addresses.
  • Timestamps are Unix epoch values unless a field says otherwise.

Where to go next

  • API Reference: every endpoint, generated from the live OpenAPI spec.
  • MCP server: query the same API from LLM agents in natural language.
  • Webhooks: push notifications instead of polling.