post
/api/v2/zones/segments
Python SDK method:
client.zones.road_segments(params).run()

Start road segments job

Creates a road segments job. Provide at least one of zones/zoneIds, coordinates with a positive radius, or ways. These selectors are additive: the result is the union of segments matched by any supplied selector. The zones and zoneIds alternatives are mutually exclusive. Results are GeoJSON features with segment metadata such as road name, road type, and speed limit.

Altitude Help Center — getRoadSegments

Request Body

Road segment query parameters. Zone, coordinate, and way selectors may be combined; results are their union.

application/json: object

NameTypeInput ShapeValuesDescriptionValue Required
asOfDatestring (date)--Map version date in YYYY-MM-DD format. Omit to use the most recent month.Y
coordinatesarray<object>latitude: number; longitude: number-WGS-84 coordinate pairs near which to find road segments. Results are the union of all supplied selectors (zones/zoneIds, coordinates, ways). At least one selector is required.N
excludeServiceRoadsboolean--When true, service road categories are excluded from results. Defaults to true when omitted.N
isMetricboolean--When true, lengths are returned in kilometres; when false, in miles. Defaults to the unit setting in your user profile when omitted.N
radiusnumber--Search radius around the provided coordinates, in kilometres when isMetric is true and miles otherwise. Required and must be greater than zero when coordinates are provided, including when coordinates are combined with zones or ways.N
roadTypesarray<string>-living_street, motorway, motorway_link, primary, primary_link, residential, road, secondary, secondary_link, service, tertiary, tertiary_link, trunk, trunk_link, unclassifiedRoad types to include. An empty array includes all road types.N
waysarray<integer>--OpenStreetMap way IDs to look up directly. Selectors are additive: results are the union of segments matched by zones, coordinates, and ways. At least one selector is required.N
zoneIdsarray<string>--Zones to include, as encoded zone IDs. Provide exactly one of zoneIds or zones (not both).N
zonesarray<object>code: string; iso_3166_2: string; type: string (values: State, County, City, FSA, ZIP, TAZ, CTR, Custom, Segment)-Zones to include, each identified by a code, a zone type and a state or province code (iso_3166_2). Provide exactly one of zones or zoneIds (not both).N

Examples

County road segments request

Translated from the v1 getRoadSegments sample.

{
  "asOfDate": "2025-01-01",
  "excludeServiceRoads": true,
  "isMetric": false,
  "roadTypes": [
    "motorway"
  ],
  "zones": [
    {
      "code": "32003",
      "iso_3166_2": "US-NV",
      "type": "County"
    }
  ]
}

Success Responses

202 response: object

Job accepted and queued for processing. Poll the location header URL to check status.

NameTypeDescription
errorobjectDetails about why the job failed (RFC 7807 format), or null if it succeeded.
idstringUnique job identifier.
linksobjectNavigation URLs for polling and result retrieval.
statusstringCurrent job lifecycle state: PENDING, QUEUED, RUNNING, DONE, FAILED, CANCELED, or NOT_FOUND.

Response Errors

HTTP Status CodeReason
400The request body or parameters are invalid.
401Authentication is required or the provided credentials are invalid.
403The authenticated user lacks permission to perform this operation.
409The operation conflicts with the current state of the resource.
422The request is syntactically valid but semantically cannot be processed.
429The request rate limit has been exceeded.
500An unexpected server error occurred.