API documentation
Base URL https://api.endorsedby.org. Everything is JSON over HTTPS. Machine-readable: /openapi.json (OpenAPI 3.1).
Getting started
- Create an account. We approve new accounts by hand and email you when yours is ready.
- Once it’s approved, create a key in the console. You see it only once.
- Send it on every request:
curl -H "Authorization: Bearer ebk_…" "https://api.endorsedby.org/v1/elections?upcoming=true"
Lists come back as { "data": [...], "next_cursor": "…" }; see paging.
What’s here
- Keys, limits and errors
Sending your key, rate limits, error codes and paging.
- Elections, contests and endorsements
Elections, contests, endorsers and endorsements, the ballot at an address, and recommendations.
- Districts and officeholders
Districts with boundaries, who holds each seat, and who represents a place.
- The endorsement stream
Every endorsement change, live, over Server-Sent Events or polling.
- Bulk data
File formats, identifiers and columns of the datasets sold in bulk.