Parking API

Migration Guide

Request access

Important note
This API is not available as part of our free evaluation or Pay As You Grow (PAYG) offering. Click the Request Access button above to contact our Sales team.

Important notes:

  • This API is powered by the TomTom Orbis Maps.
  • See the TomTom Orbis Maps documentation for more information.

This guide helps you migrate to the On-Street Parking Orbis v2 endpoints. It covers differences from both the TomTom Maps v1 endpoints and the Orbis v1 endpoints.

General changes

Changes in authentication

AspectOrbis v2
API Key (header)TomTom-Api-Key header (recommended)
API Key (query)key query parameter (still supported, but shouldn’t be treated as the default option)

Attributes mechanism

In Orbis v2 a unified Attributes mechanism is introduced for controlling response content. It provides a flexible way to specify which attributes and data fields to include or exclude in API responses.

The Attributes mechanism consists of:

  • Attributes request header — Specifies which JSON response fields or attributes to include (required).
  • Attributes-Exclude request header — Specifies which fields or attributes to omit (optional).

This mechanism replaces the previous fields query parameter for JSON response fields selection, providing more granular control and a consistent interface across all endpoints.

For detailed information about Attributes syntax, available values, and usage examples, refer to the Attributes section in each respective Orbis v2 endpoint documentation.

Error message format

Error messages are returned in JSON format in the following structure:

FieldDescription
detailedErrorMain object of the error response. Consists of code and message properties.
detailedError.codeOne of a server-defined set of error codes.
detailedError.messageA human-readable description of the error code.
Exemplary error message
{
"detailedError": {
"code": "BAD_REQUEST",
"message": "Invalid tile position arguments"
}
}

Migrating from TomTom Maps

This section describes the changes when migrating from the TomTom Maps v1 On-Street Parking endpoints to the Orbis v2 endpoints.

Parking Locations endpoint

Where do I find the new endpoint

The new Orbis v2 Parking Locations endpoint has the following path:

get
Orbis v2 URL format
https://api.tomtom.com/maps/orbis/on-street-parking/locations?key={Your_API_Key}&point={longitude},{latitude}

instead of:

get
TomTom Maps v1 URL format
https://api.tomtom.com/parking/services/{versionNumber}/locations?key={Your_API_Key}&point={latitude},{longitude}

Changes in the endpoint base path

AspectTomTom Maps v1Orbis v2
Base path/parking/services/{versionNumber}/locations/maps/orbis/on-street-parking/locations
Version mechanismversionNumber path parameter (value: 1)apiVersion query parameter or TomTom-Api-Version header (value: 2)

Changes in request query parameters

TomTom Maps v1 parameterOrbis v2 parameterNotes
Not availableapiVersionRequired (query parameter or TomTom-Api-Version header). Supported value is set to 2.
pointpointCoordinates order is reversed from [latitude,longitude] to [longitude,latitude] in Orbis v2.
radiusradiusInMetersRenamed. Same default (100) and range (1..1000).
targetTimeparkingDataAtDateTimeRenamed. Same format (YYYY-MM-DDThh:mm:ssZ).
maxLocationsmaxResultsRenamed. Same default (20) and range (1..200).
selectionTypeselectionTypeNo change.
fieldsNot availableRemoved. Use the Attributes and Attributes-Exclude request headers instead to select response fields.

Changes in request headers

AspectTomTom Maps v1Orbis v2
TomTom-Api-VersionNot availableRequired (value: 2).
AttributesNot availableRequired. Specifies which response fields to return. Replaces fields query parameter.
Attributes-ExcludeNot availableOptional. Specifies which response fields to omit.

Changes in response fields

TomTom Maps v1 fieldOrbis v2 fieldNotes
locations.probabilitylocations.probabilityPercentageRenamed.
easeOfParkingeaseOfParkingPercentageRenamed.
locations.coordinateslocations.coordinatesChanged from array of {longitude, latitude} objects to GeoJSON-style LineString coordinate array with [longitude, latitude] pairs.
locations.idlocations.idNo change.

Response example comparison

TomTom Maps v1 response:

TomTom Maps v1 response
{
"easeOfParking": 0.37,
"locations": [
{
"probability": 0.37,
"coordinates": [
{ "longitude": 151.2080673806, "latitude": -33.8724552573 },
{ "longitude": 151.2080566518, "latitude": -33.8726078057 }
]
}
]
}

Orbis v2 response:

Orbis v2 response
{
"easeOfParkingPercentage": 0.37,
"locations": [
{
"probabilityPercentage": 0.37,
"coordinates": [
[151.2080673806, -33.8724552573],
[151.2080566518, -33.8726078057]
]
}
]
}

Vector Tiles endpoint

Where do I find the new endpoint

The new Orbis v2 Vector Tiles endpoint has the following path:

get
Orbis v2 URL format
https://api.tomtom.com/maps/orbis/on-street-parking/vector/tile/{zoom}/{x}/{y}?key={Your_API_Key}

instead of:

get
TomTom Maps v1 URL format
https://api.tomtom.com/parking/map/{versionNumber}/tile/{zoom}/{x}/{y}.{format}?key={Your_API_Key}

Changes in the endpoint base path

AspectTomTom Maps v1Orbis v2
Base path/parking/map/{versionNumber}/tile/{zoom}/{x}/{y}.{format}/maps/orbis/on-street-parking/vector/tile/{zoom}/{x}/{y}
Version mechanismversionNumber path parameter (value: 1)apiVersion query parameter or TomTom-Api-Version header (value: 2)

Changes in request query parameters

TomTom Maps v1 parameterOrbis v2 parameterNotes
Not availableapiVersionRequired (query parameter or TomTom-Api-Version header). Supported value is set to 2.
format (path parameter, value: pbf)Not availableRemoved from path. Response format is application/vnd.mapbox-vector-tile by default; use the Accept header to specify.
tagsNot availableRemoved. All tags (probability, id) are returned by default in Orbis v2.

Changes in request headers

AspectTomTom Maps v1Orbis v2
TomTom-Api-VersionNot availableRequired (value: 2).
AcceptNot availableOptional. Value: application/vnd.mapbox-vector-tile.

Changes in response content type

TomTom Maps v1Orbis v2
image/pbfapplication/vnd.mapbox-vector-tile

Changes in tag behavior

  • In TomTom Maps v1 tags were split into default (probability) and on-demand (id) categories, controlled by the tags query parameter.
  • In Orbis v2, both probability and id tags are always returned. The tags parameter has been removed.

Migrating from Orbis v1

This section describes the changes when migrating from the Orbis v1 On-Street Parking endpoints to the Orbis v2 endpoints.

Parking Locations endpoint

Endpoint URL

The base path remains the same. Only the API version changes:

get
Orbis v1
https://api.tomtom.com/maps/orbis/on-street-parking/locations
get
Orbis v2
https://api.tomtom.com/maps/orbis/on-street-parking/locations

Changes in request query parameters

Orbis v1 parameterOrbis v2 parameterNotes
apiVersionapiVersionRequired (query parameter or TomTom-Api-Version header). Supported value is set to 2.
pointpointCoordinates order is reversed from [latitude,longitude] to [longitude,latitude] in Orbis v2.
radiusradiusInMetersRenamed.
targetTimeparkingDataAtDateTimeRenamed.
maxLocationsmaxResultsRenamed.
selectionTypeselectionTypeNo change.
fieldsNot availableRemoved. Use the Attributes and Attributes-Exclude request headers instead to select response field.

Changes in request headers

AspectOrbis v1Orbis v2
TomTom-Api-VersionRequired (value: 1)Required (value: 2).
AttributesNot availableRequired. Specifies which response fields to return. Replaces fields query parameter.
Attributes-ExcludeNot availableOptional. Specifies which response fields to omit.

Changes in response fields

Orbis v1 fieldOrbis v2 fieldNotes
locations.probabilitylocations.probabilityPercentageRenamed.
easeOfParkingeaseOfParkingPercentageRenamed.
locations.coordinateslocations.coordinatesChanged from array of {longitude, latitude} objects to GeoJSON-style LineString coordinate array with [longitude, latitude] pairs.
locations.idlocations.idNo change.

Response example comparison

Orbis v1 response:

Orbis v1 response
{
"easeOfParking": 0.37,
"locations": [
{
"probability": 0.37,
"coordinates": [
{ "longitude": 151.2080673806, "latitude": -33.8724552573 },
{ "longitude": 151.2080566518, "latitude": -33.8726078057 }
]
}
]
}

Orbis v2 response:

Orbis v2 response
{
"easeOfParkingPercentage": 0.37,
"locations": [
{
"probabilityPercentage": 0.37,
"coordinates": [
[151.2080673806, -33.8724552573],
[151.2080566518, -33.8726078057]
]
}
]
}

Vector Tiles endpoint

Endpoint URL

The base path changes and the API version changes:

get
Orbis v1
https://api.tomtom.com/maps/orbis/on-street-parking/tile/{zoom}/{x}/{y}.{format}
get
Orbis v2
https://api.tomtom.com/maps/orbis/on-street-parking/vector/tile/{zoom}/{x}/{y}

Changes in the endpoint path

AspectOrbis v1Orbis v2
Path/maps/orbis/on-street-parking/tile/{zoom}/{x}/{y}.{format}/maps/orbis/on-street-parking/vector/tile/{zoom}/{x}/{y}

Changes in request query parameters

Orbis v1 parameterOrbis v2 parameterNotes
apiVersionapiVersionRequired (query parameter or TomTom-Api-Version header). Supported value is set to 2.
format (path parameter, value: pbf)Not availableRemoved from path. Use the Accept header instead.
tagsNot availableRemoved. All tags are returned by default.

Changes in request headers

AspectOrbis v1Orbis v2
TomTom-Api-VersionRequired (value: 1)Required (value: 2).

Changes in response content type

Orbis v1Orbis v2
image/pbfapplication/vnd.mapbox-vector-tile

Changes in tag behavior

  • In Orbis v1, tags were split into default and on-demand categories (same as TomTom Maps v1), controlled by the tags query parameter.
  • In Orbis v2, both probability and id tags are always returned. The tags parameter has been removed.