About the PolitPro API

Who is the API For?

The API is designed for media outlets, publishers, think tanks, data providers, and developers who wish to integrate political polling data and election trends into their own products, platforms, or analyses.

How Can I Use the Data?

The data may be used for editorial purposes, within your own products, and for your own clients. However, it is not permitted to build an independent platform whose primary offering consists of political poll data, election trends, or similar competitive services to PolitPro. A separate agreement is required for redistributing the data as part of a data platform or a broader data offering. Please contact us at support@politpro.eu for custom terms.

What Data Does the API Provide?

The API provides current election trends, historical trend developments, and raw data from individual election polls for over 70 parliaments. This data can be filtered by recency or polling institute. We update the data as promptly as possible following the publication of new polls. The current election trend is recalculated with each new poll, while historical trend data points are captured weekly.

Are historical data points subject to revision?

Historical data may be adjusted at any time without prior notice. Corrections may include bug fixes, changes to our weighting methodology, or the retrospective addition of historical data for specific countries. As we continuously expand and refine our datasets, we recommend regularly re-fetching historical data rather than treating it as a static dataset.

Supported Parliaments

AD - Andorra
AL - Albania
AM - Armenia
AT - Austria
AT-1 - Burgenland
AT-2 - Carinthia
AT-3 - Lower Austria
AT-4 - Upper Austria
AT-5 - Salzburg
AT-6 - Styria
AT-7 - Tyrol
AT-8 - Vorarlberg
AT-9 - Vienna
BE - Belgium
BE-BR - Brussels
BE-VL - Flanders
BE-WA - Wallonia
BG - Bulgaria
CH - Switzerland
CY - Cyprus
CZ - Czechia
DE - Germany
DE-BB - Brandenburg
DE-BE - Berlin
DE-BW - Baden-Württemberg
DE-BY - Bavaria
DE-HB - Bremen
DE-HE - Hessen
DE-HH - Hamburg
DE-MV - Mecklenburg-Western Pomerania
DE-NI - Lower Saxony
DE-NW - North Rhine-Westphalia
DE-RP - Rhineland-Palatinate
DE-SH - Schleswig-Holstein
DE-SL - Saarland
DE-SN - Saxony
DE-ST - Saxony-Anhalt
DE-TH - Thuringia
DK - Denmark
EE - Estonia
ES - Spain
FI - Finland
FR - France
GB - United Kingdom
GE - Georgia
GR - Greece
HR - Croatia
HU - Hungary
IE - Ireland
IS - Iceland
IT - Italy
LT - Lithuania
LU - Luxembourg
LV - Latvia
MD - Moldova
ME - Montenegro
MK - North Macedonia
MT - Malta
NL - Netherlands
NO - Norway
PL - Poland
PT - Portugal
RO - Romania
RU - Russia
SE - Sweden
SI - Slovenia
SK - Slovakia
TR - Turkey
UA - Ukraine
XK - Kosovo

How Reliable is the Data?

All data undergoes a rigorous multi-stage quality assurance process, combining advanced algorithms, artificial intelligence, and meticulous manual review. PolitPro is recognized as one of the most reliable sources for European election trends, trusted by international media, leading research institutions, and political organizations alike. All data is provided without guarantee.

Is PolitPro Attribution Required?

Yes, any public display of the data requires clear source attribution, including a link to PolitPro.eu. For example: "Source: PolitPro.eu".

What is the PolitPro Election Trend?

The PolitPro Election Trend aggregates poll results from all relevant institutes into a weighted average. Recent polls are weighted more heavily than older ones, and the historical forecasting accuracy of each institute is also factored in. The result is a statistically robust trend line that smooths out short-term outliers and reveals real political dynamics over time.

What is PolitPro?

PolitPro is Europe's leading platform for election trends and political polling data. International media, political institutions, universities, and research facilities already leverage our data in their daily operations. PolitPro is politically independent, combining public survey data and scientific datasets with proprietary algorithms.

Enterprise & Custom Conditions

For larger integrations, multi-year contracts, invoice-based payments, or custom licensing agreements, please contact us at support@politpro.eu.

Unlock API Access Now!

Per month, excl. VAT - billed annually

Login

Endpoints & Technical Details

Endpoint: Current Election Trend

https://politpro.eu/api/v1/{countryCode}/trend
The current PolitPro Election Trend for the parliament calculates a weighted average of recent opinion polls.
diff Difference from the previous week's last data point
election_diff Difference from the last election
Recommended Update Frequency: Every 12 hours
{ "success": 1, "data": { "poll": { "uuid": "74015bcf-d68e-442d-9d40-dd657dd0c0e1", "date": "2025-10-12", "parliament": "de", "seats_total": 630, "parties": [ { "uuid": "3b54fa84-ac25-44c6-843b-20ef62f21ac1", "name_short": "SPD", "name_long": "Sozialdemokratische Partei Deutschlands", "color": "#f30100", "font_color": "#ffffff", "percent": 14.4, "seats": 104, "diff": -0.1, "election_diff": 2 } ] } } }

Endpoint: Evolution of the Election Trend

https://politpro.eu/api/v1/{countryCode}/trend/history/{startYear}/{endYear}
Track the historical evolution of the PolitPro Election Trend for selected years. The election trend is recorded as a data point once per week. Historical data is available from 2019 onwards, depending on the specific parliament.
?format=poll Optional URL parameter. Displays historical data as individual polls.
?format=party Optional URL parameter. Displays historical data as a collection of values, categorized by party.
Recommended Update Frequency: Weekly
{ "success": 1, "data": { "parliament": "de", "start": 2025, "end": 2026, "datasets": [ { "uuid": "3b54fa84-ac25-44c6-843b-20ef62f21ac1", "name_short": "SPD", "name_long": "Sozialdemokratische Partei Deutschlands", "color": "#f30100", "font_color": "#ffffff", "max": 16.1, "min": 15.8, "history": [ { "date": "2025-01-05", "percent": 16.1 }, { "date": "2025-01-12", "percent": 15.8 } ] } ] } }

Endpoint: Latest Election Polls

https://politpro.eu/api/v1/{countryCode}/polls/latest
Access the five most recent parliamentary election polls, sorted in descending order by the last day of the survey period.
diff Difference from the institute's previous poll
election_diff Difference from the previous election
Recommended Update Frequency: Every 12 hours
{ "success": 1, "data": { "polls": [ { "uuid": "0ce2f646-f652-4e9d-82f0-ad633b9709c1", "parliament": "de", "start": "2025-10-06", "end": "2025-10-10", "sample_size": 1224, "seats_total": 630, "institute": { "uuid": "2eb3e83b-c645-4e72-a686-124acf30033b", "name": "INSA", "score": 82 }, "parties": [ { "uuid": "3b54fa84-ac25-44c6-843b-20ef62f21ac1", "name_short": "SPD", "name_long": "Sozialdemokratische Partei Deutschlands", "color": "#f30100", "font_color": "#ffffff", "percent": 14, "seats": 101, "diff": -0.5, "election_diff": 2.4 } ] } ] } }

Endpoint: Latest Poll by Institute

https://politpro.eu/api/v1/{countryCode}/polls/institutes
The most recent poll from each institute that has published survey data within the last 365 days. The decisive factor is the final day of the polling period.
diff Difference from the institute's previous poll
election_diff Difference from the previous election
score If available: PolitPro Score (0-100) for the institute's accuracy, based on historical pre-election polls and party bias.
Recommended Update Frequency: Every 12 hours
{ "success": 1, "data": { "polls": [ { "uuid": "62b60fcf-24db-4479-b89d-e5a2aa3f20e5", "parliament": "de", "start": "2025-09-30", "end": "2025-10-06", "sample_size": 2001, "seats_total": 630, "institute": { "uuid": "ba0ef610-f639-40cd-a60b-233989270c6f", "name": "Forsa", "score": 83 }, "parties": [ { "uuid": "3b54fa84-ac25-44c6-843b-20ef62f21ac1", "name_short": "SPD", "name_long": "Sozialdemokratische Partei Deutschlands", "color": "#f30100", "font_color": "#ffffff", "percent": 13, "seats": 94, "diff": 0, "election_diff": 3.4 } ] } ] } }

Authentication

Authentication is performed using a Bearer Token in the header: "Authorization: Bearer {token}". You will find your token in your PolitPro account settings after registration.

Max Requests Per Minute

The API allows a maximum of 30 requests per minute. Exceeding this limit will result in a 429 error code.