What the Integration Does
PublicInput automatically imports information from your Legistar system, so you don't need to manually recreate meetings. The integration can:
Import committees/boards (called Bodies in Legistar)
Import meetings for those committees
Import agendas and agenda items
Keep those items updated every 20 minutes
Protect meetings that are actively happening so they aren't overwritten
Once set up, the sync runs automatically, and you can trigger manual syncs if needed.
How to Set Up the Integration
Navigate to: Customer Settings → Integrations → Legistar
You will enter:
Legistar Client Name (your Legistar instance)
Optional API Token (some Legistar environments require this)
Auto-import toggle (automatically create projects for each Body)
Days to Sync Into the Past (controls how far back PublicInput looks)
Destination Department for new projects
What Happens When You Save Settings
PublicInput checks that it can connect to Legistar.
Your settings are saved.
A full sync begins (committees, meetings, agendas).
Sync Behavior
Automatic Syncs (Every 20 Minutes) | PublicInput continuously pulls updated data from Legistar. |
Manual Sync | You can click Sync Now at any time to force an immediate refresh. |
Project-Level Syncing | PublicInput only syncs meetings for committees linked to existing PublicInput projects. |
What Data Gets Imported
Meetings
Imported as Events and include:
Meeting title – The name of the meeting as it appears in Legistar
Date & time – The scheduled start date and time
Committee the meeting belongs to – Which Legistar board/committee the meeting belongs to (mapped to the matching project in PublicInput)
Legistar identifiers – The unique IDs Legistar provides for the meeting (used for syncing)
Additional metadata from Legistar – Such as online/stream status, video information, and other source details used to keep the meeting updated
Committees / Boards
If Auto-import committees is turned on, PublicInput will also create a matching board/project for each committee in your chosen department. Once a committee is linked to a board, PublicInput starts pulling in that committee's meetings and agendas into that board.
Agendas
Imported as structured PublicInput agendas with:
Sections
Items
Notes
Attachments (metadata only)
Agenda Import Settings
The Legistar integration imports agenda items (called "EventItems" in Legistar) into PublicInput meeting agendas. Two key settings control how items are imported and organized:
Import All Agenda Items — Controls which items are imported from Legistar
Field to Group Items into Sections — Controls how imported items are organized into sections
These settings are configured under Customer Settings → Integrations → Legistar.
"Import All Agenda Items"
This toggle controls whether PublicInput imports only items linked to a Legistar "Matter" or all items on the agenda.
Off (Default)
Only agenda items that are linked to a Matter record in Legistar are imported. This is the standard behavior and works well for jurisdictions that associate each agenda item with a Matter (motion, resolution, ordinance, etc.).
Best for: Most Legistar customers where agenda items are linked to Matter records.
On
All agenda items are imported, regardless of whether they have a linked Matter. Formatting artifacts like "PAGE BREAK" and "E N D" are automatically filtered out.
Best for: Jurisdictions that use Legistar's EventItems as standalone agenda entries without linking them to Matters. When this is off, those items are invisible to PublicInput.
What gets filtered: Items with the titles "PAGE BREAK", "E N D", or blank/empty titles are automatically removed during import. These are Legistar formatting artifacts used for PDF generation and have no value as agenda items.
Field to Group Items into Sections
When "Automatically create agenda sections in PublicInput" is enabled, this dropdown controls how imported items are organized into sections within the PublicInput agenda.
Default (Uses best available field)
Groups items by their Matter Type field from Legistar (e.g., "Resolution", "Ordinance", "Report"). This is the same behavior as the "Group" option.
Example result:
Resolution — Resolution approving contract with vendor X, Resolution authorizing purchase of...
Ordinance — Ordinance amending zoning code section 12.3
Report — Quarterly budget report, Annual audit findings
Best for: Jurisdictions that categorize their matters by type and want sections to reflect those categories.
Group (EventItemMatterType)
Groups items by the Legistar EventItemMatterType field. This is the Matter Type associated with each agenda item.
Each unique MatterType value becomes a section. Items sharing the same MatterType are grouped together.
Example: If your Legistar instance uses Matter Types like "Consent", "Discussion", "Public Hearing", and "Presentation", each becomes a section in PublicInput.
Best for: Same as Default. Use this when you explicitly want to group by Matter Type rather than relying on the system default.
Item Status (EventItemMatterStatus)
Groups items by the Legistar EventItemMatterStatus field (e.g., "Approved", "Pending", "Tabled").
Each unique MatterStatus value becomes a section. Items with the same status are grouped together.
Example result:
Approved — Items that have been approved
Pending — Items awaiting action
Tabled — Items deferred to a future meeting
Best for: Jurisdictions that want their PublicInput agenda organized by the current status of each item, rather than by category. Useful when the agenda structure should reflect where items are in the legislative process.
None (No grouping)
All items are placed in a single default section with no section headers.
Items appear as a flat list in the order they were received from Legistar. No section organization is applied.
Best for: Simple agendas that don't need section divisions, or when you prefer to manually organize sections in PublicInput after import.
Infer from Title (AI-powered)
Uses artificial intelligence to automatically identify which items are section headers and which are agenda content, then groups items under the appropriate sections.
How it works: When the agenda syncs, PublicInput sends the list of item titles to an AI model that analyzes the text and classifies each item as either a "section header" (a heading that organizes the agenda) or a "content item" (an actual agenda item, procedure, or topic). Items are then grouped under the section header that precedes them.
Example: Given these raw Legistar items:
Invocation
Pledge of Allegiance
I. PRESENTATIONS
General public comment procedures
IV. CONSENT CALENDAR
All matters are approved by one motion unless held
County Operations
Public Safety
VI. SEPARATE MATTER
II. GENERAL PUBLIC COMMENT
The AI identifies items 3, 5, 9, and 10 as section headers and produces:
(Preamble) — Invocation, Pledge of Allegiance
I. PRESENTATIONS — General public comment procedures
IV. CONSENT CALENDAR — All matters approved by one motion..., County Operations, Public Safety
VI. SEPARATE MATTER
II. GENERAL PUBLIC COMMENT
Why use AI instead of a fixed rule? Different jurisdictions format their agendas differently. Some jurisdictions use Roman numerals ("I. PRESENTATIONS"), others use ALL CAPS ("RESOLUTIONS"), ALL CAPS with colons ("REPORTS OF COMMITTEES:"), or letters ("A. Regular Session"). The AI handles all of these conventions without needing custom configuration per jurisdiction.
AI Section Guidance (optional): When using the AI option, an additional text field appears where you can provide hints to help the AI make better classification decisions for your specific jurisdiction. For example:
"Department names like County Operations and Public Safety are sub-items, not section headers."
"Committee names are section headers. Items starting with 'A resolution approving...' are agenda items."
"Items in ALL CAPS followed by a number range (e.g., 'BOARD OF SUPERVISORS 1-17') are sub-section headers, not top-level sections."
This guidance is optional. The AI works well without it for most agendas, but it can improve accuracy for jurisdictions with unusual formatting.
Fallback behavior: If the AI service is temporarily unavailable, items are imported into a single default section (same as the "None" option). The sync does not fail — items are always imported regardless of whether section classification succeeds.
Cost and performance: The AI classification adds a small amount of processing time to each sync (typically 1-3 seconds per meeting). Agendas with more than 100 items skip AI classification and fall back to flat import to ensure reliable performance.
Recommended Configurations
Jurisdiction Type | Import All Items | Section Grouping | Notes |
Standard Legistar (items linked to Matters) | Off | Default or Group | Most common setup |
Status-focused workflow | Off | Item Status | Good for tracking legislative progress |
Standalone items (items NOT linked to Matters) | On | Infer from Title (AI) | Required when items lack Matter links |
Simple agenda | Off or On | None | Manual section organization in PublicInput |
Custom AI guidance needed | On | Infer from Title (AI) | Add guidance text for unusual formatting |
How Updates Work
PublicInput checks Legistar for updates during every 20-minute sync cycle. A meeting will update automatically unless:
The meeting is currently live, or
The meeting starts within the next 30 minutes
If the meeting is outside this protected window, PublicInput will refresh:
Meeting start time
Meeting title
Agenda sections and items
Updates only run when something in PublicInput differs from Legistar.
Live Meeting Protection
To prevent accidental overwrites during active meetings, PublicInput will not update any meeting that:
Is happening now, or
Starts within 30 minutes
This protects in-progress agendas and meeting content. PublicInput will resume normal updates 30 minutes after the meeting ends.
Removing the Integration
Deleting the integration:
Removes the connection
Archives imported bodies, meetings, and agendas
Does not delete any manually created meetings or user-generated content
Frequently Asked Questions
Q: What happens to existing agenda items when I change the section grouping setting?
A: The new setting applies on the next sync. Existing items are re-organized into sections based on the new grouping logic. No items are deleted.
Q: Can I manually edit sections after they're created by the sync?
A: Yes. Sections created by the sync can be renamed, reordered, or modified in the Meeting Admin page. However, the next sync may re-create or update sections based on the current setting.
Q: What is a "Matter" in Legistar?
A: A Matter is Legistar's term for a legislative item — a resolution, ordinance, motion, report, or other formal action. Each Matter has properties like Type, Status, and File Number. Some jurisdictions link every agenda item to a Matter; others use agenda items as standalone entries.
Q: How do I know if my jurisdiction needs "Import All Agenda Items" enabled?
A: If your PublicInput agenda shows few or no items after a Legistar sync, but the Legistar website shows a full agenda, your jurisdiction likely doesn't link items to Matters. Enable "Import All Agenda Items" to bring in all items.
Q: Is there an additional cost for the AI-powered section grouping?
A: The AI processing cost is negligible (fractions of a cent per meeting sync) and is included in your PublicInput subscription. There is no additional charge for using this feature.
Q: Can I preview what the import will look like before syncing?
A: Yes. On the Legistar connection settings page, click the Test Import button. This shows a side-by-side preview of raw Legistar items and how they would be organized into sections, without making any changes to your meetings.
Troubleshooting
Missing Meeting
Check:
Whether it falls outside the "Days to Sync Into the Past" window (set via the Integrations tab). PublicInput only imports and updates meetings within the time range you specify in the 'Days to Sync Into the Past' setting. Any meeting older than that window will be skipped during syncs.
Whether it belongs to the correct committee
Agenda seems incomplete
By default, PublicInput only imports agenda items that are linked to an official legislative Matter in Legistar (such as a bill, resolution, ordinance, or other formal agenda item). If your jurisdiction uses Legistar EventItems as standalone agenda entries without linking them to Matters, enable the "Import All Agenda Items" toggle under Customer Settings → Integrations → Legistar to bring in all items.
Updates aren't showing
The meeting may be live or near-live (30 minutes). If you need to make a change during this time frame, you can edit fields temporarily from the committee board page in PublicInput.
What happens when it adds committees I don't want?
That just means you'll see extra committee boards in PublicInput:
You can safely archive or hide boards you don't use.
Going forward, you can turn off Auto-import and instead:
Let the integration bring in committees in the background, and
Only link the specific committees you care about to boards you actively manage.
Unauthorized or Connection Error
Your environment may require an API token.




