Government-Filing Delta Monitor — State Lobbying Disclosures
Under maintenancePricing
Pay per usage
Government-Filing Delta Monitor — State Lobbying Disclosures
Under maintenanceWatches public government filings (state lobbyist disclosures via Socrata SODA open-data APIs) on a user-maintained watchlist and emits one dataset item per newly detected or amended filing. Repeat runs emit only newly detected filings via per-source checkpoints in the Actor key-value store — free when nothing changes, pay only on signal.
Who it is for
Public-affairs firms, compliance officers, government-relations teams and watchdog NGOs that need to track new or amended state lobbying-disclosure filings on a recurring schedule without re-polling open-data portals manually. Different buyer segment from the SEC insider-trading / institutional-holdings monitors — this is state/open-government data, not federal securities filings.
What it monitors
A watchlist of public Socrata SODA endpoints, e.g. the Washington State PDC
lobbyist disclosures at https://data.wa.gov/resource/nuwx-ay5h.json. Each
source is polled independently; per-source checkpoints remember the last
checked high-water date and the filing IDs already emitted, so:
- First run: returns filings within a bounded lookback window (default 30 days).
- Repeat runs: return only newly detected or amended filings (new Socrata row IDs), including amendments that surface under a new ID.
- Nothing changed since last run: zero dataset items — "free when nothing changes."
What makes it different
Existing lobbyist-disclosure scrapers (e.g. titan_coder/wa-lobbyist-reporting-delta
at $10.00 per 1,000 new/amended filings, "free when nothing changes";
scrapemint/lobbying-disclosure-scraper) are on-demand fetchers: you run them,
get a batch, and run again when you want an update. This Actor keeps a watchlist
and remembers what it already reported, so it is a true recurring delta monitor
for public affairs / compliance buyers.
Data source
Public Socrata SODA open-government APIs only — no credentials, no proxies, no scraping of rate-limited or anti-bot pages, no commercial inference (no LLMs) inside the product.
Default source (Washington lobbyist disclosures):
Each watchlist source needs a public Socrata SODA .json endpoint and is
queried with a deterministic GET + $where / $order / $limit filter
against a per-source date column (default receipt_date) and ID column
(default id).
Pricing (pay-per-event framing, Apify Store)
Per the proven incumbent price point, this Actor frames pricing at:
- $0.01 per detected/amended filing (each dataset item), i.e. $10.00 per 1,000 new or amended filings.
- Actor start / nothing-changed runs: free (no dataset items emitted).
Apify retains a 20% commission on revenue; payouts are monthly and require completed identity verification (KYC). This listing is free until the owner enables monetization and completes payout/KYC — see knowledge/decisions.md (POLICY #6, owner decision 2026-10-30). Pricing shown here is a README framing only; no monetization is flipped in this release candidate.
Input
See actor/.actor/input_schema.json. Required: sources (non-empty array of
Socrata SODA endpoints).
sources[].name: unique handle used as the checkpoint key (e.g."wa-lobbyist").sources[].url: public Socrata SODA JSON endpoint (e.g.https://data.wa.gov/resource/nuwx-ay5h.json).sources[].lookbackDays(1-90, default 30): first-run lookback window.sources[].dateColumn(default"receipt_date"): Socrata column used to order/filter filings by recency.sources[].idColumn(default"id"): Socrata column that uniquely identifies each filing (dedupe key).maxItems(1-200, default 50): cap on items emitted per source per run.
Example (the default input — returns WA lobbyist filings from the last 30 days):
{"sources": [{"name": "wa-lobbyist","url": "https://data.wa.gov/resource/nuwx-ay5h.json","lookbackDays": 30}],"maxItems": 50}
Output
One dataset item per newly detected or amended filing. Every field is present;
fields that could not be parsed are null — the Actor never guesses.
{"filingId": "2073682","filingDate": "2026-10-31","filerName": "ROB MAKIN CONSULTING*","filerType": "Firm","clientName": null,"subject": null,"amount": null,"documentUrl": "https://my.pdc.wa.gov/lobbyist/public/-/#/public/l2-report/2073682","source": "wa-lobbyist","newSinceLastRun": true,"amendedByReport": null,"year": "2026","reportFrom": "2026-10-01","reportThrough": "2026-10-31"}
Limits
- Max 200 items per source per run (
maxItems). - First-run lookback capped at 90 days; repeat runs are bounded by the per-source checkpoint date.
- Dedupe is by Socrata row ID within a capped seen-IDs window (5,000 IDs per source). Resetting the Actor key-value store re-emits filings within the lookback window.
- One erroring source never aborts the whole run.
Verification
pytest actor/tests— deterministic unit tests (no network): input normalization, row-to-item mapping, first-run vs. repeat-run checkpoint behavior, dedupe, and max-items cap.ruff check actor/— must be clean (0 errors).- Default-input smoke run against the live Socrata endpoint returns more than 0 items in under 5 minutes (publish precondition).