Skip to main content
API REFERENCE

Civic Filament API Documentation

The endpoints the Civic Filament web app itself uses: interviews, perspective extraction, synthesis, provenance verification, LRDs, evidence and data rights. Read endpoints for published data are public; there is no third-party API key program yet. Shapes may change while the service is in beta.

BASE URLhttps://civicfilament.org/api
QUICK START
# 1. List issues and pick an id
curl https://civicfilament.org/api/public/issues

# 2. Start an interview on that issue (returns openingMessage + openingSig)
curl "https://civicfilament.org/api/interview?issueId=<issueId>"

# 3. Read the published synthesis (data is null until one is published)
curl "https://civicfilament.org/api/synthesis?issueId=<issueId>"

# 4. Download the Living Requirement Document as Markdown
curl "https://civicfilament.org/api/lrd?issueId=<issueId>&format=markdown"

# 5. Verify a published version's provenance (Merkle root + leaf hashes)
curl "https://civicfilament.org/api/verify?issueId=<issueId>"
AUTHENTICATION

No API keys are issued today. Reading issues, published syntheses, LRDs, evidence and provenance data needs no authentication. Saving a perspective and the data-rights endpoints use the x-filament-session header (a random UUID the client generates and keeps; the server stores only its hash). Interview transcripts must carry the server's sig on every mediator message. Admin endpoints (such as triggering a synthesis run) and scheduled jobs refuse access unless their secrets are configured and supplied.

ENDPOINTS
RATE LIMITS

Shared, database-backed rate limits apply per IP address on every AI and write endpoint, plus a global daily cap on AI calls. Exceeding a limit returns HTTP 429. Tiered per-customer quotas are not offered yet.