GnistAI GnistAI
Log in

Eurostat

EU statistical data — demographics, trade, GDP, employment, and social indicators.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 6 tools tools 6 6 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Economics

Data source: Eurostat

REST Bridge Endpoint https://context.gnist.ai/rest/eurostat/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (6)

get_stat

Fetch a time series from a Eurostat dataset filtered by geographic area.

Covers economic, demographic, environmental, health, trade, and agricultural
statistics for EU/EEA countries. Data is free to use (CC-BY-4.0).

Args:
dataset_code: Eurostat dataset identifier (e.g. "nama_10_gdp" for national accounts,
"lfsi_emp_a" for employment). Use search_datasets or list_datasets to discover codes.
geo: ISO 3166-1 alpha-2 country/region code (e.g. "NO", "DE", "EU27_2020").
Comma-separated for multiple geographies (e.g. "NO,SE,DK").
time_from: Start year (inclusive), e.g. 2015.
time_to: End year (inclusive), e.g. 2023.
unit: Unit filter code (e.g. "CP_MEUR" for current prices in millions of euros,
"PC_GDP" for percentage of GDP). Optional — omit to get all units.
freq: Frequency code: "A" (annual, default), "Q" (quarterly), "M" (monthly).

Returns:
Dict with dataset_code, geo, count, and a list of {geo, time, value} records
sorted by time descending. Values may be null where data is unavailable.

ParameterTypeRequiredDescription
dataset_codestringrequiredEurostat dataset identifier (e.g. "nama_10_gdp" for national accounts, "lfsi_emp_a" for employment). Use search_datasets or list_datasets to discover codes.
geostringrequiredISO 3166-1 alpha-2 country/region code (e.g. "NO", "DE", "EU27_2020"). Comma-separated for multiple geographies (e.g. "NO,SE,DK").
time_fromanyoptionalStart year (inclusive), e.g. 2015.
time_toanyoptionalEnd year (inclusive), e.g. 2023.
unitanyoptionalUnit filter code (e.g. "CP_MEUR" for current prices in millions of euros, "PC_GDP" for percentage of GDP). Optional — omit to get all units.
freqstringoptionalFrequency code: "A" (annual, default), "Q" (quarterly), "M" (monthly). (default: "A")
Request Body
{
  "dataset_code": "example",
  "geo": "NO"
}
search_datasets

Search Eurostat dataset catalogue by keyword.

Covers 6,000+ statistical datasets across economics, demographics, environment,
health, trade, agriculture, and more from EU and European countries.

Args:
query: Search term (e.g. "gdp", "unemployment", "greenhouse gas").
limit: Maximum number of results to return (default 20).

Returns:
Matching datasets with code, title, and data availability period.
Use the code field with get_stat or compare_countries.

ParameterTypeRequiredDescription
querystringrequiredSearch term (e.g. "gdp", "unemployment", "greenhouse gas").
limitintegeroptionalMaximum number of results to return (default 20). (default: 20)
Request Body
{
  "query": "example"
}
list_datasets

Browse all available Eurostat datasets, optionally filtered by topic keyword.

Args:
topic_filter: Optional keyword to filter dataset titles (e.g. "trade", "energy",
"migration"). Case-insensitive substring match on title and code.
If omitted, returns the first 50 datasets from the catalogue.

Returns:
Up to 50 datasets with code, title, and data availability period.
Use the code field with get_stat, compare_countries, or search_datasets.

ParameterTypeRequiredDescription
topic_filteranyoptionalOptional keyword to filter dataset titles (e.g. "trade", "energy", "migration"). Case-insensitive substring match on title and code. If omitted, returns the first 50 datasets from the catalogue.
Request Body
{
  "query": "example"
}
compare_countries

Compare one Eurostat dataset across multiple countries for a given year.

Args:
dataset_code: Eurostat dataset identifier (e.g. "nama_10_gdp").
Use search_datasets to find the right code.
geo_codes: List of ISO 3166-1 alpha-2 or Eurostat geo codes
(e.g. ["NO", "SE", "DE", "FR"]).
year: The year to compare (e.g. 2022).
unit: Unit filter code (e.g. "CP_MEUR"). Optional.

Returns:
Dict with dataset_code, year, and values mapping geo_code to numeric value.
Values may be null if data is unavailable for a country/year pair.

ParameterTypeRequiredDescription
dataset_codestringrequiredEurostat dataset identifier (e.g. "nama_10_gdp"). Use search_datasets to find the right code.
geo_codeslist[string]requiredList of ISO 3166-1 alpha-2 or Eurostat geo codes (e.g. ["NO", "SE", "DE", "FR"]).
yearintegerrequiredThe year to compare (e.g. 2022).
unitanyoptionalUnit filter code (e.g. "CP_MEUR"). Optional.
Request Body
{
  "dataset_code": "example",
  "geo_codes": [
    "example"
  ],
  "year": 1
}
country_profile

Get a snapshot of key economic and demographic indicators for a European country.

Fetches GDP, employment rate, and population in parallel from Eurostat.
Data sourced from Eurostat (CC-BY-4.0), free to use.

Args:
geo_code: ISO 3166-1 alpha-2 country code (e.g. "NO", "DE", "FR", "SE").
Also accepts EU aggregates like "EU27_2020", "EA20".
year: Specific year to retrieve. Defaults to most recent available.

Returns:
Country profile with GDP (million EUR), employment rate (%), and population.
Any field may be null if Eurostat has no data for that country/year combination.

ParameterTypeRequiredDescription
geo_codestringrequiredISO 3166-1 alpha-2 country code (e.g. "NO", "DE", "FR", "SE"). Also accepts EU aggregates like "EU27_2020", "EA20".
yearanyoptionalSpecific year to retrieve. Defaults to most recent available.
Request Body
{
  "geo_code": "NO"
}
report_feedback

Report a bug, feature request, or general feedback for this data source.

Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.

Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
Request Body
{
  "feedback": "example"
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/rest/eurostat/get_stat" \
  -H "Content-Type: application/json" \
  -H "Gnist-API-Key: YOUR_API_KEY" \
  -d '{"dataset_code": "example", "geo": "example"}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/rest/eurostat/get_stat",
    headers={"Gnist-API-Key": "YOUR_API_KEY"},
    json={
  "dataset_code": "example",
  "geo": "example"
},
)
print(resp.json())

Related Toolkits (Economics)

Resources