Data

What Wallingford Publick collects, as files you can download and reuse. They're rebuilt every morning with the site.

Meetings, summaries, and decisions

Every meeting this site lists (112 meetings), with its board, date, time, place, and status, the town's agenda and minutes, and their AI summaries and decisions, joined together in one file.

The decisions alone are a spreadsheet, decisions.csv, and new agendas and minutes are in an RSS feed.

Every chart on this site has a table with the same numbers, and a CSV download under it.

Before you use it

Credit

The summaries, headlines, decision lists, and data that Publick compiles are free to reuse, even commercially, under the Creative Commons Attribution 4.0 license (opens in new tab) (CC BY 4.0). Please credit them like this, with a link to the document the summary came from:

Summary by Publick (publick.org), AI-generated from the town's agenda.

Some of what's here keeps its own terms, such as 311 requests: what you can reuse, and how.

The format of meetings.json

One JSON object, in UTF-8. Its version is 1: a field may be added without notice, but a field renamed, removed, or changed in meaning gets a new version number. Dates are YYYY-MM-DD, times HH:MM in the town's time zone, and a field with nothing to say is null.

The file

FieldWhat it holds
format, versionAlways "publick-meetings", and the format's version number.
townThe town's name, state, and this site's address.
built_atWhen the file was made.
licenseThe license, and where its terms are.
meetingsEvery meeting, oldest first.

Each meeting

FieldWhat it holds
id, urlAn identifier that doesn't change, and the meeting's page on this site.
board, titleThe board or committee, and the meeting's name as the town lists it.
date, start_time, end_timeWhen it meets. A start time that isn't likely, such as 3:00 AM, is left out.
status"scheduled", "cancelled", "postponed", or "rescheduled".
special, listedWhether it's a special meeting, and whether the town still lists it.
location, remote_urlWhere it meets (name, address, and the town's description), and its link to join online.
recording_url, listing_urlIts recording, and where the town lists it.
correctionOur correction of the town's listing, with the reason, the evidence, and the day it was checked.
agenda, minutesIts agenda and minutes, described below.

Each agenda and minutes

FieldWhat it holds
url, saved_copy_urlThe document on the town's website, and the copy saved here.
saved_at, posted_by, sha256When the copy was saved, who posted the document, and the copy's SHA-256 hash.
is_minutesFor minutes, false when the town filed another document as the minutes.
summary_withheldWhether its summary was taken down after a reader reported an error.
summaryIts AI summary, or null when there isn't one yet:
  • headline and summary, in English;
  • for an agenda, items: the main agenda items;
  • for minutes, decisions: each with its kind ("decided", "recommended", or "procedural") and its text;
  • not_shown: how many items or decisions were left out because they couldn't be matched to the document;
  • model and generated_at: the AI model, and when it wrote the summary;
  • fact_check: what our fact check found when it compared the summary's names, numbers, and decisions with the document's text. "ok": everything was found. "failed": something wasn't, and it's left out. "weak": the document is scanned, so only what could be read was checked, and nothing is left out. "unchecked": there was no text to check against. null: not checked yet.
  • checked: how the summary was checked, as the line under it on its page says. "pdf": against the town's PDF. "partial": against the pages of the PDF that have text. "ai": against an AI transcription of a scanned PDF. "none": not checked, or minutes summarized before each decision was matched to the minutes' own words.