USAspending Subawards Scraper avatar

USAspending Subawards Scraper

Pricing

Pay per event

Go to Apify Store
USAspending Subawards Scraper

USAspending Subawards Scraper

Extract USAspending sub-awards, subrecipients, UEIs, prime award IDs, agencies, descriptions, and dollar amounts from the public API.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Extract sub-award, subcontract, subrecipient, and prime award mapping records from the public USAspending API. This actor turns USAspending subaward search results into a clean Apify dataset with sub-award IDs, dates, amounts, subawardees, UEIs, prime recipients, agencies, descriptions, and run metadata.

What does USAspending Subawards Scraper do?

USAspending Subawards Scraper queries the no-login USAspending JSON API with subawards: true and saves each returned sub-award row as a structured dataset item.

It is designed for users who need repeatable exports of public spending flows from prime recipients to subrecipients or subcontractors.

You can use it to:

  • ๐Ÿงพ Export sub-award rows for a date range.
  • ๐Ÿ› Filter by prime award type codes.
  • ๐Ÿ”Ž Search by public spending keywords.
  • ๐Ÿงญ Target agencies, recipients, names, or UEI values.
  • ๐Ÿ’ต Sort by sub-award amount or date.
  • ๐Ÿ”— Map prime award IDs to subrecipient organizations.

Who is it for?

Government-contracting business development teams use it to identify downstream subcontracting and grant-flow opportunities.

Grant consultants use it to map which organizations receive sub-awards under large federal programs.

Vendors use it to find prime recipients and subrecipients active in their market.

Researchers use it to analyze public funding flows without manually clicking through USAspending search pages.

Compliance and public-sector teams use it to build repeatable monitoring datasets for reporting and due diligence.

Why use this actor?

The USAspending interface is powerful, but repeat exports can be tedious when you need consistent fields, automation, and scheduled runs.

This actor gives you an API-friendly Apify workflow:

  • Run manually or on a schedule.
  • Export JSON, CSV, Excel, XML, or RSS from the Apify dataset.
  • Connect results to Make, Zapier, webhooks, databases, or BI tools.
  • Reuse the same input for recurring monitoring.
  • Keep source metadata for auditability.

What data can you extract?

FieldDescription
subAwardIdUSAspending sub-award identifier
subAwardTypeSub-grant or subcontract style type
subAwardDateDate reported by USAspending
subAwardAmountDollar amount of the sub-award
subAwardeeNameSubrecipient or subawardee organization
subRecipientUeiUEI for the subrecipient when available
primeAwardIdPrime award ID tied to the sub-award
primeRecipientNamePrime recipient organization
primeRecipientUeiUEI for the prime recipient when available
awardingAgencyAwarding agency name
subAwardDescriptionUSAspending description text
scrapedAtTimestamp for the actor run

How much does it cost to extract USAspending subawards?

This actor uses pay-per-event pricing.

You pay a small start fee per run and a per-item event for each sub-award record saved to the dataset.

Use maxItems to cap cost during testing.

For a first run, keep the default 20 records, review the output, then increase the limit for production exports.

How to scrape USAspending subawards

  1. Open the actor on Apify.
  2. Choose a start date and end date.
  3. Keep the default grant and assistance award type codes, or enter your own USAspending award type codes.
  4. Optionally add keywords, recipient names, UEIs, agencies, or amount bounds.
  5. Set maxItems to the number of sub-awards you need.
  6. Run the actor.
  7. Download the dataset from Apify or connect it to your workflow.

Input options

Date range

Use startDate and endDate in YYYY-MM-DD format.

The date range is sent to USAspending as a time_period filter.

Award type codes

Use awardTypeCodes for USAspending prime award type codes.

The default values are 02, 03, 04, and 05, which are common assistance and grant-style award categories.

Keywords

Use keywords to search for public spending topics such as broadband, housing, workforce, disaster recovery, or wildfire.

Use recipientSearchText for recipient names, subrecipient names, prime recipient names, or UEI values.

Agency names

Use agencyNames for top-tier awarding agency names such as Department of Homeland Security.

Amount filters

Use minAmount and maxAmount to focus on sub-awards within a dollar range.

Advanced filters

Use rawFilters when you already know the USAspending API filter object you want to merge into the request.

Example input

{
"startDate": "2024-01-01",
"endDate": "2024-12-31",
"awardTypeCodes": ["02", "03", "04", "05"],
"sort": "Sub-Award Amount",
"order": "desc",
"maxItems": 100,
"pageSize": 100
}

Example keyword input

{
"startDate": "2023-01-01",
"endDate": "2024-12-31",
"keywords": ["broadband"],
"minAmount": 100000,
"maxItems": 250
}

Output example

{
"subAwardId": "2019-CR0116-A",
"subAwardType": "sub-grant",
"subAwardDate": "2024-02-05",
"subAwardAmount": 10188243769.74,
"subAwardeeName": "PUERTO RICO ELECTRIC POWER AUTHORITY",
"subRecipientUei": "EHNKJMN3LNZ7",
"primeAwardId": "4339DRPRP00000001",
"primeRecipientName": "GOVERNORS AUTHORIZED REPRESENTATIVE",
"primeRecipientUei": "HEJDFU1K4E22",
"awardingAgency": "Department of Homeland Security",
"spendingLevel": "subawards",
"sourcePage": 1,
"scrapedAt": "2026-07-06T00:00:00.000Z"
}

Common workflows

Subrecipient discovery

Run a broad date-range export sorted by sub-award amount, then filter by agency, amount, or keyword in your spreadsheet or database.

Prime-to-subrecipient mapping

Use the primeAwardId, primeRecipientName, primeRecipientUei, subAwardeeName, and subRecipientUei fields to build relationship tables.

Grant market monitoring

Schedule the actor monthly with a rolling date range and a keyword list to monitor emerging recipients in your market.

Compliance review

Export sub-award descriptions, agency names, UEIs, and dates for review workflows or audit preparation.

Tips for best results

  • Start with the default 20 records before increasing maxItems.
  • Sort by Sub-Award Amount for high-value opportunity discovery.
  • Sort by Sub-Award Date for monitoring recent awards.
  • Use exact agency names when targeting one awarding agency.
  • Use rawFilters only if you know the USAspending API filter syntax.
  • Keep keyword lists focused; broad keywords can return very large result sets.

Troubleshooting

Why did I get zero results?

Your filters may be too narrow. Try a wider date range, remove keywords, remove amount bounds, or start from the default input.

Why did USAspending reject my advanced filters?

rawFilters is passed to the USAspending API. If the API rejects it, check the exact filter names and value shapes in USAspending API documentation.

Why are some UEI fields empty?

USAspending records can have missing or unavailable UEI values. The actor preserves the public API response rather than inventing missing values.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/usaspending-subawards-scraper').call({
startDate: '2024-01-01',
endDate: '2024-12-31',
maxItems: 100
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('automation-lab/usaspending-subawards-scraper').call(run_input={
'startDate': '2024-01-01',
'endDate': '2024-12-31',
'maxItems': 100,
})
print(run['defaultDatasetId'])

API usage with cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~usaspending-subawards-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"startDate":"2024-01-01","endDate":"2024-12-31","maxItems":100}'

Integrations

Connect the dataset to Google Sheets for analyst review.

Send results to a database for recurring public-spending intelligence.

Trigger webhooks when new sub-awards match a keyword.

Feed the dataset into dashboards for agency, recipient, or amount analysis.

Use Apify API clients to enrich subrecipient records with your internal CRM data.

MCP usage

Use this actor through Apify MCP in Claude Code or Claude Desktop with:

https://mcp.apify.com/?tools=automation-lab/usaspending-subawards-scraper

Add it in Claude Code with:

$claude mcp add apify-usaspending-subawards https://mcp.apify.com/?tools=automation-lab/usaspending-subawards-scraper

Claude Desktop JSON configuration example:

{
"mcpServers": {
"apify-usaspending-subawards": {
"url": "https://mcp.apify.com/?tools=automation-lab/usaspending-subawards-scraper"
}
}
}

Example prompts:

  • "Run the USAspending subawards scraper for 2024 grants and summarize the largest subrecipients."
  • "Find broadband subawards since 2023 and group them by prime recipient."
  • "Export DHS subawards and identify subrecipient UEIs I should research next."

Data freshness

The actor reads live USAspending API responses at run time.

Freshness therefore depends on USAspending's public data updates and reporting cadence.

For recurring monitoring, schedule the actor and compare datasets across runs.

Legality and ethics

USAspending is a public United States government spending transparency source.

This actor uses the public API and does not require login, private credentials, or bypassing access controls.

You are responsible for using exported data in compliance with applicable laws, procurement rules, and your organization's policies.

Limitations

The actor returns fields available from the USAspending subaward search API.

It does not enrich organizations from third-party sources.

It does not guarantee that every public spending record has a complete UEI, description, or agency value.

Advanced rawFilters depend on USAspending API compatibility.

Explore related automation-lab actors for government and public-record workflows:

FAQ

Can I scrape all subawards for a year?

Yes. Set a full-year date range and increase maxItems. For very large exports, run in batches by agency, keyword, amount, or month.

Can I filter to one company?

Yes. Use recipientSearchText with a company name or UEI.

Can I use this for subcontractor discovery?

Yes. The sub-awardee and prime-recipient fields help identify downstream organizations connected to prime awards.

Can I schedule it?

Yes. Use Apify schedules to run the same input daily, weekly, or monthly.

Does it use a browser?

No. It is an HTTP/API actor that calls the USAspending JSON API directly.

Does it require a proxy?

No proxy is required for the public API workflow.

What if USAspending changes field names?

The actor exposes optional fields and rawFilters for advanced users, and the implementation can be updated if USAspending changes defaults.

Changelog

Initial version extracts sub-award rows from USAspending with date, amount, recipient, prime award, agency, and audit metadata.