FRED
US economic data releases and their publication calendar, the agencies FRED republishes data from, series metadata, and FRED's own category tree, off the…
US economic data releases and their publication calendar, the agencies FRED republishes data from, series metadata, and FRED's own category tree, off the St. Louis Fed's FRED.
Domain: fred.stlouisfed.org
Also known as: FRED, Federal Reserve Economic Data, Federal Reserve Bank of St. Louis, St. Louis Fed
Call it directly
bowmark.providers.fred.listReleases(args?: { releaseId?: number; from?: string; to?: string }): Promise<fredRelease[]>
bowmark.providers.fred.listSources(args?: { sourceId?: number }): Promise<fredSource[]>
bowmark.providers.fred.getSeriesInfo(seriesId: string): Promise<fredSeries>
bowmark.providers.fred.getSeriesObservations(args: string | { seriesId: string; from?: string; to?: string; units?: string; frequency?: string; aggregationMethod?: string }): Promise<fredObservations>
bowmark.providers.fred.browseCategory(categoryId?: number): Promise<fredCategory>Functions
| Function | What it does |
|---|---|
listReleases | Lists FRED's economic data releases — the named publications its series arrive in (Employment Situation, Consumer Price Index, Gross Domestic Product, …). Called bare it returns the whole… |
listSources | Lists the agencies and individuals FRED republishes data from (Bureau of Labor Statistics, Bureau of Economic Analysis, Federal Reserve Board, and ~120 others) — distinct from FRED itself,… |
getSeriesInfo | Reads the metadata for one FRED series id — its full title, what the numbers actually ARE (units, e.g. "Billions of Chained 2017 Dollars"), how often it updates (frequency), whether it… |
getSeriesObservations | Reads the actual numbers for a FRED series — the dated observations themselves, oldest first, with a missing period returned as value: null rather than as a NaN or a silently dropped… |
browseCategory | Browses FRED's category tree the way fred.stlouisfed.org/categories does — the category itself (id/name/parent), its immediate child categories, and the series filed directly under it, each… |
Types
interface fredReleaseDate {
date: string;
time: string | null;
released: boolean;
}
interface fredRelease {
id: number;
name: string;
url: string;
dates: fredReleaseDate[] | null;
}
interface fredSource {
id: number;
name: string;
url: string;
releases: { id: number; name: string; url: string }[] | null;
}
interface fredSeries {
id: string;
title: string;
units: string;
unitsShort: string;
frequency: string;
frequencyShort: string;
seasonalAdjustment: string;
seasonalAdjustmentShort: string;
observationStart: string;
observationEnd: string;
lastUpdated: string;
popularity: number | null;
notes: string | null;
}
interface fredCategoryRow {
id: number;
name: string;
parentId: number;
}
interface fredCategory {
id: number;
name: string;
parentId: number;
children: fredCategoryRow[];
series: fredSeries[];
}
interface fredObservation {
date: string;
/** null where FRED holds no observation for that period — a market holiday in a
* daily series, or the first year of a year-over-year transform. */
value: number | null;
}
interface fredObservations {
seriesId: string;
/** The transform FRED reports having applied: "lin" (none), "pc1", "pch", … */
units: string;
observationStart: string | null;
observationEnd: string | null;
/** null: the public CSV has no vintage envelope. */
realtimeStart: string | null;
realtimeEnd: string | null;
count: number;
observations: fredObservation[];
}