Skip to main content
§ 00Reference

API Reference

The Govera Public API is read only and returns application/json. It contains no agency, tenant, or user data: only information about the Govera product itself that is not sensitive. This document mirrors the machine readable OpenAPI 3.1 specification.

§ 01Access

Authentication

No authentication is required for the public read only API. Every operation documented on this page answers a plain GET request: no API key, no OAuth token, no account.

The two credential types below belong to a separate, authenticated agency workspace: the part of Govera that handles tenant scoped drafting, institutional memory search, and commitment tracking. They do not gate anything on this page; they're documented here only because that workspace's scopes mirror the public operations they correspond to:

  • API keySend a static key as the X-Govera-Key request header when calling the authenticated workspace.
  • OAuth 2.0 client credentialsExchange a client_id/client_secret pair for a bearer token, scoped to the operations you need, then send Authorization: Bearer <token>. Corresponding scopes:
    • read:status
    • read:product
    • read:capabilities
    • read:guides

Tenant features such as agenda drafting, institutional memory search, and commitment tracking run inside that authenticated agency workspace and are out of scope for this reference.

§ 02Resources

Endpoints

01

GET/api/v1/status

no auth required · scope: read:status

Service status, version, and current timestamp (a lightweight reachability check).

{
  "service": "Govera Public API",
  "status": "operational",
  "version": "1.0.0",
  "documentation": "https://www.govera.co/developers",
  "timestamp": "2026-08-25T00:00:00Z"
}
02

GET/api/v1/product

no auth required · scope: read:product

Public product metadata: name, description, categories of agency served, and URL.

{
  "name": "Govera",
  "description": "Govera is the governance platform for public agencies. It reads an agency's own meeting record and drafts new agendas, staff reports, and follow up items grounded in that history, with every factual claim cited to a source document.",
  "categories": ["Cities", "Counties", "School districts", "Special districts"],
  "url": "https://www.govera.co"
}
03

GET/api/v1/capabilities

no auth required · scope: read:capabilities

The list of Govera product capabilities, each with a stable id and description.

{
  "capabilities": [
    {
      "id": "agenda_drafting",
      "name": "Cited agenda and staff report drafting",
      "description": "Drafts agendas and staff reports grounded in an agency's own meeting record, with every factual claim cited to a source document."
    },
    {
      "id": "commitment_tracking",
      "name": "Commitment tracking",
      "description": "Detects promised follow up items and directed actions in meeting minutes and surfaces them before the next meeting."
    }
  ]
}
04

GET/api/v1/guides

no auth required · scope: read:guides

The public Govera platform guides, each with a title and URL.

{
  "guides": [
    {
      "title": "Platform Guide",
      "url": "https://www.govera.co/guide"
    },
    {
      "title": "Platform Guide, Staff",
      "url": "https://www.govera.co/guide/staff"
    }
  ]
}
§ 03Problem details

Errors

Responses outside the 2xx range return application/problem+json following RFC 9457 (Problem Details for HTTP APIs): a stable type URI, a human readable title, the numeric status, and optional detail / instance fields. Every endpoint documents 400, 401, 404, and 429 in this shape.

{
  "type": "https://www.govera.co/problems/not-found",
  "title": "Not Found",
  "status": 404,
  "detail": "The requested resource does not exist.",
  "instance": "/api/v1/status"
}
§ 04Throttling

Rate limits

Every response, including from unauthenticated clients, carries standard rate limit headers so a client or agent can throttle its own request rate: RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset (seconds until the window resets). A 429 Too Many Requests response includes a Retry-After header naming how long to wait before retrying.

§ 05Lifecycle

Versioning

The API is versioned in the URL path. This document describes v1 at https://www.govera.co/api/v1. No version is retired without at least 90 days' notice: an operation slated for removal is first marked deprecated in the OpenAPI document and starts returning a Deprecation response header, then a Sunset header (RFC 8594) naming the retirement date, and the version is removed no earlier than that date.