Single contract vehicle
Returns the vehicle's latest transaction plus two roll-ups: one across the vehicle's own transaction history, and one across the orders placed against it.
The second is what makes this endpoint worth calling. A vehicle's own transactions carry its ceiling, the most that may be ordered through it. The money moves on the orders, which live in the contracts table. A vehicle without its orders is a stub.
Response
curl -H "Authorization: Bearer $GOVCON_API_KEY" \
"https://govconapi.com/api/v1/vehicles/N0003920D0054"
{
"vehicle": {
"award_id_piid": "N0003920D0054",
"contract_award_unique_key": "CONT_IDV_N0003920D0054_9700",
"idv_type": "IDC",
"idv_type_code": "B",
"prime_award_base_transaction_description": "SERVICE MANAGEMENT, INTEGRATION, AND TRANSPORT (SMIT)",
"action_date": "2025-12-08",
"period_of_performance_start_date": "2020-02-01",
"ordering_period_end_date": "2028-08-04",
"potential_total_value_of_award": 7729639286.25,
"awarding_agency_name": "Department of Defense",
"awarding_sub_agency_name": "Department of the Navy",
"recipient_uei": "UE9QJD4KK1L6",
"recipient_name": "LEIDOS, INC.",
"naics_code": "541512",
"multiple_or_single_award_idv": "SINGLE AWARD",
"usaspending_permalink": "https://www.usaspending.gov/award/CONT_IDV_N0003920D0054_9700/"
},
"transaction_rollup": {
"transaction_count": 70,
"max_ceiling": 7729639286.25,
"first_action_date": "2020-02-05",
"latest_action_date": "2025-12-08",
"ordering_period_end_date": "2028-08-04",
"distinct_awardees": 1
},
"orders_rollup": {
"order_count": 16056,
"distinct_orders": 5988,
"total_obligated": 1257164494.67,
"distinct_holders": 1,
"first_order_date": "2024-10-01",
"latest_order_date": "2026-02-27"
},
"vehicle_family": {
"is_multiple_award": false,
"piid_count": 1,
"solicitation_identifier": "N0003918R0005",
"note": null
},
"_sources": ["usaspending_fpds"]
}
Read that as: the Navy's SMIT vehicle has a $7.73 billion ceiling, its ordering period runs to August 2028, and $1.26 billion has actually been obligated across 5,988 distinct orders.
On a multiple-award IDIQ, the same call looks different. SMIT above is a single-award vehicle (one PIID, one company), the simplest and least representative case. Query one specific PIID of a multiple-award vehicle instead (each awardee under a multi-award IDIQ gets its OWN PIID) and vehicle_family changes shape:
"vehicle_family": {
"is_multiple_award": true,
"piid_count": 6926,
"solicitation_identifier": "FCIS-JB-980001-B",
"note": "This PIID is one of several awards under the same solicitation. transaction_rollup/orders_rollup above describe only this award; see /vehicles/{piid}/holders for every holder and who has earned through the whole family."
}
transaction_rollup/orders_rollup still describe only the ONE PIID you queried — distinct_awardees/distinct_holders read 1, because FPDS gives every awardee of a multi-award vehicle a separate PIID, so a single PIID's own history can structurally never show more than one. That's not a bug: it matches how USAspending's own IDV award view works (a single award record has no cross-awardee aggregation). vehicle_family is the signal that tells you when a "1" means "the only holder" versus "one of 6,926 , see /holders for the rest."
Fields
transaction_rollup , across every transaction of the vehicle itself.
| Field | Meaning |
|---|---|
transaction_count |
The vehicle's base award plus every modification |
max_ceiling |
Highest potential_total_value_of_award seen. This is the ceiling. |
max_base_and_all_options_value |
The equivalent column used on orders. Populated on a minority of vehicles; usually 0. |
ordering_period_end_date |
When the ordering period closes |
distinct_awardees |
Firms holding this PIID. Always 1 , see vehicle_family below for the multi-award picture. |
orders_rollup , across the orders placed against this PIID (prime_awards.parent_award_id_piid).
| Field | Meaning |
|---|---|
order_count |
Order transactions, modifications included |
distinct_orders |
Distinct orders (modifications collapsed) |
total_obligated |
Dollars actually obligated through this PIID |
distinct_holders |
Firms that have been paid through this PIID. Always 1, same reason as distinct_awardees above. |
order_count is always greater than or equal to distinct_orders: an order and its modifications are separate FPDS rows.
vehicle_family , whether this PIID is one of several awards under the same solicitation. On a multiple-award IDIQ (GSA Alliant-style: one program, many awardees, each with their own PIID), transaction_rollup/orders_rollup above describe only the one PIID in the URL , this block is what tells you that's happening.
| Field | Meaning |
|---|---|
is_multiple_award |
true if this PIID shares a solicitation with sibling awards |
piid_count |
How many PIIDs (including this one) share that solicitation. 1 when not multi-award. |
solicitation_identifier |
The shared solicitation, or null if none is on record |
note |
Guidance pointing to /holders, present only when is_multiple_award is true |
For the full holder list and who has actually earned money across the whole family, use /vehicles/{piid}/holders , this endpoint deliberately does not blend sibling awardees' numbers into transaction_rollup/orders_rollup, since that would answer a different question (the whole program's activity) than the one the URL asks (this one award's activity).
Coverage
Orders are carried from FY2025 onward, so orders_rollup counts orders placed in that window, while the vehicle record itself may date back decades. A vehicle awarded before FY2025 shows its full history in transaction_rollup and only its recent orders in orders_rollup.
Returns 404 if the PIID is not a vehicle we carry. If you have an order PIID and want the vehicle it rides, use /contracts/{piid}/vehicle instead.
Errors
| Status | When |
|---|---|
400 |
Any query parameter is sent (this endpoint takes none) |
401 |
Missing or invalid API key |
404 |
The PIID is not a vehicle we carry. If you have an order PIID, use /contracts/{piid}/vehicle |
Related
/vehicles/{piid}/holders, who holds it, and who is earning on it (Pro)/vehicles/search, find vehicles by type, agency, NAICS, or holder