Ein Punkt oder viele
Die Höhen sind in Metern angegeben. Ein Batch nimmt bis zu 10.000 Punkte auf und zählt als eine Anfrage.
Höhenprofil einer Route
POST /v1/route/profile nimmt eine GeoJSON-Route entgegen und tastet sie alle stepM Meter ab (10 bis 1.000; standardmäßig etwa 2.000 Messpunkte). Der Gesamtanstieg wird berechnet, nachdem die Höhen über etwa 100 m geglättet wurden, damit sich das Rauschen eines Geländemodells nicht zu Anstieg aufsummiert, den es nicht gibt. Auf Brücken und in Tunneln folgen die Höhen der Straße, nicht dem Tal darunter oder dem Berg darüber, und die Antwort nennt diese Abschnitte; mit "heights": "terrain" kommt der Boden unter jedem Punkt. Ein Profil hat höchstens 5.000 Messpunkte, auf langen Routen wird der Abstand also größer als angefragt. Für einen aufgezeichneten Track liefert "at": "points" stattdessen eine Höhe an jedem seiner eigenen Punkte, bis zu 50.000, und behält die Distanzen des Tracks. Zu jeder Brücke und jedem Tunnel kommt die Durchfahrtshöhe, wo OpenStreetMap sie kennt, und POST /v1/route/surfaces nennt jede Höhenbeschränkung entlang eines Tracks, Unterführungen eingeschlossen.
{
"routeLengthKm": 86.311, "stepM": 500,
"ascentM": 1020, "descentM": 358, "minM": 374.5, "maxM": 1109.4,
"profile": [
{ "km": 0, "lon": 6.143006, "lat": 46.204, "ele": 375.1 },
{ "km": 0.5, "lon": 6.148751, "lat": 46.202742, "ele": 374.5 },
...
]
}
Das ist eine Rennradfahrt von Genf nach Chamonix. Das Profil kommt auch mit POST /v1/route/report, zusammen mit dem Wetter entlang der Route und den durchquerten Zeitzonen.
Ein Raster über einem Gebiet
GET /v1/area?bbox=west,south,east,north&include=elevation&cells=400 liefert die Höhe in der Mitte jeder Zelle eines Rasters mit bis zu 400 Zellen, Zeile für Zeile ab der Nordwestecke, auf demselben Raster wie Wetter und Luftqualität dieses Gebiets.
{ "rows": 2, "cols": 2, "lon": [6.8375, 6.9125], "lat": [45.9625, 45.8875],
"elevation": { "values": [2145.8, 1237.3, 1426.5, 3257.8] } }
Geländekacheln
Kacheln für Schummerung und 3D-Gelände liegen unter /v1/dem/{z}/{x}/{y}.png (256 px, Terrarium-Kodierung, Zoom 0 bis 13) und .webp (512 px, Zoom 0 bis 12). Sie laden in MapLibre und ähnlichen Bibliotheken als normale Bilder, unter jedem Basiskartenstil: Basiskarten-Kacheln, Stile und Schriften gehören nicht zur API. Je 50 Kacheln zählen als eine Anfrage, und Kacheln belegen keinen Ihrer Slots für gleichzeitige Anfragen.
Preis
Der kostenlose Tarif bietet 500 Anfragen pro Tag, auch für kommerzielle Apps; Developer kostet 14,99 $ im Monat für 5.000 pro Tag. Kartendaten, Wetter, Luftqualität, Flusspegel und Routing sind im selben Key enthalten.
Quellenangabe: Gelände von Mapterhorn.