ParseForge Scrapers

FPDS Federal Contracts Scraper

parseforge/fpds-federal-contracts-scraper

Lead generationOther

Scrapes federal contract awards from FPDS and USAspending. Returns vendor, agency, NAICS, PSC, dates, values, competition, set-asides, and source URLs as flat rows.

Run this scraper See the API call
Total users
2
Monthly active
1
Total runs
96
Bookmarked
0
Rating
Not rated yet
Last modified
9 days ago

Overview

ParseForge

FPDS Federal Contracts Scraper

Scrape federal contract awards from FPDS and USAspending, up to a million per run. Every award comes with vendor, agency, NAICS, PSC, dates, values, competition, set-asides, and source URLs. No login or API key. Export to CSV, JSON, Excel, or XML.

FPDS and USAspending hold the authoritative record of U.S. federal contract awards, but the official interfaces are clunky and the APIs need registration and rate-limit you. This reads the public award feeds directly, filtered by keyword, award type, or action date, and returns each match in one fixed schema.

Who uses it What they scrape FPDS for
Market researchers Which agencies are buying what, and from whom
Sales teams Find new federal contract opportunities and incumbent vendors
Compliance officers Monitor set-aside and competition requirements on awards
Data journalists Analyze federal spending patterns and vendor relationships

What it does

This Actor collects federal contract awards from FPDS and USAspending by keyword, award type, or date range, and returns each award as a flat row.

  • ๐Ÿ” Keyword filter: recipient name or description, e.g. 'Lockheed Martin'.
  • ๐Ÿ“… Date range: action date start and end, defaults to last 90 days.
  • ๐Ÿท๏ธ Award type: BPA Call, Purchase Order, Delivery Order, or Definitive Contract.
  • ๐Ÿ“Š Full award record: vendor, agency, NAICS, PSC, dates, values, competition, set-asides, and source URLs.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with FPDS data

๐Ÿ“ˆ Track agency spending.

A market researcher runs the Actor with a date range and keyword to see which agencies are buying a given product or service, and from which vendors.

๐ŸŽฏ Find new leads.

A sales team scrapes recent awards for a specific NAICS or PSC to identify agencies that have bought similar services and the incumbents they used.

๐Ÿงพ Monitor set-asides.

A compliance officer filters by award type and keyword to check that set-aside and competition requirements are being met on recent awards.

๐Ÿ“ฐ Investigate spending.

A data journalist pulls a year of awards for a vendor or agency to analyze patterns, relationships, and outliers in federal procurement.

Why choose this scraper

What you get
No API key Reads public FPDS and USAspending feeds directly, no registration or OAuth.
One fixed schema Every award returns the same flat row, ready for CSV, JSON, Excel, or XML.
Up to a million rows Set maxItems from 1 to 1,000,000 per run.
Filter as you go Keyword, award type, and date range filters apply before data is saved.

How it compares

This Actor focuses on raw FPDS award extraction with flexible filters, while the competitor below offers similar core data but with a different feature emphasis.

Feature ParseForge FPDS Federal Contracts Scraper
Keyword filter Yes Not listed
Award type filter Yes Not listed
Date range filter Yes Not listed
Max items control Yes Not listed
Vendor, agency, NAICS, PSC fields Yes Yes
Competition and set-aside data Yes Yes
Source URLs Yes Yes

Configure the run

Drive the Actor from a keyword, award type code, and action date range, alone or together, and filters run as each award is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
  "maxItems": 10
}

A larger pull:

{
  "maxItems": 200
}

Pricing

Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $2.10
1,000 results $21.00
10,000 results $210.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the FPDS Federal Contracts Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to FPDS through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/fpds-federal-contracts-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check your filters. The keyword may be too specific, the date range may be too narrow, or the award type may not match any recent awards. Try broadening the date range or clearing the keyword.

Why is the run slow?

Large maxItems values or broad filters can take time. Reduce maxItems or narrow the date range to speed up the run.

Why are some fields empty?

Not all awards have every field populated. For example, set-aside information may be missing for some contracts. This is normal for the source data.

Can I get more than a million awards?

The maxItems limit is 1,000,000 per run. If you need more, split your query by date range or other filters and run multiple times.

Why did the run fail?

Check the input format, especially dates (YYYY-MM-DD). Also ensure your Apify account has enough memory and time for large runs.

FAQ

Question Answer
What is FPDS? FPDS is the Federal Procurement Data System, the U.S. government's central repository for contract award data. USAspending is the public portal that draws from FPDS and other sources.
Do I need an API key or login? No. This Actor reads the public award feeds directly, so you can start scraping without any registration or authentication.
What data does each award include? Each row includes vendor name, agency, NAICS code, PSC code, action date, obligated amount, competition type, set-aside status, and the source URL, among other fields.
Can I filter by vendor or agency? Yes, use the keyword field to match recipient name or description. For more precise filtering, you can post-process the results or use the award type and date filters.
What is the maximum number of awards I can scrape? You can set maxItems up to 1,000,000 per run. The actual number returned depends on the filters and the data available.
What date range does it cover? By default, it starts from 2024-10-01 and ends today. You can set any start and end dates in YYYY-MM-DD format.
What award types can I filter by? You can choose All Contracts, BPA Call (A), Purchase Order (B), Delivery Order (C), or Definitive Contract (D).
Can I export the data? Yes, the Actor returns data in a flat schema that you can export to CSV, JSON, Excel, or XML from the Apify platform.
Is this legal to scrape? FPDS and USAspending are public government data sources. Scraping public data is generally allowed, but you should review the terms of service and applicable laws for your use case.
How often is the data updated? FPDS is updated daily with new contract actions. This Actor fetches the latest data on each run, so you can schedule it to keep your dataset current.

Related actors

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Federal Procurement Data System. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
maxItems integer How many contracts to collect per run. 10
keyword string Optional keyword filter (recipient name, description). Example: 'Lockheed Martin'. not set
awardTypeCode string (5 options) Procurement award type code. A=BPA Call, B=Purchase Order, C=Delivery Order, D=Definitive Contract. not set
timePeriodStart string Action date start (YYYY-MM-DD). Defaults to 2024-10-01. not set
timePeriodEnd string Action date end (YYYY-MM-DD). Defaults to today. not set

Pricing

from $19.00 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.019 to $0.021

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~fpds-federal-contracts-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run FPDS Federal Contracts Scraper on Apify All scrapers