SchutzraumSchutzraum
Schutzraum
MapListBlogApp
Emergency Kit
Preparedness & equipment
Statistics
Facts and figures
FAQ
Frequently asked questions
Leaderboard
Top contributors
News
Latest news
Donate
Support the project
InfoContact
+ SubmitSign in
MapListBlogApp
More
Emergency Kit
Preparedness & equipment
Statistics
Facts and figures
FAQ
Frequently asked questions
Leaderboard
Top contributors
News
Latest news
Donate
Support the project
Sign in

Navigation

  • Map
  • List
  • Emergency Kit
  • App

Information

  • Info
  • FAQ
  • API

Community

  • Contact
  • Donate
  • Instagram

Legal

  • Legal Notice
  • Privacy Policy
© 2026 Schutzraum

All information provided without guarantee. Not an official website of the Federal Republic of Germany.

API Documentation

Access shelter data programmatically

The Schutzraum API provides read-only access to all shelter data. An API key is required, which you can request in your account.

Base URLhttps://schutzraum.app

Please use the API responsibly. Excessive requests may be rate-limited.

Authentication

All API requests require a valid API key. Send it as a header or query parameter:

As header (recommended):

X-API-Key: dein_api_key

As query parameter:

/api/shelters?api_key=dein_api_key

API keys can be requested in your account under 'API Keys'. After manual review, the key will be activated (usually within 48 hours).

GET/api/shelters

Returns a paginated list of shelters with optional filtering. Also supports geo-filtering with lat, lng and radius parameters — geo requests automatically sort by distance and include a distance field.

ParameterTypeRequiredDefaultDescription
pagenumberNo1Page number
limitnumberNo20Items per page (1–10000)
typestringNo–Shelter type filter
citystringNo–City name (partial match)
searchstringNo–Search name, city, address
conditionstringNo–gut, mittel, schlecht, unbekannt
protectionstringNo–hoch, mittel, niedrig, unbekannt
wheelchairbooleanNo–Filter wheelchair accessible
verifiedbooleanNo–Filter verified shelters
minCapacitynumberNo–Minimum capacity
sortstringNonamename, city, capacity, type
orderstringNoascasc or desc
Example
GET /api/shelters?type=bunker&city=Berlin&limit=10
Response
{
  "data": [{ "id": "...", "name": "...", "type": "bunker", ... }],
  "total": 42,
  "page": 1,
  "limit": 10,
  "totalPages": 5
}
GET/api/shelters/:id

Returns a single shelter by its ID.

Example
GET /api/shelters/24b4e1f0-7723-45a7-bd1c-537a2ff02174
GET/api/shelters/nearby

Returns shelters within a given radius of a geographic point, sorted by distance.

ParameterTypeRequiredDefaultDescription
latnumberYes–Latitude (–90 to 90)
lngnumberYes–Longitude (–180 to 180)
radiusnumberNo5000Radius in meters (100–50000)
limitnumberNo20Max results (1–100)
typestringNo–Shelter type filter
Example
GET /api/shelters/nearby?lat=48.137&lng=11.576&radius=3000
GET/api/shelters/bbox

Returns all shelters within a geographic bounding box.

ParameterTypeRequiredDefaultDescription
westnumberYes–West longitude
southnumberYes–South latitude
eastnumberYes–East longitude
northnumberYes–North latitude
typestringNo–Shelter type filter
Example
GET /api/shelters/bbox?west=11.4&south=48.0&east=11.7&north=48.2
GET/api/shelters/geojson

Returns all shelters as a GeoJSON FeatureCollection for map rendering.

ParameterTypeRequiredDefaultDescription
typestringNo–Shelter type filter
wheelchairbooleanNo–Filter accessible
verifiedbooleanNo–Filter verified
minCapacitynumberNo–Minimum capacity
Example
GET /api/shelters/geojson?type=u_bahn_station&wheelchair=true
Response
{
  "type": "FeatureCollection",
  "features": [{
    "type": "Feature",
    "geometry": { "type": "Point", "coordinates": [11.576, 48.137] },
    "properties": { "id": "...", "name": "...", "type": "u_bahn_station", ... }
  }]
}

Shelter Types

The type parameter accepts these values:

ValueLabel
bunkerBunker
tiefgarageUnderground Garage
u_bahn_stationSubway Station
tunnelTunnel
kellerBasement
hochbunkerAbove-ground Bunker
tiefbunkerUnderground Bunker
sonstigeOther