USAspending.gov provides a free public REST API requiring no API key; send a POST to https://api.usaspending.gov/api/v2/search/spending_by_award/ with a JSON body containing filters such as naics_codes, time_period (start_date, end_date), award_type_codes (A, B, C, D for contracts), and agencies.
Parse the results array for each award: award_id, recipient_name, recipient_uei, total_obligation, awarding_agency_name, date_signed, and description fields provide the core award metadata.
For pagination, use the page parameter in the request body and check the hasNext field in the response to determine whether additional pages exist.
To retrieve detailed award information including modifications and subaward data, follow up with GET /api/v2/awards/{awardId}/ using the award_id from the search results.
For bulk downloads of award data, use the POST /api/v2/bulk_download/awards/ endpoint to initiate a file generation job; poll the returned file_url until the status is 'finished', then download the ZIP archive.
Filter by place_of_performance_scope (domestic, foreign) and recipient_location_country_code to scope analysis to US-based performance or specific states.
Known gotchas
USAspending data reflects agency-reported obligations and may lag actual award actions by days to weeks depending on agency reporting cadence; do not use it for real-time contract monitoring.
NAICS code filtering matches exactly on the 6-digit code — to search across a sector, you must enumerate all relevant 6-digit codes within the sector; there is no wildcard prefix match for NAICS codes in the filters.
The avoid-list already covers the USAspending federal spending awards by recipient route; this route is distinct in focusing on NAICS-code-based contract analysis and bulk download workflows.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp