Skip to content

Subawards

Subawards (FSRS/USAspending subawards) are exposed at /api/subawards/. For field definitions, see the Subawards Data Dictionary.

Endpoints

  • GET /api/subawards/ (list + filtering + ordering)
  • GET /api/subawards/{key}/ (detail)

Scoped lists:

  • GET /api/contracts/{key}/subawards/ (subawards under a contract)
  • GET /api/entities/{uei}/subawards/ (subawards for an entity)

Default response

All subaward responses use the shaping pipeline by default. No ?shape= parameter is required to get a shaped response.

Default fields (equivalent to requesting):

award_key,awarding_office(*),fsrs_details(*),funding_office(*),key,piid,
place_of_performance(*),prime_recipient(uei,display_name),
subaward_details(*),subaward_recipient(uei,display_name)

Shaping

Use ?shape= to request a custom field set. Subawards support the following leaves and expansions.

Leaves

Identity and prime award scalar fields:

Field Description
key Subaward primary key
award_key Prime award identifier
piid Prime award PIID (mapped from prime_award_piid)
prime_award_amount Total prime award amount
prime_award_total_outlayed_amount Prime award total outlayed amount
prime_award_base_action_date Prime award base action date
prime_award_base_action_date_fiscal_year Fiscal year of base action date
prime_award_latest_action_date Prime award latest action date
prime_award_latest_action_date_fiscal_year Fiscal year of latest action date
prime_award_base_transaction_description Prime award description
prime_award_project_title Prime award project title
prime_award_naics_code NAICS code
prime_award_naics_description NAICS description
prime_awardee_uei Prime awardee UEI
prime_awardee_name Prime awardee name
prime_awardee_parent_uei Prime awardee parent UEI
prime_awardee_parent_name Prime awardee parent name
subawardee_uei Subawardee UEI
subawardee_duns Subawardee DUNS
subawardee_name Subawardee name
subawardee_dba_name Subawardee DBA name
subawardee_parent_uei Subawardee parent UEI
subawardee_parent_duns Subawardee parent DUNS
subawardee_parent_name Subawardee parent name
subawardee_business_types Subawardee business types
usaspending_permalink USASpending.gov link

Expansions

Expansion Fields
subaward_details(*) description, type, number, amount, action_date, fiscal_year
fsrs_details(*) last_modified_date, id, year, month
place_of_performance(*) city, state, zip, country_code
highly_compensated_officers(*) name, amount — list of up to 5 officers
prime_recipient(uei,display_name) Prime awardee identity, resolved from the Entities table when available (falling back to denormalized subaward fields when no match exists)
subaward_recipient(uei,display_name,duns) Subawardee identity, resolved from the Entities table when available (falling back to denormalized subaward fields when no match exists)
awarding_office(*) office_code, office_name, agency_code, agency_name, department_code, department_name
funding_office(*) Same fields as awarding_office

Examples

# Default response (no shape needed)
/api/subawards/

# Minimal fields
/api/subawards/?shape=key,piid,award_key

# Subaward details with recipient info
/api/subawards/?shape=key,piid,subaward_details(*),subaward_recipient(uei,display_name)

# Office hierarchy for awarding office
/api/subawards/?shape=key,awarding_office(office_code,office_name,agency_name)

# All offices
/api/subawards/?shape=key,awarding_office(*),funding_office(*)

# Place of performance
/api/subawards/?shape=key,place_of_performance(city,state,country_code)

# FSRS report details
/api/subawards/?shape=key,fsrs_details(id,year,month,last_modified_date)

# Highly compensated officers
/api/subawards/?shape=key,highly_compensated_officers(name,amount)

# Discover available fields
/api/subawards/?show_shapes=true

Filtering

Core filters:

Param What it does
award_key Filter by prime award key (exact).
prime_uei Filter by prime awardee UEI (exact).
sub_uei Filter by subawardee UEI (exact).
recipient Search by recipient name (best-effort mapping to UEIs).
awarding_agency Filter by prime awarding agency code (exact).
funding_agency Filter by prime funding agency code (exact).
fiscal_year Filter by subaward action-date fiscal year (exact).
fiscal_year_gte, fiscal_year_lte Fiscal year range.

Ordering

Subawards support ordering= with a strict allowlist:

  • last_modified_date

Examples:

  • Most recently modified first: GET /api/subawards/?ordering=-last_modified_date

Pagination

Subawards use standard page-number pagination:

  • page (default 1)
  • limit (max 100)

SDK examples

The official SDKs don't yet expose a first-class list_subawards() / listSubawards() method. You can still call the endpoint via the SDK's internal HTTP helper.

import os

from tango import TangoClient

client = TangoClient(api_key=os.environ["TANGO_API_KEY"])
data = client._get(
    "/api/subawards/",
    params={"recipient": "deloitte", "ordering": "-last_modified_date", "limit": 10},
)
print("count:", data.get("count"))
import { TangoClient } from "@makegov/tango-node";

const client = new TangoClient({ apiKey: process.env.TANGO_API_KEY });
const http = (client as any).http;

const data = await http.get("/api/subawards/", {
  recipient: "deloitte",
  ordering: "-last_modified_date",
  limit: 10,
});

console.log("count:", data.count);