21,096
awards
$213.4B
obligated
3,664
unique recipients
55
agencies

Window 2026-07-31 to 2026-08-06 (rolling 7 days). Current as of the run finished 2026-08-06 09:42 UTC. See data/summary.json for the live window and totals — they roll forward daily.

What this is

USAspending.gov publishes every federal prime contract award since FY2008 through a public, unauthenticated JSON search API — no key, no login, no rate-limit registration. This dataset fetches a rolling recent window of contract awards daily, normalizes it, computes a few useful aggregates (by agency, by NAICS, top recipients), and commits the result, so you don't have to write your own pagination/retry logic against the raw API.

Scope and limits

Schema

FieldTypeNotes
awardIdstring | nullUSAspending's Award ID (piid/fain)
recipientNamestring | nullVendor/recipient legal name
recipientUeistring | nullUnique Entity Identifier, when disclosed
awardingAgencystring | nullTop-tier awarding agency
awardingSubAgencystring | nullSub-agency/component
awardAmountnumber | nullObligated amount for this transaction — not a ceiling
totalOutlaysnumber | nullActual dollars disbursed to date, where reported
awardTypestring | nulle.g. "DEFINITIVE CONTRACT", "PURCHASE ORDER"
naicsCode / naicsDescriptionstring | nullIndustry classification
pscCode / pscDescriptionstring | nullProduct/Service Code
placeOfPerformanceState / Countrystring | nullWhere the work is performed
startDate / endDatestring | nullAward's period of performance
descriptionstring | nullUSAspending's award description, as published
usaspendingUrlstring | nullDirect link to the award's public page
scrapedAtstringISO timestamp of the fetch

Fields USAspending doesn't disclose come back as JSON null, never 0 or false.

Sample row

Real row from the current dataset — a typical small award, not the multi-billion-dollar outliers that appear near the top of the sorted file.

{
  "awardId": "47QSSC26P2BEP",
  "recipientName": "PREMIER & COMPANIES, INC.",
  "recipientUei": "CW8DULW78AZ4",
  "awardingAgency": "General Services Administration",
  "awardingSubAgency": "Federal Acquisition Service",
  "awardAmount": 437.89,
  "totalOutlays": null,
  "awardType": "PURCHASE ORDER",
  "naicsCode": "332216",
  "naicsDescription": "SAW BLADE AND HANDTOOL MANUFACTURING",
  "pscCode": "5180",
  "pscDescription": "SETS, KITS, AND OUTFITS OF HAND TOOLS",
  "placeOfPerformanceState": "NY",
  "placeOfPerformanceCountry": "UNITED STATES",
  "startDate": "2026-07-31",
  "endDate": "2026-08-30",
  "description": "CALIPER,DIAL/RETT CO. PN 120-12 (PARTIAL DESCRIPTION)",
  "usaspendingUrl": "https://www.usaspending.gov/award/CONT_AWD_47QSSC26P2BEP_4732_-NONE-_-NONE-",
  "scrapedAt": "2026-08-06T09:42:10.583Z"
}

Using the data

curl

curl -s https://raw.githubusercontent.com/ConorsCode/open-fedspend-data/main/data/awards.json | jq '.[0]'

pandas

import pandas as pd
df = pd.read_json("https://raw.githubusercontent.com/ConorsCode/open-fedspend-data/main/data/awards.json")
df.groupby("awardingAgency")["awardAmount"].sum().sort_values(ascending=False)

JavaScript

const awards = await fetch("https://raw.githubusercontent.com/ConorsCode/open-fedspend-data/main/data/awards.json").then(r => r.json());
console.log(awards.length, "awards in this window");

Links