Municipal Agenda Keyword Radar
Pricing
from $150.00 / 1,000 keyword matches
Municipal Agenda Keyword Radar
Monitor US city-council agendas for your keywords: zoning, data centers, short-term rentals, competitors. Official Legistar + PrimeGov APIs, no proxies. Agenda-item snippets with links; alert mode sends only NEW matches to your webhook. Pay per match.
Pricing
from $150.00 / 1,000 keyword matches
Rating
0.0
(0)
Developer
Devon James
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
What does Municipal Agenda Keyword Radar do?
Municipal Agenda Keyword Radar watches US city-council and county-board agendas for the keywords you care about — and tells you the moment they show up, with the exact agenda snippet, meeting date, and a link to the agenda. It reads official government sources directly across four platform families — the Legistar InSite API, PrimeGov portals, legacy Granicus (ViewPublisher) sites, and eScribe meeting portals — which together host most US local governments. No proxies, no blocking, no brittle HTML scraping of consumer sites.
Point it at your cities, give it phrases like data center, short-term rental, battery storage, rezoning, or a competitor's name, and run it on a schedule. In alert mode it remembers everything it has already told you and only outputs new hits — you pay only when something new appears.
Why use Municipal Agenda Keyword Radar?
Local government is where revenue-moving decisions surface first — and almost nobody reads the agendas:
- Data-center, solar, and battery developers: catch moratoriums, zoning changes, and rival projects the week they hit a committee agenda.
- Short-term-rental operators and property managers: know when an ordinance targeting STRs is scheduled — before the vote, not after.
- B2G and civic-tech sales teams: an agenda item mentioning your category is a buying signal with a date attached.
- Journalists and researchers: track an issue across many cities without reading 40 agendas a week.
- Government-affairs teams: enterprise policy-monitoring platforms charge $10,000+/year for this. This Actor costs cents per alert.
How to use Municipal Agenda Keyword Radar
- Add your keywords (plain phrases; matching is case-insensitive and whole-word).
- Add your jurisdictions: the subdomain of
{city}.legistar.comgoes in Legistar cities,{city}.primegov.comin PrimeGov cities,{host}.granicus.comin Granicus sites (ashost:viewIds, or just the host to auto-discover its agenda views), and{name}.escribemeetings.comin eScribe portals. Pasting full URLs works too. - Click Start. Matches appear in the dataset with snippets and links.
- For monitoring: turn on Alert mode, add a webhook URL (Slack, Zapier, Make, or your own endpoint), and put the Actor on a schedule — daily or weekly. Each run then delivers only new matches.
Verified example cities
| Platform | Tested slugs |
|---|---|
| Legistar | seattle, mesa, longbeach, oakland, sanjose, kingcounty, pittsburgh, columbus, madison, fortlauderdale, fulton (Fulton County GA), dekalbcountyga (DeKalb County GA), phoenix, mecklenburg (Mecklenburg County NC), santaclara (Santa Clara CA) |
| PrimeGov | lacity (Los Angeles), sanantonio, tucson, oaklandca |
| Granicus | pwcgov:23,12,24 (Prince William County VA — Board of County Supervisors, Planning Commission, Zoning Appeals) |
| eScribe | pub-loudoun (Loudoun County VA — Board of Supervisors and committees) |
Any other jurisdiction on those platforms works the same way — check whether yourcity.legistar.com, yourcity.primegov.com, yourcity.granicus.com, or pub-yourcity.escribemeetings.com exists.
Input
See the Input tab for the full schema. Minimal example:
{"keywords": ["data center", "substation", "moratorium"],"legistarClients": ["seattle", "dekalbcountyga"],"primegovClients": ["lacity"],"granicusClients": ["pwcgov:23,12,24"],"escribeClients": ["pub-loudoun"],"daysBack": 14,"daysAhead": 60,"onlyNewResults": true,"alertWebhookUrl": "https://hooks.zapier.com/..."}
Output
One record per keyword match. You can download the dataset in JSON, CSV, Excel, or HTML, or read it via API.
{"platform": "legistar","client": "seattle","keyword": "housing","matchType": "agenda-item","snippet": "…of Council Bill 121254 as shown in the underlined and strike through language below: Rental junk fees are a growing issue within the housing affordability crisis. These unavoidable and often hidden fees increase the cost of living…","meetingTitle": "City Council","meetingDate": "2026-08-11","meetingTime": "2:00 PM","meetingStatus": "final","isUpcoming": false,"itemTitle": "An ordinance relating to rental agreement regulation; requiring disclosure of fees, prohibiting and limiting certain fees…","matterFile": "CB 121254","matterType": "Ordinance (Ord)","matterStatus": "Passed","agendaUrl": "https://legistar2.granicus.com/seattle/meetings/2026/8/6854_A_City_Council_26-08-11_Full_Council_Meeting_Agenda.pdf","meetingUrl": "https://seattle.legistar.com/MeetingDetail.aspx?LEGID=6854&GID=393&G=FFE3B678-CEF6-4197-84AC-5204EA4CFC0C","videoUrl": "https://seattlechannel.org/FullCouncil?videoid=x189286"}
Main output fields
| Field | Meaning |
|---|---|
keyword | Which of your keywords matched |
matchType | meeting-title, agenda-item (Legistar item/matter), or agenda-text (full HTML agenda) |
snippet | ±140 characters of context around the match |
meetingDate / isUpcoming | When the meeting happens/happened |
meetingStatus | e.g. final, cancelled — cancellations are signals too |
matterFile / matterType / matterStatus | Legislative file details when the match is a Legistar matter |
agendaUrl / meetingUrl / videoUrl | Deep links to the official agenda, meeting page, and video |
How much does it cost to monitor city-council agendas?
Pricing is pay-per-event — you pay for what the radar actually does:
| Event | Price | What it covers |
|---|---|---|
| Actor start | $0.01 | Run bootstrap |
| Meeting scanned | $0.002 | One meeting's agenda items / full agenda text fetched and scanned |
| Keyword match | $0.15 | One new match delivered (the thing you actually want) |
Example: a weekly run over 10 cities (~40 meetings each) that surfaces 6 new matches costs roughly 400 × $0.002 + 6 × $0.15 + $0.01 ≈ $1.71. A year of weekly monitoring ≈ $90 — versus $10K+/year for enterprise policy-monitoring suites. Use maxTotalChargeUsd when calling the Actor to hard-cap any run's spend.
Tips
- Alert mode + schedule + webhook is the intended way to run this Actor. First run seeds the memory (you'll get a burst of current matches); every run after that is new-only.
- Keywords are whole-word:
solarwill not matchsolaris. Multi-word phrases match across line breaks. daysBackalso catches published minutes of recent meetings;daysAheadcatches agendas as soon as clerks publish them (often 3–7 days before the meeting).- Turn Scan full agenda content off only if you need a very cheap title-level sweep.
FAQ, disclaimers, and support
Is this legal? The Actor reads official public-record APIs and public agenda pages published by governments for exactly this purpose. It sends a handful of polite, rate-limited requests per city.
A city returns no meetings? Check the slug (yourcity.legistar.com must exist), and note some cities publish agendas only days before meetings. Failed cities are listed in the run's SUMMARY key-value record and the run log.
Which platforms are supported? Legistar InSite, PrimeGov, legacy Granicus (ViewPublisher/AgendaViewer), and eScribe today. CivicClerk, Municode Meetings, and per-item PDF attachment scanning (some Granicus towns keep item detail in attached PDFs rather than agenda text) are on the roadmap — open an issue on the Issues tab to vote, report a broken jurisdiction, or request a feature. Custom variants and white-label monitoring available on request.