Meetings

Search metadata and stored transcript text together

One compound Atlas ranking over title, summary, topics and existing full transcript text, with live score/ObjectId cursor pagination. Transcript-only results require current nonempty stored text and a searchable flag that is absent or the scalar Boolean true; old catalog publication is not required. Whole quoted queries are analyzed phrases in the flat stored text, not exact-byte or run-bounded quotations. Timestamped excerpts independently verify current immutable timed evidence and may be unavailable. All-source candidates retain current metadata without evidence. Scope checks remain live despite index lag. Follow non-null cursors even on empty pages. No total or complete transcript coverage is claimed. Cache-Control: no-store. Public scope accepts either government_id or government_ids (comma-separated, at most 100 entries). meeting_id applies one exact canonical BSON meeting ID within the same publication and government scope. Private /v1/me/meetings/content-search derives current saved-city scope, rejects government overrides, and binds cursors to the verified account. Old query flags and legacy keyword/transcript serving paths are removed.

get/v1/meetings/content-search

Request

  • Base URL: https://api.openpublica.com
  • URL: https://api.openpublica.com/v1/meetings/content-search
  • Auth: none declared

Query parameters

qstring required

Analyzed words; whole double-quoted queries use analyzed phrase matching.

source'all' | 'metadata' | 'transcripts'
government_idstring

Scope to one tracked government, e.g. sacramento-california.

government_idsstring

Comma-separated 1–100 city IDs; mutually exclusive with government_id. Whitespace around CSV entries is ignored.

meeting_idstring

Exact canonical BSON meeting ID, still restricted by all other filters and current publication scope.

body_idstring
topicstring

Topic name, as listed by GET /v1/vocabulary.

start_datestring date

Inclusive lower day bound.

end_datestring date

Inclusive upper day bound.

limitinteger
cursorstring

Opaque next_cursor or previous_cursor from the same query and filters; not a snapshot.

Response

One ranked result per public meeting.

Changes

No recorded changes to this operation across all 1 revision of this API.