Skip to content

Award announcements Data Dictionary

This document describes the fields available on the award announcements API endpoint (/api/news/award_announcements/). For filtering, ordering, and pagination, see the Award announcements API Reference.

Overview

Each row is one announcement of an award, from one of two sources, named on every row.

source source_name Coverage Text
official_release Department of War daily contracts release Awards of $7.5 million or more, from March 2026 As published by the Department of War
makegov_generated MakeGov, generated from FPDS award data New civilian IDVs of $25 million or more and every new OTA and OT IDV, from June 2026 Written by MakeGov from FPDS award data, with a language model summarizing the purpose and writing the title. Not government text.

Authentication: this endpoint requires authentication (API key or OAuth2).

Plans: every field is available on every plan, including Free.

Note: The full field set is available via the shape query parameter. See Response Shaping.

Update Frequency

Both sources are read daily. An official row appears after its release is published, and a generated row appears after the award reaches FPDS.

Identity

The primary key and detail-lookup value is uuid.

  • Official rows: uuid is derived from the release and the paragraph's position in it, so it is stable.
  • Generated rows: uuid follows the announcement's earliest-seen award, so it holds when more awards join the row. When two rows merge, the older uuid survives.

A generated row is removed when an official release comes to cover the same award, so its uuid then returns 404. source_record_id on a generated row is not stable; store uuid instead.

Fields

"Filled on" says which source populates a field: Both, Official or Generated. A field is null on the other source, and any field can be null where the source doesn't state a value.

Field Type Description Filled on
uuid UUID Primary key. See Identity. Both
source String official_release or makegov_generated. Both
source_name String The source's display name. Both
source_url String The release on war.gov. Always null on a generated row, which has no page to link to. Official
source_record_id String On an official row, the release's article id and the paragraph's position, as article:position. On a generated row, an opaque key that can change. Both
published_date Date Official: the date of the release. Generated: the date MakeGov first announced the award, which does not move when the row is updated. Rows from the initial backfill carry their award date. Both
award_date Date The award's date; the earliest of them when a row covers several awards. A release states dates only in its text, so this is null on an official row. Generated
title String Official: the title of the day's release, such as Contracts for Oct. 1, 2026, shared by every paragraph in it. Generated: a title written by a language model, which can be null. Both
text String The announcement. Official: as published, unchanged by any correction. Generated: written by MakeGov. In the list response only when named in shape. Both
amount Decimal The headline dollar figure, in US dollars, including any applied correction. Read it with value_kind. Both
value_kind String What amount measures — see value_kind. Both
obligated_at_award Decimal Funds obligated at award. Official: as stated in the release, and 0 when it says none are. Generated: the FPDS figure when every award in the row has had a single action, and null otherwise. Both
action_type String What the announcement reports — see action_type. Always new_award on a generated row. Both
announcement_type String The kind of generated announcement — see announcement_type. Generated
award_kind String The kind of award linked. Official: contract or idv, or null until the award links. Generated: idv, ota or otidv. Both
awardee_count Integer The number of awardees named. Both
piids Array of String Contract numbers named, upper-cased with dashes and other punctuation removed. Official rows hold no OT agreement numbers. Both
award_uuids Array of UUID Tango awards the announcement links to. On an official row these fill in as FPDS catches up, which can take up to 90 days. Both
civilian Boolean true for a civilian award. Always false on an official row; false on a generated row for a DoD OTA or OT IDV. Both
component String The DoD component heading the paragraph in the release, such as NAVY, normalized to one spelling per organization. Official
contracting_activity String The contracting activity named in the release. Official
is_modification Boolean true when the announcement reports a modification to an existing contract. Official
is_multiple_award Boolean Official: the announcement names more than one awardee. Generated: a multiple-award vehicle, which can name a single awardee. Both
corrections Array of Object The Department of War's corrections applied to the announcement — see corrections. Official
is_withdrawn Boolean true when a correction says the award was not released, not awarded or rescinded. Hidden from lists and alerts unless include_withdrawn=true, and always retrievable by uuid. Official
awardees Array of Object The awardees named — see awardees. An expansion. Both
organization Object The awarding organization — see organization. An expansion. Both

Vocabularies

value_kind

Value Meaning Source
face_value A plain award value. On a generated row, the base and all options value of an award with no real ceiling. Both
ceiling A maximum or not-to-exceed figure. Both
combined_ceiling One figure shared across a multiple-award pool, never attributable to one awardee. Official
estimated_value An estimated value. Official
modification_value The value of a modification, option exercise or extension. Official
cumulative_face_value Only the contract's cumulative face value is stated. Official
unknown No headline figure was found. Both

Don't sum or rank amount across kinds.

action_type

new_award, modification, option_exercise, order or unknown. A generated row is always new_award.

announcement_type

Value Meaning
new_vehicle A new multiple-award vehicle.
on_ramp IDVs added to an existing vehicle.
single_award An IDV in no multiple-award vehicle.
vehicle_pending An IDV too recent to have been placed in a vehicle.
ota A new OTA.
ot_idv A new OT IDV.

Structured fields

awardees

An array with one object per awardee:

Key Type Description
name String The awardee's name.
uei String or null The awardee's UEI. Official releases print no UEI, so on an official row this is set only where one was resolved.
location String or null The awardee's location.
small_business Boolean or null Whether the release states the awardee is a small business. Always null on a generated row.

organization

The canonical office payload for the awarding organization, or null when none resolved. On an official row it comes from the component heading; on a generated row it is the first award's awarding organization.

Key Type Description
organization_id UUID The organization's id.
office_code String The office code.
office_name String The office name.
agency_code String The agency code.
agency_name String The agency name.
department_code String The department code.
department_name String The department name.

corrections

An array, in publish order, with one object per correction applied to the announcement. It is null when none applied.

Key Type Description
article_id String The release carrying the correction.
position Integer The correction's position in that release.
publish_date Date The date of that release.
text String The correction as published.
changes Array of Object Each change, as {field, previous, corrected}.

changes[].field is one of contract_numbers, piids, announced_value, is_withdrawn, award_date or completion_date. announced_value is the value served as amount. For award_date and completion_date, previous is null and corrected is an ISO date.

Default shapes

  • List returns: uuid, source, source_name, source_url, published_date, award_date, title, amount, value_kind, action_type, announcement_type, awardee_count, piids, is_modification, is_multiple_award, is_withdrawn, awardees(*).
  • Detail returns the list fields plus source_record_id, text, obligated_at_award, award_kind, award_uuids, civilian, component, contracting_activity, corrections, organization(*).

Usage Notes

  • Check source before you quote text. A makegov_generated paragraph reads like the official release, but it is not government text.
  • Check the date you are filtering on. award_date is null on every official row, so use published_date across both sources.
  • Don't read title as the award's name on an official row. Every paragraph of a release shares its title; the awardees are in awardees and text.
  • Exclude withdrawn rows from counts and sums. The list does this by default.

Data Sources

  • Department of War — every official row, from the daily contracts release.
  • FPDS — the facts on every generated row.
  • MakeGov — the wording of generated rows, with a language model summarizing the purpose and writing the title.
  • Tango — uuid, award_uuids and organization.