← Về thư mục
📄 / / profiles / r-and-d / raw_evidence / scientific-agent-skills / skills / usfiscaldata / references / datasets-debt.md

Debt Datasets — U.S. Treasury Fiscal Data

Debt to the Penny

Endpoint: /v2/accounting/od/debt_to_penny
Frequency: Daily
Date Range: 1993-04-01 to present

Tracks the exact total public debt outstanding each business day.

Key fields: | Field | Type | Description | |-------|------|-------------| | record_date | DATE | Date of record | | debt_held_public_amt | CURRENCY | Debt held by the public | | intragov_hold_amt | CURRENCY | Intragovernmental holdings | | tot_pub_debt_out_amt | CURRENCY | Total public debt outstanding |

# Current national debt
resp = requests.get(
    "https://api.fiscaldata.treasury.gov/services/api/fiscal_service/v2/accounting/od/debt_to_penny",
    params={"sort": "-record_date", "page[size]": 1}
)
latest = resp.json()["data"][0]
print(f"As of {latest['record_date']}: ${float(latest['tot_pub_debt_out_amt']):,.2f}")

# Debt over the last year
resp = requests.get(
    "https://api.fiscaldata.treasury.gov/services/api/fiscal_service/v2/accounting/od/debt_to_penny",
    params={
        "fields": "record_date,tot_pub_debt_out_amt",
        "filter": "record_date:gte:2024-01-01",
        "sort": "-record_date"
    }
)
df = pd.DataFrame(resp.json()["data"])
df["tot_pub_debt_out_amt"] = df["tot_pub_debt_out_amt"].astype(float)

Historical Debt Outstanding

Endpoint: /v2/accounting/od/debt_outstanding
Frequency: Annual
Date Range: 1790 to present

Annual record of U.S. national debt going back to the founding of the republic.

Key fields: | Field | Type | Description | |-------|------|-------------| | record_date | DATE | Year-end date | | debt_outstanding_amt | CURRENCY | Total debt outstanding |

# Full historical debt series
resp = requests.get(
    "https://api.fiscaldata.treasury.gov/services/api/fiscal_service/v2/accounting/od/debt_outstanding",
    params={"sort": "-record_date", "page[size]": 10000}
)
df = pd.DataFrame(resp.json()["data"])

Schedules of Federal Debt

Endpoint: /v1/accounting/od/schedules_fed_debt
Frequency: Monthly
Date Range: October 2005 to present

Monthly breakdown of federal debt by security type and component.

Key fields: | Field | Type | Description | |-------|------|-------------| | record_date | DATE | End of month date | | security_type_desc | STRING | Type of security | | security_class_desc | STRING | Security class | | debt_outstanding_amt | CURRENCY | Outstanding debt |

Schedules of Federal Debt by Day

Two daily data tables under /v1/accounting/od/:

Table Endpoint Description
Daily Activity /v1/accounting/od/schedules_fed_debt_daily_activity Daily debt activity
Daily Summary /v1/accounting/od/schedules_fed_debt_daily_summary Daily debt summary

Related: /v1/accounting/od/schedules_fed_debt_fytd — fiscal year-to-date schedules.

Treasury Report on Receivables (TROR)

Endpoint: /v2/debt/tror
Frequency: Quarterly
Date Range: December 2016 to present

Federal agency compliance and receivables data. Also includes: - /v2/debt/tror/data_act_compliance — 120 Day Delinquent Debt Referral Compliance Report

Key fields: | Field | Type | Description | |-------|------|-------------| | record_date | DATE | Quarter end date | | funding_type_desc | STRING | Type of funding | | total_receivables_delinquent_amt | CURRENCY | Delinquent amount |

# TROR data, sorted by funding type
resp = requests.get(
    "https://api.fiscaldata.treasury.gov/services/api/fiscal_service/v2/debt/tror",
    params={"sort": "funding_type_id"}
)

Gift Contributions to Reduce the Public Debt

Endpoint: /v2/accounting/od/gift_contributions
Frequency: Monthly
Date Range: September 1996 to present

Records voluntary contributions from the public to reduce the national debt.

Interest Expense on the Public Debt Outstanding

Endpoint: /v2/accounting/od/interest_expense
Frequency: Monthly
Date Range: May 2010 to present

Monthly interest expense broken down by security type.

Key fields: | Field | Type | Description | |-------|------|-------------| | record_date | DATE | Month end date | | security_type_desc | STRING | Security type | | expense_net_amt | CURRENCY | Net interest expense | | expense_gross_amt | CURRENCY | Gross interest expense |

# Get total interest expense by month
resp = requests.get(
    "https://api.fiscaldata.treasury.gov/services/api/fiscal_service/v2/accounting/od/interest_expense",
    params={
        "fields": "record_date,expense_net_amt",
        "filter": "record_date:gte:2020-01-01",
        "sort": "-record_date"
    }
)
df = pd.DataFrame(resp.json()["data"])
df["expense_net_amt"] = df["expense_net_amt"].astype(float)

Advances to State Unemployment Funds (Title XII)

Endpoint: /v2/accounting/od/title_xii
Frequency: Daily
Date Range: October 2016 to present

States and territories borrowing from the federal Unemployment Trust Fund.

Key fields: | Field | Type | Description | |-------|------|-------------| | record_date | DATE | Date of record | | state_nm | STRING | State name | | debt_outstanding_amt | CURRENCY | Outstanding advance amount |