FAQ
Account
How can I start using the PTV Developer APIs?
You need to
sign up
for a PTV account and then activate your free subscription of PTV
Developer. If you already have a PTV account, you can directly
activate your free product. No payment details are needed to activate your free product.
Can I activate more than one free subscription?
No. Every account can only activate one free subscription of PTV
Developer but multiple paid subscriptions.
Where can I update my personal data?
You can use the avatar menu on the top right corner to reach the
Manage Profile
section and update your personal information.
Where can I delete my account?
In the
Manage Profile
section you have the possibility to delete your account. Please note
that you can only delete your account if no subscription is active.
Developer Support
How can I generate API keys to start developing?
Within your product instance you can create, rename and delete API
keys in the API Keys App.
How many API keys can I create using a free subscription?
For the free subscription one API key is included. If you need more
API keys, upgrade your subscription in the My Subscription App or
contact us to find a solution that
fits best to your needs.
How do I use the API keys?
The API keys are needed to authenticate against PTV Developer APIs.
Check the
Quick Start
of the API documentations for more details on the authentication
options.
How can I run performance tests on PTV Developer APIs?
If you want to run performance or load tests please
contact us to find a solution.
How can I generate client classes for PTV Developer APIs?
Learn how to generate clients for PTV Developer APIs in this tutorial.
How can I avoid 404 (Not Found) error codes even though my url seems to be ok?
If the endpoint requires a parameter in the path and this
parameter is missing you will get a http response code 404 (Not Found)
even if the rest of the url is correct.
You have to add the required parameter to the url in order
to get a successful response or an error message with more
details if something else is wrong with the parameter.
Licensing & Terms
Can I use a free subscription for productive/commercial use of my
application?
The free subscription is only for testing and integration purposes.
If you want to roll out your application for commercial use, you
need to upgrade your subscription in the My Subscription App or
contact us to talk about it and find
a solution that fits best to your needs.
What are the terms of use?
You can find the terms of use for different regions by using the according link below.
EU - English
EU - German
US - English
EU - English
EU - German
US - English
How are transactions calculated?
To measure the transactions 1k packages are used as measurement unit
for the usage of different API categories.
Please note that the error code 'GENERAL_QUOTA_EXCEEDED' is returned, if the transaction limit of your subscription is exceeded.
1k transactions correspond to... | API |
1,000 individual positions or addresses | Geocoding & Places API |
15,000 data or image tiles 5,000 satellite tiles | Raster Maps API |
15,000 map tiles | Vector Maps API |
1,000 routes 500 reachable areas or locations | Routing API |
1,000 matrix relations | Matrix Routing API |
5,000 positions of a tracking request | Map Matching API |
16 requests with less than 50 transports 8 requests with less than 100 transports 4 requests with less than 200 transports 2 requests with less than 400 transports 1 request with 400 transports or more | Route Optimization API |
64 requests with less than 25 transports 32 requests with less than 50 transports 16 requests with less than 100 transports 8 requests with less than 200 transports 4 request with 500 transports or more | Sequence Optimization API |
1,000 bins | Loading Space Optimization API |
Please note that the error code 'GENERAL_QUOTA_EXCEEDED' is returned, if the transaction limit of your subscription is exceeded.
What are request limits?
Request limits define a maximum amount of objects in a single call of the services (e.g. number of waypoints per routing request).
If the limits are reached it is recommended to split up the amount of objects into multiple requests. Note that for the Geocoding & Places API, Raster Maps API, Vector Maps API and Data API there are no request limits because the endpoints handle only single objects (map tiles, addresses or coordinates).
Find the request limits per service in the table below.
Please note that depending on your current subscription lower limits may apply.
Find the request limits per service in the table below.
API | Request limit |
Geocoding & Places API | - |
Raster Maps API | - |
Vector Maps API | - |
Routing API | 25 waypoints per request |
Matrix Routing API | 250,000 matrix relations per synchronous request
4,000,000 matrix relations per asynchronous request |
Map Matching API | 16,200 positions per request |
Route Optimization API | 3,000 transports per request |
Sequence Optimization API | 500 transports per request |
Loading Space Optimization API | 2 bins / 100 items per synchronous request
100 bins / 10,000 items per asynchronous request |
Data API | - |
Please note that depending on your current subscription lower limits may apply.
What are rate limits?
Rate limits are the number of requests per given time period a single API key can make. If those limits are exceeded, the error code 'GENERAL_RATE_LIMIT_EXCEEDED' is returned and further requests will temporarily be rejected.
Find the rate limits per service in the table below.
Find the rate limits per service in the table below.
API | Rate limit |
Geocoding & Places API | 600 requests per minute |
Raster Maps API | getSatelliteTile: 2,500 requests per minute
all other operations: 10,000 requests per minute |
Vector Maps API | 10,000 requests per minute |
Routing API | 300 requests per minute |
Matrix Routing API | calculateMatrix: 20 requests per minute
startMatrixCalculation: 50 requests per minute
getStatus: 3,000 requests per minute
all other operations: 100 requests per minute |
Map Matching API | 300 requests per minute |
Route Optimization API | startOptimization: 50 requests per minute
getOperationStatus: 3,000 requests per minute
all other operations: 100 requests per minute |
Sequence Optimization API | startAndCreateOptimizedRoute: 50 requests per minute
getOptimizedRoute: 3,000 requests per minute
all other operations: 100 requests per minute |
Loading Space Optimization API | packBins: 20 requests per minute
startBinPacking: 50 requests per minute
getStatus: 3,000 requests per minute
all other operations: 100 requests per minute |
Data API | 300 requests per minute |