Free Economic Calendar API
The US macro release schedule as JSON: CPI, PPI, payrolls, JOLTS, weekly jobless claims, PCE, GDP, retail sales, housing starts, new home sales, durable goods, industrial production, trade, FOMC decisions and minutes, the Beige Book and more, from the agencies' own schedules (BLS, BEA, Census Bureau, Federal Reserve, Department of Labor). The actual and the previous print are filled from the agency series after each release. No consensus column.
Latest US release, 16 Oct 2026 at 13:15 UTC: Industrial Production (G.17) for September 2026 came in at +0.7% m/m, previous +0.1%, from the Federal Reserve Board. Next high-importance release: Initial Jobless Claims for the week ending 17 Oct 2026, Thu 22 Oct 2026 at 12:30 UTC (8:30 a.m. ET).
Source: Bureau of Labor Statistics, Bureau of Economic Analysis, Census Bureau, Federal Reserve Board, FRED (Federal Reserve Bank of St. Louis) and U.S. Treasury. This product uses the FRED® API but is not endorsed or certified by the Federal Reserve Bank of St. Louis.
Endpoints
/api/markets/calendar?from=YYYY-MM-DD&to=YYYY-MM-DD&importance=highEvents in a window (default: last 7 days to next 30), oldest first.
/api/markets/calendar/csvEverything as CSV.
Example
curl "https://xoomar.com/api/markets/calendar?importance=high"
Polling
Both endpoints send an ETag header. Send it back in If-None-Match and an unchanged calendar answers 304 Not Modified with no body. The JSON's nextReleaseAt says when the next high-importance release is due, so a poller that follows the big releases can wait until then.
Response shape
Every endpoint returns the same JSON envelope: { data, updatedAt, source, docs, license, attribution, meta }. In meta, source names who publishes the data and sourceAttribution is the credit line to show with it. The data field is an array of records with these fields:
| Field | Type | Description |
|---|---|---|
| source | string | bls, bea, census, fed, dol or treasury (coupon auctions) |
| eventName | string | CPI (Consumer Price Index), Nonfarm Payrolls (Employment Situation), Initial Jobless Claims, Retail Sales (Advance), FOMC Rate Decision, ... |
| importance | string | high, med, or low |
| scheduledAt | string (datetime) | Release time, UTC |
| periodLabel | string | null | Reference period: 'August 2026', '3rd Quarter 2026', 'Week ending 2026-09-05' |
| previous | string | null | Prior period on the same basis as actual |
| forecast | null | Always null: consensus forecasts aren't included |
| actual | string | null | Filled after release from the agency series (CPI year over year %, payrolls monthly change in thousands, retail sales % m/m, claims in thousands, ...) |
| unit | string | null | What actual and previous are in: '% m/m', '% y/y, PCE price index', 'thousands, annual rate', 'USD billions, balance' |
| canonicalUrl | string (optional) | The page on xoomar.com for this record, present only when a matching page exists; otherwise omitted |
Next to data, this endpoint's envelope also carries:
| Field | Type | Description |
|---|---|---|
| nextReleaseAt | string (datetime) | null | When the next high-importance release is due, UTC, whatever the window or filter asked for; null when none is scheduled |
Numeric fields typed string in the table carry exact decimals; parse them with your language's decimal type. No key needed to start: 10 requests a minute per IP without a key and 30 a minute with a free account key, with at least six months of history. A 429 response carries a Retry-After header in seconds. Credit XOOMAR with a link to the dataset page when you republish the data; the data terms are on the terms page.
A free account key raises the limit; send it in an X-API-Key header.
Frequently Asked Questions
Which events are included?
When do actuals appear?
What are the rate limits?
Is the schedule reliable?
Data on this page is provided for informational purposes only and is not financial advice. See our editorial policy.