This is a project to extract important data from the U.S. federal government's contract records.
The Trump administration in 2025 began cancelling contracts en masse. This project extracts relevant data.
You may simply want to get the data this generated, which will be available through https://www.biglocalnews.org under a project called Federal contract cancellations.
This is a pretty typical Python program. To install it:
git clone https://github.com/biglocalnews/sync-fed-contracts.git
cd sync-fed-contracts
pip install -r requirements.txt
If you wish to run it and collect data beginning from the second Trump administration on Jan. 20, 2025, simply run:
python sync-fed-contracts.py
The Federal Payment Procurement System has some documentation and interfaces on its main web site.
In the initial release of this program, we are scraping modification codes with reason codes of E, F, K, N, and X.
You can see what that means in the official data dictionary.
Specific steps on a prescibed procedure are required when the government terminates a contract for convenience. For information on that process, and to evaluate whether it's being followed, see the Defense Acquisition University's guide to contract termination.
This really started when Ethan Corey (@ethanscorey) offered up a magical one-liner to retrieve some of the data. In a Slack, he posted a discussion and uvx fpds parse "LAST_MOD_DATE=[2025/01/20, 2025/02/14]" "REASON_FOR_MODIFICATION=F"
. This code has grown a bit since then. Ethan went on to identify more reasons for modification and draft code that would retrieve them.
Cheryl Phillips (@cephillips) decided the data should have a home at Big Local News. Sarah Cohen (@sarahcnyt), also with Big Local News, offered helpful guidance and resources to understand the data. Anything in this project that is nonsensical is likely the fault of Mike Stucka (@stucka), who is working with Big Local News and its repositories @biglocalnews here.
Working with MinnPost to track some related goings-ons, Michael Nolan (@m-nolan) built Doge Scrape to track federal government claims of savings; some of that data ties directly back to FPDS.