Trading Economics APItradingeconomics.com ↗
Access economic calendar events, macroeconomic indicators, commodity prices, and news via the Trading Economics API. Covers 196 countries and 20M+ data points.
What is the Trading Economics API?
This API exposes 5 endpoints covering Trading Economics data: economic calendar events, per-indicator metadata and history, country-level indicator snapshots, commodity prices, and economic news. The get_calendar endpoint returns scheduled and released data releases with actual values, consensus forecasts, and impact levels, while get_commodities delivers current prices and percentage changes across seven commodity categories including Energy, Metals, and Agricultural.
curl -X GET 'https://api.parse.bot/scraper/25322cd0-d8e5-4665-bbf2-a358ae8a7601/get_calendar?country=united-states&end_date=2026-07-10&start_date=2026-07-07' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace tradingeconomics-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Trading Economics SDK — bounded, re-runnable; every call capped."""
from parse_apis.trading_economics_api import TradingEconomics, IndicatorNotFound
client = TradingEconomics()
# List upcoming economic calendar events for a specific country
for event in client.events.list(country="united-states", limit=5):
print(event.event, event.date, event.time, "impact:", event.impact)
# Get all indicators for a country, take the first few
for indicator in client.indicators.list(country="germany", limit=3):
print(indicator.name, "last:", indicator.last, "previous:", indicator.previous)
# Drill into a specific indicator report with historical data
try:
report = client.indicatorreports.get(country="united-states", indicator="gdp", limit=10)
print(report.country, report.indicator, "actual:", report.metadata.get("actual"))
except IndicatorNotFound as exc:
print(f"Indicator not found: {exc}")
# List all commodities, inspect the first few
for commodity in client.commodities.list(limit=3):
print(commodity.name, commodity.price, commodity.change_pct, "YTD:", commodity.ytd)
# Get latest economic news filtered by country
article = client.articles.list(country="united states", limit=1).first()
if article:
print(article.title, "|", article.category, "|", article.country)
print("exercised: events.list / indicators.list / indicatorreports.get / commodities.list / articles.list")
Get economic calendar events with filters for country and date range. Returns scheduled and released economic data releases including actual values, forecasts, and impact levels. Each event carries a country code, event name, reported actual/previous/consensus/forecast values, and an impact rating (1=low, 2=medium, 3=high). When no date range is specified, returns this week's events.
| Param | Type | Description |
|---|---|---|
| country | string | Country slug or comma-separated list of country slugs to filter by (e.g., 'united-states' or 'united-states,germany') |
| end_date | string | End date in YYYY-MM-DD format |
| start_date | string | Start date in YYYY-MM-DD format |
{
"type": "object",
"fields": {
"count": "integer total number of events returned",
"events": "array of calendar event objects with date, time, country, event name, actual, previous, consensus, forecast, and impact"
},
"sample": {
"data": {
"count": 419,
"events": [
{
"date": "2026-06-10",
"time": "12:40 AM",
"event": "Car Sales YoYMAY",
"actual": "14.0%",
"impact": "1",
"country": "ID",
"forecast": "",
"previous": "55.0%",
"consensus": ""
}
]
},
"status": "success"
}
}About the Trading Economics API
Economic Calendar and Indicators
The get_calendar endpoint accepts a country parameter (single slug or comma-separated list) plus start_date and end_date in YYYY-MM-DD format, returning an array of event objects. Each event includes the release date and time, country, event name, actual value, previous value, consensus estimate, forecast, and an impact rating. This makes it straightforward to filter for high-impact releases within a specific window across multiple countries.
For deeper indicator analysis, get_indicator_details takes a required country slug (e.g., united-states) and an indicator slug (e.g., inflation-cpi, unemployment-rate). The response includes a metadata object with actual, previous, highest, lowest, unit, and frequency fields; a history array of time-series values; a forecasts array; and a related array pointing to adjacent indicators. An optional limit parameter controls how many historical data points are returned.
Country Snapshots and Commodities
get_country_indicators accepts a single country slug and returns the full set of tracked indicators for that country, each with its latest value, previous value, and all-time high and low. This is useful for building country dashboards without issuing one request per indicator.
get_commodities takes no inputs and returns all tracked commodities with name, category, current price, day change, change percentage, and cumulative returns over weekly, monthly, year-to-date, and year-over-year windows. The date field shows when each price was last updated.
Economic News
get_news returns up to 40 news articles, optionally filtered by country (note: use spaces rather than hyphens here, e.g., united states). Each article object includes a title, description, URL, author, country, category, importance score, and publication date. The endpoint is useful for monitoring macroeconomic commentary alongside live indicator data.
The Trading Economics API is a managed, monitored endpoint for tradingeconomics.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when tradingeconomics.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official tradingeconomics.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Alert systems that trigger on high-impact calendar releases using the
impactfield fromget_calendar - Country economic dashboards that pull all indicator last/previous/high/low values via
get_country_indicators - Inflation or GDP trend charts built from the
historytime-series returned byget_indicator_details - Commodity price monitors tracking daily and year-to-date percentage changes across Energy and Metals categories
- News aggregators filtered by country to surface macroeconomic events alongside price data
- Forecast deviation trackers comparing
actualagainstconsensusandforecastin calendar event objects - Multi-country economic comparison tools using comma-separated country lists in
get_calendar
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Trading Economics offer an official developer API?+
What does `get_indicator_details` return beyond the current value?+
metadata object (actual, previous, highest, lowest, unit, frequency), a history array of time-series data points, a forecasts array, and a related array of adjacent indicators with their latest values. The optional limit parameter controls how many historical data points are included.Does `get_commodities` let you filter by category such as Energy or Metals?+
category field you can filter client-side. You can fork the API on Parse and revise it to add a category filter parameter.