Real-Time Economic Calendar API: Global Macroeconomic Events for 83 Countries
Query scheduled and released macroeconomic events (GDP, CPI, PMI, employment reports and central bank decisions) across 83 countries in one consistent JSON API. Every event returns its actual, previous and consensus values plus an impact level, ready to drop into trading bots, dashboards and research pipelines.
Get Your API Key Discover Docs← All financial data endpoints
Why Use FinanceFlowAPI’s Economic Calendar API?
Tracking market-moving macroeconomic releases usually means watching a different national statistics agency or central bank calendar for every country you cover, each with its own format and update schedule. The Economic Calendar API normalizes scheduled and released events for 83 countries into one schema and one authentication method, so you can add a new country to your product without a new integration.
- One JSON schema for every country and event type, so there is no per-source parsing to write.
- 83 countries verified live against production, from the U.S. and the Euro Area to emerging markets.
- A dedicated catalog endpoint to discover exactly which countries are covered, instead of guessing.
- Same account, API key and billing as the rest of FinanceFlowAPI: Bonds, Commodities, Currency and Economic Indicators data.
Key Capabilities
- Actual, previous & consensus per event: see the reported value against the prior reading and market expectations in one call, without a second lookup.
- Query by country, with an optional date range: omit the dates for the default upcoming window, or set
date_from/date_totogether to look forward or back up to 60 days. - Impact classification: every event ships with an
economicImpactlevel (Major,ModerateorStandard) so you can filter noise from market-moving releases. - Built-in discovery:
calendar-cataloglists every country available in the calendar.
Data Coverage & Trust
| Metric | Value |
|---|---|
| Countries covered | 83 (verified live via calendar-catalog, 2026-08-23) |
| Event impact levels | 3 (Major, Moderate, Standard) |
| Response format | JSON |
| Date range per request | Up to 60 days between date_from and date_to, in either direction. Omit both for the default upcoming window |
| Authentication | API key, passed as an api_key query parameter |
| Rate limit | Per-minute request limit, varies by subscription plan. See Pricing & Access below |
| Response cache | Our own cache layer refreshes every 60 seconds per query; the underlying release schedule for each event is set by its country’s own statistics agency or central bank, not by FinanceFlowAPI |
Data Methodology
Economic Calendar API data is aggregated from public economic data sources and normalized into one consistent schema (report_name, actual, previous, consensus, unit, economicImpact) for every supported country, so your integration doesn’t need a different parser per source. Release timing is set by each country’s statistics agency or central bank, not by FinanceFlowAPI. Information not provided: exact upstream data vendor and full per-country methodology.
Live API Playground Coming Soon
An interactive API Playground for this endpoint is planned. Until it ships, use the request and response examples below, or your own HTTP client, to try the API live with your key.
Request Example
GET https://financeflowapi.com/api/v1/financial-calendar?api_key=YOUR_API_KEY&country=United%20States&date_from=2026-08-20&date_to=2026-08-23
Response Example
{
"success": true,
"code": 200,
"message": "OK",
"meta": {
"timestamp": 1787479239,
"request_id": "6a8ac4c7d9f90"
},
"data": [
{
"country": "United States",
"report_name": "Weekly Jobless Claims",
"actual": "206000",
"previous": "212000",
"consensus": "210000",
"unit": "",
"economicImpact": "Moderate",
"report_date": "08-15",
"datetime": "2026-08-20 12:30:00"
}
]
}
API Parameters
The financial-calendar endpoint returns economic events for a country:
| Parameter | Required | Description |
|---|---|---|
api_key | Yes | Your FinanceFlowAPI key |
country | Yes | Country name exactly as returned by calendar-catalog, e.g. United States |
date_from | No* | Start date, YYYY-MM-DD. *Must be provided together with date_to: passing only one of the two returns a 400 error. Omit both for the default upcoming window |
date_to | No* | End date, YYYY-MM-DD. Must not be more than 60 days after date_from; see the same note as above |
The calendar-catalog endpoint discovers available countries:
| Parameter | Required | Description |
|---|---|---|
api_key | Yes | Your FinanceFlowAPI key |
Response Schema
Each item in data for financial-calendar:
| Field | Type | Description |
|---|---|---|
country | string | Country name |
report_name | string | Event/report name, e.g. Weekly Jobless Claims, GDP Growth Rate YoY |
actual | string | Reported value. Empty string until the event has actually happened |
previous | string | Previous reading for the same report |
consensus | string | Market expectation ahead of the release. May be empty if no consensus was published |
unit | string | Unit of measurement, e.g. percent. Often an empty string when the report has no unit |
economicImpact | string | Impact level: Major, Moderate or Standard |
report_date | string | Period the reading refers to, e.g. 08-15, 07. May be empty for one-off events such as auctions or speeches |
datetime | string | Scheduled release date and time, YYYY-MM-DD HH:MM:SS |
Each item in data for calendar-catalog:
| Field | Type | Description |
|---|---|---|
country | string | Country name |
HTTP Status & Errors
| HTTP code | Meaning | When it happens |
|---|---|---|
200 | OK | Request succeeded. An unrecognized country also returns 200 with an empty data array, not a 404 |
400 | Bad request | country missing; only one of date_from/date_to provided; invalid date format; date_from later than date_to; or the range exceeds 60 days (some plans allow a shorter historical lookback, see Pricing & Access) |
403 | Invalid API key or subscription expired | api_key missing, invalid, or your subscription has expired |
429 | Rate limit exceeded | You exceeded the per-minute request limit for your subscription plan |
500 | Internal error | Unexpected server-side failure (rare) |
Code Examples
curl "https://financeflowapi.com/api/v1/financial-calendar?api_key=YOUR_API_KEY&country=United%20States&date_from=2026-08-20&date_to=2026-08-23"
import requests
from datetime import datetime, timedelta
url = "https://financeflowapi.com/api/v1/financial-calendar"
today = datetime.now().strftime("%Y-%m-%d")
week_ahead = (datetime.now() + timedelta(days=7)).strftime("%Y-%m-%d")
params = {
"api_key": "YOUR_API_KEY",
"country": "United States",
"date_from": today,
"date_to": week_ahead
}
response = requests.get(url, params=params)
data = response.json()
high_impact = [e for e in data["data"] if e["economicImpact"] == "Major"]
print(f"{len(high_impact)} high-impact events this week")
const params = new URLSearchParams({
api_key: "YOUR_API_KEY",
country: "United States",
date_from: "2026-08-20",
date_to: "2026-08-23"
});
fetch(`https://financeflowapi.com/api/v1/financial-calendar?${params}`)
.then(res => res.json())
.then(data => console.log(data));
<?php
$params = http_build_query([
'api_key' => 'YOUR_API_KEY',
'country' => 'United States',
'date_from' => '2026-08-20',
'date_to' => '2026-08-23',
]);
$response = file_get_contents("https://financeflowapi.com/api/v1/financial-calendar?{$params}");
$data = json_decode($response, true);
print_r($data);
package main
import (
"encoding/json"
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
params := url.Values{}
params.Add("api_key", "YOUR_API_KEY")
params.Add("country", "United States")
params.Add("date_from", "2026-08-20")
params.Add("date_to", "2026-08-23")
resp, err := http.Get("https://financeflowapi.com/api/v1/financial-calendar?" + params.Encode())
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
var data map[string]interface{}
json.Unmarshal(body, &data)
fmt.Println(data)
}
Use Cases
- Trading bots. Avoid high-volatility windows or place event-driven orders around
Major-impact releases. - Investor dashboards. Show upcoming economic events with impact badges and consensus-vs-actual comparisons.
- Research & analytics. Compare actual vs. consensus across countries to study surprise patterns.
- Correlate events with markets. Combine calendar data with Bonds API and Economic Indicators API data to study how yields and indicator levels react around scheduled releases.
How FinanceFlowAPI Compares
Based on a live review of each provider’s public page (2026-08-23). Not every provider publishes every figure. Gaps are marked Not published rather than guessed.
| Feature | FinanceFlowAPI | ohlc.dev | EODHD | Finnworlds |
|---|---|---|---|---|
| Countries covered | 83 | Major economies (exact count not published) | 30 | 50+ (claimed) |
| Live code examples on page | cURL, Python, JavaScript, PHP, Go | Node.js, Python, PHP, Kotlin | Not shown | Claimed, not shown |
| JSON response example on page | Yes | Yes | Not shown | Not shown |
| Pricing visible on page | Yes | Not shown | Not shown | Not shown |
| FAQ on page | Yes | Yes | Not shown | Not shown |
| Structured volatility/deviation fields | Not available | Yes | Not published | Not published |
Who Is This API For?
- Algorithmic and discretionary traders who need to know what’s scheduled before it moves the market
- Fintech apps and dashboards that need country-level event context alongside market data
- Publishers and content platforms that need sourced economic event data
- Researchers studying how actual releases compare to consensus expectations
Market Data API
Test Plan
$5.00/month
Historical data, days: 60
Requests limit: 200
Requests Speed limit(per minute): 20
Standard Subscription
$25.00/month
Historical data, years: 5
Requests limit: 10000
Requests Speed limit(per minute): 60
Premium Subscription
$50.00/month
Historical data, years: 20+
Requests limit: 100000
Requests Speed limit(per minute): 120
Limitations
- Per-request date range is capped at 60 days between
date_fromanddate_to. date_fromanddate_tomust be provided together. Passing only one returns a 400 error; it does not fall back to a default range.- Event importance is a 3-level classification (
Major/Moderate/Standard), not a numeric volatility or deviation score. - Endpoint access and your per-minute rate limit depend on your subscription plan; some plans further restrict how far back you can query historical events.
FAQ
What is the FinanceFlowAPI Economic Calendar API?
It’s a real-time economic calendar API that provides scheduled and released macroeconomic events (GDP, PMI, inflation, employment data and central bank decisions) for 83 countries, for traders, analysts and fintech apps.
Which countries and events are covered?
83 countries, verified live against our production API via calendar-catalog, covering event types like PMI, GDP, CPI, unemployment, interest rate decisions, trade balance and central bank speeches. Coverage varies by country.
How far back or forward can I query?
Up to 60 days between date_from and date_to, in either direction. Omit both parameters to get the default upcoming window.
What happens if I only pass date_from without date_to?
The request returns a 400 error: date_from and date_to must be provided together, or omitted together for the default window.
How is event importance classified?
Every event has an economicImpact field with one of three values: Major, Moderate or Standard.
How do I get started?
Create a FinanceFlowAPI account and choose a plan. See Pricing & Access above for current plans and limits.
Related APIs
- Government Bonds API: see how bond yields react around scheduled economic events.
- Economic Indicators API: the underlying indicator values behind these calendar releases.