Check the setup
- Python 3.10 or newer
- A notebook environment such as Jupyter or Google Colab
- An internet connection
Official European statistical series for building country comparison and release-monitoring tools from a bounded Eurostat dataset.
From source to product signal
Eurostat's Statistics API returns JSON-stat for a data code such as monthly unemployment. Start with one country, one adjustment, and the last twelve periods. Acknowledge Eurostat as the source, and do not reuse third-country or restricted trade extracts for commercial products.
Install the packages, then run the notebook cell.
python -m pip install pandas requests
import pandas as pd
import requests
response = requests.get(
"https://ec.europa.eu/eurostat/api/dissemination/statistics/1.0/data/une_rt_m",
params={
"format": "JSON",
"lang": "EN",
"geo": "DE",
"s_adj": "SA",
"age": "TOTAL",
"sex": "T",
"unit": "PC_ACT",
"lastTimePeriod": 12,
},
timeout=30,
)
response.raise_for_status()
payload = response.json()
time_index = payload["dimension"]["time"]["category"]["index"]
values = payload["value"]
rows = []
for period, position in time_index.items():
if isinstance(values, list):
value = values[position] if position < len(values) else None
else:
value = values.get(str(position))
if value is not None:
rows.append({"period": period, "unemployment_rate": value})
unemployment = pd.DataFrame(rows).sort_values("period")
unemployment["retrieved_at_utc"] = pd.Timestamp.now(tz="UTC")
print(unemployment)Test a useful signal
Describe how Germany's seasonally adjusted monthly unemployment rate moved over the last twelve published periods.
Eurostat is an intergovernmental source. Last verified 2026-08-14. Temporal coverage: series-specific coverage published in each data code.