FRED time series
GET /api/fred-seriesFetch any of FRED's ~800,000 economic time series by series ID - GDP (GDPC1), CPI (CPIAUCSL), unemployment (UNRATE), fed funds (DFF), and so on. Send GET /api/fred-series with the required field seriesId and pay $0.005 per call over x402 or MPP (there is no free tier). It returns a JSON object with seriesId, count, observations and source.
Supports date windowing and the standard FRED units transformations (lin, chg, ch1, pch, pc1, pca, cca, log). ?seriesId=GDPC1&startDate=2018-01-01&endDate=2023-12-31&units=pc1 This product uses the FRED(R) API but is not endorsed or certified by the Federal Reserve Bank of St. Louis.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
seriesId | string | yes | FRED series ID, e.g. GDPC1, CPIAUCSL, UNRATE, DFF Also accepted as series, series_id, id. |
startDate | string | no | ISO start date (YYYY-MM-DD), optional |
endDate | string | no | ISO end date (YYYY-MM-DD), optional |
limit | number | no | Max observations, 1-100000 (default 1000) |
units | string | no | Transformation: lin, chg, ch1, pch, pc1 (YoY %), pca, cca, log |
frequency | string | no | Aggregate to d/w/m/q/sa/a, etc. (optional) |
Example request
curl -i "https://agent402.tools/api/fred-series?seriesId=GDPC1&startDate=2018-01-01&endDate=2022-12-31"
Without payment this returns HTTP 402 Payment Required with the exact price for fred-series; any x402 v2 or MPP client pays it and retries.
Example response
{
"seriesId": "GDPC1",
"count": 20,
"observations": [
{
"date": "2018-01-01",
"value": 18733
}
],
"source": "FRED (St. Louis Fed)"
}
| Field | Type | Always present | In the example |
|---|---|---|---|
seriesId | string | yes | GDPC1 |
count | number | yes | 20 |
observations | array of objects | yes | 1 item in the example |
source | string | yes | FRED (St. Louis Fed) |
From an MCP client
catalog.call {
"slug": "fred-series",
"params": {
"seriesId": "GDPC1",
"startDate": "2018-01-01",
"endDate": "2022-12-31"
}
}
The hosted connector at https://agent402.tools/mcp needs a payment for fred-series; the stdio package pays it from a wallet or from AGENT402_CREDITS_KEY. Local install: npx -y agent402-mcp.
Errors and behavior
seriesIdis required. An input the tool rejects returns an HTTP 4xx whose body carrieserror,tool,expected,requiredandexample, so the caller can correct it.- A paid call that ends in any status of 400 or above is not charged over x402, MPP or a prepaid credits key: settlement is cancelled when the tool fails. The exception is a Tempo push credential, a transfer the buyer sent before the call: it settles before the tool runs, so if the tool then fails the payment is recorded as a refund owed to the paying wallet.
- Wallet-only: this tool reaches the network or stored state, so it has no proof-of-work tier. A prepaid card-credits key issued earlier (
Authorization: Bearer a402_...) also pays it. - A
POSTwith a JSON body to /api/fred-series is served as this GET, with the body as the input. - An
Idempotency-Keyheader makes a retried paid call replay the first 200 instead of charging again (an answer larger than 1 MB is not replayed).
Paid call (JavaScript agent)
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client();
client.setSpendControls?.(false); // keep your own spending ceiling in code
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);
const res = await payFetch("https://agent402.tools/api/fred-series?seriesId=GDPC1&startDate=2018-01-01&endDate=2022-12-31");
Part of these workflows
FRED time series is one step in these 4 skill packs, each sold as a single call:
- Financial research - Pull SEC filings, the latest close, historical prices, and macro context for a single ticker in one pass.
- Trend analysis - Take any numeric time series - a stock's daily close, a FRED macro indicator, a treasury yield history - and run it through the full quantitative workup: descriptives, moving averages, trend line, outliers, optional correlation against a benchmark, and a deterministic forecast forward with a 95% prediction interval. Everything an analyst writes a notebook for, in one chain of cheap calls.
- Forecasting bake-off - Don't guess which forecasting method to trust. Backtest all four (naive/drift, SES, Holt, Holt-Winters) on a real series, rank by out-of-sample RMSE, then forecast forward with the winner and its 95% prediction interval. Method selection without the hand-waving.
- Fed economic snapshot - Key Federal Reserve economic indicators - fed funds rate, unemployment, and CPI - in one call.
Related tools
FRED economic release calendar
GET /api/fred-release-calendarUpcoming and very-recent US economic data release dates - CPI, employment, GDP, FOMC minutes, Treasury auctions, etc. Us…
FRED bulk release observations (v2)
GET /api/fred-release-observationsBulk-fetch observations for every series in a FRED release in one call. Use it to grab an entire economic report (jobs r…
FRED catalog search
GET /api/fred-searchFull-text search across FRED's ~800,000 economic time series. Returns series IDs (use with /api/fred-series), titles, fr…
FRED series metadata
GET /api/fred-series-infoMetadata for a FRED series: title, frequency, units, seasonal adjustment, observation date range, and popularity. Use be…
World Bank indicator series
GET /api/world-bank-indicatorFetch a World Bank indicator time series for a country (e.g. GDP, inflation, unemployment, population). Open data, no ke…
US CPI year-over-year inflation
GET /api/cpi-yoyLatest US Consumer Price Index year-over-year inflation rate (headline CPI-U) plus the trailing 12 months of YoY reading…