Developers

Connect PollGuard to the system of record you already have.

Most organisations already keep members somewhere else. The REST API and webhooks let you keep that as the source of truth and treat PollGuard as the election layer.

What the integration offers

REST API

A JSON API over HTTPS covering organisations, members, elections, positions, candidates, verification status and results, with consistent response envelopes and validation errors.

🔑

API key management

Issue and revoke keys for your integration, separately from user accounts, so a departing staff member does not take your integration with them.

🪝

Webhooks

Register endpoints to be notified when things happen — so your own systems can react without polling.

📖

OpenAPI reference

The API is documented with OpenAPI and served as an interactive reference at /api/docs on your API host, so the documentation matches the deployed version rather than a stale PDF.

🔁

Idempotent writes

Mutating requests accept an idempotency key, so a retry after a network failure does not duplicate a member or a payment.

Rate limits

Endpoints are rate limited, with limits raised for integrations that need it. Handle 429 responses and honour Retry-After.

Practical notes

  • Identifiers are opaque strings. Treat record IDs as strings — do not assume a UUID format or parse them.
  • Money is returned as a string. Decimal values are serialised as strings to avoid floating-point loss; parse them with a decimal-safe type.
  • Ballots are not exposed. There is no API that returns how an individual voted. Results are available in aggregate, and receipt lookup confirms only that a ballot was recorded.
  • Verification stays in the product. Identity checks run through our flows so that human review and data-protection obligations are enforced; the API reports verification status rather than accepting externally-asserted verification.

API and webhook access is a paid module. See pricing, and tell us what you are integrating with — we will tell you whether it is a good fit before you build.

Planning an integration?

Describe your membership system and what you need to sync. We will point you at the right endpoints, or tell you if the integration is not worth building.