{"id":40191,"date":"2026-04-05T15:37:22","date_gmt":"2026-04-05T13:37:22","guid":{"rendered":"https:\/\/www.graviton.at\/letterswaplibrary\/building-with-congressional-data-in-2026-what-am-i-missing-because-everything-is-dead\/"},"modified":"2026-04-05T15:37:22","modified_gmt":"2026-04-05T13:37:22","slug":"building-with-congressional-data-in-2026-what-am-i-missing-because-everything-is-dead","status":"publish","type":"post","link":"https:\/\/www.graviton.at\/letterswaplibrary\/building-with-congressional-data-in-2026-what-am-i-missing-because-everything-is-dead\/","title":{"rendered":"Building With Congressional Data In 2026&#8230; What Am I Missing? Because Everything Is Dead"},"content":{"rendered":"<p><!-- SC_OFF --><\/p>\n<div class=\"md\">\n<p>I\u2019m building an open source tool to track congressional stock trades, donors, travel, and voting records. One platform, all the data, free and open. Simple idea.<\/p>\n<p>Except I can\u2019t find data that works.<\/p>\n<p>I\u2019ve spent the last 48 hours wiring up pipelines and every single source I try is either dead, broken, paywalled, or publishing PDFs like it\u2019s 2004. I have to be missing something because this can\u2019t be the actual state of civic data in 2026.<\/p>\n<p>Here\u2019s what I\u2019ve tried:<\/p>\n<p>Dead:<\/p>\n<pre><code>\u2219 ProPublica Congress API \u2013 shut down, repo archived Feb 2025 \u2219 OpenSecrets API \u2013 discontinued April 2025, now \u201ccontact sales\u201d \u2219 GovTrack bulk data \u2013 shut down, told everyone to use ProPublica (which then died) \u2219 Sunlight Foundation \u2013 dead for years, tools lived on through ProPublica (which then died) \u2219 timothycarambat\/senate-stock-watcher-data \u2013 the repo everyone\u2019s senate stock trade scrapers point to. Last updated 2021. Data stops around Tuberville\u2019s first year. The guy who was literally the poster child for congressional insider trading isn\u2019t in the dataset. <\/code><\/pre>\n<p>Barely functional:<\/p>\n<pre><code>\u2219 Congress.gov API \u2013 returning empty responses right now. Changelog says they\u2019re deploying tomorrow. Also went fully dark last August with no communication. \u2219 Senate eFD (efdsearch.senate.gov) \u2013 503 errors on weekends. Runs on a Django app behind a consent gate. When it works, it works. It just doesn\u2019t work on weekends. \u2219 House financial disclosures \u2013 ASPX form with ViewState tokens. Feels like scraping a government intranet from 2005. \u2219 SEC EDGAR \u2013 \u201cworks\u201d but there\u2019s no crosswalk between congressional bioguide IDs and SEC CIK numbers. Common names return false positives. You\u2019re matching by name and hoping for the best. <\/code><\/pre>\n<p>Not even trying:<\/p>\n<pre><code>\u2219 House travel disclosures \u2013 PDF only. Quarterly scanned documents. No API, no XML, no structured data of any kind. Just PDFs you parse with pdfplumber and pray the table formatting is consistent. \u2219 Senate travel \u2013 published in the Congressional Record as text dumps. Good luck. <\/code><\/pre>\n<p>Actually works:<\/p>\n<pre><code>\u2219 FEC API \u2013 functional, rate limited, but real data \u2219 That\u2019s basically it <\/code><\/pre>\n<p>Every GitHub repo I find for congressional data scraping is archived, abandoned, or points to APIs that no longer exist. Every nonprofit that used to aggregate this data has either shut down or gone behind a paywall. The raw government sources exist but they\u2019re spread across six different agencies using six different formats with six different auth methods and zero shared identifiers.<\/p>\n<p>I can\u2019t be the only person who needs this data. What am I missing? Is there a source or project I haven\u2019t found? Is someone maintaining scrapers that actually work in 2026?<\/p>\n<p>I\u2019m building it anyway (github.com\/OpenSourcePatents\/Congresswatch) but right now it feels like I\u2019m assembling a car engine from parts scattered across different junkyards, and half the junkyards are closed on weekends.<\/p>\n<p>What do you all use?<\/p>\n<\/div>\n<p><!-- SC_ON -->   submitted by   <a href=\"https:\/\/www.reddit.com\/user\/-Darkened-Soul\"> \/u\/-Darkened-Soul <\/a> <br \/> <span><a href=\"https:\/\/www.reddit.com\/r\/datasets\/comments\/1sd2va0\/building_with_congressional_data_in_2026_what_am\/\">[link]<\/a><\/span>   <span><a href=\"https:\/\/www.reddit.com\/r\/datasets\/comments\/1sd2va0\/building_with_congressional_data_in_2026_what_am\/\">[comments]<\/a><\/span><\/p><div class='watch-action'><div class='watch-position align-right'><div class='action-like'><a class='lbg-style1 like-40191 jlk' href='javascript:void(0)' data-task='like' data-post_id='40191' data-nonce='72e055e984' rel='nofollow'><img class='wti-pixel' src='https:\/\/www.graviton.at\/letterswaplibrary\/wp-content\/plugins\/wti-like-post\/images\/pixel.gif' title='Like' \/><span class='lc-40191 lc'>0<\/span><\/a><\/div><\/div> <div class='status-40191 status align-right'><\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>I\u2019m building an open source tool to track congressional stock trades, donors, travel, and voting records. One&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[85],"tags":[],"class_list":["post-40191","post","type-post","status-publish","format-standard","hentry","category-datatards","wpcat-85-id"],"_links":{"self":[{"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/posts\/40191","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/comments?post=40191"}],"version-history":[{"count":0,"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/posts\/40191\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/media?parent=40191"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/categories?post=40191"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.graviton.at\/letterswaplibrary\/wp-json\/wp\/v2\/tags?post=40191"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}