Migration Guide
Request accessThis 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
| Aspect | Orbis 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:
Attributesrequest header — Specifies which JSON response fields or attributes to include (required).Attributes-Excluderequest 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:
| Field | Description |
|---|---|
detailedError | Main object of the error response. Consists of code and message properties. |
detailedError.code | One of a server-defined set of error codes. |
detailedError.message | A human-readable description of the error code. |
{ "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:
https://api.tomtom.com/maps/orbis/on-street-parking/locations?key={Your_API_Key}&point={longitude},{latitude}instead of:
https://api.tomtom.com/parking/services/{versionNumber}/locations?key={Your_API_Key}&point={latitude},{longitude}Changes in the endpoint base path
| Aspect | TomTom Maps v1 | Orbis v2 |
|---|---|---|
| Base path | /parking/services/{versionNumber}/locations | /maps/orbis/on-street-parking/locations |
| Version mechanism | versionNumber path parameter (value: 1) | apiVersion query parameter or TomTom-Api-Version header (value: 2) |
Changes in request query parameters
| TomTom Maps v1 parameter | Orbis v2 parameter | Notes |
|---|---|---|
| Not available | apiVersion | Required (query parameter or TomTom-Api-Version header). Supported value is set to 2. |
point | point | Coordinates order is reversed from [latitude,longitude] to [longitude,latitude] in Orbis v2. |
radius | radiusInMeters | Renamed. Same default (100) and range (1..1000). |
targetTime | parkingDataAtDateTime | Renamed. Same format (YYYY-MM-DDThh:mm:ssZ). |
maxLocations | maxResults | Renamed. Same default (20) and range (1..200). |
selectionType | selectionType | No change. |
fields | Not available | Removed. Use the Attributes and Attributes-Exclude request headers instead to select response fields. |
Changes in request headers
| Aspect | TomTom Maps v1 | Orbis v2 |
|---|---|---|
TomTom-Api-Version | Not available | Required (value: 2). |
Attributes | Not available | Required. Specifies which response fields to return. Replaces fields query parameter. |
Attributes-Exclude | Not available | Optional. Specifies which response fields to omit. |
Changes in response fields
| TomTom Maps v1 field | Orbis v2 field | Notes |
|---|---|---|
locations.probability | locations.probabilityPercentage | Renamed. |
easeOfParking | easeOfParkingPercentage | Renamed. |
locations.coordinates | locations.coordinates | Changed from array of {longitude, latitude} objects to GeoJSON-style LineString coordinate array with [longitude, latitude] pairs. |
locations.id | locations.id | No change. |
Response example comparison
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:
{ "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:
https://api.tomtom.com/maps/orbis/on-street-parking/vector/tile/{zoom}/{x}/{y}?key={Your_API_Key}instead of:
https://api.tomtom.com/parking/map/{versionNumber}/tile/{zoom}/{x}/{y}.{format}?key={Your_API_Key}Changes in the endpoint base path
| Aspect | TomTom Maps v1 | Orbis v2 |
|---|---|---|
| Base path | /parking/map/{versionNumber}/tile/{zoom}/{x}/{y}.{format} | /maps/orbis/on-street-parking/vector/tile/{zoom}/{x}/{y} |
| Version mechanism | versionNumber path parameter (value: 1) | apiVersion query parameter or TomTom-Api-Version header (value: 2) |
Changes in request query parameters
| TomTom Maps v1 parameter | Orbis v2 parameter | Notes |
|---|---|---|
| Not available | apiVersion | Required (query parameter or TomTom-Api-Version header). Supported value is set to 2. |
format (path parameter, value: pbf) | Not available | Removed from path. Response format is application/vnd.mapbox-vector-tile by default; use the Accept header to specify. |
tags | Not available | Removed. All tags (probability, id) are returned by default in Orbis v2. |
Changes in request headers
| Aspect | TomTom Maps v1 | Orbis v2 |
|---|---|---|
TomTom-Api-Version | Not available | Required (value: 2). |
Accept | Not available | Optional. Value: application/vnd.mapbox-vector-tile. |
Changes in response content type
| TomTom Maps v1 | Orbis v2 |
|---|---|
image/pbf | application/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 thetagsquery parameter. - In Orbis v2, both
probabilityandidtags are always returned. Thetagsparameter 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:
https://api.tomtom.com/maps/orbis/on-street-parking/locationshttps://api.tomtom.com/maps/orbis/on-street-parking/locationsChanges in request query parameters
| Orbis v1 parameter | Orbis v2 parameter | Notes |
|---|---|---|
apiVersion | apiVersion | Required (query parameter or TomTom-Api-Version header). Supported value is set to 2. |
point | point | Coordinates order is reversed from [latitude,longitude] to [longitude,latitude] in Orbis v2. |
radius | radiusInMeters | Renamed. |
targetTime | parkingDataAtDateTime | Renamed. |
maxLocations | maxResults | Renamed. |
selectionType | selectionType | No change. |
fields | Not available | Removed. Use the Attributes and Attributes-Exclude request headers instead to select response field. |
Changes in request headers
| Aspect | Orbis v1 | Orbis v2 |
|---|---|---|
TomTom-Api-Version | Required (value: 1) | Required (value: 2). |
Attributes | Not available | Required. Specifies which response fields to return. Replaces fields query parameter. |
Attributes-Exclude | Not available | Optional. Specifies which response fields to omit. |
Changes in response fields
| Orbis v1 field | Orbis v2 field | Notes |
|---|---|---|
locations.probability | locations.probabilityPercentage | Renamed. |
easeOfParking | easeOfParkingPercentage | Renamed. |
locations.coordinates | locations.coordinates | Changed from array of {longitude, latitude} objects to GeoJSON-style LineString coordinate array with [longitude, latitude] pairs. |
locations.id | locations.id | No change. |
Response example comparison
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:
{ "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:
https://api.tomtom.com/maps/orbis/on-street-parking/tile/{zoom}/{x}/{y}.{format}https://api.tomtom.com/maps/orbis/on-street-parking/vector/tile/{zoom}/{x}/{y}Changes in the endpoint path
| Aspect | Orbis v1 | Orbis 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 parameter | Orbis v2 parameter | Notes |
|---|---|---|
apiVersion | apiVersion | Required (query parameter or TomTom-Api-Version header). Supported value is set to 2. |
format (path parameter, value: pbf) | Not available | Removed from path. Use the Accept header instead. |
tags | Not available | Removed. All tags are returned by default. |
Changes in request headers
| Aspect | Orbis v1 | Orbis v2 |
|---|---|---|
TomTom-Api-Version | Required (value: 1) | Required (value: 2). |
Changes in response content type
| Orbis v1 | Orbis v2 |
|---|---|
image/pbf | application/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
tagsquery parameter. - In Orbis v2, both
probabilityandidtags are always returned. Thetagsparameter has been removed.