usfiscaldata
Query the U.S. Treasury Fiscal Data API for federal financial data including national debt, government spending, revenue, interest rates, exchange r…
它会碰到什么
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
U.S. Treasury Fiscal Data API
Free, open REST API from the U.S. Department of the Treasury for federal financial data. No API key or registration required.
Base URL: https://api.fiscaldata.treasury.gov/services/api/fiscal_service
Quick Start
import requests
import pandas as pd
BASE_URL = "https://api.fiscaldata.treasury.gov/services/api/fiscal_service"
# Get the current national debt (Debt to the Penny)
resp = requests.get(f"{BASE_URL}/v2/accounting/od/debt_to_penny", params={
"sort": "-record_date",
"page[size]": 1
})
data = resp.json()["data"][0]
print(f"Total public debt as of {data['record_date']}: ${float(data['tot_pub_debt_out_amt']):,.0f}")
# Get Treasury exchange rates for recent quarters
resp = requests.get(f"{BASE_URL}/v1/accounting/od/rates_of_exchange", params={
"fields": "country_currency_desc,exchange_rate,record_date",
"filter": "record_date:gte:2024-01-01",
"sort": "-record_date",
"page[size]": 100
})
df = pd.DataFrame(resp.json()["data"])
Authentication
None required. The API is fully open and free.
Core Parameters
| Parameter | Example | Description |
|-----------|---------|-------------|
| fields= | fields=record_date,tot_pub_debt_out_amt | Select specific columns |
| filter= | filter=record_date:gte:2024-01-01 | Filter records |
| sort= | sort=-record_date | Sort (prefix - for descending) |
| format= | format=json | Output format: json, csv, xml |
| page[size]= | page[size]=100 | Records per page (default 100) |
| page[number]= | page[number]=2 | Page index (starts at 1) |
Filter operators: lt, lte, gt, gte, eq, in
# Multiple filters separated by comma
"filter=country_currency_desc:in:(Canada-Dollar,Mexico-Peso),record_date:gte:2024-01-01"
Key Datasets & Endpoints
Debt
| Dataset | Endpoint | Frequency |
|---------|----------|-----------|
| Debt to the Penny | /v2/accounting/od/debt_to_penny | Daily |
| Historical Debt Outstanding | /v2/accounting/od/historical_debt_outstanding | Annual |
| Schedules of Federal Debt | /v1/accounting/od/schedules_fed_debt | Monthly |
Daily & Monthly Statements
| Dataset | Endpoint | Frequency |
|---------|----------|-----------|
| DTS Operating Cash Balance | /v1/accounting/dts/operating_cash_balance | Daily |
| DTS Deposits & Withdrawals | /v1/accounting/dts/deposits_withdrawals_operating_cash | Daily |
| Monthly Treasury Statement (MTS) | /v1/accounting/mts/mts_table_1 (16 tables) | Monthly |
Interest Rates & Exchange
| Dataset | Endpoint | Frequency |
|---------|----------|-----------|
| Average Interest Rates on Treasury Securities | /v2/accounting/od/avg_interest_rates | Monthly |
| Treasury Reporting Rates of Exchange | /v1/accounting/od/rates_of_exchange | Quarterly |
| Interest Expense on Public Debt | /v2/accounting/od/interest_expense | Monthly |
Securities & Auctions
| Dataset | Endpoint | Frequency |
|---------|----------|-----------|
| Treasury Securities Auctions Data | /v1/accounting/od/auctions_query | As Needed |
| Treasury Securities Upcoming Auctions | /v1/accounting/od/upcoming_auctions | As Needed |
| Average Interest Rates | /v2/accounting/od/avg_interest_rates | Monthly |
Savings Bonds
| Dataset | Endpoint | Frequency |
|---------|----------|-----------|
| I Bonds Interest Rates | /v2/accounting/od/i_bond_interest_rates | Semi-Annual |
| U.S. Treasury Savings Bonds: Issues, Redemptions & Maturities | /v1/accounting/od/sb_issues_redemptions | Monthly |
Response Structure
{
"data": [...],
"meta": {
"count": 100,
"total-count": 3790,
"total-pages": 38,
"labels": {"field_name": "Human Readable Label"},
"dataTypes": {"field_name": "STRING|NUMBER|DATE|CURRENCY"},
"dataFormats": {"field_name": "String|10.2|YYYY-MM-DD"}
},
"links": {"self": "...", "first": "...", "prev": null, "next": "...", "last": "..."}
}
Note: All values are returned as strings. Convert as needed (e.g., float(), pd.to_datetime()). Null values appear as the string "null".
Common Patterns
Load all pages into a DataFrame
def fetch_all_pages(endpoint, params=None):
params = params or {}
params["page[size]"] = 10000 # max size to minimize requests
resp = requests.get(f"{BASE_URL}{endpoint}", params=params)
result = resp.json()
df = pd.DataFrame(result["data"])
return df
Aggregation (automatic sum)
Omitting grouping fields triggers automatic aggregation:
# Sum all deposits/withdrawals by record_date and transaction type
resp = requests.get(f"{BASE_URL}/v1/accounting/dts/deposits_withdrawals_operating_cash", params={
"fields": "record_date,transaction_type,transaction_today_amt"
})
Reference Files
- [api-basics.md](references/api-basics.md) — URL structure, HTTP methods, versioning, data types
- [parameters.md](references/parameters.md) — All parameters with detailed examples and edge cases
- [datasets-debt.md](references/datasets-debt.md) — Debt datasets: Debt to the Penny, Historical Debt, Schedules of Federal Debt, TROR
- [datasets-fiscal.md](references/datasets-fiscal.md) — Daily Treasury Statement, Monthly Treasury Statement, revenue, spending
- [datasets-interest-rates.md](references/datasets-interest-rates.md) — Average interest rates, exchange rates, TIPS/CPI, certified interest rates
- [datasets-securities.md](references/datasets-securities.md) — Treasury auctions, savings bonds, SLGS, buybacks
- [response-format.md](references/response-format.md) — Response objects, error handling, pagination, response codes
- [examples.md](references/examples.md) — Python, R, and pandas code examples for common use cases
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
它属于哪个仓库
bundled/skills/usfiscaldata/SKILL.md