Skip to content

Organizations Data Dictionary

This document describes the fields available in the Organizations API endpoint (/api/organizations/). For filtering, ordering, and pagination, see the Organizations API Reference.

Overview

The Organizations resource provides a unified view of federal government organizations, consolidating data from multiple authoritative sources into a single hierarchical structure. Organizations include departments, agencies, sub-agencies, and offices.

Note: The full set of fields is available via the shape query parameter. Without a ?shape= parameter, a default shape is applied. See Response Shaping for details.

Update Frequency

All organization data is updated monthly via the sync_organizations management command.

Default Shape

All responses go through the shaping pipeline. When no ?shape= parameter is provided, the following fields are returned:

key, fh_key, name, short_name, type, level, is_active, code, fpds_code, cgac, canonical_code, parent_fh_key, full_parent_path_name

Fields

Field Type Description Source
key UUID Tango's internal UUID primary key for the organization record. Returned in shaped responses, but the Organizations API uses fh_key for lookups. Tango
fh_key String Zero-padded 9-character string representation of the Federal Hierarchy orgKey (e.g., "000000001"). Used for detail lookups: GET /api/organizations/{fh_key}/. Accepts both zero-padded and plain integer forms in URLs. Practically unique for "current" org lookups, but not guaranteed to be globally unique across all historical snapshots (Tango stores historical org versions separately). Federal Hierarchy (SAM.gov)
name String The full official name of the organization (e.g., "Federal Emergency Management Agency"). Federal Hierarchy (SAM.gov)
short_name String The abbreviated or common name of the organization (e.g., "FEMA", "DHS"). Federal Hierarchy (SAM.gov)
type String The organizational type within the federal hierarchy (e.g., "DEPARTMENT", "AGENCY", "OFFICE"). Federal Hierarchy (SAM.gov)
level Integer The depth level in the organizational hierarchy. Level 1 represents top-level departments, with higher numbers indicating deeper nesting. Federal Hierarchy (SAM.gov)
cgac String Common Government-wide Accounting Classification code. A 3-character code used for financial reporting (e.g., "069" for Department of Transportation). USAspending
fpds_code String Federal Procurement Data System code. A 4-digit agency identifier used in contract transactions. USAspending
code String Office or agency code. Used to identify specific offices within agencies, particularly in contract and financial assistance transactions. Federal Hierarchy / USAspending
canonical_code String Level-prefixed canonical code combining hierarchy level and the appropriate code type (e.g., "L1:097" for a department, "L2:5700" for an agency). Calculated
fpds_org_id String The FPDS organization identifier, when available. FPDS
aac_code String Activity Address Code, used in some procurement and financial transactions. Federal Hierarchy (SAM.gov)
is_active Boolean Indicates whether the organization is currently active. Derived from the mod_status field in Federal Hierarchy. Federal Hierarchy (SAM.gov)
parent_fh_key String Zero-padded 9-character fh_key of this organization's parent. Null for top-level departments. Federal Hierarchy (SAM.gov)
full_parent_path_name String A human-readable path showing the full hierarchy from the top-level department to this organization, separated by " > " (e.g., "Department of Homeland Security > Federal Emergency Management Agency"). Federal Hierarchy (SAM.gov)
l1_fh_key .. l8_fh_key String Zero-padded 9-character fh_key of the ancestor at each hierarchy level (L1 through L8). Null when no ancestor exists at that level. Federal Hierarchy (SAM.gov)
start_date Date The date the organization became active in the Federal Hierarchy. Federal Hierarchy (SAM.gov)
end_date Date The date the organization was deactivated, if applicable. Federal Hierarchy (SAM.gov)
logo String URL to the organization's logo, when available. Various
summary String Short description or mission summary for the organization. Federal Hierarchy (SAM.gov)
mod_status String The modification status of the organization in the Federal Hierarchy (e.g., "ACTIVE", "INACTIVE"). Federal Hierarchy (SAM.gov)
description String A description of the organization's mission or purpose, when available. Federal Hierarchy (SAM.gov)
obligations Float Total federal contract and financial assistance obligations associated with this organization and all its descendants (rolled up from the entire subtree). Alias for tree_obligations. Expressed in US dollars. USAspending
total_obligations Float Direct obligations for this specific organization (not rolled up from descendants). Expressed in US dollars. USAspending
tree_obligations Float Total obligations for this organization's entire subtree (the organization plus all descendants). Expressed in US dollars. USAspending
obligation_rank Integer A percentile ranking (1-100) of this organization's obligations relative to other organizations. Higher values indicate larger obligation amounts. Calculated

Usage Notes

  • The Organizations API lookup key is fh_key (Federal Hierarchy orgKey), returned as a zero-padded 9-character string.
  • The fh_key is intended for "current" lookups, but it is not a stable globally-unique identifier across all historical snapshots/versions.
  • If you need to track historical versions, use the internal key (UUID) plus timestamps/versions (Tango stores org history separately).

Organization Types

Organization types define the position of an organization within the federal hierarchy. Each type corresponds to a specific hierarchy level:

Type Level Description
DEPARTMENT 1 Top-level federal departments (e.g., Department of Defense, Department of Health and Human Services)
AGENCY 2 Major sub-components of departments (e.g., Department of the Army, Food and Drug Administration)
SUBTIER AGENCY 2 Alternative designation for level-2 agencies in USAspending data
MAJOR COMMAND 2 Military major command (e.g., Army Materiel Command)
SUB COMMAND 3 Military sub-command within a major command
OFFICE 3+ Sub-agencies, bureaus, and offices at various depths within the hierarchy

Expansions

The following expansions are available via the shape query parameter to include related data:

parent

Returns the immediate parent organization with the following fields:

  • key
  • fh_key (zero-padded)
  • name
  • short_name
  • type
  • level
  • is_active
  • code
  • cgac

ancestors

Returns a list of all ancestor organizations from the top-level department down to the immediate parent. Each ancestor includes:

  • fh_key (zero-padded)
  • name
  • short_name
  • level

children

Returns a list of immediate child organizations (prefetched for performance). Each child includes:

  • key
  • fh_key (zero-padded)
  • name
  • short_name
  • type
  • level
  • is_active
  • code
  • cgac

department

Returns the L1 (department-level) ancestor formatted as a legacy-compatible department object. Returns null for level 1 organizations (a department doesn't have a department — it is one).

  • code — the department's CGAC code
  • name — the department's full name
  • abbreviation — the department's short name / abbreviation

agency

Returns the L2 (agency-level) ancestor formatted as a legacy-compatible agency object. Returns null for level 1 and 2 organizations (no agency above them).

  • code — the agency's FPDS code
  • name — the agency's full name
  • abbreviation — the agency's short name (resolved via cached lookup)

Data Sources

Organization data is consolidated from multiple authoritative sources with a priority-based system:

  1. Federal Hierarchy (SAM.gov) - The authoritative source for federal organization structure. Provides the canonical hierarchy, names, and parent-child relationships.

  2. USAspending - Supplements Federal Hierarchy with operational codes (CGAC, FPDS codes) and obligation data that appear in financial transactions.

  3. Legacy FPDS - Historical organization data from the Federal Procurement Data System, used to backfill organizations that appear in contract transactions but are missing from current reference sources.

Higher-priority sources are never overwritten by lower-priority ones, ensuring that Federal Hierarchy's authoritative structure is preserved while other sources fill in the gaps.

Example Response

The following example shows a default response (no ?shape= parameter):

{
  "key": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "fh_key": "100012345",
  "name": "Federal Emergency Management Agency",
  "short_name": "FEMA",
  "type": "AGENCY",
  "level": 2,
  "is_active": true,
  "code": "7022",
  "fpds_code": "7022",
  "cgac": "070",
  "canonical_code": "L2:7022",
  "parent_fh_key": "100000123",
  "full_parent_path_name": "Department of Homeland Security > Federal Emergency Management Agency"
}

The following example shows a shaped response with legacy-compatible expands:

/api/organizations/?shape=fh_key,name,type,department(code,name),agency(code,name,abbreviation)&level=3
{
  "fh_key": "047020017",
  "name": "FA8219 AFLCMC EGLIN",
  "type": "OFFICE",
  "department": {
    "code": "097",
    "name": "DEPT OF DEFENSE"
  },
  "agency": {
    "code": "5700",
    "name": "DEPT OF THE AIR FORCE",
    "abbreviation": "USAF"
  }
}

Usage Notes

  • Use fh_key for API lookups — The Organizations API uses fh_key in the detail URL: GET /api/organizations/{fh_key}/. The fh_key is returned as a zero-padded 9-character string (e.g., "000000001").
  • Use key as an internal identifierkey is Tango's internal UUID primary key and may be useful for internal joins/debugging.
  • Use code lookups for transaction matching — When matching contract or financial assistance transactions, use the specific code type (cgac, fpds_code, code) that appears in your source data.
  • Use the search parameter for discovery — The /api/organizations/?search= endpoint handles abbreviations, acronyms, typos, and contextual queries (e.g., "Treasury OIG").
  • Level behavior for department/agency expands — The department expand is defined for level 2+ orgs; the agency expand is defined for level 3+ orgs. When these expands are requested on orgs below the applicable level, the corresponding field is included in the response as null (no error is raised). Filter by level if you want to avoid null values in list responses.