# DAWUM

> Follow German election polls from DAWUM's open database: every poll since 2017 for the Bundestag, the 16 state parliaments and the European Parliament, with each party's share, the institute, who commissioned it and when. Get the latest polls or search the history. No account or API key required.

App · 6 actions. Web page: https://docs.lodol.com/docs/integrations/dawum

## Actions

### Get latest polls

Get each polling institute's newest poll for a German election: the Bundestag, a state parliament or the European Parliament. Every poll comes with each party's share, the leading party, who carried it out and who commissioned it. No API key required.

**Inputs**

- Parliament (`parliament`, text): Which parliament's polls to get. Leave it blank for every parliament. A two-letter code such as BT or BY, or a name such as Bayern, also works when threaded in from an earlier step. One of: `0` (Bundestag), `17` (European Parliament), `1` (Baden-Württemberg), `2` (Bayern), `3` (Berlin), `4` (Brandenburg), `5` (Bremen), `6` (Hamburg), `7` (Hessen), `8` (Mecklenburg-Vorpommern), and 8 more.
- Institute (`institute`, text): Only polls by this institute, by name or ID, such as INSA, Forsa or Infratest dimap. Leave it blank for every institute.

**Outputs**

- `count` (number): How many polls were returned.
- `last_update` (text): When DAWUM last added a poll to its database, e.g. '2026-10-16T01:56:18+02:00'.
- `polls` (list): Each institute's newest poll, newest first.

**Example output**

```json
{
  "count": 1,
  "last_update": "2026-10-16T01:56:18+02:00",
  "polls": [
    {
      "commissioned_by": "BILD",
      "date": "2026-10-13",
      "election": "Bundestagswahl",
      "id": "4349",
      "institute": "INSA",
      "institute_id": "5",
      "leading_party": "AfD",
      "leading_percent": 30.0,
      "method": "Online",
      "parliament": "Bundestag",
      "parliament_id": "0",
      "parliament_name": "Bundestag",
      "results": [
        {
          "party": "AfD",
          "party_id": "7",
          "party_name": "Alternative f\u00fcr Deutschland",
          "percent": 30.0
        },
        {
          "party": "CDU/CSU",
          "party_id": "1",
          "party_name": "Christlich Demokratische Union / Christlich-Soziale Union",
          "percent": 18.5
        },
        {
          "party": "Gr\u00fcne",
          "party_id": "4",
          "party_name": "B\u00fcndnis 90/Die Gr\u00fcnen",
          "percent": 14.0
        },
        {
          "party": "SPD",
          "party_id": "2",
          "party_name": "Sozialdemokratische Partei Deutschlands",
          "percent": 13.5
        },
        {
          "party": "Linke",
          "party_id": "5",
          "party_name": "Die Linke",
          "percent": 10.0
        },
        {
          "party": "Sonstige",
          "party_id": "0",
          "party_name": "sonstige Parteien",
          "percent": 6.0
        },
        {
          "party": "FDP",
          "party_id": "3",
          "party_name": "Freie Demokratische Partei",
          "percent": 4.5
        },
        {
          "party": "BSW",
          "party_id": "23",
          "party_name": "B\u00fcndnis Sahra Wagenknecht",
          "percent": 3.5
        }
      ],
      "sample_size": 2006,
      "summary": "Bundestag, INSA, 2026-10-13: AfD 30%, CDU/CSU 18.5%, Gr\u00fcne 14%, SPD 13.5%, Linke 10%, FDP 4.5%, BSW 3.5%",
      "survey_end": "2026-10-12",
      "survey_start": "2026-10-09"
    }
  ]
}
```

### Get poll

Get one German election poll by its DAWUM ID: every party's share, the institute, who commissioned it, how many people were asked and when. No API key required.

**Inputs**

- Poll ID (`poll_id`, text, required): The poll's DAWUM ID, as Get latest polls and List polls return it.

**Outputs**

- `commissioned_by` (text): Who commissioned the poll, e.g. 'BILD' or 'ZDF'.
- `date` (text): The day the poll was published, as YYYY-MM-DD.
- `election` (text): The election the poll is about, e.g. 'Bundestagswahl'.
- `id` (text): DAWUM's ID for the poll, for use with Get poll.
- `institute` (text): The polling institute, e.g. 'INSA' or 'Forsa'.
- `institute_id` (text): DAWUM's ID for the polling institute.
- `leading_party` (text): The short name of the party with the largest share.
- `leading_percent` (number): The leading party's share, in percent.
- `method` (text): How people were asked, in German: 'Online', 'Telefonisch' (phone), 'Telefon & Online', 'Persönlich' (in person) or 'Unbekannt' (unknown).
- `parliament` (text): The parliament's short name, e.g. 'Bundestag' or 'Bayern'.
- `parliament_id` (text): DAWUM's ID for the parliament, e.g. '0' for the Bundestag.
- `parliament_name` (text): The parliament's full name, e.g. 'Bayerischer Landtag'.
- `results` (list): Every party's share, largest first.
- `sample_size` (number): How many people were asked. Empty when not published.
- `summary` (text): One readable line, e.g. 'Bundestag, INSA, 2026-10-13: AfD 30%, CDU/CSU 18.5%, ...'.
- `survey_end` (text): The last day people were asked, as YYYY-MM-DD.
- `survey_start` (text): The first day people were asked, as YYYY-MM-DD.

**Example output**

```json
{
  "commissioned_by": "BILD",
  "date": "2026-10-13",
  "election": "Bundestagswahl",
  "id": "4349",
  "institute": "INSA",
  "institute_id": "5",
  "leading_party": "AfD",
  "leading_percent": 30.0,
  "method": "Online",
  "parliament": "Bundestag",
  "parliament_id": "0",
  "parliament_name": "Bundestag",
  "results": [
    {
      "party": "AfD",
      "party_id": "7",
      "party_name": "Alternative f\u00fcr Deutschland",
      "percent": 30.0
    },
    {
      "party": "CDU/CSU",
      "party_id": "1",
      "party_name": "Christlich Demokratische Union / Christlich-Soziale Union",
      "percent": 18.5
    },
    {
      "party": "Gr\u00fcne",
      "party_id": "4",
      "party_name": "B\u00fcndnis 90/Die Gr\u00fcnen",
      "percent": 14.0
    },
    {
      "party": "SPD",
      "party_id": "2",
      "party_name": "Sozialdemokratische Partei Deutschlands",
      "percent": 13.5
    },
    {
      "party": "Linke",
      "party_id": "5",
      "party_name": "Die Linke",
      "percent": 10.0
    },
    {
      "party": "Sonstige",
      "party_id": "0",
      "party_name": "sonstige Parteien",
      "percent": 6.0
    },
    {
      "party": "FDP",
      "party_id": "3",
      "party_name": "Freie Demokratische Partei",
      "percent": 4.5
    },
    {
      "party": "BSW",
      "party_id": "23",
      "party_name": "B\u00fcndnis Sahra Wagenknecht",
      "percent": 3.5
    }
  ],
  "sample_size": 2006,
  "summary": "Bundestag, INSA, 2026-10-13: AfD 30%, CDU/CSU 18.5%, Gr\u00fcne 14%, SPD 13.5%, Linke 10%, FDP 4.5%, BSW 3.5%",
  "survey_end": "2026-10-12",
  "survey_start": "2026-10-09"
}
```

### List institutes

List the polling institutes in DAWUM's database, such as INSA, Forsa and Infratest dimap, with the date of each one's newest poll. No API key required.

**Inputs**: None.

**Outputs**

- `count` (number): How many institutes were returned.
- `institutes` (list): The institutes, A to Z.
- `last_update` (text): When DAWUM last added a poll to its database, e.g. '2026-10-16T01:56:18+02:00'.

**Example output**

```json
{
  "count": 2,
  "institutes": [
    {
      "id": "9",
      "latest_poll_date": "2026-09-24",
      "name": "Allensbach"
    },
    {
      "id": "5",
      "latest_poll_date": "2026-10-13",
      "name": "INSA"
    }
  ],
  "last_update": "2026-10-16T01:56:18+02:00"
}
```

### List parliaments

List the parliaments DAWUM tracks polls for (the Bundestag, the 16 state parliaments and the European Parliament), with their IDs, codes and the date of each one's newest poll. No API key required.

**Inputs**: None.

**Outputs**

- `count` (number): How many parliaments were returned.
- `last_update` (text): When DAWUM last added a poll to its database, e.g. '2026-10-16T01:56:18+02:00'.
- `parliaments` (list): The parliaments, by ID.

**Example output**

```json
{
  "count": 2,
  "last_update": "2026-10-16T01:56:18+02:00",
  "parliaments": [
    {
      "code": "BT",
      "election": "Bundestagswahl",
      "id": "0",
      "latest_poll_date": "2026-10-13",
      "name": "Bundestag",
      "short_name": "Bundestag"
    },
    {
      "code": "BY",
      "election": "Landtagswahl in Bayern",
      "id": "2",
      "latest_poll_date": "2026-09-12",
      "name": "Bayerischer Landtag",
      "short_name": "Bayern"
    }
  ]
}
```

### List parties

List the parties that appear in DAWUM's poll results, with their short and full names. No API key required.

**Inputs**: None.

**Outputs**

- `count` (number): How many parties were returned.
- `last_update` (text): When DAWUM last added a poll to its database, e.g. '2026-10-16T01:56:18+02:00'.
- `parties` (list): The parties, by ID.

**Example output**

```json
{
  "count": 2,
  "last_update": "2026-10-16T01:56:18+02:00",
  "parties": [
    {
      "id": "0",
      "name": "sonstige Parteien",
      "short_name": "Sonstige"
    },
    {
      "id": "2",
      "name": "Sozialdemokratische Partei Deutschlands",
      "short_name": "SPD"
    }
  ]
}
```

### List polls

Search DAWUM's full history of German election polls since 2017, newest first. Narrow it to one parliament, one institute or a range of publication dates, and keep up to 200 polls. Handy for charting how a party's support has moved. No API key required.

**Inputs**

- Parliament (`parliament`, text): Which parliament's polls to list. Leave it blank for every parliament. One of: `0` (Bundestag), `17` (European Parliament), `1` (Baden-Württemberg), `2` (Bayern), `3` (Berlin), `4` (Brandenburg), `5` (Bremen), `6` (Hamburg), `7` (Hessen), `8` (Mecklenburg-Vorpommern), and 8 more.
- Institute (`institute`, text): Only polls by this institute, by name or ID, such as INSA, Forsa or Infratest dimap. Leave it blank for every institute.
- Published on or after (`since`, date): Only polls published on or after this day.
- Published on or before (`until`, date): Only polls published on or before this day.
- Number of polls (`limit`, number): How many polls to return, from 1 to 200, newest first. Defaults to 20. From 1 to 200. Default: `20`.

**Outputs**

- `count` (number): How many polls were returned.
- `last_update` (text): When DAWUM last added a poll to its database, e.g. '2026-10-16T01:56:18+02:00'.
- `polls` (list): The matching polls, newest first.
- `total_matching` (number): How many polls matched, before Number of polls was applied.

**Example output**

```json
{
  "count": 1,
  "last_update": "2026-10-16T01:56:18+02:00",
  "polls": [
    {
      "commissioned_by": "BILD",
      "date": "2026-10-13",
      "election": "Bundestagswahl",
      "id": "4349",
      "institute": "INSA",
      "institute_id": "5",
      "leading_party": "AfD",
      "leading_percent": 30.0,
      "method": "Online",
      "parliament": "Bundestag",
      "parliament_id": "0",
      "parliament_name": "Bundestag",
      "results": [
        {
          "party": "AfD",
          "party_id": "7",
          "party_name": "Alternative f\u00fcr Deutschland",
          "percent": 30.0
        },
        {
          "party": "CDU/CSU",
          "party_id": "1",
          "party_name": "Christlich Demokratische Union / Christlich-Soziale Union",
          "percent": 18.5
        },
        {
          "party": "Gr\u00fcne",
          "party_id": "4",
          "party_name": "B\u00fcndnis 90/Die Gr\u00fcnen",
          "percent": 14.0
        },
        {
          "party": "SPD",
          "party_id": "2",
          "party_name": "Sozialdemokratische Partei Deutschlands",
          "percent": 13.5
        },
        {
          "party": "Linke",
          "party_id": "5",
          "party_name": "Die Linke",
          "percent": 10.0
        },
        {
          "party": "Sonstige",
          "party_id": "0",
          "party_name": "sonstige Parteien",
          "percent": 6.0
        },
        {
          "party": "FDP",
          "party_id": "3",
          "party_name": "Freie Demokratische Partei",
          "percent": 4.5
        },
        {
          "party": "BSW",
          "party_id": "23",
          "party_name": "B\u00fcndnis Sahra Wagenknecht",
          "percent": 3.5
        }
      ],
      "sample_size": 2006,
      "summary": "Bundestag, INSA, 2026-10-13: AfD 30%, CDU/CSU 18.5%, Gr\u00fcne 14%, SPD 13.5%, Linke 10%, FDP 4.5%, BSW 3.5%",
      "survey_end": "2026-10-12",
      "survey_start": "2026-10-09"
    }
  ],
  "total_matching": 1
}
```
