# German public charging infrastructure

Germany’s registered public charging facilities, with operator sectors, addresses, coordinates, power ratings and connector filters, for mapping infrastructure and comparing regional coverage. This is a directory snapshot, not a time series. Facilities retain their original registry IDs and all published source fields. Operator sector labels are CLEF interpretations of names, not verified company…

German public charging infrastructure is an open, machine-readable dataset published on Mostly Right as immutable Parquet versions, with a documented column schema, a JSON query API and a direct download. It is free to read and open to AI agents.

## Facts

- Slug: `german-public-charging-infrastructure`
- Canonical page: https://mostlyright.md/datasets/german-public-charging-infrastructure
- Publisher: mostlyrightmd (https://mostlyright.md/publishers/mostlyrightmd)
- Published: 2026-10-08T18:19:20.644Z
- Tables: 1
- Formats: Apache Parquet (download), JSON (query and sample)
- Cost: free to read; querying and downloading need a free account
- Metadata API: `GET https://mostlyright.md/api/v2/public/datasets/german-public-charging-infrastructure`
- Topics: germany, electric vehicles, charging infrastructure, charge point operators, bundesnetzagentur

## How to use it

1. Read a table's schema — no account needed.
2. Fetch its published sample rows — no account needed.
3. Sign in at https://mostlyright.md/login, connect this dataset to a workspace on its page, and create an `mr_use_` key.
4. Query bounded JSON, or download the complete Parquet snapshot and read it locally.

Agents can do all of this over MCP at `https://mostlyright.md/api/mcp` — searching, reading schemas and sampling rows work with no credential at all.

## Table: charging_facilities

- Table id: `746fff61-da7e-41c1-8312-6ad450618d22`
- Slug: `charging-facilities`
- Immutable version: `889fe169-46a0-52b7-8b47-1cbc89e26dee`
- Licence: CC-BY-4.0
- Schema: `GET https://mostlyright.md/api/v2/public/tables/746fff61-da7e-41c1-8312-6ad450618d22/schema`
- Sample rows, no key: `GET https://mostlyright.md/api/v2/public/tables/746fff61-da7e-41c1-8312-6ad450618d22/preview`
- Bounded JSON query: `POST https://mostlyright.md/api/v2/public/tables/746fff61-da7e-41c1-8312-6ad450618d22/query` with `x-api-key: mr_use_…`
- Full Parquet snapshot: `GET https://mostlyright.md/api/v2/public/tables/746fff61-da7e-41c1-8312-6ad450618d22/current` with `x-api-key: mr_use_…` (application/vnd.apache.parquet)

### Columns (57)

| Column | Type | Description |
| --- | --- | --- |
| `facility_id` | string | Official registry identifier of this charging facility. |
| `operator` | string | Operator name as published, with outer whitespace removed. |
| `display_name` | string | Name displayed on the agency map. |
| `status` | string | Reported operational status. |
| `facility_type` | string | Reported normal or rapid charging facility category. |
| `charge_point_count` | integer | Number of charging points belonging to the facility. |
| `facility_power_kw` | decimal | Rated power of the facility in kilowatts. |
| `commissioned_on` | date | Commissioning date reported by the operator. |
| `street` | string | Street of the facility address. |
| `house_number` | string | House number, retained as text. |
| `address_extra` | string | Additional address information. |
| `postal_code` | string | Postal code, retained as text to preserve leading zeros. |
| `city` | string | Municipality of the facility. |
| `district` | string | Administrative district or independent city. |
| `state` | string | German federal state. |
| `latitude` | decimal | Published latitude in decimal degrees. |
| `longitude` | decimal | Published longitude in decimal degrees. |
| `location_name` | string | Operator supplied location label. |
| `parking_info` | string | Parking restrictions or other parking information. |
| `payment_methods` | string | Published payment methods; semicolon lists retained. |
| `opening_hours` | string | Published opening hours category. |
| `opening_weekdays` | string | Published opening weekdays; lists retained. |
| `opening_times` | string | Published opening time intervals; lists retained. |
| `connector_types_1` | string | Published connector types for charging point slot 1. |
| `connector_power_kw_text_1` | string | Published connector power values in kilowatts, retained as text because multiple connectors may be listed for charging point slot 1. |
| `evse_id_1` | string | Published EVSE identifier for charging point slot 1. |
| `public_key_1` | string | Published meter verification public key for charging point slot 1. |
| `connector_types_2` | string | Published connector types for charging point slot 2. |
| `connector_power_kw_text_2` | string | Published connector power values in kilowatts, retained as text because multiple connectors may be listed for charging point slot 2. |
| `evse_id_2` | string | Published EVSE identifier for charging point slot 2. |
| `public_key_2` | string | Published meter verification public key for charging point slot 2. |
| `connector_types_3` | string | Published connector types for charging point slot 3. |
| `connector_power_kw_text_3` | string | Published connector power values in kilowatts, retained as text because multiple connectors may be listed for charging point slot 3. |
| `evse_id_3` | string | Published EVSE identifier for charging point slot 3. |
| `public_key_3` | string | Published meter verification public key for charging point slot 3. |
| `connector_types_4` | string | Published connector types for charging point slot 4. |
| `connector_power_kw_text_4` | string | Published connector power values in kilowatts, retained as text because multiple connectors may be listed for charging point slot 4. |
| `evse_id_4` | string | Published EVSE identifier for charging point slot 4. |
| `public_key_4` | string | Published meter verification public key for charging point slot 4. |
| `connector_types_5` | string | Published connector types for charging point slot 5. |
| `connector_power_kw_text_5` | string | Published connector power values in kilowatts, retained as text because multiple connectors may be listed for charging point slot 5. |
| `evse_id_5` | string | Published EVSE identifier for charging point slot 5. |
| `public_key_5` | string | Published meter verification public key for charging point slot 5. |
| `connector_types_6` | string | Published connector types for charging point slot 6. |
| `connector_power_kw_text_6` | string | Published connector power values in kilowatts, retained as text because multiple connectors may be listed for charging point slot 6. |
| `evse_id_6` | string | Published EVSE identifier for charging point slot 6. |
| `public_key_6` | string | Published meter verification public key for charging point slot 6. |
| `registry_as_of` | date | Snapshot date stated in the CSV publisher preamble. |
| `operator_name_key` | string | Lowercased trimmed operator label for searching; this is not a resolved company identity. |
| `operator_sector_clef` | string | Clef sector label inferred only from the published operator name; unknown means insufficient evidence. |
| `operator_sector_probability` | decimal | Model probability assigned to its selected operator sector; not independently calibrated. |
| `operator_sector_model` | string | Exact served CLEF model pin recorded by the classification service. |
| `is_open_24_7` | boolean | True for published opening hours code 247, false for Eingeschränkt, otherwise null. |
| `has_ccs_connector` | boolean | Whether any published charging point slot explicitly lists a CCS connector. |
| `has_chademo_connector` | boolean | Whether any published charging point slot explicitly lists a CHAdeMO connector. |
| `has_type2_connector` | boolean | Whether any published charging point slot explicitly lists a Type 2 connector. |
| `coordinate_review_needed` | boolean | Whether published coordinates lie outside broad Germany bounds of latitude 47 to 56 and longitude 5 to 16; review flag, not a verified error. |

## Citing this dataset

Cite the dataset by name and canonical URL (https://mostlyright.md/datasets/german-public-charging-infrastructure), the table, and the immutable `version_id` the rows came from. A query response carries `table.version_id` and `table.content_digest`; a download carries a strong ETag and a `Content-Digest` header.
