OrbTop

Municipal Council Minutes & Agenda Scraper

OTHER

Municipal Council Minutes & Agenda Scraper

Fetch US city council meeting agendas, minutes, and documents from major municipal government platforms. Supports PrimeGov, Granicus, Legistar, and CivicWeb — covering thousands of US municipalities. Input a platform type and client slug to retrieve meeting records normalized into a single schema.


Features

  • Supports four municipal government platforms: PrimeGov, Granicus, Legistar, and CivicWeb.
  • Returns meeting body, date, time, location, agenda status, document URLs, video URL, and source link for each meeting.
  • Filter by date range (startDate / endDate) and governing body name (bodyName).
  • Single flat output schema across all platforms — one query, one dataset.

Who Uses Municipal Meeting Data?

  • Civic technology and government transparency tools — Track council votes, planning decisions, and public comment periods across municipalities.
  • Real estate and land use intelligence — Monitor zoning hearings, planning commission approvals, and variance requests before they become public news.
  • Local news and investigative journalism — Automate monitoring of city council, school board, and special district meetings.
  • Government relations and lobbying — Follow agenda items relevant to clients across dozens of municipalities without manual calendar checks.
  • Academic and policy research — Build longitudinal datasets of local government activity across cities and regions.

How It Works

  1. Choose a platform (primegov, granicus, legistar, or civicweb) and provide the municipality's client slug (e.g. longbeach for Long Beach, CA on PrimeGov).
  2. Optionally filter by date range or governing body name.
  3. The scraper queries the platform's public API and returns normalized meeting records.

Input

{
    "platform": "primegov",
    "clientSlug": "longbeach",
    "startDate": "2024-01-01",
    "endDate": "2024-12-31",
    "bodyName": "City Council",
    "maxItems": 100
}
Field Type Default Description
platform string primegov Platform vendor: primegov, granicus, legistar, or civicweb
clientSlug string longbeach Municipality client slug on the platform (e.g. longbeach, seattle, chicago)
startDate string Filter meetings on or after this date (YYYY-MM-DD)
endDate string Filter meetings on or before this date (YYYY-MM-DD)
bodyName string Filter by governing body name (case-insensitive substring match)
maxItems integer 10 Maximum number of meeting records to return

Platform & Client Slug Guide

Each platform assigns a slug to each municipality. Here are examples:

Platform Example Slugs URL Pattern
primegov longbeach, renton {slug}.primegov.com
granicus seattle, portland, denver {slug}.granicus.com
legistar seattle, chicago, nyc, boston {slug}.legistar.com
civicweb hamilton {slug}.civicweb.net

To find your city's slug: visit the city's portal (e.g. seattle.legistar.com) — the subdomain is the slug.


Output Schema

Each record represents one meeting:

Field Type Description
platform string Platform vendor (primegov, granicus, legistar, civicweb)
city string Municipality client slug
state string US state abbreviation (when available)
body string Governing body name (City Council, Planning Commission, etc.)
meeting_type string Meeting type or status
meeting_date string Meeting date (YYYY-MM-DD)
meeting_time string Meeting start time (HH:MM)
location string Meeting location or address
agenda_status string Agenda document status (Draft, Final, etc.)
agenda_items string Agenda item titles (top-level, comma-separated)
document_urls string Space-separated list of agenda/minutes document URLs
video_url string URL to meeting video recording (where available)
source_url string Canonical URL for this meeting on the platform portal
meeting_id string Platform-internal meeting identifier

Example Output

{
    "platform": "primegov",
    "city": "longbeach",
    "state": "",
    "body": "City Council",
    "meeting_type": "Regular",
    "meeting_date": "2024-09-17",
    "meeting_time": "5:00 PM",
    "location": "City Hall - Council Chambers",
    "agenda_status": "Published",
    "agenda_items": "",
    "document_urls": "https://longbeach.primegov.com/meeting/4567/agenda.pdf",
    "video_url": "",
    "source_url": "https://longbeach.primegov.com/portal/meeting?compiledMeetingDocumentFileId=4567",
    "meeting_id": "4567"
}