# USAspending

> Explore U.S. federal spending from USAspending.gov: search contracts, grants and loans, see who receives them, and get spending by agency, state, industry and over time.

App · 20 actions. Web page: https://docs.lodol.com/docs/integrations/usaspending

## Actions

### Count awards

Count the awards that match a search, by kind: contracts, contract vehicles, grants, direct payments, loans and other assistance.

**Inputs**

- Award types (`award_types`, list): Only these kinds of award. Leave all unticked for every kind. One or more of: `contracts`, `idvs` (Contract vehicles (IDVs)), `grants`, `direct_payments` (Direct payments), `loans`, `other` (Other assistance).
- Keywords (`keywords`, list): Words to look for in award descriptions and names, such as cybersecurity. Each needs at least 3 characters.
- From (`start_date`, date): Only spending on or after this day, back to 2007-10-01. Leave both dates empty for the last 12 months.
- To (`end_date`, date): Only spending on or before this day. Leave empty for today.
- Agency (`agency`, text): Only awards made by this agency.
- Sub-agency (`sub_agency`, text): Only awards made by this part of the agency, such as the Department of the Army. Pick an agency first to list its sub-agencies.
- Recipient (`recipient`, text): Only awards to this recipient: a name, such as Lockheed Martin, or a UEI.
- Place of performance (`state`, text): Only awards for work done in this state or territory. One of: `AL` (Alabama), `AK` (Alaska), `AS` (American Samoa), `AZ` (Arizona), `AR` (Arkansas), `CA` (California), `CO` (Colorado), `CT` (Connecticut), `DE` (Delaware), `DC` (District of Columbia), and 46 more.
- Industry codes (NAICS) (`naics_codes`, list): Only contracts in these industries, such as 541512. A shorter code covers everything under it (54 is professional services). Find codes with Look up codes.
- Product and service codes (PSC) (`psc_codes`, list): Only contracts for these products or services, such as 7030 for software. Find codes with Look up codes.

**Outputs**

- `contracts` (number): Contracts
- `direct_payments` (number): Direct payments
- `end_date` (text): The last day searched (YYYY-MM-DD)
- `grants` (number): Grants
- `idvs` (number): Contract vehicles (IDVs)
- `loans` (number): Loans
- `other` (number): Other assistance
- `start_date` (text): The first day searched (YYYY-MM-DD)
- `total` (number): All of them together

**Example output**

```json
{
  "contracts": 101311,
  "direct_payments": 0,
  "end_date": "2026-10-15",
  "grants": 34,
  "idvs": 0,
  "loans": 0,
  "other": 0,
  "start_date": "2020-10-01",
  "total": 101345
}
```

### Get agency

Get an agency's profile: its mission, website, number of sub-agencies and budget justification.

**Inputs**

- Agency (`agency`, text, required): The federal agency. Pick one, or use an agency code from List agencies, such as 097 for the Department of Defense.
- Fiscal year (`fiscal_year`, text): The federal fiscal year, which runs October to September. Leave empty for the latest year with published data. One of: `2027` (FY 2027 (Oct 2026 to Sep 2027)), `2026` (FY 2026 (Oct 2025 to Sep 2026)), `2025` (FY 2025 (Oct 2024 to Sep 2025)), `2024` (FY 2024 (Oct 2023 to Sep 2024)), `2023` (FY 2023 (Oct 2022 to Sep 2023)), `2022` (FY 2022 (Oct 2021 to Sep 2022)), `2021` (FY 2021 (Oct 2020 to Sep 2021)), `2020` (FY 2020 (Oct 2019 to Sep 2020)), `2019` (FY 2019 (Oct 2018 to Sep 2019)), `2018` (FY 2018 (Oct 2017 to Sep 2018)), `2017` (FY 2017 (Oct 2016 to Sep 2017)).

**Outputs**

- `abbreviation` (text): Abbreviation
- `about_the_data` (text): USAspending's notes on its data, if any
- `budget_justification_url` (text): Its congressional budget justification
- `fiscal_year` (number): The fiscal year asked about
- `mission` (text): Its mission statement
- `name` (text): Name
- `sub_agency_count` (number): How many sub-agencies it has
- `toptier_code` (text): The agency's code
- `url` (text): Its page on usaspending.gov
- `website` (text): Its website

**Example output**

```json
{
  "abbreviation": "DOD",
  "about_the_data": "For reasons of national security, Department of Defense contract and IDV data is subject to a 90-day publication delay.",
  "budget_justification_url": "https://www.defense.gov/cj",
  "fiscal_year": 2026,
  "mission": "The mission of the Department of Defense is to provide the military forces needed to deter war and to protect the security of our country.",
  "name": "Department of Defense",
  "sub_agency_count": 36,
  "toptier_code": "097",
  "url": "https://www.usaspending.gov/agency/department-of-defense",
  "website": "https://www.defense.gov/"
}
```

### Get agency budget

Get an agency's budgetary resources, obligations and outlays for a fiscal year, its share of the government's total, and the same figures for every year since 2017.

**Inputs**

- Agency (`agency`, text, required): The federal agency. Pick one, or use an agency code from List agencies, such as 097 for the Department of Defense.
- Fiscal year (`fiscal_year`, text): The federal fiscal year, which runs October to September. Leave empty for the latest year with published data. One of: `2027` (FY 2027 (Oct 2026 to Sep 2027)), `2026` (FY 2026 (Oct 2025 to Sep 2026)), `2025` (FY 2025 (Oct 2024 to Sep 2025)), `2024` (FY 2024 (Oct 2023 to Sep 2024)), `2023` (FY 2023 (Oct 2022 to Sep 2023)), `2022` (FY 2022 (Oct 2021 to Sep 2022)), `2021` (FY 2021 (Oct 2020 to Sep 2021)), `2020` (FY 2020 (Oct 2019 to Sep 2020)), `2019` (FY 2019 (Oct 2018 to Sep 2019)), `2018` (FY 2018 (Oct 2017 to Sep 2018)), `2017` (FY 2017 (Oct 2016 to Sep 2017)).

**Outputs**

- `budgetary_resources` (number): Total budgetary resources
- `fiscal_year` (number): The fiscal year
- `government_budgetary_resources` (number): The whole government's budgetary resources
- `name` (text): Name
- `obligated` (number): Dollars obligated
- `obligations_by_period` (list): Obligations through the year
- `outlays` (number): Dollars paid out
- `percent_of_government` (number): The agency's share, in percent
- `toptier_code` (text): The agency's code
- `years` (list): Every year with figures, newest first

**Example output**

```json
{
  "budgetary_resources": 2213230963902.27,
  "fiscal_year": 2025,
  "government_budgetary_resources": 13263700405307.76,
  "name": "Department of Defense",
  "obligated": 1451320548889.53,
  "obligations_by_period": [
    {
      "obligated": 1451320548889.53,
      "period": 12
    }
  ],
  "outlays": 1342207853342.79,
  "percent_of_government": 16.6864,
  "toptier_code": "097",
  "years": [
    {
      "budgetary_resources": 2213230963902.27,
      "fiscal_year": 2025,
      "obligated": 1451320548889.53,
      "outlays": 1342207853342.79
    }
  ]
}
```

### Get award

Get one award's details: amounts, dates, agencies, recipient, place of performance, industry or program, and its usaspending.gov page.

**Inputs**

- Award (`award_id`, text, required): The award_id from Search awards, such as CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700. A link to the award's usaspending.gov page works too.

**Outputs**

- `amount` (number): Dollars obligated; for a loan, its face value
- `assistance_listing` (text): Assistance listing (CFDA) number
- `assistance_listing_title` (text): The assistance program's name
- `award_id` (text): USAspending's ID for the award
- `award_number` (text): The agency's own number for the award
- `award_type` (text): The kind of award
- `awarding_agency` (text): The agency that made the award
- `awarding_agency_code` (text): That agency's code, for the agency actions
- `awarding_office` (text): The office that made it
- `awarding_sub_agency` (text): The part of the agency that made it
- `business_categories` (list): How the recipient is classified, such as Small Business
- `category` (text): contract, idv, grant, loans, direct payment or other
- `competition` (text): How the contract was competed, for contracts
- `description` (text): What the award is for
- `end_date` (text): When the work is due to end
- `funding_agency` (text): The agency paying for it
- `funding_sub_agency` (text): The part of that agency paying for it
- `last_modified_date` (text): When it last changed
- `loan_subsidy_cost` (number): A loan's cost to the government
- `naics_code` (text): Industry code (NAICS), for contracts
- `naics_description` (text): What the industry code means
- `offers_received` (number): How many offers the contract received
- `outlays` (number): Dollars paid out so far
- `parent_award_id` (text): For an order under a contract vehicle, the vehicle's award ID
- `parent_recipient_name` (text): The recipient's parent company, if any
- `place_of_performance` (text): Where the work is done
- `place_of_performance_state` (text): State where the work is done
- `potential_value` (number): A contract's value if every option is used (empty for grants)
- `pricing` (text): How the contract is priced, such as FIRM FIXED PRICE
- `psc_code` (text): Product or service code (PSC), for contracts
- `psc_description` (text): What the product or service code means
- `recipient_id` (text): USAspending's ID for the recipient
- `recipient_location` (text): Where the recipient is based
- `recipient_name` (text): Who received it
- `recipient_uei` (text): The recipient's Unique Entity ID (UEI)
- `signed_date` (text): When it was signed
- `start_date` (text): When the work starts
- `subaward_amount` (number): Dollars passed on in sub-awards
- `subaward_count` (number): How many sub-awards have been reported
- `url` (text): The award's page on usaspending.gov

**Example output**

```json
{
  "amount": 26700180.32,
  "assistance_listing": null,
  "assistance_listing_title": null,
  "award_id": "CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700",
  "award_number": "W91ZLK21F0094",
  "award_type": "DELIVERY ORDER",
  "awarding_agency": "Department of Defense",
  "awarding_agency_code": "097",
  "awarding_office": "W6QK ACC-APG DIR",
  "awarding_sub_agency": "Department of the Army",
  "business_categories": [
    "Small Business",
    "Woman Owned Business"
  ],
  "category": "contract",
  "competition": "FULL AND OPEN COMPETITION",
  "description": "ACQUISITION OF INFORMATION TECHNOLOGY TECHNICAL, STAFF, CYBERSECURITY SERVICE SUPPORT FOR DEVCOM CBC G6 ABERDEEN PROVING GROUND, MD.",
  "end_date": "2026-06-16",
  "funding_agency": "Department of Defense",
  "funding_sub_agency": "Department of the Army",
  "last_modified_date": "2026-07-09",
  "loan_subsidy_cost": null,
  "naics_code": "541519",
  "naics_description": "Other Computer Related Services",
  "offers_received": 6,
  "outlays": 111302.98,
  "parent_award_id": "CONT_IDV_W52P1J18DA057_9700",
  "parent_recipient_name": "SOFT TECH CONSULTING, INC.",
  "place_of_performance": "GUNPOWDER, MD, UNITED STATES",
  "place_of_performance_state": "MD",
  "potential_value": 44521739.94,
  "pricing": "FIRM FIXED PRICE",
  "psc_code": "DF01",
  "psc_description": "IT AND TELECOM - IT MANAGEMENT SUPPORT SERVICES (LABOR)",
  "recipient_id": "8651becb-bc7e-7f4b-9b39-928f8a38ce66-C",
  "recipient_location": "CHANTILLY, VA, UNITED STATES",
  "recipient_name": "SOFT TECH CONSULTING, INC.",
  "recipient_uei": "NNQZAS2TE6S5",
  "signed_date": "2021-06-04",
  "start_date": "2021-06-17",
  "subaward_amount": null,
  "subaward_count": 0,
  "url": "https://www.usaspending.gov/award/CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700"
}
```

### Get COVID-19 or infrastructure spending

Get how much Congress provided for COVID-19 relief or the Infrastructure Investment and Jobs Act, how much has been obligated and spent, and the funding from each law.

**Inputs**

- Program (`program`, text): Which spending to report. One of: `covid_19` (COVID-19), `infrastructure` (Infrastructure Investment and Jobs Act). Default: `covid_19`.

**Outputs**

- `award_obligated` (number): Of which obligated through awards
- `award_outlays` (number): Of which paid out through awards
- `funding` (list): Funding by law, largest first
- `program` (text): covid_19 or infrastructure
- `program_name` (text): The program's name
- `total_budget_authority` (number): Funding Congress provided
- `total_obligated` (number): Dollars obligated
- `total_outlays` (number): Dollars paid out

**Example output**

```json
{
  "award_obligated": 567476106746.35,
  "award_outlays": 304341858851.41,
  "funding": [
    {
      "amount": 440740983451.74,
      "code": "Z",
      "law": "Infrastructure Investment and Jobs Act",
      "public_law": "Emergency P.L. 117-58"
    },
    {
      "amount": 366990613419.18,
      "code": "1",
      "law": "Infrastructure Investment and Jobs Act",
      "public_law": "Non-emergency P.L. 117-58"
    }
  ],
  "program": "infrastructure",
  "program_name": "Infrastructure Investment and Jobs Act",
  "total_budget_authority": 807731596870.92,
  "total_obligated": 607509194384.14,
  "total_outlays": 330553807346.13
}
```

### Get federal account

Get a federal account's budgetary resources, obligations and outlays for a fiscal year, and the Treasury accounts under it.

**Inputs**

- Account number (`account_number`, text, required): The account_number from Search federal accounts, such as 075-0512.
- Fiscal year (`fiscal_year`, text): The federal fiscal year, which runs October to September. Leave empty for the latest year with published data. One of: `2027` (FY 2027 (Oct 2026 to Sep 2027)), `2026` (FY 2026 (Oct 2025 to Sep 2026)), `2025` (FY 2025 (Oct 2024 to Sep 2025)), `2024` (FY 2024 (Oct 2023 to Sep 2024)), `2023` (FY 2023 (Oct 2022 to Sep 2023)), `2022` (FY 2022 (Oct 2021 to Sep 2022)), `2021` (FY 2021 (Oct 2020 to Sep 2021)), `2020` (FY 2020 (Oct 2019 to Sep 2020)), `2019` (FY 2019 (Oct 2018 to Sep 2019)), `2018` (FY 2018 (Oct 2017 to Sep 2018)), `2017` (FY 2017 (Oct 2016 to Sep 2017)).

**Outputs**

- `account_number` (text): Account number
- `agency_code` (text): The agency code in the account number
- `budgetary_resources` (number): Budgetary resources
- `bureau_name` (text): The bureau within it
- `fiscal_year` (number): The fiscal year
- `main_account_code` (text): The main account code
- `name` (text): Name
- `obligated` (number): Dollars obligated
- `outlays` (number): Dollars paid out
- `parent_agency_code` (text): The managing agency's code
- `parent_agency_name` (text): The managing agency
- `treasury_accounts` (list): The Treasury accounts under it that year
- `url` (text): Its page on usaspending.gov

**Example output**

```json
{
  "account_number": "075-0580",
  "agency_code": "075",
  "budgetary_resources": 827526213540.02,
  "bureau_name": "Centers for Medicare and Medicaid Services",
  "fiscal_year": 2026,
  "main_account_code": "0580",
  "name": "Payments to Health Care Trust Funds, Centers for Medicare and Medicaid Services, Health and Human Services",
  "obligated": 568063890135.8,
  "outlays": 589986151002.13,
  "parent_agency_code": "075",
  "parent_agency_name": "Department of Health and Human Services",
  "treasury_accounts": [
    {
      "budgetary_resources": 788975649581.0,
      "code": "075-2026/2026-0580-000",
      "name": "Payments to Health Care Trust Funds, Centers for Medicare and Medicaid Services, Health and Human Services",
      "obligated": 567945060744.4,
      "outlays": 561009730802.12
    }
  ],
  "url": "https://www.usaspending.gov/federal_account/075-0580"
}
```

### Get last updated date

Get the day USAspending last updated its award data, to check for new data before running a search.

**Inputs**: None.

**Outputs**

- `last_updated` (text): The day award data was last updated (YYYY-MM-DD)

**Example output**

```json
{
  "last_updated": "2026-10-15"
}
```

### Get recipient

Get a recipient's profile: UEI, parent company, address, business types and what it received over a period.

**Inputs**

- Recipient (`recipient_id`, text, required): The recipient_id from Search recipients or Search awards, such as b97d19b0-833c-8d8f-3a2c-157d04ea55ef-P.
- Period (`period`, text): The time the totals cover. One of: `latest` (Last 12 months), `all` (All time), `2027` (FY 2027 (Oct 2026 to Sep 2027)), `2026` (FY 2026 (Oct 2025 to Sep 2026)), `2025` (FY 2025 (Oct 2024 to Sep 2025)), `2024` (FY 2024 (Oct 2023 to Sep 2024)), `2023` (FY 2023 (Oct 2022 to Sep 2023)), `2022` (FY 2022 (Oct 2021 to Sep 2022)), `2021` (FY 2021 (Oct 2020 to Sep 2021)), `2020` (FY 2020 (Oct 2019 to Sep 2020)), and 12 more. Default: `latest`.

**Outputs**

- `address` (text): Street address
- `alternate_names` (list): Other names it has used
- `business_types` (list): How it is classified
- `city` (text): City
- `congressional_district` (text): Congressional district
- `country` (text): Country
- `duns` (text): Older DUNS number, if any
- `level` (text): parent, child or recipient
- `loan_face_value` (number): Face value of loans in the period
- `loan_transaction_count` (number): Loan transactions in the period
- `name` (text): Name
- `parent_id` (text): The parent's ID
- `parent_name` (text): Its parent company, if any
- `period` (text): latest (last 12 months), all, or a fiscal year
- `recipient_id` (text): USAspending's ID
- `state` (text): State (two letters)
- `total_amount` (number): Dollars received in the period
- `transaction_count` (number): Transactions in the period
- `uei` (text): Unique Entity ID (UEI)
- `url` (text): Its page on usaspending.gov
- `zip` (text): ZIP code

**Example output**

```json
{
  "address": "6801 ROCKLEDGE DR",
  "alternate_names": [
    "COMPOSITE TECHNOLOGY  INC."
  ],
  "business_types": [
    "Corporate entity not tax exempt"
  ],
  "city": "BETHESDA",
  "congressional_district": "08",
  "country": "UNITED STATES",
  "duns": "834951691",
  "level": "parent",
  "loan_face_value": 0.0,
  "loan_transaction_count": 0,
  "name": "LOCKHEED MARTIN CORP",
  "parent_id": "b97d19b0-833c-8d8f-3a2c-157d04ea55ef-P",
  "parent_name": "LOCKHEED MARTIN CORP",
  "period": "2025",
  "recipient_id": "b97d19b0-833c-8d8f-3a2c-157d04ea55ef-P",
  "state": "MD",
  "total_amount": 65396393013.2,
  "transaction_count": 32411,
  "uei": "ZFN2JJXBLZT3",
  "url": "https://www.usaspending.gov/recipient/b97d19b0-833c-8d8f-3a2c-157d04ea55ef-P/latest",
  "zip": "20817"
}
```

### Get spending by state

Total federal award spending in each state and territory, with the amount per person, for the awards that match a search.

**Inputs**

- Award types (`award_types`, list): Only these kinds of award. Leave all unticked for every kind. One or more of: `contracts`, `idvs` (Contract vehicles (IDVs)), `grants`, `direct_payments` (Direct payments), `loans`, `other` (Other assistance).
- Based on (`location`, text): Which place counts for an award. One of: `place_of_performance` (Where the work is done), `recipient_location` (Where the recipient is based). Default: `place_of_performance`.
- Keywords (`keywords`, list): Words to look for in award descriptions and names, such as cybersecurity. Each needs at least 3 characters.
- From (`start_date`, date): Only spending on or after this day, back to 2007-10-01. Leave both dates empty for the last 12 months.
- To (`end_date`, date): Only spending on or before this day. Leave empty for today.
- Agency (`agency`, text): Only awards made by this agency.
- Sub-agency (`sub_agency`, text): Only awards made by this part of the agency, such as the Department of the Army. Pick an agency first to list its sub-agencies.
- Recipient (`recipient`, text): Only awards to this recipient: a name, such as Lockheed Martin, or a UEI.
- Industry codes (NAICS) (`naics_codes`, list): Only contracts in these industries, such as 541512. A shorter code covers everything under it (54 is professional services). Find codes with Look up codes.
- Product and service codes (PSC) (`psc_codes`, list): Only contracts for these products or services, such as 7030 for software. Find codes with Look up codes.

**Outputs**

- `based_on` (text): place_of_performance (where work is done) or recipient_location
- `count` (number): How many states and territories
- `end_date` (text): The last day searched (YYYY-MM-DD)
- `start_date` (text): The first day searched (YYYY-MM-DD)
- `states` (list): Each state and territory, largest amount first
- `total` (number): All of them together

**Example output**

```json
{
  "based_on": "place_of_performance",
  "count": 2,
  "end_date": "2026-10-15",
  "start_date": "2025-10-15",
  "states": [
    {
      "amount": 779827723.3,
      "per_capita": 101.21,
      "population": 7705281,
      "state_code": "WA",
      "state_name": "Washington"
    },
    {
      "amount": 317386122.63,
      "per_capita": 8.03,
      "population": 39538223,
      "state_code": "CA",
      "state_name": "California"
    }
  ],
  "total": 1097213845.93
}
```

### Get spending over time

Total federal award spending by year, quarter or month, split by kind of award, for the awards that match a search.

**Inputs**

- Group by (`group_by`, text): How to split the time. One of: `fiscal_year` (Fiscal year), `quarter` (Fiscal quarter), `month`, `calendar_year` (Calendar year). Default: `fiscal_year`.
- Award types (`award_types`, list): Only these kinds of award. Leave all unticked for every kind. One or more of: `contracts`, `idvs` (Contract vehicles (IDVs)), `grants`, `direct_payments` (Direct payments), `loans`, `other` (Other assistance).
- Keywords (`keywords`, list): Words to look for in award descriptions and names, such as cybersecurity. Each needs at least 3 characters.
- From (`start_date`, date): Only spending on or after this day, back to 2007-10-01. Leave both dates empty for the last 12 months.
- To (`end_date`, date): Only spending on or before this day. Leave empty for today.
- Agency (`agency`, text): Only awards made by this agency.
- Sub-agency (`sub_agency`, text): Only awards made by this part of the agency, such as the Department of the Army. Pick an agency first to list its sub-agencies.
- Recipient (`recipient`, text): Only awards to this recipient: a name, such as Lockheed Martin, or a UEI.
- Place of performance (`state`, text): Only awards for work done in this state or territory. One of: `AL` (Alabama), `AK` (Alaska), `AS` (American Samoa), `AZ` (Arizona), `AR` (Arkansas), `CA` (California), `CO` (Colorado), `CT` (Connecticut), `DE` (Delaware), `DC` (District of Columbia), and 46 more.
- Industry codes (NAICS) (`naics_codes`, list): Only contracts in these industries, such as 541512. A shorter code covers everything under it (54 is professional services). Find codes with Look up codes.
- Product and service codes (PSC) (`psc_codes`, list): Only contracts for these products or services, such as 7030 for software. Find codes with Look up codes.

**Outputs**

- `count` (number): How many periods
- `end_date` (text): The last day searched (YYYY-MM-DD)
- `group_by` (text): fiscal_year, quarter, month or calendar_year
- `periods` (list): Each period, oldest first
- `start_date` (text): The first day searched (YYYY-MM-DD)
- `total` (number): All of them together

**Example output**

```json
{
  "count": 1,
  "end_date": "2025-09-30",
  "group_by": "quarter",
  "periods": [
    {
      "amount": 24897683728.7,
      "calendar_year": null,
      "contracts": 10513660600.15,
      "direct_payments": 39351077.0,
      "fiscal_year": 2025,
      "grants": 12481042447.83,
      "idvs": 348365376.9,
      "loans": 964423542.82,
      "month": null,
      "other": 550840684.0,
      "period": "FY 2025 Q1",
      "quarter": 1
    }
  ],
  "start_date": "2024-10-01",
  "total": 24897683728.7
}
```

### Get state profile

Get the federal awards going to a state or territory: total amount, number of awards, amount per person, population and median household income.

**Inputs**

- State (`state`, text, required): The state or territory. One of: `AL` (Alabama), `AK` (Alaska), `AS` (American Samoa), `AZ` (Arizona), `AR` (Arkansas), `CA` (California), `CO` (Colorado), `CT` (Connecticut), `DE` (Delaware), `DC` (District of Columbia), and 46 more.
- Period (`period`, text): The fiscal year the totals cover, or all time. Leave empty for the latest year with published data. One of: `2027` (FY 2027 (Oct 2026 to Sep 2027)), `2026` (FY 2026 (Oct 2025 to Sep 2026)), `2025` (FY 2025 (Oct 2024 to Sep 2025)), `2024` (FY 2024 (Oct 2023 to Sep 2024)), `2023` (FY 2023 (Oct 2022 to Sep 2023)), `2022` (FY 2022 (Oct 2021 to Sep 2022)), `2021` (FY 2021 (Oct 2020 to Sep 2021)), `2020` (FY 2020 (Oct 2019 to Sep 2020)), `2019` (FY 2019 (Oct 2018 to Sep 2019)), `2018` (FY 2018 (Oct 2017 to Sep 2018)), and 11 more.

**Outputs**

- `award_count` (number): How many awards
- `fips` (text): FIPS code
- `income_year` (number): The year of the income figure
- `loan_count` (number): How many loans
- `loan_face_value` (number): Face value of loans
- `median_household_income` (number): Median household income
- `name` (text): Name
- `outlays` (number): Dollars paid out
- `per_capita` (number): Dollars per person
- `period` (text): latest (last 12 months), all, or a fiscal year
- `population` (number): Population
- `population_year` (number): The year of the population figure
- `state_code` (text): Two-letter code
- `total_awarded` (number): Dollars awarded to recipients there
- `type` (text): state, district or territory

**Example output**

```json
{
  "award_count": 579674,
  "fips": "51",
  "income_year": 2016,
  "loan_count": 14865,
  "loan_face_value": 8710164260.47,
  "median_household_income": 68114.0,
  "name": "Virginia",
  "outlays": 112892224316.4,
  "per_capita": 25286.63,
  "period": "2025",
  "population": 8470020,
  "population_year": 2017,
  "state_code": "VA",
  "total_awarded": 214178247580.41,
  "type": "state"
}
```

### Get top spending by category

Rank where the money went for the awards that match a search: top recipients, agencies, industries, products, programs, states, countries or federal accounts, largest first.

**Inputs**

- Break down by (`category`, text): What to rank. One of: `recipient` (Recipients), `awarding_agency` (Awarding agencies), `awarding_subagency` (Awarding sub-agencies), `funding_agency` (Funding agencies), `naics` (Industries (NAICS codes)), `psc` (Products and services (PSC codes)), `cfda` (Assistance programs (CFDA)), `state_territory` (States and territories), `country` (Countries), `federal_account` (Federal accounts). Default: `recipient`.
- Award types (`award_types`, list): Only these kinds of award. Leave all unticked for every kind. One or more of: `contracts`, `idvs` (Contract vehicles (IDVs)), `grants`, `direct_payments` (Direct payments), `loans`, `other` (Other assistance).
- Keywords (`keywords`, list): Words to look for in award descriptions and names, such as cybersecurity. Each needs at least 3 characters.
- From (`start_date`, date): Only spending on or after this day, back to 2007-10-01. Leave both dates empty for the last 12 months.
- To (`end_date`, date): Only spending on or before this day. Leave empty for today.
- Agency (`agency`, text): Only awards made by this agency.
- Sub-agency (`sub_agency`, text): Only awards made by this part of the agency, such as the Department of the Army. Pick an agency first to list its sub-agencies.
- Recipient (`recipient`, text): Only awards to this recipient: a name, such as Lockheed Martin, or a UEI.
- Place of performance (`state`, text): Only awards for work done in this state or territory. One of: `AL` (Alabama), `AK` (Alaska), `AS` (American Samoa), `AZ` (Arizona), `AR` (Arkansas), `CA` (California), `CO` (Colorado), `CT` (Connecticut), `DE` (Delaware), `DC` (District of Columbia), and 46 more.
- Industry codes (NAICS) (`naics_codes`, list): Only contracts in these industries, such as 541512. A shorter code covers everything under it (54 is professional services). Find codes with Look up codes.
- Product and service codes (PSC) (`psc_codes`, list): Only contracts for these products or services, such as 7030 for software. Find codes with Look up codes.
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.
- Page (`page`, number): Which page of results. When has_more is true, ask for the next one. From 1 to 1000. Default: `1`.

**Outputs**

- `category` (text): What the spending is broken down by
- `count` (number): How many came back on this page
- `end_date` (text): The last day searched (YYYY-MM-DD)
- `has_more` (true/false): Whether there are more results; ask for the next page to get them
- `page` (number): The page this is
- `results` (list): Largest amount first
- `start_date` (text): The first day searched (YYYY-MM-DD)

**Example output**

```json
{
  "category": "recipient",
  "count": 1,
  "end_date": "2026-10-15",
  "has_more": true,
  "page": 1,
  "results": [
    {
      "amount": 5490349279.92,
      "code": "080961356",
      "name": "TRIAD NATIONAL SECURITY, LLC",
      "recipient_id": "59ab4d30-abec-ded6-33c4-5d9f37fd2da0-C",
      "recipient_uei": "X7WUS5LRBQU3"
    }
  ],
  "start_date": "2025-10-15"
}
```

### List agencies

List every federal agency with its code, budget, obligations and share of the government's budget this fiscal year.

**Inputs**

- Sort by (`sort`, text): The order to list them in. One of: `name` (Name, A to Z), `budget` (Largest budget first). Default: `name`.

**Outputs**

- `agencies` (list): Every federal agency
- `count` (number): How many agencies

**Example output**

```json
{
  "agencies": [
    {
      "abbreviation": "DOD",
      "budget_authority": 2617506434639.06,
      "fiscal_year": 2026,
      "name": "Department of Defense",
      "obligated": 1468976620557.11,
      "outlays": 1283091272160.17,
      "percent_of_total_budget": 16.1762,
      "slug": "department-of-defense",
      "toptier_code": "097",
      "url": "https://www.usaspending.gov/agency/department-of-defense"
    }
  ],
  "count": 1
}
```

### List award transactions

List the changes made to an award over time, such as new funding and modifications, newest first.

**Inputs**

- Award (`award_id`, text, required): The award_id from Search awards, such as CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700. A link to the award's usaspending.gov page works too.
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.
- Page (`page`, number): Which page of results. When has_more is true, ask for the next one. From 1 to 1000. Default: `1`.

**Outputs**

- `award_id` (text): The award
- `count` (number): How many came back on this page
- `has_more` (true/false): Whether there are more results; ask for the next page to get them
- `page` (number): The page this is
- `transactions` (list): Its transactions, newest first

**Example output**

```json
{
  "award_id": "CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700",
  "count": 1,
  "has_more": true,
  "page": 1,
  "transactions": [
    {
      "action_date": "2026-07-09",
      "action_type": "FUNDING ONLY ACTION",
      "amount": 10833.66,
      "description": "ACQUISITION OF INFORMATION TECHNOLOGY TECHNICAL, STAFF, AND CYBER SECURITY SERVICE SUPPORT",
      "id": "CONT_TX_9700_9700_W91ZLK21F0094_P00037_W52P1J18DA057_0",
      "loan_face_value": 0.0,
      "loan_subsidy_cost": 0.0,
      "modification_number": "P00037"
    }
  ]
}
```

### List sub-agencies

List an agency's sub-agencies and their offices, with what each obligated and how many new awards it made in a fiscal year.

**Inputs**

- Agency (`agency`, text, required): The federal agency. Pick one, or use an agency code from List agencies, such as 097 for the Department of Defense.
- Fiscal year (`fiscal_year`, text): The federal fiscal year, which runs October to September. Leave empty for the latest year with published data. One of: `2027` (FY 2027 (Oct 2026 to Sep 2027)), `2026` (FY 2026 (Oct 2025 to Sep 2026)), `2025` (FY 2025 (Oct 2024 to Sep 2025)), `2024` (FY 2024 (Oct 2023 to Sep 2024)), `2023` (FY 2023 (Oct 2022 to Sep 2023)), `2022` (FY 2022 (Oct 2021 to Sep 2022)), `2021` (FY 2021 (Oct 2020 to Sep 2021)), `2020` (FY 2020 (Oct 2019 to Sep 2020)), `2019` (FY 2019 (Oct 2018 to Sep 2019)), `2018` (FY 2018 (Oct 2017 to Sep 2018)), `2017` (FY 2017 (Oct 2016 to Sep 2017)).
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.
- Page (`page`, number): Which page of results. When has_more is true, ask for the next one. From 1 to 1000. Default: `1`.

**Outputs**

- `agency_name` (text): The agency's name
- `count` (number): How many came back on this page
- `fiscal_year` (number): The fiscal year
- `has_more` (true/false): Whether there are more results; ask for the next page to get them
- `page` (number): The page this is
- `sub_agencies` (list): Largest first
- `toptier_code` (text): The agency's code
- `total` (number): How many there are in all, across every page

**Example output**

```json
{
  "agency_name": "Department of Defense",
  "count": 1,
  "fiscal_year": 2026,
  "has_more": true,
  "page": 1,
  "sub_agencies": [
    {
      "abbreviation": "USN",
      "name": "Department of the Navy",
      "new_award_count": 39851,
      "obligations": 129125822440.7,
      "offices": [
        {
          "code": "N00024",
          "name": "NAVSEA HQ",
          "new_award_count": 1027,
          "obligations": 41931823643.27,
          "transaction_count": 4558
        }
      ],
      "transaction_count": 139255
    }
  ],
  "toptier_code": "097",
  "total": 25
}
```

### List sub-awards

List the sub-awards a recipient passed on from an award, such as subcontracts, as the recipient reported them.

**Inputs**

- Award (`award_id`, text, required): The award_id from Search awards, such as CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700. A link to the award's usaspending.gov page works too.
- Sort by (`sort`, text): Which sub-awards come first. One of: `amount` (Largest amount first), `date` (Newest first). Default: `amount`.
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.
- Page (`page`, number): Which page of results. When has_more is true, ask for the next one. From 1 to 1000. Default: `1`.

**Outputs**

- `award_id` (text): The prime award
- `count` (number): How many came back on this page
- `has_more` (true/false): Whether there are more results; ask for the next page to get them
- `page` (number): The page this is
- `subawards` (list): Its sub-awards

**Example output**

```json
{
  "award_id": "CONT_AWD_FA862118F6251_9700_FA862115D6276_9700",
  "count": 1,
  "has_more": true,
  "page": 1,
  "subawards": [
    {
      "action_date": "2023-07-26",
      "amount": 15485000.0,
      "description": "AC-130J WST #12 COLA (DD250)",
      "id": 2192073,
      "recipient_name": "CAE USA INC.",
      "subaward_number": "4105945330"
    }
  ]
}
```

### Look up codes

Find industry (NAICS), product and service (PSC) or assistance listing (CFDA) codes by word or number, to use in the other actions' filters.

**Inputs**

- Code type (`code_type`, text): Which kind of code to look up. One of: `naics` (Industry codes (NAICS)), `psc` (Product and service codes (PSC)), `cfda` (Assistance listings (CFDA)). Default: `naics`.
- Search for (`search`, text, required): A word or the start of a code, such as software or 5415.
- Include retired codes (`include_retired`, true/false): Also list NAICS codes that are no longer used. Default: `false`.
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.

**Outputs**

- `code_type` (text): naics, psc or cfda
- `codes` (list): The codes found
- `count` (number): How many came back on this page
- `search` (text): What was searched for

**Example output**

```json
{
  "code_type": "naics",
  "codes": [
    {
      "code": "513210",
      "name": "Software Publishers",
      "popular_name": null,
      "retired_year": null
    }
  ],
  "count": 1,
  "search": "software"
}
```

### Search awards

Find federal contracts, grants, loans and other awards by keyword, dates, agency, recipient, place or industry. Each result has an award_id for Get award.

**Inputs**

- Award type (`award_type`, text): The kind of award to search. One kind at a time. One of: `contracts`, `idvs` (Contract vehicles (IDVs)), `grants`, `direct_payments` (Direct payments), `loans`, `other` (Other assistance). Default: `contracts`.
- Keywords (`keywords`, list): Words to look for in award descriptions and names, such as cybersecurity. Each needs at least 3 characters.
- From (`start_date`, date): Only spending on or after this day, back to 2007-10-01. Leave both dates empty for the last 12 months.
- To (`end_date`, date): Only spending on or before this day. Leave empty for today.
- Agency (`agency`, text): Only awards made by this agency.
- Sub-agency (`sub_agency`, text): Only awards made by this part of the agency, such as the Department of the Army. Pick an agency first to list its sub-agencies.
- Recipient (`recipient`, text): Only awards to this recipient: a name, such as Lockheed Martin, or a UEI.
- Place of performance (`state`, text): Only awards for work done in this state or territory. One of: `AL` (Alabama), `AK` (Alaska), `AS` (American Samoa), `AZ` (Arizona), `AR` (Arkansas), `CA` (California), `CO` (Colorado), `CT` (Connecticut), `DE` (Delaware), `DC` (District of Columbia), and 46 more.
- Industry codes (NAICS) (`naics_codes`, list): Only contracts in these industries, such as 541512. A shorter code covers everything under it (54 is professional services). Find codes with Look up codes.
- Product and service codes (PSC) (`psc_codes`, list): Only contracts for these products or services, such as 7030 for software. Find codes with Look up codes.
- Sort by (`sort`, text): Which awards come first. One of: `amount` (Largest amount first), `signed` (Newest first), `updated` (Recently updated first). Default: `amount`.
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.
- Page (`page`, number): Which page of results. When has_more is true, ask for the next one. From 1 to 1000. Default: `1`.

**Outputs**

- `award_type` (text): The award type searched
- `awards` (list): The awards found
- `count` (number): How many came back on this page
- `end_date` (text): The last day searched (YYYY-MM-DD)
- `has_more` (true/false): Whether there are more results; ask for the next page to get them
- `page` (number): The page this is
- `start_date` (text): The first day searched (YYYY-MM-DD)

**Example output**

```json
{
  "award_type": "contracts",
  "awards": [
    {
      "amount": 26700180.32,
      "assistance_listing": null,
      "assistance_listing_title": null,
      "award_id": "CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700",
      "award_number": "W91ZLK21F0094",
      "award_type": "DELIVERY ORDER",
      "awarding_agency": "Department of Defense",
      "awarding_sub_agency": "Department of the Army",
      "description": "ACQUISITION OF INFORMATION TECHNOLOGY TECHNICAL, STAFF, CYBERSECURITY SERVICE SUPPORT FOR DEVCOM CBC G6 ABERDEEN PROVING GROUND, MD.",
      "end_date": "2026-06-16",
      "last_modified_date": "2026-07-09",
      "naics_code": "541519",
      "naics_description": "OTHER COMPUTER RELATED SERVICES",
      "outlays": 111302.98,
      "place_of_performance_city": "GUNPOWDER",
      "place_of_performance_country": "USA",
      "place_of_performance_state": "MD",
      "psc_code": "DF01",
      "psc_description": "IT AND TELECOM - IT MANAGEMENT SUPPORT SERVICES (LABOR)",
      "recipient_id": "8651becb-bc7e-7f4b-9b39-928f8a38ce66-C",
      "recipient_name": "SOFT TECH CONSULTING, INC.",
      "recipient_uei": "NNQZAS2TE6S5",
      "signed_date": "2021-06-04",
      "start_date": "2021-06-17",
      "url": "https://www.usaspending.gov/award/CONT_AWD_W91ZLK21F0094_9700_W52P1J18DA057_9700"
    }
  ],
  "count": 1,
  "end_date": "2025-09-30",
  "has_more": true,
  "page": 1,
  "start_date": "2024-10-01"
}
```

### Search federal accounts

Find the accounts Congress funds agencies through, such as Grants to States for Medicaid, with each one's budget.

**Inputs**

- Keyword (`keyword`, text): Words in the account's name or number, such as medicare.
- Agency (`agency`, text): Only accounts this agency manages.
- Fiscal year (`fiscal_year`, text): The federal fiscal year, which runs October to September. Leave empty for the latest year with published data. One of: `2027` (FY 2027 (Oct 2026 to Sep 2027)), `2026` (FY 2026 (Oct 2025 to Sep 2026)), `2025` (FY 2025 (Oct 2024 to Sep 2025)), `2024` (FY 2024 (Oct 2023 to Sep 2024)), `2023` (FY 2023 (Oct 2022 to Sep 2023)), `2022` (FY 2022 (Oct 2021 to Sep 2022)), `2021` (FY 2021 (Oct 2020 to Sep 2021)), `2020` (FY 2020 (Oct 2019 to Sep 2020)), `2019` (FY 2019 (Oct 2018 to Sep 2019)), `2018` (FY 2018 (Oct 2017 to Sep 2018)), `2017` (FY 2017 (Oct 2016 to Sep 2017)).
- Sort by (`sort`, text): Which accounts come first. One of: `budget` (Largest budget first), `name` (Name, A to Z), `number` (Account number). Default: `budget`.
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.
- Page (`page`, number): Which page of results. When has_more is true, ask for the next one. From 1 to 1000. Default: `1`.

**Outputs**

- `accounts` (list): The accounts found
- `count` (number): How many came back on this page
- `fiscal_year` (number): The fiscal year of the budget figures
- `has_more` (true/false): Whether there are more results; ask for the next page to get them
- `page` (number): The page this is
- `total` (number): How many there are in all, across every page

**Example output**

```json
{
  "accounts": [
    {
      "account_number": "075-0512",
      "agency_code": "075",
      "budgetary_resources": 871639662892.66,
      "managing_agency": "Department of Health and Human Services",
      "managing_agency_abbreviation": "HHS",
      "name": "Grants to States for Medicaid, Centers for Medicare and Medicaid Services, Health and Human Services",
      "url": "https://www.usaspending.gov/federal_account/075-0512"
    }
  ],
  "count": 1,
  "fiscal_year": 2026,
  "has_more": true,
  "page": 1,
  "total": 22
}
```

### Search recipients

Find companies, nonprofits and governments that receive federal money, by name or UEI, with what each received in the last 12 months.

**Inputs**

- Name or UEI (`keyword`, text): The recipient's name, such as Lockheed Martin, or its UEI. Leave empty for the largest recipients.
- Award type (`award_type`, text): Only recipients of this kind of award. One of: `all` (All award types), `contracts`, `grants`, `loans`. Default: `all`.
- Sort by (`sort`, text): Which recipients come first. One of: `amount` (Largest amount first), `name` (Name, A to Z). Default: `amount`.
- Results per page (`limit`, number): How many to return, up to 100. From 1 to 100. Default: `10`.
- Page (`page`, number): Which page of results. When has_more is true, ask for the next one. From 1 to 1000. Default: `1`.

**Outputs**

- `count` (number): How many came back on this page
- `has_more` (true/false): Whether there are more results; ask for the next page to get them
- `page` (number): The page this is
- `recipients` (list): The recipients found
- `total` (number): How many there are in all, across every page

**Example output**

```json
{
  "count": 1,
  "has_more": true,
  "page": 1,
  "recipients": [
    {
      "amount": 48562608641.66,
      "duns": "834951691",
      "level": "parent",
      "name": "LOCKHEED MARTIN CORP",
      "recipient_id": "b97d19b0-833c-8d8f-3a2c-157d04ea55ef-P",
      "uei": "ZFN2JJXBLZT3",
      "url": "https://www.usaspending.gov/recipient/b97d19b0-833c-8d8f-3a2c-157d04ea55ef-P/latest"
    }
  ],
  "total": 287
}
```
