Skip to content
GuidesBlogPlaygroundDashboard

Elevation profile along coordinates

elevation.profile(ElevationProfileParams**kwargs) -> ElevationProfileResult
POST/api/v1/elevation/profile

Elevation profile along coordinates

ParametersExpand Collapse
coordinates: Iterable[Coordinate]

Path coordinates in order of travel (min 2, max 50)

lat: float

Latitude in decimal degrees (-90 to 90)

maximum90
minimum-90
lng: float

Longitude in decimal degrees (-180 to 180)

maximum180
minimum-180
ReturnsExpand Collapse
class ElevationProfileResult:

GeoJSON LineString Feature with 3D coordinates [lng, lat, elevation] representing the elevation profile along the input path. Summary statistics are in properties.

geometry: GeoJsonGeometry

GeoJSON Geometry object per RFC 7946. Coordinates use [longitude, latitude] order. 3D coordinates [lng, lat, elevation] are used for elevation endpoints.

coordinates: Union[List[float], List[List[float]], List[List[List[float]]], List[List[List[List[float]]]]]

Coordinates array. Nesting depth varies by geometry type: Point = [lng, lat], LineString = [[lng, lat], ...], Polygon = [[[lng, lat], ...], ...], etc.

One of the following:
List[float]

[longitude, latitude] or [longitude, latitude, elevation]

List[List[float]]

Array of [lng, lat] positions

List[List[List[float]]]

Array of linear rings / line strings

List[List[List[List[float]]]]

Array of polygons

type: Literal["Point", "LineString", "Polygon", 3 more]

Geometry type

One of the following:
"Point"
"LineString"
"Polygon"
"MultiPoint"
"MultiLineString"
"MultiPolygon"
properties: Properties

Elevation profile summary statistics

avg_elevation_m: float

Average elevation along the profile in meters

max_elevation_m: float

Maximum elevation along the profile in meters

min_elevation_m: float

Minimum elevation along the profile in meters

total_ascent_m: float

Total cumulative elevation gain in meters

total_descent_m: float

Total cumulative elevation loss in meters

type: Literal["Feature"]

Elevation profile along coordinates

import os
from plaza import Plaza

client = Plaza(
    api_key=os.environ.get("PLAZA_API_KEY"),  # This is the default and can be omitted
)
elevation_profile_result = client.elevation.profile(
    coordinates=[{
        "lat": 48.8566,
        "lng": 2.3522,
    }, {
        "lat": 48.858,
        "lng": 2.34,
    }, {
        "lat": 48.8584,
        "lng": 2.2945,
    }],
)
print(elevation_profile_result.geometry)
{
  "geometry": {
    "coordinates": [
      2.3522,
      48.8566
    ],
    "type": "Point"
  },
  "properties": {
    "avg_elevation_m": 67.8,
    "max_elevation_m": 155.3,
    "min_elevation_m": 28.1,
    "total_ascent_m": 127.4,
    "total_descent_m": 89.2
  },
  "type": "Feature"
}
Returns Examples
{
  "geometry": {
    "coordinates": [
      2.3522,
      48.8566
    ],
    "type": "Point"
  },
  "properties": {
    "avg_elevation_m": 67.8,
    "max_elevation_m": 155.3,
    "min_elevation_m": 28.1,
    "total_ascent_m": 127.4,
    "total_descent_m": 89.2
  },
  "type": "Feature"
}