US Federal Contractor Data — USAspending Recipient Profiles avatar

US Federal Contractor Data — USAspending Recipient Profiles

Pricing

$4.00 / 1,000 company records

Go to Apify Store
US Federal Contractor Data — USAspending Recipient Profiles

US Federal Contractor Data — USAspending Recipient Profiles

Look up any organization that receives US federal money on USAspending.gov. Returns UEI, legacy DUNS, parent company, total federal obligations, business types (small, woman-owned, veteran-owned, 8(a)), headquarters address and recipient hierarchy level.

Pricing

$4.00 / 1,000 company records

Rating

0.0

(0)

Developer

Berkan Kaplan

Berkan Kaplan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 days ago

Last modified

Categories

Share

US Federal Contractor Data — USAspending Recipient Profiles 🇺🇸

foXLabs US company series: Federal contract awards · FDIC banks · Texas · New York · Connecticut · Nonprofits

🎉 Profile any US federal contractor: UEI, DUNS, headquarters address, parent company, business-type classifications and total federal obligations — the company-level view of where federal money goes. No key, no login. Built for govcon sales, teaming research, and anyone qualifying a federal vendor.

🔍 What is this Actor — and when should you use it?

USAspending publishes both individual awards and recipient profiles. This Actor returns the recipient profile: who the company is, where it sits, which parent it rolls up to, how it is classified for set-aside purposes, and how much federal money it has received in total.

Use it when you need: a contractor's total federal footprint in one row; small-business/set-aside classifications for teaming; the parent behind a subsidiary; or a qualified list of vendors in a district or state.

Use something else when: you want the individual contracts rather than the company total — use US Federal Contract Awards, which returns one row per award with amounts, agencies and dates.

🤖 Use with AI agents

Already on the Apify MCP server? Ask for this Actor by name: foxlabs/usaspending-contractor-data.

Your agent can pay for its own runs. This Actor is pay-per-event with agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — no Apify account or API token of its own. Billing is the same either way: per delivered recipient row.

Otherwise paste this into Claude, ChatGPT, Cursor or any MCP-enabled assistant:

Run the Apify actor foxlabs/usaspending-contractor-data with
{"queries":["Palantir","Booz Allen Hamilton"],"maxResultsPerQuery":10}
and give me their UEIs, parents and total obligations.

📋 Overview

SourceUSAspending.gov (US Department of the Treasury)
CoverageRecipients of US federal awards
Auth neededNone. No API key, no login, no proxy required
RowOne recipient profile
Measured run30 rows in 4.8 s for 3 companies (2026-09-20, build 0.1.8)
Pricing$0.004 per delivered row — $4 per 1,000

✨ Features

  • 🆔 UEI and DUNS — the identifiers federal systems actually key on
  • 💵 Total obligations per recipient, plus total loan face value
  • 🏢 Parent company where the recipient rolls up to one
  • 🏷️ Business-type classifications — small business, veteran-owned, 8(a) and the rest
  • 🗺️ State and congressional district — territory and political mapping in one row
  • 🔤 Alternate names — the other spellings the same entity files under
  • 📊 Recipient level — parent, child or standalone

🎬 Quick Start

curl -X POST "https://api.apify.com/v2/acts/foxlabs~usaspending-contractor-data/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries":["Boeing","Palantir","Booz Allen Hamilton"],"maxResultsPerQuery":10}'

🚀 Getting Started (3 steps)

  1. Name the contractors. Put company names into queries. The default run searches Boeing, Palantir and Booz Allen Hamilton.
  2. Set the breadth. maxResultsPerQuery caps matches per name — a big prime has many registered entities.
  3. Run it. Rows arrive in the dataset; export to CSV/JSON/Excel or read them over the API.

📥 Input

FieldTypeDefaultDescription
queriesarray["Boeing","Palantir","Booz Allen Hamilton"]Contractor names
maxResultsPerQueryinteger10Cap on recipient profiles per name
maxConcurrencyinteger3Parallel requests against USAspending
requestDelayMsinteger0Optional pause between requests
includeRawbooleanfalseAttach the untouched source record to each row
proxyConfigurationobjectproxy offUSAspending answers direct requests

Example — map a prime and its subsidiaries:

{ "queries": ["Booz Allen Hamilton"], "maxResultsPerQuery": 50 }

Example — qualify a vendor list:

{ "queries": ["Vendor A", "Vendor B", "Vendor C"], "maxResultsPerQuery": 5 }

📤 Output

One row per recipient profile. Fill rates from the measured run (30 rows, 3 companies, 2026-09-20):

FieldTypeFillDescription
companyNamestring100%Recipient name as registered
registrationNumberstring93%UEI (Unique Entity Identifier)
dunsstring93%Legacy DUNS number, where still on record
recipientIdstring100%USAspending recipient id
recipientLevelstring100%Parent, child or standalone
parentCompanystring93%Parent entity, where the recipient has one
totalObligationsnumber100%Total federal obligations to this recipient
totalFaceValueLoannumber100%Total face value of federal loans
businessTypesarray100%Set-aside and classification flags
address / city / postalCode / statestring100%Registered address
congressionalDistrictstring93%District of the registered address
alternateNamesarray73%Other names the entity files under
countryNamestring100%Country
sourceUrlstring100%USAspending recipient page
country / registry / query / status / scrapedAtstring100%Provenance fields

registrationNumber, duns and congressionalDistrict sit at 93% because some historical recipient records predate universal UEI assignment. Columns USAspending does not publish on recipient profiles (tax number, legal form, incorporation date, industry classification, headcount, capital, website, e-mail, phone, officers) were removed rather than shipped permanently empty.

A real row from the default run:

{
"companyName": "PALANTIR TECHNOLOGIES INC.",
"registrationNumber": "FSY4LVSBGWB7",
"address": "19505 BISCAYNE BLVD STE 2350, AVENTURA, FL, 33180, UNITED STATES",
"city": "AVENTURA",
"postalCode": "33180",
"sourceUrl": "https://www.usaspending.gov/recipient/1ea8a9a4-3726-3491-9040-66950bb67606-P"
}

💼 Use cases

  • Vendor qualification — is this company already a federal contractor, and at what scale?
  • Teaming research — find small-business or set-aside-classified partners via businessTypes
  • Corporate structure — parentCompany and recipientLevel map subsidiaries to their parent
  • Territory planning — contractors by state and congressional district
  • Entity resolution — alternateNames and UEI reconcile messy vendor lists

🔗 Integration

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('foxlabs/usaspending-contractor-data').call({
queries: ['Palantir'], maxResultsPerQuery: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("foxlabs/usaspending-contractor-data").call(
run_input={"queries": ["Palantir"], "maxResultsPerQuery": 10}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items

No-code: Make, n8n and Zapier reach this Actor through the Apify app — schedule it and push contractor profiles into a CRM or a sheet.

📊 Pricing

Pay-per-event: company-record — $0.004 per delivered row ($4 per 1,000). Compute and traffic are included; you pay for rows, not run time. Rows without a recipient name are not charged.

View current pricing.

❓ FAQ

Do I need a USAspending API key? No. The data is public and this Actor needs no key, login or proxy.

What is the difference from the Contract Award Actor? This one returns the company profile with lifetime totals. US Federal Contract Awards returns one row per award, with amounts, agencies and dates.

Why do some rows lack a UEI? Older recipient records predate universal UEI assignment; duns often fills the gap on those.

Does one company return several rows? Yes — large primes register multiple entities. recipientLevel and parentCompany tell you how they relate.

Are the totals lifetime or annual? totalObligations is the recipient's cumulative total on USAspending, not a single year.

Can I find small businesses only? Filter the output by businessTypes, which carries the set-aside classifications.

🐛 Troubleshooting

A contractor returns nothing. Federal records use the registered legal name — try the formal spelling, or search a known subsidiary.

Too many rows for one name. Large primes have many registered entities. Lower maxResultsPerQuery, or filter by recipientLevel.

Totals look lower than expected. Subsidiary rows carry their own totals; roll up by parentCompany for the group figure.

⚠️ Trademark

USAspending.gov is a service of the US Department of the Treasury. This Actor is an independent tool, is not affiliated with or endorsed by the US Government, and reads only publicly published federal spending records.

Federal spending records are published by law under the DATA Act so the public can see where federal money goes. The rows this Actor returns are organisational records and spending totals — business information, not personal data. You remain responsible for how you use the output.

🤝 Support & contact

Questions, a field you need, or a bug: info@foxlabs.com.tr — or open an issue on the Actor's Apify page.

Changelog

0.1.8

  • Removed permanently-empty columns (tax number, status detail, legal form, incorporation date, industry, industry code, headcount, capital, website, e-mail, phone, officers) — recipient profiles do not carry them. Row went from 34 columns to 22, with zero permanently-empty columns left.

0.1

  • USAspending recipient-profile search by contractor name, with UEI, parent, classifications and lifetime totals.
  • Pay-per-event billing on delivered rows (company-record).